openapi: 3.0.1 info: title: Internal Utility API description: This API allows you to access internal data. version: 1.0.0 servers: - url: 'https://apim.wso2.com/v1' paths: /block: get: tags: - Throttling summary: blocking events available description: | This will provide access to throttled events in database. responses: '200': description: Block Conditions content: application/json: schema: type: object additionalProperties: $ref: '#/components/schemas/BlockConditions' /keyTemplates: get: summary: An Array of key templates according to custom policies description: | This will provide access to key templates define in custom policies responses: '200': description: An array of Key Templates content: application/json: schema: type: array items: type: string default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /keymanagers: get: summary: An Array of key managers configured description: | this will provide key managers configured parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string responses: '200': description: An array of key managers content: application/json: schema: type: array items: $ref: '#/components/schemas/KeyManager' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /api-keys: get: summary: An Array of API keys generated description: | This will provide API keys generated parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string responses: '200': description: An array of API keys content: application/json: schema: type: array items: $ref: '#/components/schemas/APIKeyList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /revokedjwt: get: summary: >- JTIs of revoked jwt tokens and application and subject entity revocation event data description: | This will provide access to - JTIs of directly revoked JWT tokens in database - consumer application information of revoked JWTs due to application change events - subject entity information of revoked JWTs due to user change events responses: '200': description: >- An object of revoke JWTs, revoked subject entities, revoked consumer keys content: application/json: schema: $ref: '#/components/schemas/RevokedEvents' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /apis: get: tags: - Subscription Validation summary: Get all apis description: | This will provide access to apis in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: apiId in: query description: | **Search condition**. Api ID schema: type: string - name: context in: query description: | **Search condition**. context of the api schema: type: string - name: version in: query description: | **Search condition**. versio of the api schema: type: string - name: gatewayLabel in: query description: | **Search condition**. label associated with the APIs schema: type: string - name: expand in: query description: > Defines whether the returned response should contain full details of API schema: type: boolean default: true - name: Accept in: header description: > Media types acceptable for the response. Default is application/json. schema: type: string default: application/json responses: '200': description: An array of APIs in the database content: application/json: schema: $ref: '#/components/schemas/APIList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /applications: get: tags: - Subscription Validation summary: Get all applications description: | This will provide access to applications in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: appId in: query description: | **Search condition**. Application ID of the application schema: type: integer responses: '200': description: An array of applications in the database content: application/json: schema: $ref: '#/components/schemas/ApplicationList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /subscriptions: get: tags: - Subscription Validation summary: Get all subscriptions description: | This will provide access to subscriptions in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: apiId in: query description: | **Search condition**. Api ID of the subscription schema: type: integer - name: appId in: query description: | **Search condition**. Application ID of the subscription schema: type: integer - name: apiUUID in: query description: | **Search condition**. Api UUID of the subscription schema: type: string - name: applicationUUID in: query description: | **Search condition**. Application UUID of the subscription schema: type: string responses: '200': description: An array of subscriptions in the database content: application/json: schema: $ref: '#/components/schemas/SubscriptionList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /subscribe-internal: post: tags: - Subscription Validation summary: Subscribe to a subscription validation disabled API description: > This will allow creating subscriptions from applications to APIs which have subscription validation disabled. operationId: subscribeToAPI parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: appId in: query description: | Application ID of the subscription schema: type: integer - name: appUuid in: query description: | Application UUID schema: type: string requestBody: description: The API object content: '*/*': schema: $ref: '#/components/schemas/API' required: false responses: '201': description: Subscription created successfully content: application/json: schema: $ref: '#/components/schemas/Subscription' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' x-codegen-request-body-name: api /subscription-policies: get: tags: - Subscription Validation summary: Get all subscription throttling policies description: > This will provide access to subscription level throttling policies in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: policyName in: query description: | **Search condition**. Subscription policy name schema: type: string responses: '200': description: An array of subscription policies in the database content: application/json: schema: $ref: '#/components/schemas/SubscriptionPolicyList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /application-policies: get: tags: - Subscription Validation summary: Get all application throttling policies description: > This will provide access to application level throttling policies in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: policyName in: query description: | **Search condition**. Application policy name schema: type: string responses: '200': description: An array of application policies in the database content: application/json: schema: $ref: '#/components/schemas/ApplicationPolicyList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /api-policies: get: tags: - Subscription Validation summary: Get all API throttling policies description: | This will provide access to api level throttling policies in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: policyName in: query description: | **Search condition**. Api policy name schema: type: string responses: '200': description: An array of api policies in the database content: application/json: schema: $ref: '#/components/schemas/ApiPolicyList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /global-policies: get: tags: - Subscription Validation summary: Get all Global throttling policies description: | This will provide access to global throttling policies in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: policyName in: query description: | **Search condition**. Global policy name schema: type: string responses: '200': description: An array of global policies in the database content: application/json: schema: $ref: '#/components/schemas/GlobalPolicyList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /application-key-mappings: get: tags: - Subscription Validation summary: Get all application key mappings description: | This will provide access to application vs key mappings in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: consumerKey in: query description: | **Search condition**. Consumer Key of the application schema: type: string - name: keymanager in: query description: | **Search condition**. KeyManager associated to consumer_key of the application schema: type: string responses: '200': description: An array of application key mappings in the database content: application/json: schema: $ref: '#/components/schemas/ApplicationKeyMappingList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /scopes: get: tags: - Subscription Validation summary: Get all scopes. description: | This will provide access to the Scopes created in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: scopeKey in: query description: | **Search condition**. Scope Key schema: type: string responses: '200': description: An array of Scopes in Database. content: application/json: schema: $ref: '#/components/schemas/ScopesList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /runtime-artifacts: get: tags: - Retrieving Runtime artifacts summary: Get all the runtime artifacts for a given API UUID and gateway label description: | This will provide access to runtime artifacts in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: apiId in: query description: | **Search condition**. Api ID schema: type: string - name: gatewayLabel in: query description: | **Search condition**. label associated with the APIs schema: type: string - name: type in: query description: | **Search condition**. type of gateway schema: type: string - name: name in: query description: | **Search condition**. name of API schema: type: string - name: version in: query description: | **Search condition**. version of API schema: type: string responses: '200': description: List of runtime Artifacts content: {} default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /retrieve-api-artifacts: post: tags: - Retrieve API artifacts summary: Get API runtime artifacts from ID list description: > This will provide access to API runtime artifacts in database for a given API UUID list. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: gatewayLabel in: query description: | **Search condition**. label associated with the APIs schema: type: string - name: type in: query description: | type of gateway schema: type: string requestBody: description: API UUID list payload content: '*/*': schema: $ref: '#/components/schemas/UUIDList' required: false responses: '200': description: List of runtime Artifacts content: {} default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' x-codegen-request-body-name: uuidList /runtime-metadata: get: tags: - Retrieving Runtime artifacts summary: Metadata information for API runtimes description: | This will provide access to the deployment metadata in json format parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: apiId in: query description: | **Search condition**. Api ID schema: type: string - name: gatewayLabel in: query description: | **Search condition**. label associated with the APIs schema: type: string responses: '200': description: Json file of runtime metadata content: {} default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /gateway-policy-artifacts: get: tags: - Retrieving Runtime artifacts for gateway policies summary: Get all the runtime artifacts for a given API UUID and gateway label description: | This will provide access to runtime artifacts in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: policyMappingUuid in: query description: | **Search condition**. Gateway policy mapping UUID schema: type: string - name: type in: query description: | **Search condition**. type of gateway schema: type: string - name: gatewayLabel in: query description: | **Search condition**. label associated with the policy mapping schema: type: string responses: '200': description: List of runtime Artifacts content: {} default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /endpoint-certificates: get: tags: - Retrieving Runtime artifacts summary: Get all the endpoint certificates for given alias. description: | This will provide access to parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: alias in: query description: | **Search condition**. Alias schema: type: string responses: '200': description: List of endpoint certificates content: application/json: schema: $ref: '#/components/schemas/EndpointCertificateList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /apis/deployed-revisions: patch: tags: - API Revisions summary: Deploy Revision description: | Deploy a revision operationId: deployedAPIRevision requestBody: description: Notification event payload content: '*/*': schema: type: array items: $ref: '#/components/schemas/DeployedAPIRevision' required: false responses: '200': description: | Created. content: {} default: $ref: '#/components/schemas/Error' x-codegen-request-body-name: deployedAPIRevisionDTOList /apis/undeployed-revision: post: tags: - UnDeployed API Revision summary: Remove undeployed revision description: Remove undeployed Revision entry from the database operationId: unDeployedAPIRevision requestBody: description: Notification event payload content: '*/*': schema: $ref: '#/components/schemas/UnDeployedAPIRevision' required: false responses: '200': description: Fetch un-deployed revision content: {} default: $ref: '#/components/schemas/Error' x-codegen-request-body-name: unDeployedAPIRevisionDTO /ga-config: get: tags: - Retrieving Runtime artifacts summary: Get Google analytics config related to tenant. description: | This will provide access to runtime artifacts in database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string - name: apiId in: query description: | **Search condition**. Api ID schema: type: string responses: '200': description: google analytics configuration content: {} default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /webhooks-subscriptions: get: tags: - Retrieving webhooks subscriptions summary: Get webhooks subscriptions description: | This will provide list of webhooks subscriptions from the database. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string responses: '200': description: An array of webhooks subscriptions content: application/json: schema: $ref: '#/components/schemas/webhooksSubscriptionsList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /notify: post: tags: - Notification summary: Push notification events into nodes. description: | This pushes events to the other nodes. parameters: - name: X-WSO2-KEY-MANAGER in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string requestBody: description: Notification event payload content: '*/*': schema: type: string required: false responses: '200': description: Event Received success content: application/json: schema: type: object default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' x-codegen-request-body-name: body /api-logging-configs: get: tags: - Logging summary: Retrieve persisted per API logging data. description: | This retrieve the persisted API logging data for API logging support. parameters: - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string responses: '200': description: Event Received success content: application/json: schema: $ref: '#/components/schemas/APILoggingConfigList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /llm-providers: get: tags: - LLMProviders summary: Retrieve persisted LLM Providers description: | This retrieve the persisted LLM Providers. operationId: getLLMProviders parameters: - name: name in: query schema: type: string - name: apiVersion in: query schema: type: string - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string responses: '200': description: LLM providers received success content: application/json: schema: $ref: '#/components/schemas/LLMProviderList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' '/llm-providers/{llmProviderId}': get: tags: - LLMProviders summary: Retrieve persisted LLM Providers description: | This retrieve the persisted LLM Providers. operationId: getLLMProviderById parameters: - name: llmProviderId in: path required: true schema: type: string - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string responses: '200': description: Event Received success content: application/json: schema: $ref: '#/components/schemas/LLMProviderList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /correlation-configs: get: tags: - Logging summary: Retrieve persisted correlation configs data. description: > This retrieve the persisted correlation configs data for updating correlation logs. responses: '200': description: An array of correlation component configs content: application/json: schema: $ref: '#/components/schemas/CorrelationComponentsList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /transaction-records: post: summary: Insert Transaction Records description: Inserts a list of transaction records into the database. operationId: insertTransactionRecords requestBody: description: A list of transaction records to be inserted content: '*/*': schema: type: array items: $ref: '#/components/schemas/TransactionRecord' required: true responses: '200': description: Successfully inserted transaction records content: application/json: schema: type: boolean '400': description: Bad request. Invalid input data. content: {} '500': description: Internal server error. Failed to insert transaction records. content: {} x-codegen-request-body-name: body /tenant-info: get: tags: - Tenant summary: Retrieve tenant information description: | This will provide access to tenant information. parameters: - name: filter in: query schema: type: string - name: xWSO2Tenant in: header description: > This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string responses: '200': description: Tenant information received successfully content: application/json: schema: $ref: '#/components/schemas/TenantInfoList' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /notify-gateway: post: summary: Gateway Register or Heartbeat tags: - Gateway Lifecycle description: | Accepts a payload indicating either a gateway registration or a heartbeat update. The `payloadType` field distinguishes the operation. operationId: notifyGatewayPost requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/NotifyGatewayPayload' responses: '200': description: Successful response for registration or heartbeat. content: application/json: schema: $ref: '#/components/schemas/NotifyGatewayStatusResponse' '400': description: Invalid payload content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal server error while processing gateway status. content: application/json: schema: $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' /notify-api-deployment-status: post: tags: - Gateway Monitoring summary: Acknowledge an API Revision Deployment description: | This endpoint is invoked by the Gateway to notify the Control Plane about the status of an API revision deployment or undeployment. operationId: notifyApiDeploymentStatusPost requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/GatewayDeploymentStatusAcknowledgmentList' responses: '200': description: Deployment acknowledgement received successfully. content: application/json: schema: $ref: '#/components/schemas/DeploymentAcknowledgmentResponse' '400': description: Malformed deployment acknowledgment payload. content: application/json: schema: $ref: '#/components/schemas/Error' '500': description: Internal server error while processing deployment status. content: application/json: schema: $ref: '#/components/schemas/Error' default: description: Unexpected error. content: application/json: schema: $ref: '#/components/schemas/Error' components: schemas: SynapseAttributes: type: object properties: count: type: integer labels: type: array items: type: string apiId: type: string Error: type: object properties: code: type: integer format: int32 message: type: string fields: type: string BlockConditions: type: object properties: api: type: array items: type: string application: type: array items: type: string ip: type: array items: $ref: '#/components/schemas/IPLevel' user: type: array items: type: string custom: type: array items: type: string subscription: type: array items: type: string UUIDList: type: object properties: uuids: type: array items: type: string RevokedEvents: type: object properties: revokedJWTList: type: array items: $ref: '#/components/schemas/RevokedJWT' revokedJWTSubjectEntityList: type: array items: $ref: '#/components/schemas/RevokedJWTSubjectEntity' revokedJWTConsumerKeyList: type: array items: $ref: '#/components/schemas/RevokedJWTConsumerKey' RevokedJWT: type: object properties: jwt_signature: type: string description: signature of the JWT token. expiry_time: type: integer description: expiry timestamp. format: int64 RevokedJWTSubjectEntity: type: object properties: entity_id: type: string description: Subject Id of the revoked JWT(s). Can be user id or client id. entity_type: type: string description: Type of the subject id. User id or client id. revocation_time: type: integer description: revocation timestamp. format: int64 organization: type: string description: Organization of the revoked subject entity. RevokedJWTConsumerKey: type: object properties: consumer_key: type: string description: consumer key of the JWT. revocation_time: type: integer description: revocation timestamp. format: int64 type: type: string description: revoked consumer key type. organization: type: string description: organization of the revoked consumer key RevokeAPIKey: type: object properties: apiKey: type: string description: API Key token. expiryTime: type: integer description: expiry timestamp. format: int64 tenantId: type: integer description: expiry timestamp. format: int64 IPLevel: type: object properties: type: type: string example: iprange fixedIp: type: string description: IP address. startingIp: type: string description: Ip Range Starting IP endingIp: type: string description: Ip Range Ending IP. invert: type: boolean description: Condition is invert. tenantDomain: type: string id: type: integer APIList: title: API List type: object properties: count: type: integer description: | Number of APIs returned. example: 1 list: type: array items: $ref: '#/components/schemas/API' pagination: $ref: '#/components/schemas/Pagination' APIKey: type: object properties: apiKeyHash: type: string keyName: type: string keyType: type: string status: type: string expiresAt: type: integer format: int32 appId: type: integer additionalProperties: type: object properties: { } APIKeyList: title: API Key List type: object properties: count: type: integer description: | Number of API Keys returned. example: 1 list: type: array items: $ref: '#/components/schemas/APIKey' pagination: $ref: '#/components/schemas/Pagination' DeployedAPIRevision: title: Deployed revision information type: object properties: apiId: maxLength: 255 minLength: 0 type: string example: c26b2b9b-4632-4ca4-b6f3-521c8863990c revisionId: type: integer example: 1 envInfo: type: array items: $ref: '#/components/schemas/DeployedEnvInfo' UnDeployedAPIRevision: title: UnDeployed revision information type: object properties: apiUUID: maxLength: 255 minLength: 0 type: string example: c26b2b9b-4632-4ca4-b6f3-521c8863990c revisionUUID: maxLength: 255 minLength: 0 type: string example: c26b2b9b-4632-4ca4-b6f3-521c8863990c environment: maxLength: 255 minLength: 0 type: string example: Default DeployedEnvInfo: title: Environment information type: object properties: name: maxLength: 255 minLength: 1 type: string example: default vhost: maxLength: 255 minLength: 1 pattern: >- ^(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])$ type: string example: mg.wso2.com API: type: object properties: uuid: type: string description: UUID of API apiId: type: integer provider: type: string description: API Provider name. name: type: string description: Name of the API version: type: string description: Version of the API. context: type: string description: Context of the API. contextTemplate: type: string description: Context template of the API. policy: type: string description: API level throttling policy. apiType: type: string description: Type of the API. example: APIProduct status: type: string description: Type of the API. example: APIProduct organization: type: string description: Organization of the API. example: wso2.com isDefaultVersion: type: boolean description: Whether this is the default version of the API. example: false apiPolicies: type: array items: $ref: '#/components/schemas/OperationPolicy' urlMappings: type: array items: $ref: '#/components/schemas/URLMapping' securityScheme: type: string description: Available authentication methods of the API. example: 'Oauth2,api_key' isSubscriptionValidationDisabled: type: boolean description: Whether subscription validation is disabled. example: false default: false isEgress: type: boolean description: Indicates if the API is an egress API. example: false subtype: type: string description: The subtype of the API. example: Default synapseArtifact: type: object properties: apiId: type: string apiName: type: string description: API Provider name. version: type: string description: version of the API tenantDomain: type: string description: tenantDomain of the API gatewayLabel: type: string description: label of the API gatewayInstruction: type: string description: Publish/Remove bytesEncodedAsString: type: string description: bytes ApplicationList: title: Application List type: object properties: count: type: integer description: | Number of Applications returned. example: 1 list: type: array items: $ref: '#/components/schemas/Application' pagination: $ref: '#/components/schemas/Pagination' Application: type: object properties: uuid: type: string id: type: integer name: type: string subName: type: string policy: type: string description: Application level throtting policy. tokenType: type: string description: type of the token. example: JWT groupIds: type: array description: group ids associated with the application. example: wso2 items: $ref: '#/components/schemas/GroupId' attributes: type: object additionalProperties: type: string organization: type: string description: organization of application. GroupId: title: Application Group Id type: object properties: groupId: type: string applicationId: type: integer KeyManager: type: object properties: uuid: type: string name: type: string type: type: string enabled: type: boolean organization: type: string additionalProperties: type: object properties: {} tokenType: type: string description: >- The type of the tokens to be used (exchanged or without exchanged). Accepted values are EXCHANGED, DIRECT or BOTH. example: EXCHANGED default: DIRECT enum: - EXCHANGED - DIRECT - BOTH SubscriptionList: title: Application List type: object properties: count: type: integer description: | Number of Subscriptions returned. example: 1 list: type: array items: $ref: '#/components/schemas/Subscription' pagination: $ref: '#/components/schemas/Pagination' Subscription: type: object properties: subscriptionUUID: type: string subscriptionId: type: integer policyId: type: string apiUUID: type: string apiId: type: integer applicationUUID: type: string appId: type: integer subscriptionState: type: string apiName: type: string apiVersion: type: string apiOrganization: type: string applicationOrganization: type: string SynapseArtifactList: title: SynapseArtifactList type: object properties: count: type: integer description: | Number of Synapse Artifacts returned. example: 1 list: type: array items: type: string pagination: $ref: '#/components/schemas/Pagination' ApplicationKeyMappingList: title: ApplicationKeyMapping List type: object properties: count: type: integer description: | Number of ApplicationKeyMappings returned. example: 1 list: type: array items: $ref: '#/components/schemas/ApplicationKeyMapping' pagination: $ref: '#/components/schemas/Pagination' ApplicationKeyMapping: type: object properties: applicationId: type: integer applicationUUID: type: string consumerKey: type: string keyType: type: string keyManager: type: string ScopesList: title: Scopes List type: object properties: count: type: integer description: | Number of Scopes returned. example: 1 list: type: array items: $ref: '#/components/schemas/Scope' pagination: $ref: '#/components/schemas/Pagination' Scope: type: object properties: name: type: string displayName: type: string description: type: string roles: type: array items: type: string webhooksSubscriptionsList: title: Scopes List type: object properties: list: type: array items: $ref: '#/components/schemas/webhooksSubscription' pagination: $ref: '#/components/schemas/Pagination' webhooksSubscription: type: object properties: apiUUID: type: string description: The API UUID apiContext: type: string description: The API context. apiVersion: type: string description: The API version. tenantDomain: type: string description: The tenant domain. tenantId: type: integer description: The tenant id. example: -1234 appID: type: string description: The application ID of the subscription. example: '1' callbackURL: type: string description: The callback URL topicName: type: string description: The topic name. secret: type: string description: Secret value of the subscription. expiryTime: type: integer description: the expiry time in millis format: int64 tier: type: string description: the subscription tier. example: Bronze applicationTier: type: string description: the application tier. example: Unlimited apiTier: type: string description: the API tier. example: Bronze subscriberName: type: string description: the subscriber name. example: admin Policy: type: object properties: id: type: integer tenantId: type: integer tenantDomain: type: string name: type: string quotaType: type: string SubscriptionPolicyList: title: SubscriptionPolicy List type: object properties: count: type: integer description: | Number of SubscriptionPolices returned. example: 1 list: type: array items: $ref: '#/components/schemas/SubscriptionPolicy' pagination: $ref: '#/components/schemas/Pagination' SubscriptionPolicy: allOf: - $ref: '#/components/schemas/Policy' - $ref: '#/components/schemas/GraphQLQuery' - type: object properties: rateLimitCount: type: integer rateLimitTimeUnit: type: string stopOnQuotaReach: type: boolean defaultLimit: $ref: '#/components/schemas/ThrottleLimit' GraphQLQuery: title: GraphQL Query type: object properties: graphQLMaxComplexity: type: integer description: Maximum Complexity of the GraphQL query example: 400 graphQLMaxDepth: type: integer description: Maximum Depth of the GraphQL query example: 10 ApplicationPolicyList: title: ApplicationPolicy List type: object properties: count: type: integer description: | Number of ApplicationPolicies returned. example: 1 list: type: array items: $ref: '#/components/schemas/ApplicationPolicy' pagination: $ref: '#/components/schemas/Pagination' ApplicationPolicy: properties: defaultLimit: $ref: '#/components/schemas/ThrottleLimit' burstLimit: $ref: '#/components/schemas/BurstLimit' allOf: - $ref: '#/components/schemas/Policy' ApiPolicyList: title: ApiPolicy List type: object properties: count: type: integer description: | Number of Api Policies returned. example: 1 list: type: array items: $ref: '#/components/schemas/ApiPolicy' pagination: $ref: '#/components/schemas/Pagination' ApiPolicy: allOf: - $ref: '#/components/schemas/Policy' - type: object properties: conditionGroups: type: array items: $ref: '#/components/schemas/ApiPolicyConditionGroup' applicableLevel: type: string defaultLimit: $ref: '#/components/schemas/ThrottleLimit' ApiPolicyConditionGroup: type: object properties: policyId: type: integer quotaType: type: string conditionGroupId: type: integer condition: type: array items: $ref: '#/components/schemas/Condition' defaultLimit: $ref: '#/components/schemas/ThrottleLimit' Condition: type: object properties: conditionType: type: string name: type: string value: type: string isInverted: type: boolean GlobalPolicyList: title: Global Policy List type: object properties: count: type: integer description: | Number of Global Policies returned. example: 1 list: type: array items: $ref: '#/components/schemas/GlobalPolicy' pagination: $ref: '#/components/schemas/Pagination' GlobalPolicy: allOf: - $ref: '#/components/schemas/Policy' - type: object properties: siddhiQuery: type: string keyTemplate: type: string URLMapping: type: object properties: authScheme: type: string throttlingPolicy: type: string httpMethod: type: string urlPattern: type: string scopes: type: array items: type: string description: type: string schemaDefinition: type: string backendOperationMapping: $ref: '#/components/schemas/BackendOperationMapping' apiOperationMapping: $ref: '#/components/schemas/APIOperationMapping' operationPolicies: type: array items: $ref: '#/components/schemas/OperationPolicy' OperationPolicy: title: Operation Policy type: object properties: policyName: type: string policyVersion: type: string direction: type: string policyId: type: string order: type: integer parameters: type: object additionalProperties: type: object properties: {} Pagination: title: Pagination type: object properties: offset: type: integer example: 0 limit: type: integer example: 1 total: type: integer example: 10 next: type: string description: | Link to the next subset of resources qualified. Empty if no more resources are to be returned. previous: type: string description: | Link to the previous subset of resources qualified. Empty if current subset is the first subset returned. ThrottleLimitBase: title: Throttle Limit Base required: - timeUnit - unitTime type: object properties: timeUnit: type: string description: 'Unit of the time. Allowed values are "sec", "min", "hour", "day"' example: min unitTime: type: integer description: Time limit that the throttling limit applies. example: 10 ThrottleLimit: title: Throttle Limit type: object properties: quotaType: type: string requestCount: $ref: '#/components/schemas/RequestCountLimit' bandwidth: $ref: '#/components/schemas/BandwidthLimit' eventCount: $ref: '#/components/schemas/EventCountLimit' aiApiQuota: $ref: '#/components/schemas/AIAPIQuotaLimit' BurstLimit: title: Burst Limit object type: object properties: rateLimitCount: type: integer description: Burst control request count example: 10 rateLimitTimeUnit: type: string description: Burst control time unit example: min BandwidthLimit: title: Bandwidth Limit object allOf: - $ref: '#/components/schemas/ThrottleLimitBase' - required: - dataAmount - dataUnit type: object properties: dataAmount: type: integer description: Amount of data allowed to be transfered format: int64 example: 1000 dataUnit: type: string description: >- Unit of data allowed to be transfered. Allowed values are "KB", "MB" and "GB" example: KB RequestCountLimit: title: Request Count Limit object allOf: - $ref: '#/components/schemas/ThrottleLimitBase' - required: - requestCount type: object properties: requestCount: type: integer description: Maximum number of requests allowed format: int64 example: 1000 EventCountLimit: title: Event Count Limit object allOf: - $ref: '#/components/schemas/ThrottleLimitBase' - required: - eventCount type: object properties: eventCount: type: integer description: Maximum number of events allowed format: int64 example: 3000 AIAPIQuotaLimit: title: AI Quota Limit object allOf: - $ref: '#/components/schemas/ThrottleLimitBase' - required: - requestCount type: object properties: requestCount: type: integer description: Maximum number of requests allowed format: int64 example: 1000 totalTokenCount: type: integer description: Maximum number of total tokens allowed format: int64 example: 1000 promptTokenCount: type: integer description: Maximum number of prompt tokens allowed format: int64 example: 300 completionTokenCount: type: integer description: Maximum number of completion tokens allowed format: int64 example: 300 LLMProviderList: title: LLM Provider Config List type: object properties: llmProviders: type: array items: $ref: '#/components/schemas/LLMProvider' LLMProvider: title: LLM Provider type: object properties: id: type: string name: type: string apiVersion: type: string organization: type: string configurations: type: string APILoggingConfigList: title: apis type: object properties: apis: type: array items: $ref: '#/components/schemas/APILoggingConfig' APILoggingConfig: title: API Info object with log details required: - context - logLevel type: object properties: context: type: string example: pizashack/v1.0.0 logLevel: type: string example: all resourceMethod: type: string example: GET resourcePath: type: string example: /v1.0.0/pizza CorrelationComponentsList: title: correlation-components type: object properties: components: type: array items: $ref: '#/components/schemas/CorrelationComponent' CorrelationComponent: title: Correlation Component INFO object type: object properties: name: type: string example: http enabled: type: string example: 'true' properties: type: array items: $ref: '#/components/schemas/CorrelationComponentProperty' CorrelationComponentProperty: title: Properties for correlation components type: object properties: name: type: string example: deniedThreads value: type: array items: type: string example: MessageDeliveryTaskPool TransactionRecord: required: - count - id - recordedTime type: object properties: id: type: string serverID: type: string serverType: type: string host: type: string count: type: integer recordedTime: type: string TenantInfoList: title: TenantInfoList type: object properties: tenants: type: array items: $ref: '#/components/schemas/TenantInfo' TenantInfo: title: TenantInfo type: object properties: tenantId: type: integer admin: type: string domain: type: string adminFullName: type: string adminFirstName: type: string adminLastName: type: string email: type: string active: type: boolean EndpointCertificate: title: EndpointCertificate type: object properties: alias: type: string endpoint: type: string certificate: type: string tenantId: type: integer organization: type: string EndpointCertificateList: title: EndpointCertificateList type: object properties: certificates: type: array items: $ref: '#/components/schemas/EndpointCertificate' NotifyGatewayPayload: type: object required: - payloadType properties: payloadType: type: string enum: - REGISTER - HEARTBEAT description: | Indicates the type of payload. - "REGISTER": Gateway registration payload - "HEARTBEAT": Heartbeat update payload example: REGISTER gatewayProperties: $ref: '#/components/schemas/GatewayProperties' loadingTenants: type: array items: type: string description: List of tenant names example: ["tenant1.com", "tenant2.org", "carbon.super"] environmentLabels: type: array description: A list of environments this gateway supports. items: type: string example: ["default", "production", "sandbox"] gatewayId: type: string description: The unique identifier assigned to the newly registered gateway. timeStamp: type: integer description: The timestamp when the heartbeat was generated. format: int64 NotifyGatewayStatusResponse: type: object required: - status properties: status: type: string description: Response status enum: - REGISTERED - ACKNOWLEDGED example: REGISTERED gatewayId: type: string description: Returned if registration was successful. example: "ID_1" GatewayProperties: type: object description: Technical properties of the gateway instance. properties: ipAddress: type: string format: ipv4 description: The IP address of the gateway instance. example: "192.168.1.100" GatewayDeploymentStatusAcknowledgmentList: title: API Revision Deployment Status acknowledgements List type: object properties: count: type: integer description: | Number of APIs returned. example: 1 list: type: array items: $ref: '#/components/schemas/GatewayDeploymentStatusAcknowledgment' GatewayDeploymentStatusAcknowledgment: type: object required: - gatewayId - apiId - tenantDomain - deploymentStatus - timeStamp properties: gatewayId: type: string description: The unique identifier assigned to the newly registered gateway. apiId: type: string description: Unique identifier of the deployed API. example: "3c2240f2-33f1-4c6d-936e-74172ea864ab" tenantDomain: type: string deploymentStatus: type: string description: The final status of the deployment action. enum: [SUCCESS, FAILURE] timeStamp: type: integer description: The timestamp when the heartbeat was generated. format: int64 action: type: string description: The action performed by the gateway. enum: [DEPLOY, UNDEPLOY] revisionId: type: string description: Unique identifier of the API revision that was deployed or undeployed. example: "f46c7962-cd36-4aa6-b804-8d66ad6a0dc4" errorCode: type: integer description: A unique code identifying the error, present only if deploymentStatus is 'FAILURE'. errorMessage: type: string description: A descriptive error message, present only if deploymentStatus is 'FAILURE'. DeploymentAcknowledgmentResponse: type: object required: - status properties: status: type: string description: Response status enum: - RECEIVED - DROPPED example: RECEIVED BackendOperation: title: BackendOperation type: object properties: target: type: string verb: type: string BackendOperationMapping: title: BackendOperationMapping type: object properties: backendId: type: string backendOperation: $ref: '#/components/schemas/BackendOperation' APIOperationMapping: title: APIOperationMapping type: object properties: apiUUID: type: string apiName: type: string apiVersion: type: string apiContext: type: string backendOperation: $ref: '#/components/schemas/BackendOperation' parameters: requestedTenant: name: xWSO2Tenant in: header description: | This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string type: name: X-WSO2-KEY-MANAGER in: header description: | This is used to specify the tenant domain, where the resource need to be retrieved from. required: true schema: type: string Accept: name: Accept in: header description: | Media types acceptable for the response. Default is application/json. schema: type: string default: application/json