---
title: "Subscribe to a subscription validation disabled API"
method: POST
path: "/subscribe-internal"
tags: ["Subscription Validation"]
---

# Subscribe to a subscription validation disabled API

`POST /subscribe-internal`

This will allow creating subscriptions from applications to APIs which have
subscription validation disabled.

## Query parameters

- `appId` integer
- `appUuid` string

## Headers

- `xWSO2Tenant` string, required

## Request body

- API
  - `uuid` string — UUID of API
  - `apiId` integer
  - `provider` string — API Provider name.
  - `name` string — Name of the API
  - `version` string — Version of the API.
  - `context` string — Context of the API.
  - `policy` string — API level throttling policy.
  - `apiType` string — Type of the API.
  - `status` string — Type of the API.
  - `organization` string — Organization of the API.
  - `isDefaultVersion` boolean — Whether this is the default version of the API.
  - `apiPolicies` OperationPolicy[]
    - `policyName` string
    - `policyVersion` string
    - `direction` string
    - `policyId` string
    - `order` integer
    - `parameters` object
  - `urlMappings` URLMapping[]
    - `authScheme` string
    - `throttlingPolicy` string
    - `httpMethod` string
    - `urlPattern` string
    - `scopes` string[]
    - `operationPolicies` OperationPolicy[]
      - `policyName` string
      - `policyVersion` string
      - `direction` string
      - `policyId` string
      - `order` integer
      - `parameters` object
  - `securityScheme` string — Available authentication methods of the API.
  - `isSubscriptionValidationDisabled` boolean — Whether subscription validation is disabled.
  - `aiConfiguration` AIConfiguration
    - `aiEndpointConfiguration` AIEndpointConfiguration
      - `sandboxAuthValue` string — Authorization value for the sandbox environment.
      - `productionAuthValue` string — Authorization value for the production environment.
    - `llmProviderId` string — UUID of the LLM (Large Language Model) provider.
    - `tokenBasedThrottlingConfiguration` TokenBaseThrottlingCountHolder
      - `productionMaxPromptTokenCount` string — Maximum allowed prompt token count for production.
      - `productionMaxCompletionTokenCount` string — Maximum allowed completion token count for production.
      - `productionMaxTotalTokenCount` string — Maximum total token count allowed for production.
      - `sandboxMaxPromptTokenCount` string — Maximum allowed prompt token count for sandbox.
      - `sandboxMaxCompletionTokenCount` string — Maximum allowed completion token count for sandbox.
      - `sandboxMaxTotalTokenCount` string — Maximum total token count allowed for sandbox.
      - `isTokenBasedThrottlingEnabled` boolean — Whether token-based throttling is enabled.

## Response `201`

Subscription created successfully

- Subscription
  - `subscriptionUUID` string
  - `subscriptionId` integer
  - `policyId` string
  - `apiUUID` string
  - `apiId` integer
  - `applicationUUID` string
  - `appId` integer
  - `subscriptionState` string
  - `apiName` string
  - `apiVersion` string
  - `apiOrganization` string
  - `applicationOrganization` string

## Other responses

- `default` — Unexpected error

## Changes

- **2024-09-24** `592559e42ee4` — 1 info
  - endpoint added
- **2024-09-09** `ad3cb629396d` — 1 breaking
  - api path removed without deprecation
- **2024-08-31** `cc511f225921` — 1 info
  - endpoint added
- **2024-01-29** `f2e9e07fd354` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/wso2/apis/internal-utility-api/changes/subscribe-internal/post.md)

---

[API](https://skmtc.dev/wso2/apis/internal-utility-api.md) · [All operations](https://skmtc.dev/wso2/apis/internal-utility-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/wso2/internal-utility-api/revisions/cccd0bd09cf3/schema)
