Unleash Banners API

Create, update, flag, and delete [banners](https://docs.getunleash.io/concepts/banners).

Operations 6

GET /api/admin/banners Get All Banners. #
POST /api/admin/banners Create a Banner. #
PUT /api/admin/banners/{id} Update a Banner. #
DELETE /api/admin/banners/{id} Delete a Banner. #
POST /api/admin/banners/{id}/on Enables a Banner. #
POST /api/admin/banners/{id}/off Disables a Banner. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/unleash-banners-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

unleash-banners-api-openapi.yml Raw ↑
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