Unleash Admin UI API
Configuration for the Unleash Admin UI. These endpoints should not be relied upon and can change at any point without prior notice.
Configuration for the Unleash Admin UI. These endpoints should not be relied upon and can change at any point without prior notice.
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-admin-ui-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 Admin UI 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: Admin UI
description: Configuration for the Unleash Admin UI. These endpoints should not be relied upon and can change at any point without prior notice.
paths:
/api/admin/insights/lifecycle:
get:
tags:
- Admin UI
operationId: getLifecycleTrends
responses:
'200':
description: lifecycleTrendsSchema
content:
application/json:
schema:
$ref: '#/components/schemas/lifecycleTrendsSchema'
parameters:
- name: projects
schema:
type: string
example: project1,project2,project3
description: Comma-separated list of project IDs to filter lifecycle trends
in: query
required: false
summary: Get Lifecycle Trends
description: '**Enterprise feature**
Gets lifecycle trends information showing feature flag progression across development, production, and cleanup stages.'
/api/admin/feedback:
post:
tags:
- Admin UI
operationId: createFeedback
summary: Send Unleash Feedback
description: Sends feedback gathered from the Unleash UI to the Unleash server. Must be called with a token with an identifiable user (either from being sent from the UI or from using a [PAT](https://docs.getunleash.io/concepts/api-tokens-and-client-keys#personal-access-tokens)).
requestBody:
description: feedbackCreateSchema
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/feedbackCreateSchema'
responses:
'200':
description: feedbackResponseSchema
content:
application/json:
schema:
$ref: '#/components/schemas/feedbackResponseSchema'
'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.
'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/ui-config:
get:
tags:
- Admin UI
summary: Get UI Configuration
description: Retrieves the full configuration used to set up the Unleash Admin UI.
operationId: getUiConfig
responses:
'200':
description: uiConfigSchema
content:
application/json:
schema:
$ref: '#/components/schemas/uiConfigSchema'
/api/admin/ui-config/cors:
post:
tags:
- Admin UI
summary: Sets Allowed Cors Origins
description: Sets Cross-Origin Resource Sharing headers for Frontend SDK API.
operationId: setCors
requestBody:
description: setCorsSchema
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/setCorsSchema'
responses:
'204':
description: This response has no body.
/api/admin/feedback/{id}:
put:
tags:
- Admin UI
operationId: updateFeedback
summary: Update Unleash Feedback
description: Updates the feedback with the provided ID. Only provided fields are updated. Fields left out are left untouched. Must be called with a token with an identifiable user (either from being sent from the UI or from using a [PAT](https://docs.getunleash.io/concepts/api-tokens-and-client-keys#personal-access-tokens)).
requestBody:
description: feedbackUpdateSchema
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/feedbackUpdateSchema'
responses:
'200':
description: feedbackResponseSchema
content:
application/json:
schema:
$ref: '#/components/schemas/feedbackResponseSchema'
'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.
'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
/api/admin/splash/{id}:
post:
tags:
- Admin UI
operationId: updateSplashSettings
summary: Update Splash Settings
description: This operation updates splash settings for a user, indicating that they have seen a particualar splash screen.
responses:
'200':
description: splashResponseSchema
content:
application/json:
schema:
$ref: '#/components/schemas/splashResponseSchema'
'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.
parameters:
- name: id
in: path
required: true
schema:
type: string
/api/admin/record-ui-error:
post:
tags:
- Admin UI
operationId: uiObservability
summary: Accepts Errors From the UI Client
description: This endpoint accepts error reports from the UI client, so that we can add observability on UI errors.
requestBody:
description: recordUiErrorSchema
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/recordUiErrorSchema'
responses:
'204':
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.
components:
schemas:
lifecycleTrendsSchema:
additionalProperties: false
description: Aggregated view of feature flag lifecycle trends across environments
type: object
required:
- lifecycleTrends
properties:
lifecycleTrends:
type: object
description: Aggregated view of feature flag lifecycle across environments
additionalProperties: false
required:
- develop
- production
- cleanup
properties:
develop:
type: object
required:
- totalFlags
- medianDaysInCurrentStage
- medianDaysHistorically
- categories
additionalProperties: false
properties:
totalFlags:
type: number
example: 35
medianDaysInCurrentStage:
type: number
example: 28
medianDaysHistorically:
type: number
example: 25
categories:
type: object
required:
- experimental
- release
- permanent
additionalProperties: false
properties:
experimental:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 15
newFlagsThisWeek:
type: number
example: 13
release:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 13
newFlagsThisWeek:
type: number
example: 0
permanent:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 7
newFlagsThisWeek:
type: number
example: 0
production:
type: object
required:
- totalFlags
- medianDaysInCurrentStage
- medianDaysHistorically
- categories
additionalProperties: false
properties:
totalFlags:
type: number
example: 10
medianDaysInCurrentStage:
type: number
example: 14
medianDaysHistorically:
type: number
example: 12
categories:
type: object
required:
- experimental
- release
- permanent
additionalProperties: false
properties:
experimental:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 2
newFlagsThisWeek:
type: number
example: 5
release:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 2
newFlagsThisWeek:
type: number
example: 1
permanent:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 3
newFlagsThisWeek:
type: number
example: 0
cleanup:
type: object
required:
- totalFlags
- medianDaysInCurrentStage
- medianDaysHistorically
- categories
additionalProperties: false
properties:
totalFlags:
type: number
example: 5
medianDaysInCurrentStage:
type: number
example: 16
medianDaysHistorically:
type: number
example: 18
categories:
type: object
required:
- experimental
- release
- permanent
additionalProperties: false
properties:
experimental:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 0
newFlagsThisWeek:
type: number
example: 3
release:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 0
newFlagsThisWeek:
type: number
example: 1
permanent:
type: object
required:
- flagsOlderThanWeek
- newFlagsThisWeek
additionalProperties: false
properties:
flagsOlderThanWeek:
type: number
example: 1
newFlagsThisWeek:
type: number
example: 0
variantFlagSchema:
type: object
additionalProperties: false
description: A representation of an evaluated Unleash feature variant.
properties:
name:
description: The name of the variant. Will always be disabled if `enabled` is false.
example: blue
type: string
enabled:
type: boolean
description: Whether the variant is enabled or not.
example: true
payload:
type: object
description: Additional data associated with this variant.
additionalProperties: false
properties:
type:
description: The type of data contained.
type: string
enum:
- string
- json
- csv
- number
example: json
value:
description: The actual associated data
type: string
example: '{ "starter": "squirtle" }'
feature_enabled:
type: boolean
description: Whether the feature is enabled or not.
example: true
featureEnabled:
deprecated: true
type: boolean
description: Use `feature_enabled` instead.
example: true
resourceLimitsSchema:
type: object
description: A map of resource names and their limits.
required:
- segmentValues
- strategySegments
- actionSetActions
- actionSetsPerProject
- actionSetFilters
- actionSetFilterValues
- signalEndpoints
- signalTokensPerEndpoint
- featureEnvironmentStrategies
- constraintValues
- environments
- projects
- apiTokens
- segments
- featureFlags
- constraints
- releaseTemplates
additionalProperties: false
properties:
segmentValues:
type: integer
example: 10
description: The maximum number of values per segment allowed.
strategySegments:
type: integer
example: 10
description: The maximum number of strategy segments allowed.
actionSetActions:
type: integer
example: 10
description: The maximum number of actions per action set allowed.
actionSetsPerProject:
type: integer
example: 10
description: The maximum number of action set definitions per project allowed.
actionSetFilters:
type: integer
example: 10
description: The maximum number of filters per action set allowed.
actionSetFilterValues:
type: integer
example: 10
description: The maximum number of filter values inside an action set allowed.
signalEndpoints:
type: integer
example: 10
description: The maximum number of signal endpoints allowed.
signalTokensPerEndpoint:
type: integer
example: 10
description: The maximum number of signal tokens per endpoint allowed.
featureEnvironmentStrategies:
type: integer
example: 30
description: The maximum number of feature environment strategies allowed.
constraintValues:
type: integer
example: 250
description: The maximum number of values for a single constraint.
constraints:
type: integer
example: 30
description: The maximum number of constraints in a single strategy.
environments:
type: integer
minimum: 1
example: 50
description: The maximum number of environments allowed.
apiTokens:
type: integer
minimum: 0
example: 2000
description: The maximum number of SDK and admin API tokens you can have at the same time. This limit applies only to backend and frontend SDK tokens and to admin tokens. Personal access tokens are not subject to this limit. The limit applies to the total number of tokens across all projects in your organization.
projects:
type: integer
minimum: 1
example: 500
description: The maximum number of projects allowed.
segments:
type: integer
example: 300
description: The maximum number of segments allowed.
featureFlags:
type: integer
minimum: 1
example: 5000
description: The maximum number of feature flags you can have at the same time. Archived flags do not count towards this limit.
releaseTemplates:
type: integer
example: 5
description: The maximum number of release templates allowed.
readOnlyUsers:
type: integer
example: 50
description: The maximum number of read-only users allowed.
minimum: 0
feedbackCreateSchema:
required:
- feedbackId
type: object
description: User feedback information to be created.
properties:
neverShow:
description: '`true` if the user has asked never to see this feedback questionnaire again. Defaults to `false`.'
type: boolean
example: false
feedbackId:
description: The name of the feedback session
type: string
example: pnps
versionSchema:
type: object
additionalProperties: false
description: Detailed information about an Unleash version
required:
- current
- latest
- isLatest
properties:
current:
type: object
additionalProperties: false
description: The current version of Unleash.
properties:
oss:
description: The OSS version used when building this Unleash instance, represented as a git revision belonging to the [main Unleash git repo](https://github.com/Unleash/unleash/)
example: 5.3.0-main
type: string
enterprise:
description: The Enterpris version of Unleash used to build this instance, represented as a git revision belonging to the [Unleash Enterprise](https://github.com/ivarconr/unleash-enterprise) repository. Will be an empty string if no enterprise version was used,
example: 5.3.0-main+2105.45ed03c9
type: string
latest:
type: object
additionalProperties: false
description: Information about the latest available Unleash releases. Will be an empty object if no data is available.
properties:
oss:
description: The latest available OSS version of Unleash
type: string
example: 5.1.5
enterprise:
description: The latest available Enterprise version of Unleash
type: string
example: 5.1.5
isLatest:
type: boolean
description: Whether the Unleash server is running the latest release (`true`) or if there are updates available (`false`)
example: true
instanceId:
type: string
description: The instance identifier of the Unleash instance
example: 0d652a82-43db-4144-8e02-864b0b030710
buildDate:
description: The date and time of when this Unleash instance version was built
type:
- string
- 'null'
format: date-time
example: '2023-06-30T11:41:00.123Z'
recordUiErrorSchema:
type: object
required:
- errorMessage
description: An object representing an error from the UI
properties:
errorMessage:
type: string
description: The error message
errorStack:
type: string
description: The stack trace of the error
uiConfigSchema:
type: object
additionalProperties: false
description: A collection of properties used to configure the Unleash Admin UI.
required:
- version
- unleashUrl
- baseUriPath
- versionInfo
properties:
slogan:
type: string
description: The slogan to display in the UI footer.
example: The enterprise-ready feature flag service.
name:
type: string
description: The name of this Unleash instance. Used to build the text in the footer.
example: Unleash enterprise
version:
type: string
description: The current version of Unleash
# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/unleash/refs/heads/main/openapi/unleash-admin-ui-api-openapi.yml