Creates an integration, if the callee has the permissions.
Permissions required to create incoming integrations:
manage-incoming-integrations
manage-own-incoming-integrations
Permissions required to create incoming integrations:
manage-outgoing-integrations
manage-own-outgoing-integrations
HTTP Method | URL | Requires Auth |
---|
POST | /api/v1/integrations.create | yes |
Key | Example Value | Description |
---|
type * | webhook-incoming | The type of integration to create. |
username * | rocket.cat | The username who to post this the messages as. |
channel * | #general | The channel, group, or @username . Can also be all_public_channels , all_private_groups , or all_direct_messages . Comma separated for more than one. |
scriptEnabled * | sendMessage | Whether the script should be enabled. |
script | Integration | Script triggered when this integration is triggered. |
name * | rocket.cat | The username who to post this the messages as. |
enabled * | true | Whether this integration should be enabled or not. |
alias | Guggy | The alias which should be applied to messages when this integration is processed. |
avatar | http://res.guggy.com/logo_128.png | The logo to apply to the messages that this integration sends. |
emoji | :ghost: | The emoji which should be displayed as the avatar for messages from this integration. |
curl -H "X-Auth-Token: 9HqLlyZOugoStsXCUfD_0YdwnNnunAJF8V47U3QHXSq" \
-H "X-User-Id: aobEdbYhXfu5hkeqG" \
-H "Content-type: application/json" \
http://localhost:3000/api/v1/integrations.create \
-d '{
"type": "webhook-incoming",
"username": "rocket.cat",
"channel": "#general",
"scriptEnabled": false,
"name": "testHook",
"enabled": true }'
{
"integration": {
"type": "webhook-incoming",
"username": "rocket.cat",
"channel": false,
"scriptEnabled": "sendMessage",
"name": "sendMessage",
"enabled": "sendMessage",
}
Key | Example Value | Description |
---|
type * | webhook-outgoing | The type of integration to create, webhook-outgoing and webhook-incoming are supported. |
name * | Guggy | The name of the integration, only is show on the Administration area. |
enabled * | true | Whether this integration should be enabled or not. |
event * | sendMessage | This field is required only for outgoing integration. The type of event, can be any of these: sendMessage , fileUploaded , roomArchived , roomCreated , roomJoined , roomLeft , userCreated . |
username * | rocket.cat | The username who to post this the messages as. |
urls * | ['http://text2gif.guggy.com/guggify'] | The urls to call whenever this integration is triggered. |
scriptEnabled * | false | Whether the script should be enabled. |
channel * | #general | The channel, group, or @username . Can also be all_public_channels , all_private_groups , or all_direct_messages . Comma separated for more than one. |
triggerWords | !guggy | Specific words, separated by commas, which should trigger this integration. |
alias | Guggy | The alias which should be applied to messages when this integration is processed. |
avatar | http://res.guggy.com/logo_128.png | The logo to apply to the messages that this integration sends. |
emoji | :ghost: | The emoji which should be displayed as the avatar for messages from this integration. |
token | 8DFS89DMKLWEN | If your integration requires a special token from the server (api key), use this. |
script | Integrations | Script triggered when this integration is triggered. |
curl -H "X-Auth-Token: 9HqLlyZOugoStsXCUfD_0YdwnNnunAJF8V47U3QHXSq" \
-H "X-User-Id: aobEdbYhXfu5hkeqG" \
-H "Content-type: application/json" \
http://localhost:3000/api/v1/integrations.create \
-d '{
"type": "webhook-outgoing",
"name": "Testing via REST API",
"event": "sendMessage",
"enabled": false,
"channel": "#general",
"username": "rocket.cat",
"urls": ["http://text2gif.guggy.com/guggify"],
"scriptEnabled": false }'
{
"integration": {
"type": "webhook-outgoing",
"name": "Testing via REST API",
"enabled": false,
"username": "rocket.cat",
"event": "sendMessage",
"urls": [
"http://text2gif.guggy.com/guggify"
],
"scriptEnabled": false,
"userId": "rocket.cat",
"channel": [],
"_createdAt": "2017-01-06T13:23:46.018Z",
"_createdBy": {
"username": "graywolf336",
"_id": "aobEdbYhXfu5hkeqG"
},
"_updatedAt": "2017-01-06T13:23:46.018Z",
"_id": "3aazpZ2WzoBP8msi9"
},
"success": true
}
Version |
Description |
1.1.0 |
Separate permissions in incoming and outgoing . |
0.49.0 |
Added |