> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mka1.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Add a cluster-owned model

> Adds an operator-owned, database-sourced model that a cluster admin can grant to orgs (see /models/cluster_registry). Cluster admin only.



## OpenAPI

````yaml https://apigw.mka1.com/speakeasy.json post /api/v1/llm/models/registry/cluster
openapi: 3.1.1
info:
  title: MKA1 API
  version: 1.1.0
  description: >-
    The MKA1 API is a RESTful API that provides access to the MKA1 platform.
    Learn how to get started with the API and the TypeScript SDK
    [here](https://mka1.apidocumentation.com/guides/getting-started).
  license:
    name: Proprietary
servers:
  - url: https://apigw.mka1.com
    description: MKA1 API Gateway
  - url: /
    description: Relative server URL (configurable via SDK constructor)
security: []
tags:
  - name: Resource Authorization
    description: >-
      Manage permissions for LLM resources. Create resources, grant/revoke
      permissions, and delete resources. Only resource owners can grant, revoke,
      or delete permissions.
    x-displayName: Resource Authorization
  - name: Embeddings
    description: >-
      Text embedding API endpoints for generating vector representations of
      text. Create semantic embeddings for search, clustering, and similarity
      matching using various embedding models.
    x-displayName: Embeddings
  - name: Feedback
    description: >-
      User feedback API for rating and commenting on chat completions. Collect
      thumbs up/down ratings and detailed feedback to improve model responses
      and track user satisfaction.
    x-displayName: Feedback
  - name: Images
    description: >-
      Image generation API endpoints for creating images from text descriptions.
      Generate images with control over size, quality, and style.
    x-displayName: Images
  - name: MCP Vault
    description: >-
      MCP vault API for storing user-owned MCP server configurations and
      encrypted credentials. Agents reference vault IDs so secrets are resolved
      only at tool execution time.
    x-displayName: MCP Vault
  - name: Speech
    description: >-
      Speech API endpoints for audio processing. Convert text to
      natural-sounding speech (TTS) or transcribe speech to text (STT) in
      different languages.
    x-displayName: Speech
  - name: Usage
    description: >-
      Usage tracking and analytics API for monitoring token consumption, request
      counts, and cost analysis. View detailed statistics per user, model, and
      time period.
    x-displayName: Usage
  - name: Extract
    description: >-
      Structured data extraction API for extracting information from files.
      Define JSON schemas to extract structured data from images, PDFs, and
      documents. Supports reusable schema templates.
    x-displayName: Extract
  - name: Text Classification
    description: >-
      Text classification API for categorizing text into predefined labels. Use
      AI models to classify text content for sentiment analysis, topic
      categorization, and content moderation.
    x-displayName: Text Classification
  - name: Responses
    description: >-
      Agent-powered responses API for creating AI agents with autonomous tool
      usage. Build conversational assistants that can use web search, file
      operations, image generation, code execution, computer use simulation, and
      MCP integrations. Supports background processing, streaming, and real-time
      status tracking.
    x-displayName: Responses
  - name: Files
    description: >-
      File management API for uploading, storing, and managing files with
      automatic expiration and S3 integration. Upload files that can be used
      with Assistants, Vector Stores, and other features. Files are stored in S3
      with metadata tracked in PostgreSQL. Supports automatic cleanup of expired
      files.
    x-displayName: Files
  - name: Vector Stores
    description: >-
      Vector store API for storing and searching documents using embeddings.
      Create vector stores, upload files with automatic chunking and embedding
      generation, and perform semantic search. Files are processed
      asynchronously using Temporal workflows for durability. Supports automatic
      cleanup of expired stores and LanceDB for efficient vector storage.
    x-displayName: Vector Stores
  - name: Conversations
    description: >-
      Conversation management API for storing and retrieving conversation state
      across Response API calls. Create conversations, add items (user messages,
      assistant messages, system messages), and maintain conversation history.
      Supports metadata tracking and multi-turn dialogue state management.
    x-displayName: Conversations
  - name: Guardrails
    description: >-
      AI safety guardrails API for configuring content moderation and security
      policies. Set up ban word lists, prompt injection detection, and system
      prompt leakage prevention. Guardrails apply to all requests from an
      account and can be tested before deployment.
    x-displayName: Guardrails
  - name: Models
    description: >-
      Model listing API for discovering available models. Returns model IDs,
      ownership, and metadata for all registered models in the gateway.
    x-displayName: Models
  - name: Skills
    description: >-
      Skills API for managing versioned bundles of instructions and files
      following the Agent Skills standard. Create, version, and download
      reusable skill packages that include SKILL.md manifests for agent
      environments.
    x-displayName: Skills
  - name: Chat Completions
    description: >-
      **Deprecated: Use the Responses API (`/api/v1/llm/responses`) instead.**
      Chat completion endpoints with support for streaming, tool calls, and
      multiple providers.
    x-deprecated: true
    x-displayName: Chat Completions
  - name: Batches
    x-displayName: Batches
  - name: Evals
    x-displayName: Evals
  - name: Fine-Tuning
    x-displayName: Fine-Tuning
  - name: Memory Stores
    x-displayName: Memory Stores
  - name: Prompts
    x-displayName: Prompts
  - name: Tables
    description: Manage table schemas, data operations, search, and indices.
    x-displayName: Tables
  - name: Text Store
    description: >-
      Manage text stores with hybrid (vector + full-text) search and grouped
      text sets.
    x-displayName: Text Store
  - name: GraphRAG
    description: >-
      Construct and query lightweight knowledge graphs backed by Redis and
      LanceDB.
    x-displayName: GraphRAG
  - name: API Key
    x-displayName: API Key
  - name: Organization
    x-displayName: Organization
  - name: Cluster Admin
    x-displayName: Cluster Admin
  - name: Sessions
    description: Create, inspect, access, and terminate sandbox sessions.
    x-displayName: Sessions
  - name: Browser
    description: >-
      Connect to browser sessions through the gateway port proxy. Browser
      sessions expose a Chrome DevTools Protocol endpoint on port 9222.
    x-displayName: Browser
  - name: Execution
    description: Run shell commands and code inside an existing sandbox session.
    x-displayName: Execution
  - name: Workspace
    description: >-
      Inspect the workspace manifest, transfer files or archives, and download
      generated artifacts.
    x-displayName: Workspace
  - name: Sandbox Usage
    description: >-
      Aggregate sandbox usage statistics across sessions, execution, and
      workspace operations.
    x-displayName: Sandbox Usage
  - name: Sandbox Pricing
    description: >-
      Cluster-admin management of the sandbox compute rate card used for
      budgeted spend.
    x-displayName: Sandbox Pricing
  - name: Agents
    description: Create and manage reusable agent definitions.
    x-displayName: Agents
  - name: Agent Versions
    description: Inspect an agent's configuration history and roll back to a prior version.
    x-displayName: Agent Versions
  - name: Agent Runs
    description: Execute saved agents and inspect persisted run results.
    x-displayName: Agent Runs
  - name: Agent Schedules
    description: Create and manage scheduled or recurring saved agent runs.
    x-displayName: Agent Schedules
  - name: schema-5_other
    x-displayName: other
  - name: Budgets
    x-displayName: Budgets
  - name: Settings
    x-displayName: Settings
  - name: Deployments
    description: Long-lived inference servers.
    x-displayName: Deployments
  - name: Fine-Tune Jobs
    description: Submit, monitor, and cancel fine-tune jobs.
    x-displayName: Fine-Tune Jobs
  - name: Container Images
    description: Custom container images for deployments and jobs.
    x-displayName: Container Images
  - name: Serving Models
    description: Models registered for deployment and fine-tuning.
    x-displayName: Serving Models
  - name: Volumes
    description: Persistent storage for weights and checkpoints.
    x-displayName: Volumes
  - name: Secrets
    description: Credentials injected into your workloads.
    x-displayName: Secrets
  - name: Accelerators
    description: Available accelerator types (GPU, NPU, TPU).
    x-displayName: Accelerators
paths:
  /api/v1/llm/models/registry/cluster:
    post:
      tags:
        - Models
      summary: Add a cluster-owned model
      description: >-
        Adds an operator-owned, database-sourced model that a cluster admin can
        grant to orgs (see /models/cluster_registry). Cluster admin only.
      operationId: addClusterRegistryModel
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddRegistryModelRequest'
            example:
              id: meetkai:my-custom-chat-v1
              provider: openai-compatible
              modelId: my-custom-chat-v1
              displayName: My Custom Chat v1
              baseUrl: https://models.example.com/v1
              apiFormat: responses
              created: 1704067200
              auth:
                type: api-key
                value: sk-your-provider-api-key
              capabilities:
                modalities:
                  input:
                    - text
                  output:
                    - text
                reasoning: true
                supportsTemperature: true
                supportsTopP: true
              contextWindow: 131072
              rpm: 120
              defaultParams:
                temperature: 0.2
                topP: 0.95
              hidden: false
              healthCheck:
                url: https://models.example.com/health
                method: GET
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryModelResponse'
              example:
                id: meetkai:my-custom-chat-v1
                provider: openai-compatible
                model_id: my-custom-chat-v1
                source: database
                immutable: false
                definition:
                  id: meetkai:my-custom-chat-v1
                  provider: openai-compatible
                  modelId: my-custom-chat-v1
                  displayName: My Custom Chat v1
                  baseUrl: https://models.example.com/v1
                  apiFormat: responses
                  created: 1704067200
                  auth:
                    type: api-key
                    value: '****'
                  capabilities:
                    modalities:
                      input:
                        - text
                      output:
                        - text
                    reasoning: true
                    supportsTemperature: true
                    supportsTopP: true
                  contextWindow: 131072
                  rpm: 120
                  defaultParams:
                    temperature: 0.2
                    topP: 0.95
                  hidden: false
                  healthCheck:
                    mode: preflight
                    path: /models
                  source: database
                  immutable: false
                health:
                  is_available: true
                  last_health_check: 1704067200000
                  error: null
                created_at: 1704067200000
                updated_at: 1704153600000
      security:
        - bearerAuth: []
      x-codeSamples:
        - lang: csharp
          label: CSharp (SDK)
          source: |-
            using MeetKai.MKA1;
            using MeetKai.MKA1.Types.Components;
            using System.Collections.Generic;

            var sdk = new SDK(bearerAuth: "<YOUR_BEARER_TOKEN_HERE>");

            AddRegistryModelRequest req = new AddRegistryModelRequest() {
                Id = "meetkai:my-custom-chat-v1",
                Provider = "openai-compatible",
                ModelId = "my-custom-chat-v1",
                DisplayName = "My Custom Chat v1",
                BaseUrl = "https://models.example.com/v1",
                ApiFormat = AutoEndpoint.Responses,
                ApiProviderType = AddRegistryModelRequestApiProviderType.Groq,
                Created = 1704067200,
                Auth = AddRegistryModelRequestAuthUnion.CreateApiKey(
                    new AddRegistryModelRequestAuth1() {
                        Value = "sk-your-provider-api-key",
                    }
                ),
                Capabilities = new AddRegistryModelRequestCapabilities() {
                    Modalities = new AddRegistryModelRequestModalities() {
                        Input = new List<AddRegistryModelRequestInput>() {
                            AddRegistryModelRequestInput.Text,
                        },
                        Output = new List<AddRegistryModelRequestOutput>() {
                            AddRegistryModelRequestOutput.Text,
                        },
                    },
                    Reasoning = true,
                    SupportsTemperature = true,
                    SupportsTopP = true,
                },
                ContextWindow = 131072,
                Rpm = 120,
                DefaultParams = new AddRegistryModelRequestDefaultParams() {
                    Temperature = 0.2D,
                    TopP = 0.95D,
                },
                Hidden = false,
                HealthCheck = AddRegistryModelRequestHealthCheckUnion.CreatePreflight(
                    new AddRegistryModelRequestHealthCheck2() {
                        Path = "/home",
                    }
                ),
            };

            var res = await sdk.Llm.Models.AddClusterRegistryModelAsync(req);

            // handle response
        - lang: python
          label: Python (SDK)
          source: |-
            from meetkai_mka1 import SDK


            with SDK(
                bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
            ) as sdk:

                res = sdk.llm.models.add_cluster_registry_model(id="meetkai:my-custom-chat-v1", provider="openai-compatible", model_id="my-custom-chat-v1", api_format="responses", api_provider_type="groq", created=1704067200, auth={
                    "type": "api-key",
                    "value": "sk-your-provider-api-key",
                }, capabilities={
                    "modalities": {
                        "input": [
                            "text",
                        ],
                        "output": [
                            "text",
                        ],
                    },
                    "reasoning": True,
                    "supports_temperature": True,
                    "supports_top_p": True,
                }, display_name="My Custom Chat v1", base_url="https://models.example.com/v1", context_window=131072, rpm=120, default_params={
                    "temperature": 0.2,
                    "top_p": 0.95,
                }, hidden=False, health_check={
                    "mode": "preflight",
                    "path": "/home",
                })

                # Handle response
                print(res)
        - lang: typescript
          label: Typescript (SDK)
          source: |-
            import { SDK } from "@meetkai/mka1";

            const sdk = new SDK({
              bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
            });

            async function run() {
              const result = await sdk.llm.models.addClusterRegistryModel({
                id: "meetkai:my-custom-chat-v1",
                provider: "openai-compatible",
                modelId: "my-custom-chat-v1",
                displayName: "My Custom Chat v1",
                baseUrl: "https://models.example.com/v1",
                apiFormat: "responses",
                apiProviderType: "groq",
                created: 1704067200,
                auth: {
                  type: "api-key",
                  value: "sk-your-provider-api-key",
                },
                capabilities: {
                  modalities: {
                    input: [
                      "text",
                    ],
                    output: [
                      "text",
                    ],
                  },
                  reasoning: true,
                  supportsTemperature: true,
                  supportsTopP: true,
                },
                contextWindow: 131072,
                rpm: 120,
                defaultParams: {
                  temperature: 0.2,
                  topP: 0.95,
                },
                hidden: false,
                healthCheck: {
                  mode: "preflight",
                  path: "/home",
                },
              });

              console.log(result);
            }

            run();
components:
  schemas:
    AddRegistryModelRequest:
      type: object
      properties:
        id:
          type: string
        provider:
          type: string
        modelId:
          type: string
        displayName:
          type: string
        baseUrl:
          type: string
          format: uri
        apiFormat:
          $ref: '#/components/schemas/AutoEndpoint'
        apiProviderType:
          enum:
            - groq
            - azure
            - meetkai
            - meetkaiGateway
            - fal
            - openai
        created:
          type: integer
          minimum: 0
          maximum: 9007199254740991
        auth:
          anyOf:
            - type: object
              properties:
                type:
                  const: api-key
                value:
                  type: string
                envVar:
                  type: string
                headerName:
                  type: string
              required:
                - type
              additionalProperties: false
            - type: object
              properties:
                type:
                  const: custom-headers
                headers:
                  type: object
                  propertyNames:
                    type: string
                  additionalProperties:
                    type: string
                envVars:
                  type: object
                  propertyNames:
                    type: string
                  additionalProperties:
                    type: string
              required:
                - type
                - headers
              additionalProperties: false
            - type: object
              properties:
                type:
                  const: none
              required:
                - type
              additionalProperties: false
            - type: object
              properties:
                type:
                  const: composite
                strategies:
                  type: array
                  minItems: 1
                  items:
                    anyOf:
                      - type: object
                        properties:
                          type:
                            const: api-key
                          value:
                            type: string
                          envVar:
                            type: string
                          headerName:
                            type: string
                        required:
                          - type
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            const: custom-headers
                          headers:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties:
                              type: string
                          envVars:
                            type: object
                            propertyNames:
                              type: string
                            additionalProperties:
                              type: string
                        required:
                          - type
                          - headers
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            const: none
                        required:
                          - type
                        additionalProperties: false
                      - type: object
                        properties:
                          type:
                            const: composite
                          strategies:
                            type: array
                            minItems: 1
                            items:
                              anyOf:
                                - type: object
                                  properties:
                                    type:
                                      const: api-key
                                    value:
                                      type: string
                                    envVar:
                                      type: string
                                    headerName:
                                      type: string
                                  required:
                                    - type
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    type:
                                      const: custom-headers
                                    headers:
                                      type: object
                                      propertyNames:
                                        type: string
                                      additionalProperties:
                                        type: string
                                    envVars:
                                      type: object
                                      propertyNames:
                                        type: string
                                      additionalProperties:
                                        type: string
                                  required:
                                    - type
                                    - headers
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    type:
                                      const: none
                                  required:
                                    - type
                                  additionalProperties: false
                                - type: object
                                  properties:
                                    type:
                                      const: composite
                                    strategies: {}
                                  required:
                                    - type
                                  additionalProperties: false
                        required:
                          - type
                          - strategies
                        additionalProperties: false
              required:
                - type
                - strategies
              additionalProperties: false
        capabilities:
          type: object
          properties:
            modalities:
              type: object
              properties:
                input:
                  type: array
                  minItems: 1
                  items:
                    enum:
                      - text
                      - image
                      - audio
                      - video
                output:
                  type: array
                  minItems: 1
                  items:
                    enum:
                      - text
                      - image
                      - audio
                      - video
              required:
                - input
                - output
              additionalProperties: false
            reasoning:
              type: boolean
            supportedBase64Formats:
              type: array
              items:
                type: string
            supportsCompletionVideoUrlMessage:
              type: boolean
            supportsTemperature:
              type: boolean
            supportsTopP:
              type: boolean
            maxImageResolution:
              type: object
              properties:
                maxWidth:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
                maxHeight:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
              required:
                - maxWidth
                - maxHeight
              additionalProperties: false
            minImageResolution:
              type: object
              properties:
                maxWidth:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
                maxHeight:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
              required:
                - maxWidth
                - maxHeight
              additionalProperties: false
          required:
            - modalities
            - reasoning
          additionalProperties: false
        contextWindow:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          exclusiveMinimum: 0
        rpm:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          exclusiveMinimum: 0
        rateLimits:
          type: array
          items:
            type: object
            properties:
              scope:
                enum:
                  - global
                  - org
                  - user
                  - apiKey
                  - externalUser
              rpm:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
                exclusiveMinimum: 0
              duration:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
                exclusiveMinimum: 0
              queue:
                type: object
                properties:
                  maxDepth:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 1000
                    exclusiveMinimum: 0
                  maxWaitMs:
                    type: integer
                    minimum: -9007199254740991
                    maximum: 120000
                    exclusiveMinimum: 0
                required:
                  - maxDepth
                  - maxWaitMs
                additionalProperties: false
            required:
              - scope
              - rpm
            additionalProperties: false
        defaultParams:
          type: object
          properties:
            temperature:
              type: number
              minimum: 0
              maximum: 2
            topP:
              type: number
              minimum: 0
              maximum: 1
            presencePenalty:
              type: number
              minimum: -2
              maximum: 2
            frequencyPenalty:
              type: number
              minimum: -2
              maximum: 2
          additionalProperties: false
        rerouteRules:
          type: array
          items:
            type: object
            properties:
              trigger:
                anyOf:
                  - type: object
                    properties:
                      type:
                        const: input-modality
                      modality:
                        enum:
                          - text
                          - image
                          - audio
                          - video
                    required:
                      - type
                      - modality
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        const: base64-input
                    required:
                      - type
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        const: context-exceeded
                    required:
                      - type
                    additionalProperties: false
                  - type: object
                    properties:
                      type:
                        const: error-fallback
                    required:
                      - type
                    additionalProperties: false
              targetModelId:
                type: string
              preserveParams:
                type: boolean
              log:
                type: boolean
            required:
              - trigger
              - targetModelId
            additionalProperties: false
        hidden:
          type: boolean
        embeddingLimits:
          type: object
          properties:
            maxBatchSize:
              type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
              exclusiveMinimum: 0
            dimensions:
              anyOf:
                - type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
                - type: object
                  properties:
                    min:
                      type: integer
                      minimum: -9007199254740991
                      maximum: 9007199254740991
                      exclusiveMinimum: 0
                    max:
                      type: integer
                      minimum: -9007199254740991
                      maximum: 9007199254740991
                      exclusiveMinimum: 0
                    default:
                      type: integer
                      minimum: -9007199254740991
                      maximum: 9007199254740991
                      exclusiveMinimum: 0
                  required:
                    - min
                    - max
                    - default
                  additionalProperties: false
          additionalProperties: false
        healthCheck:
          anyOf:
            - type: object
              properties:
                mode:
                  const: 'off'
              required:
                - mode
              additionalProperties: false
            - type: object
              properties:
                mode:
                  const: preflight
                path:
                  type: string
                  minLength: 1
                method:
                  enum:
                    - GET
                    - HEAD
                timeoutMs:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
                cacheTtlSeconds:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
              required:
                - mode
                - path
              additionalProperties: false
            - type: object
              properties:
                mode:
                  const: periodic
                intervalSeconds:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
                path:
                  type: string
                  minLength: 1
                method:
                  enum:
                    - GET
                    - HEAD
                timeoutMs:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
                cacheTtlSeconds:
                  type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                  exclusiveMinimum: 0
              required:
                - mode
                - intervalSeconds
                - path
              additionalProperties: false
      required:
        - id
        - provider
        - modelId
        - apiFormat
        - apiProviderType
        - created
        - auth
        - capabilities
    RegistryModelResponse:
      type: object
      properties:
        id:
          type: string
        provider:
          type: string
        model_id:
          type: string
        source:
          type: string
        immutable:
          type: boolean
        definition:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
        health:
          type: object
          properties:
            is_available:
              type: boolean
            last_health_check:
              anyOf:
                - type: number
                - type: 'null'
            error:
              anyOf:
                - type: string
                - type: 'null'
          required:
            - is_available
            - last_health_check
            - error
        created_at:
          anyOf:
            - type: number
            - type: 'null'
        updated_at:
          anyOf:
            - type: number
            - type: 'null'
      required:
        - id
        - provider
        - model_id
        - source
        - immutable
        - definition
        - health
        - created_at
        - updated_at
    AutoEndpoint:
      enum:
        - responses
        - completions
        - embeddings
        - images
        - transcriptions
        - tts
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        Gateway auth: send `Authorization: Bearer <mka1-api-key>`. For
        multi-user server-side integrations, you can also send `X-On-Behalf-Of:
        <external-user-id>`.

````