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

# List a provider's endpoints with provider-wide stats

> Returns every endpoint the provider serves, hidden ones included, with the provider-wide uptime, routing, latency and throughput stats over the window. Requires provider ownership, membership, or admin access.



## OpenAPI

````yaml /openapi/openapi.yaml get /providers/{provider_slug}/endpoints
openapi: 3.1.0
info:
  contact:
    email: support@openrouter.ai
    name: OpenRouter Support
    url: https://openrouter.ai/docs
  description: OpenAI-compatible API with additional OpenRouter features
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  title: OpenRouter API
  version: 1.0.0
servers:
  - description: Production server
    url: https://openrouter.ai/api/v1
    x-speakeasy-server-id: production
security:
  - apiKey: []
tags:
  - description: API key management endpoints
    name: API Keys
  - description: Analytics and usage endpoints
    name: Analytics
  - description: Anthropic Messages endpoints
    name: Anthropic Messages
  - description: BYOK endpoints
    name: BYOK
  - description: >-
      Submit, list, poll, and delete asynchronous batches of inference requests.
      See https://openrouter.ai/docs/batch-quickstart.
    name: Batch
  - description: Benchmarks endpoints
    name: Benchmarks
  - description: Chat completion endpoints
    name: Chat
  - description: Task classification market-share endpoints
    name: Classifications
  - description: Containers endpoints
    name: Containers
  - description: Credit management endpoints
    name: Credits
  - description: >-
      Public OpenRouter usage datasets. Data returned by these endpoints is
      licensed under CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/):
      reuse and republish it, including commercially, with attribution to
      OpenRouter.
    name: Datasets
  - description: Text embedding endpoints
    name: Embeddings
  - description: Endpoint information
    name: Endpoints
  - description: External Users endpoints
    name: External Users
  - description: Files endpoints
    name: Files
  - description: Generation history endpoints
    name: Generations
  - description: Guardrails endpoints
    name: Guardrails
  - description: Images endpoints
    name: Images
  - description: Model information endpoints
    name: Models
  - description: OAuth authentication endpoints
    name: OAuth
  - description: Observability endpoints
    name: Observability
  - description: Organization endpoints
    name: Organization
  - description: Presets endpoints
    name: Presets
  - description: Private Endpoints endpoints
    name: Private Endpoints
  - description: Private Providers endpoints
    name: Private Providers
  - description: Provider information endpoints
    name: Providers
  - description: Rerank endpoints
    name: Rerank
  - description: OpenAI-compatible Responses API endpoints
    name: Responses
  - description: >-
      Management endpoints for SCIM group-to-workspace mappings, authenticated
      with a management key. These are not the SCIM 2.0 connector endpoints for
      your identity provider. In your identity provider, enter the SCIM endpoint
      URL shown when you enable provisioning under Settings > Members > SCIM
      Mappings. See
      https://openrouter.ai/docs/guides/features/scim-mappings#set-up-provisioning.
    name: SCIM
  - description: Speech-to-text endpoints
    name: STT
    x-displayName: Transcriptions
  - description: >-
      System One endpoints for models such as Jev, compatible with the TypeSafe
      SDKs. See https://openrouter.ai/docs/guides/community/typesafe-sdk.
    name: SystemOne
    x-displayName: System One
  - description: Text-to-speech endpoints
    name: TTS
    x-displayName: Speech
  - description: >-
      The catalog of server tools OpenRouter runs on behalf of a model: accepted
      `tools[].type` spellings per API format, engines and pricing, and which
      endpoints run each tool natively. See
      https://openrouter.ai/docs/guides/features/server-tools.
    name: Tools
  - description: >-
      Store host-bound secrets for a workspace or for one intern. Scope is
      selected by the API key. Responses return metadata only, never secret
      values. See https://openrouter.ai/docs/guides/ori/vault.
    name: Vault
  - description: Video Generation endpoints
    name: Video Generation
  - description: Workspaces endpoints
    name: Workspaces
  - description: Alpha feature endpoints for Decisions requests
    name: alpha.decisions
  - description: Alpha feature endpoints for Extractions requests
    name: alpha.extractions
externalDocs:
  description: OpenRouter Documentation
  url: https://openrouter.ai/docs
paths:
  /providers/{provider_slug}/endpoints:
    get:
      tags:
        - Providers
      summary: List a provider's endpoints with provider-wide stats
      description: >-
        Returns every endpoint the provider serves, hidden ones included, with
        the provider-wide uptime, routing, latency and throughput stats over the
        window. Requires provider ownership, membership, or admin access.
      operationId: listProviderEndpoints
      parameters:
        - description: URL-friendly provider identifier (e.g. "openai", "fireworks")
          in: path
          name: provider_slug
          required: true
          schema:
            description: URL-friendly provider identifier (e.g. "openai", "fireworks")
            example: fireworks
            type: string
        - description: Time window the provider-wide stats cover
          in: query
          name: window
          required: false
          schema:
            default: 1mo
            description: Time window the provider-wide stats cover
            enum:
              - 1hr
              - 1d
              - 1w
              - 1mo
              - 1y
            example: 1d
            type: string
        - description: >-
            Workload the latency and throughput stats measure; defaults to the
            workload most of the endpoints serve
          in: query
          name: perf_workload
          required: false
          schema:
            description: >-
              Workload the latency and throughput stats measure; defaults to the
              workload most of the endpoints serve
            enum:
              - text_generation
              - image_generation
              - video_generation
              - embeddings
              - rerank
              - tts
              - stt
              - decisions
              - extractions
              - unknown
            example: text_generation
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderEndpointsResponse'
          description: The provider's endpoints and provider-wide stats
        '400':
          content:
            application/json:
              example:
                error:
                  code: 400
                  message: Invalid request parameters
              schema:
                $ref: '#/components/schemas/BadRequestResponse'
          description: Bad Request - Invalid request parameters or malformed input
        '401':
          content:
            application/json:
              example:
                error:
                  code: 401
                  message: Missing Authentication header
              schema:
                $ref: '#/components/schemas/UnauthorizedResponse'
          description: Unauthorized - Authentication required or invalid credentials
        '403':
          content:
            application/json:
              example:
                error:
                  code: 403
                  message: Only management keys can perform this operation
              schema:
                $ref: '#/components/schemas/ForbiddenResponse'
          description: Forbidden - Authentication successful but insufficient permissions
        '404':
          content:
            application/json:
              example:
                error:
                  code: 404
                  message: Resource not found
              schema:
                $ref: '#/components/schemas/NotFoundResponse'
          description: Not Found - Resource does not exist
        '429':
          content:
            application/json:
              example:
                error:
                  code: 429
                  message: Rate limit exceeded
              schema:
                $ref: '#/components/schemas/TooManyRequestsResponse'
          description: Too Many Requests - Rate limit exceeded
        '500':
          content:
            application/json:
              example:
                error:
                  code: 500
                  message: Internal Server Error
              schema:
                $ref: '#/components/schemas/InternalServerResponse'
          description: Internal Server Error - Unexpected server error
components:
  schemas:
    ProviderEndpointsResponse:
      properties:
        data:
          $ref: '#/components/schemas/ProviderEndpoints'
      required:
        - data
      type: object
    BadRequestResponse:
      description: Bad Request - Invalid request parameters or malformed input
      example:
        error:
          code: 400
          message: Invalid request parameters
      properties:
        error:
          $ref: '#/components/schemas/BadRequestResponseErrorData'
        openrouter_metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
        user_id:
          type:
            - string
            - 'null'
      required:
        - error
      type: object
    UnauthorizedResponse:
      description: Unauthorized - Authentication required or invalid credentials
      example:
        error:
          code: 401
          message: Missing Authentication header
      properties:
        error:
          $ref: '#/components/schemas/UnauthorizedResponseErrorData'
        openrouter_metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
        user_id:
          type:
            - string
            - 'null'
      required:
        - error
      type: object
    ForbiddenResponse:
      description: Forbidden - Authentication successful but insufficient permissions
      example:
        error:
          code: 403
          message: Only management keys can perform this operation
      properties:
        error:
          $ref: '#/components/schemas/ForbiddenResponseErrorData'
        openrouter_metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
        user_id:
          type:
            - string
            - 'null'
      required:
        - error
      type: object
    NotFoundResponse:
      description: Not Found - Resource does not exist
      example:
        error:
          code: 404
          message: Resource not found
      properties:
        error:
          $ref: '#/components/schemas/NotFoundResponseErrorData'
        openrouter_metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
        user_id:
          type:
            - string
            - 'null'
      required:
        - error
      type: object
    TooManyRequestsResponse:
      description: Too Many Requests - Rate limit exceeded
      example:
        error:
          code: 429
          message: Rate limit exceeded
      properties:
        error:
          $ref: '#/components/schemas/TooManyRequestsResponseErrorData'
        openrouter_metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
        user_id:
          type:
            - string
            - 'null'
      required:
        - error
      type: object
    InternalServerResponse:
      description: Internal Server Error - Unexpected server error
      example:
        error:
          code: 500
          message: Internal Server Error
      properties:
        error:
          $ref: '#/components/schemas/InternalServerResponseErrorData'
        openrouter_metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
        user_id:
          type:
            - string
            - 'null'
      required:
        - error
      type: object
    ProviderEndpoints:
      properties:
        endpoints:
          items:
            $ref: '#/components/schemas/EndpointSummary'
          type: array
        stats:
          $ref: '#/components/schemas/ProviderEndpointStats'
        window:
          description: Time window the provider-wide stats cover
          enum:
            - 1hr
            - 1d
            - 1w
            - 1mo
            - 1y
          example: 1d
          type: string
      required:
        - window
        - endpoints
        - stats
      type: object
    BadRequestResponseErrorData:
      description: Error data for BadRequestResponse
      example:
        code: 400
        message: Invalid request parameters
      properties:
        code:
          type: integer
        message:
          type: string
        metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
      required:
        - code
        - message
      type: object
    UnauthorizedResponseErrorData:
      description: Error data for UnauthorizedResponse
      example:
        code: 401
        message: Missing Authentication header
      properties:
        code:
          type: integer
        message:
          type: string
        metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
      required:
        - code
        - message
      type: object
    ForbiddenResponseErrorData:
      description: Error data for ForbiddenResponse
      example:
        code: 403
        message: Only management keys can perform this operation
      properties:
        code:
          type: integer
        message:
          type: string
        metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
      required:
        - code
        - message
      type: object
    NotFoundResponseErrorData:
      description: Error data for NotFoundResponse
      example:
        code: 404
        message: Resource not found
      properties:
        code:
          type: integer
        message:
          type: string
        metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
      required:
        - code
        - message
      type: object
    TooManyRequestsResponseErrorData:
      description: Error data for TooManyRequestsResponse
      example:
        code: 429
        message: Rate limit exceeded
      properties:
        code:
          type: integer
        message:
          type: string
        metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
      required:
        - code
        - message
      type: object
    InternalServerResponseErrorData:
      description: Error data for InternalServerResponse
      example:
        code: 500
        message: Internal Server Error
      properties:
        code:
          type: integer
        message:
          type: string
        metadata:
          additionalProperties: {}
          type:
            - object
            - 'null'
      required:
        - code
        - message
      type: object
    EndpointSummary:
      allOf:
        - $ref: '#/components/schemas/EndpointRef'
        - properties:
            created_at:
              description: When the endpoint was created
              example: '2026-08-20T00:00:00.000Z'
              type: string
            model_permaslug:
              description: Permanent model slug the endpoint is listed under
              example: z-ai/glm-5.3-20260101
              type: string
            provider_model_id:
              description: The provider's own model ID
              example: accounts/fireworks/models/glm-5p3
              type:
                - string
                - 'null'
            provider_name:
              description: Provider name
              example: Fireworks
              type: string
            provider_region:
              description: Serving region
              example: us
              type:
                - string
                - 'null'
            service_tier:
              description: Service tier; null for the default tier
              example: priority
              type:
                - string
                - 'null'
            test_profile:
              $ref: '#/components/schemas/EndpointTestProfile'
            variant:
              description: Endpoint variant
              example: standard
              type: string
            visibility:
              description: Whether the endpoint is listed on OpenRouter
              enum:
                - visible
                - hidden
              example: visible
              type: string
          required:
            - model_permaslug
            - provider_name
            - provider_model_id
            - variant
            - provider_region
            - service_tier
            - visibility
            - created_at
            - test_profile
          type: object
    ProviderEndpointStats:
      discriminator:
        mapping:
          available: '#/components/schemas/ProviderEndpointStatsAvailable'
          unavailable: '#/components/schemas/ProviderEndpointStatsUnavailable'
        propertyName: status
      oneOf:
        - $ref: '#/components/schemas/ProviderEndpointStatsAvailable'
        - $ref: '#/components/schemas/ProviderEndpointStatsUnavailable'
    EndpointRef:
      properties:
        endpoint_id:
          description: Endpoint ID
          example: 0198c3f1-7b9a-7c31-a2d4-5e6f7a8b9c0d
          type: string
        model_slug:
          description: Public model slug
          example: z-ai/glm-5.3
          type: string
      required:
        - endpoint_id
        - model_slug
      type: object
    EndpointTestProfile:
      properties:
        context_length:
          description: 'Context length the endpoint serves: its override, else the model''s'
          example: 128000
          type:
            - integer
            - 'null'
        default_reasoning_return_mechanism:
          description: >-
            Reasoning return mechanism the endpoint uses when neither its
            features nor the model set one
          enum:
            - content-string
            - reasoning-content
            - reasoning
            - none
            - null
          type:
            - string
            - 'null'
        effective_adapter_name:
          description: >-
            Adapter the endpoint is served through: its provider override, else
            the provider's; null when unresolved
          example: openai
          type:
            - string
            - 'null'
        endpoint_features:
          additionalProperties: {}
          description: Endpoint feature flags; null when unset or invalid
          type:
            - object
            - 'null'
        is_lab_trusted:
          description: >-
            Whether the endpoint serves a closed lab model through the lab or an
            official partner
          type: boolean
        model:
          properties:
            features:
              properties:
                chat_template_config:
                  properties:
                    instruction_role_support:
                      description: >-
                        How leading instruction (developer/system) messages are
                        mapped before reaching a chat-completions provider.
                        'developer' keeps the developer role, 'system'
                        downgrades developer to system, 'user-only' downgrades
                        both to a wrapped user message. Overridable
                        per-endpoint.
                      enum:
                        - developer
                        - system
                        - user-only
                        - null
                      type:
                        - string
                        - 'null'
                    should_hoist_and_merge_system_messages:
                      description: Whether to hoist and merge system messages
                      type:
                        - boolean
                        - 'null'
                    supports_mid_session_system:
                      description: >-
                        Whether the model accepts system/developer messages that
                        appear after the first user/assistant turn. When false,
                        mid-session instruction messages are downgraded to
                        wrapped user messages. Overridable per-endpoint.
                      type:
                        - boolean
                        - 'null'
                  type:
                    - object
                    - 'null'
                reasoning_config:
                  properties:
                    default_reasoning_effort:
                      enum:
                        - max
                        - xhigh
                        - high
                        - medium
                        - low
                        - minimal
                        - null
                      type:
                        - string
                        - 'null'
                    default_reasoning_enabled:
                      description: >-
                        Default reasoning enabled state for the model. When
                        true, reasoning is enabled by default; when false,
                        disabled by default. User-specified values always
                        override this.
                      type:
                        - boolean
                        - 'null'
                    end_token:
                      type:
                        - string
                        - 'null'
                    is_mandatory_reasoning:
                      type:
                        - boolean
                        - 'null'
                    reasoning_return_mechanism:
                      description: >-
                        Default mechanism for returning reasoning tokens. Can be
                        overridden per-endpoint via endpoint features.
                      enum:
                        - content-string
                        - reasoning-content
                        - reasoning
                        - none
                        - null
                      type:
                        - string
                        - 'null'
                    start_token:
                      type:
                        - string
                        - 'null'
                    supported_reasoning_efforts:
                      description: >-
                        List of reasoning effort values the model accepts
                        upstream
                      items:
                        enum:
                          - max
                          - xhigh
                          - high
                          - medium
                          - low
                          - minimal
                        type: string
                      type:
                        - array
                        - 'null'
                    supports_reasoning_effort:
                      description: Whether the model supports reasoning effort
                      type:
                        - boolean
                        - 'null'
                    supports_reasoning_max_tokens:
                      description: Whether the model supports reasoning max tokens
                      type:
                        - boolean
                        - 'null'
                    system_prompt:
                      type:
                        - string
                        - 'null'
                  type:
                    - object
                    - 'null'
                required_input_modalities:
                  description: >-
                    Input modalities every request to the model must include,
                    e.g. ["video"] for video-to-video-only models. Requests
                    missing a required modality are rejected before dispatch. A
                    required text modality is satisfied by the prompt. Currently
                    enforced on the video generation request path.
                  items:
                    enum:
                      - text
                      - image
                      - audio
                      - video
                    type: string
                  type:
                    - array
                    - 'null'
              type:
                - object
                - 'null'
            input_modalities:
              items:
                enum:
                  - text
                  - image
                  - file
                  - audio
                  - video
                type: string
              type: array
            output_modalities:
              items:
                enum:
                  - text
                  - image
                  - embeddings
                  - audio
                  - video
                  - rerank
                  - decisions
                  - speech
                  - transcription
                type: string
              type: array
            reasoning_config:
              properties:
                default_reasoning_effort:
                  enum:
                    - max
                    - xhigh
                    - high
                    - medium
                    - low
                    - minimal
                    - null
                  type:
                    - string
                    - 'null'
                default_reasoning_enabled:
                  description: >-
                    Default reasoning enabled state for the model. When true,
                    reasoning is enabled by default; when false, disabled by
                    default. User-specified values always override this.
                  type:
                    - boolean
                    - 'null'
                end_token:
                  type:
                    - string
                    - 'null'
                is_mandatory_reasoning:
                  type:
                    - boolean
                    - 'null'
                reasoning_return_mechanism:
                  description: >-
                    Default mechanism for returning reasoning tokens. Can be
                    overridden per-endpoint via endpoint features.
                  enum:
                    - content-string
                    - reasoning-content
                    - reasoning
                    - none
                    - null
                  type:
                    - string
                    - 'null'
                start_token:
                  type:
                    - string
                    - 'null'
                supported_reasoning_efforts:
                  description: List of reasoning effort values the model accepts upstream
                  items:
                    enum:
                      - max
                      - xhigh
                      - high
                      - medium
                      - low
                      - minimal
                    type: string
                  type:
                    - array
                    - 'null'
                supports_reasoning_effort:
                  description: Whether the model supports reasoning effort
                  type:
                    - boolean
                    - 'null'
                supports_reasoning_max_tokens:
                  description: Whether the model supports reasoning max tokens
                  type:
                    - boolean
                    - 'null'
                system_prompt:
                  type:
                    - string
                    - 'null'
              type:
                - object
                - 'null'
            slug:
              description: Public model slug
              example: z-ai/glm-5.3
              type: string
            supports_reasoning:
              type: boolean
          required:
            - slug
            - input_modalities
            - output_modalities
            - supports_reasoning
            - reasoning_config
            - features
          type: object
      required:
        - model
        - endpoint_features
        - default_reasoning_return_mechanism
        - is_lab_trusted
        - context_length
        - effective_adapter_name
      type: object
    ProviderEndpointStatsAvailable:
      properties:
        endpoint_count:
          description: Endpoints the stats cover
          example: 12
          type: integer
        error_rate_percent:
          description: Errored share of requests that count toward uptime, 0-100
          example: 0.8
          format: double
          type: number
        latency_ms:
          description: Request latency, milliseconds
          properties:
            p50:
              format: double
              type:
                - number
                - 'null'
            p90:
              format: double
              type:
                - number
                - 'null'
          required:
            - p50
            - p90
          type: object
        quality_percent:
          description: Routing quality, 0-100
          format: double
          type:
            - number
            - 'null'
        rate_limited_percent:
          description: Rate-limited share of routed requests, 0-100
          format: double
          type:
            - number
            - 'null'
        reliability_percent:
          description: Routing reliability, 0-100
          format: double
          type:
            - number
            - 'null'
        requests:
          description: Requests in the window
          example: 120000
          type: integer
        status:
          enum:
            - available
          type: string
        throughput_tokens_per_second:
          description: Output tokens per second
          properties:
            p50:
              format: double
              type:
                - number
                - 'null'
            p90:
              format: double
              type:
                - number
                - 'null'
          required:
            - p50
            - p90
          type: object
        uptime_percent:
          description: Successful share of requests that count toward uptime, 0-100
          example: 99.2
          format: double
          type:
            - number
            - 'null'
      required:
        - status
        - endpoint_count
        - requests
        - uptime_percent
        - error_rate_percent
        - reliability_percent
        - quality_percent
        - rate_limited_percent
        - latency_ms
        - throughput_tokens_per_second
      type: object
    ProviderEndpointStatsUnavailable:
      properties:
        status:
          enum:
            - unavailable
          type: string
      required:
        - status
      type: object
  securitySchemes:
    apiKey:
      description: API key as bearer token in Authorization header
      scheme: bearer
      type: http

````