Unleash Banners API
Create, update, flag, and delete [banners](https://docs.getunleash.io/concepts/banners).
Create, update, flag, and delete [banners](https://docs.getunleash.io/concepts/banners).
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/unleash-banners-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Unleash Admin Addons Banners API
version: 7.4.1
description: Create, update, and delete [Unleash addons](https://docs.getunleash.io/addons).
servers:
- url: https://app.unleash-instance.example.com
description: Your Unleash instance (replace with your actual URL)
security:
- apiKey: []
- bearerToken: []
tags:
- name: Banners
description: Create, update, flag, and delete [banners](https://docs.getunleash.io/concepts/banners).
paths:
/api/admin/banners:
get:
tags:
- Banners
operationId: getBanners
summary: Get All Banners.
description: '**Enterprise feature**
Returns a list of all configured banners.'
responses:
'200':
description: bannersSchema
content:
application/json:
schema:
$ref: '#/components/schemas/bannersSchema'
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
post:
tags:
- Banners
operationId: createBanner
summary: Create a Banner.
description: '**Enterprise feature**
Creates a new banner.'
requestBody:
description: createBannerSchema
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/createBannerSchema'
responses:
'201':
headers:
location:
description: The location of the newly created resource.
schema:
type: string
format: uri
description: The resource was successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/bannerSchema'
'400':
description: The request data does not match what we expect.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: ValidationError
description: The name of the error kind
message:
type: string
example: The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].
description: A description of what went wrong.
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
'415':
description: The operation does not support request payloads of the provided type. Please ensure that you're using one of the listed payload types and that you have specified the right content type in the "content-type" header.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: ContentTypeerror
description: The name of the error kind
message:
type: string
example: We do not accept the content-type you provided (application/xml). Try using one of the content-types we do accept instead (application/json) and make sure the body is in the corresponding format.
description: A description of what went wrong.
/api/admin/banners/{id}:
put:
tags:
- Banners
operationId: updateBanner
summary: Update a Banner.
description: '**Enterprise feature**
Updates an existing banner identified by its id.'
requestBody:
description: createBannerSchema
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/createBannerSchema'
responses:
'200':
description: bannerSchema
content:
application/json:
schema:
$ref: '#/components/schemas/bannerSchema'
'400':
description: The request data does not match what we expect.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: ValidationError
description: The name of the error kind
message:
type: string
example: The request payload you provided doesn't conform to the schema. The .parameters property should be object. You sent [].
description: A description of what went wrong.
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
'415':
description: The operation does not support request payloads of the provided type. Please ensure that you're using one of the listed payload types and that you have specified the right content type in the "content-type" header.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: ContentTypeerror
description: The name of the error kind
message:
type: string
example: We do not accept the content-type you provided (application/xml). Try using one of the content-types we do accept instead (application/json) and make sure the body is in the corresponding format.
description: A description of what went wrong.
parameters:
- name: id
in: path
required: true
schema:
type: string
delete:
tags:
- Banners
operationId: deleteBanner
summary: Delete a Banner.
description: '**Enterprise feature**
Deletes an existing banner identified by its id.'
responses:
'200':
description: This response has no body.
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: id
in: path
required: true
schema:
type: string
/api/admin/banners/{id}/on:
post:
tags:
- Banners
operationId: enableBanner
summary: Enables a Banner.
description: '**Enterprise feature**
Enables an existing banner, identified by its id.'
responses:
'200':
description: bannerSchema
content:
application/json:
schema:
$ref: '#/components/schemas/bannerSchema'
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: id
in: path
required: true
schema:
type: string
/api/admin/banners/{id}/off:
post:
tags:
- Banners
operationId: disableBanner
summary: Disables a Banner.
description: '**Enterprise feature**
Disables an existing banner, identified by its id.'
responses:
'200':
description: bannerSchema
content:
application/json:
schema:
$ref: '#/components/schemas/bannerSchema'
'401':
description: Authorization information is missing or invalid. Provide a valid API token as the `authorization` header, e.g. `authorization:*.*.my-admin-token`.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: AuthenticationRequired
description: The name of the error kind
message:
type: string
example: You must log in to use Unleash. Your request had no authorization header, so we could not authorize you. Try logging in at /auth/simple/login.
description: A description of what went wrong.
'403':
description: The provided user credentials are valid, but the user does not have the necessary permissions to perform this operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NoAccessError
description: The name of the error kind
message:
type: string
example: You need the "UPDATE_ADDON" permission to perform this action in the "development" environment.
description: A description of what went wrong.
'404':
description: The requested resource was not found.
content:
application/json:
schema:
type: object
properties:
id:
type: string
example: 9c40958a-daac-400e-98fb-3bb438567008
description: The ID of the error instance
name:
type: string
example: NotFoundError
description: The name of the error kind
message:
type: string
example: Could not find the addon with ID "12345".
description: A description of what went wrong.
parameters:
- name: id
in: path
required: true
schema:
type: string
components:
schemas:
createBannerSchema:
type: object
required:
- message
description: Describes the properties required to create or update a banner.
additionalProperties: false
properties:
message:
type: string
description: The message to display to all users. Supports markdown.
example: '**Reminder to everyone**: Maintenance is scheduled for *2337-12-27*.'
enabled:
type: boolean
description: Whether the banner should be displayed currently. If not specified, defaults to true.
example: true
variant:
type: string
description: The variant of the banner. One of "info", "warning", "error", or "success". If not specified, defaults to "info".
example: info
sticky:
type: boolean
description: Whether the banner should be sticky on the screen. If not specified, defaults to `false`.
example: true
icon:
type:
- string
- 'null'
description: The icon to display on the banner. Can be one of https://fonts.google.com/icons. If not specified, this will be the default icon for the variant. If "none", no icon will be displayed.
example: build
link:
type:
- string
- 'null'
description: 'The link to display on the banner. Can either be an absolute or a relative link (e.g. absolute: "https://example.com" or relative: "/admin/service-accounts"). If "dialog", will display a dialog when clicked. If not specified, no link will be displayed.'
example: dialog
linkText:
type:
- string
- 'null'
description: The text to display on the link. If not specified, will be displayed as "More info".
example: Learn more
dialogTitle:
type:
- string
- 'null'
description: The title to display on the dialog. If not specified, this will be the same as `linkText`.
example: Learn more about it here
dialog:
type:
- string
- 'null'
description: The markdown to display on the dialog. If not specified, no dialog will be displayed.
example: '# Information
Maintenance is **scheduled**.
## More details
This is an example dialog that supports Markdown.'
bannersSchema:
description: A response model with a list of banners.
type: object
additionalProperties: false
required:
- banners
properties:
banners:
type: array
description: A list of banners.
items:
$ref: '#/components/schemas/bannerSchema'
bannerSchema:
type: object
required:
- id
- message
- createdAt
description: An object describing a banner to be displayed to all users.
additionalProperties: false
properties:
id:
type: integer
description: The banner's ID. Banner IDs are incrementing integers. In other words, a more recently created banner will always have a higher ID than an older one.
minimum: 1
example: 7
message:
type: string
description: The message to display to all users. Supports markdown.
example: '**Reminder to everyone**: Maintenance is scheduled for *2337-12-27*.'
enabled:
type: boolean
description: Whether the banner should be displayed currently. If not specified, defaults to true.
example: true
variant:
type: string
description: The variant of the banner. One of "info", "warning", "error", or "success". If not specified, defaults to "info".
example: info
sticky:
type: boolean
description: Whether the banner should be sticky on the screen. If not specified, defaults to `false`.
example: true
icon:
type:
- string
- 'null'
description: The icon to display on the banner. Can be one of https://fonts.google.com/icons. If not specified, this will be the default icon for the variant. If "none", no icon will be displayed.
example: build
link:
type:
- string
- 'null'
description: 'The link to display on the banner. Can either be an absolute or a relative link (e.g. absolute: "https://example.com" or relative: "/admin/service-accounts"). If "dialog", will display a dialog when clicked. If not specified, no link will be displayed.'
example: dialog
linkText:
type:
- string
- 'null'
description: The text to display on the link. If not specified, will be displayed as "More info".
example: Learn more
dialogTitle:
type:
- string
- 'null'
description: The title to display on the dialog. If not specified, this will be the same as `linkText`.
example: Learn more about it here
dialog:
type:
- string
- 'null'
description: The markdown to display on the dialog. If not specified, no dialog will be displayed.
example: '# Information
Maintenance is **scheduled**.
## More details
This is an example dialog that supports Markdown.'
createdAt:
type: string
format: date-time
description: The date and time of when the banner was created.
example: '2023-12-27T13:37:00+01:00'
securitySchemes:
apiKey:
type: apiKey
in: header
name: Authorization
description: API key needed to access this API
bearerToken:
type: http
scheme: bearer
description: API key needed to access this API, in Bearer token format