mirror of
https://github.com/Unleash/unleash.git
synced 2024-12-28 00:06:53 +01:00
158 lines
3.7 KiB
Markdown
158 lines
3.7 KiB
Markdown
|
---
|
||
|
id: addons
|
||
|
title: /api/admin/addons
|
||
|
---
|
||
|
|
||
|
> In order to access the admin API endpoints you need to identify yourself. If you are using the `insecure` authentication method, you may use [basic authentication](https://en.wikipedia.org/wiki/Basic_access_authentication) to identify yourself.
|
||
|
|
||
|
### List addons and providers
|
||
|
|
||
|
`GET https://unleash.host.com/api/admin/addons`
|
||
|
|
||
|
Returns a list of _configured addons_ and available _addon providers_.
|
||
|
|
||
|
**Example response:**
|
||
|
|
||
|
```json
|
||
|
{
|
||
|
"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-addon to specify the slack channel.",
|
||
|
"icon": "S"
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
]
|
||
|
}
|
||
|
```
|
||
|
|
||
|
### Create a new addon configuration
|
||
|
|
||
|
`POST https://unleash.host.com/api/addons`
|
||
|
|
||
|
Creates an addon configuration for an addon provider.
|
||
|
|
||
|
**Body**
|
||
|
|
||
|
```json
|
||
|
{
|
||
|
"provider": "webhook",
|
||
|
"description": "Optional description",
|
||
|
"enabled": true,
|
||
|
"parameters": {
|
||
|
"url": "http://localhost:4242/webhook"
|
||
|
},
|
||
|
"events": ["feature-created", "feature-updated"]
|
||
|
}
|
||
|
```
|
||
|
|
||
|
### Notes
|
||
|
|
||
|
- `provider` must be a valid addon provider
|
||
|
|
||
|
### Update new addon configuration
|
||
|
|
||
|
`POST https://unleash.host.com/api/addons/:id`
|
||
|
|
||
|
Updates an addon configuration.
|
||
|
|
||
|
**Body**
|
||
|
|
||
|
```json
|
||
|
{
|
||
|
"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 addon configuration
|
||
|
|
||
|
`DELETE https://unleash.host.com/api/admin/addons/:id`
|
||
|
|
||
|
Deletes the addon with id=`id`.
|