mirror of
https://github.com/Unleash/unleash.git
synced 2024-11-01 19:07:38 +01:00
1539d1955f
This PR replaces references to _addons_ in the docs with references to _integrations_. In doing so, I have also: - moved `/reference/addons` documents into `/reference/integrations` - combined the previous "Addons" and "Integrations" categories into a new "Integrations" category - added redirects from all the old addons pages to their new locations I have updated the wording, but have not changed things such as API paths, event names, etc, because these will not change at the moment (maybe a breaking change to schedule for v6?). --------- Co-authored-by: Tymoteusz Czech <2625371+Tymek@users.noreply.github.com>
3.9 KiB
3.9 KiB
title |
---|
/api/admin/addons |
In order to access the admin API endpoints you need to identify yourself. Unless you're using the
none
authentication method, you'll need to create an ADMIN token and add an Authorization header using the token.
List integrations and providers
GET https://unleash.host.com/api/admin/addons
Returns a list of configured integrations and available integration providers.
Example response:
{
"addons": [
{
"id": 30,
"provider": "webhook",
"enabled": true,
"description": "post updates to slack",
"parameters": {
"url": "http://localhost:4242/webhook"
},
"events": ["feature-created", "feature-updated"]
},
{
"id": 33,
"provider": "slack",
"enabled": true,
"description": "default",
"parameters": {
"defaultChannel": "integration-demo-instance",
"url": "https://hooks.slack.com/someurl"
},
"events": ["feature-created", "feature-updated"]
}
],
"providers": [
{
"name": "webhook",
"displayName": "Webhook",
"description": "Webhooks are a simple way to post messages from Unleash to third party services. Unleash make use of normal HTTP POST with a payload you may define yourself.",
"parameters": [
{
"name": "url",
"displayName": "Webhook URL",
"type": "url",
"required": true
},
{
"name": "bodyTemplate",
"displayName": "Body template",
"description": "You may format the body using a mustache template. If you don't specify anything, the format will be similar to the /api/admin/events format",
"type": "textfield",
"required": false
}
],
"events": [
"feature-created",
"feature-updated",
"feature-archived",
"feature-revived"
]
},
{
"name": "slack",
"displayName": "Slack",
"description": "Integrates Unleash with Slack.",
"parameters": [
{
"name": "url",
"displayName": "Slack webhook URL",
"type": "url",
"required": true
},
{
"name": "defaultChannel",
"displayName": "Default channel",
"description": "Default channel to post updates to if not specified in the slack-tag",
"type": "text",
"required": true
}
],
"events": [
"feature-created",
"feature-updated",
"feature-archived",
"feature-revived"
],
"tags": [
{
"name": "slack",
"description": "Slack tag used by the slack integration to specify the slack channel.",
"icon": "S"
}
]
}
]
}
Create a new integration configuration
POST https://unleash.host.com/api/addons
Creates an integration configuration for an integration provider.
Body
{
"provider": "webhook",
"description": "Optional description",
"enabled": true,
"parameters": {
"url": "http://localhost:4242/webhook"
},
"events": ["feature-created", "feature-updated"]
}
Notes
provider
must be a valid integration provider
Update new integration configuration
POST https://unleash.host.com/api/addons/:id
Updates an integration configuration.
Body
{
"provider": "webhook",
"description": "Optional updated description",
"enabled": true,
"parameters": {
"url": "http://localhost:4242/webhook"
},
"events": ["feature-created", "feature-updated"]
}
Notes
provider
can not be changed.
Delete an integration configuration
DELETE https://unleash.host.com/api/admin/addons/:id
Deletes the integration with id=id
.