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

# Listar las capacidades de endpoints del modelo

> Consultar las rutas de proveedores, modalidades, parámetros, disponibilidad y precios de un modelo.

Usa este endpoint antes de enviar una solicitud si tu aplicación debe confirmar que una combinación de modelo, proveedor, endpoint y parámetros está disponible.

Para `openai/gpt-5.4-mini`, usa:

```bash theme={null}
curl "https://api.phaseo.app/v1/models/openai/gpt-5.4-mini/endpoints" \
  -H "Authorization: Bearer $PHASEO_API_KEY"
```

Cada fila representa una capacidad de un proveedor y un endpoint. Incluye:

* el ID canónico de capacidad y la ruta pública de la API
* el ID y el nombre del proveedor, y el slug del modelo del proveedor
* las modalidades de entrada y salida
* los nombres de los parámetros admitidos y sus detalles estructurados
* los estados del proveedor, el modelo, la capacidad, el enrutamiento y la disponibilidad
* las fechas de vigencia cuando la ruta está programada o tiene una duración limitada
* un resumen de precios del endpoint

## Incluir rutas planificadas e inactivas

El valor predeterminado `availability=active` solo devuelve filas con rutas públicas. Usa `availability=all` para consultar las rutas próximas e inactivas:

```bash theme={null}
curl "https://api.phaseo.app/v1/models/openai/gpt-5.4-mini/endpoints?availability=all" \
  -H "Authorization: Bearer $PHASEO_API_KEY"
```

No envíes tráfico de producción a una fila salvo que `availability_status` sea `active` y `is_active_gateway` sea `true`.

## Filtrar rutas

Usa filtros repetibles o separados por comas para:

* `provider`
* `provider_status`
* `provider_routing_status`
* `model_routing_status`
* `capability_status`
* `provider_availability_status`
* `provider_availability_reason`
* `status`
* `supported_parameters`

Por ejemplo, esto devuelve las rutas de OpenAI que admiten `temperature`:

```bash theme={null}
curl "https://api.phaseo.app/v1/models/openai/gpt-5.4-mini/endpoints?provider=openai&supported_parameters=temperature" \
  -H "Authorization: Bearer $PHASEO_API_KEY"
```

## Endpoints relacionados

* [Listar modelos](./models.mdx)
* [Listar endpoints](./endpoints.mdx)


## OpenAPI

````yaml es/openapi/v1/openapi.localized.yaml GET /models/{author}/{slug}/endpoints
openapi: 3.0.3
info:
  title: Phaseo Gateway API
  description: >-
    Una API de pasarela para acceder a diversos modelos de IA mediante endpoints
    compatibles con OpenAI.
  version: 1.0.0
  contact:
    name: Phaseo
    url: https://phaseo.app
    email: danielbutler500@gmail.com
servers:
  - url: https://api.phaseo.app/v1
    description: Enrutamiento global
security:
  - BearerAuth: []
tags:
  - name: Gateway
    description: Core Phaseo Gateway operations.
paths:
  /models/{author}/{slug}/endpoints:
    get:
      tags:
        - Gateway
      summary: Listar las capacidades de los endpoints del modelo
      description: >-
        Devuelve filas de endpoints específicas del proveedor para un modelo,
        incluidos los paths públicos, las modalidades, los parámetros
        compatibles, la disponibilidad, el estado de enrutamiento, los slugs del
        modelo del proveedor y los resúmenes de precios de los endpoints.
      operationId: listModelEndpoints
      parameters:
        - name: author
          in: path
          required: true
          description: Segmento del autor o la organización del modelo.
          schema:
            type: string
        - name: slug
          in: path
          required: true
          description: Segmento del slug del modelo.
          schema:
            type: string
        - name: provider
          in: query
          description: Filtrar por ID del proveedor.
          schema:
            type: array
            items:
              type: string
        - name: provider_status
          in: query
          description: Filtrar por estado de despliegue del proveedor.
          schema:
            type: array
            items:
              type: string
        - name: provider_routing_status
          in: query
          description: Filtrar por estado de enrutamiento del proveedor.
          schema:
            type: array
            items:
              type: string
        - name: model_routing_status
          in: query
          description: Filtrar por estado de enrutamiento del modelo.
          schema:
            type: array
            items:
              type: string
        - name: capability_status
          in: query
          description: Filtrar por estado de capacidades del proveedor.
          schema:
            type: array
            items:
              type: string
        - name: provider_availability_status
          in: query
          description: Filtrar por estado de disponibilidad del proveedor.
          schema:
            type: array
            items:
              type: string
        - name: provider_availability_reason
          in: query
          description: Filtrar por motivo de disponibilidad del proveedor.
          schema:
            type: array
            items:
              type: string
        - name: status
          in: query
          description: Filtrar por estado del ciclo de vida canónico del modelo.
          schema:
            type: array
            items:
              type: string
        - name: supported_parameters
          in: query
          description: >-
            Filtrar las filas de endpoints por nombres de parámetros compatibles
            o sus alias.
          schema:
            type: array
            items:
              type: string
        - name: availability
          in: query
          description: >-
            `active` devuelve las filas de endpoints enrutables públicamente;
            `all` también incluye las que están próximas y las inactivas.
          schema:
            type: string
            enum:
              - active
              - all
            default: active
      responses:
        '200':
          description: Filas de capacidades de endpoints del modelo
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ModelEndpointsResponse'
        '400':
          description: Parámetros de solicitud no válidos
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestResponse'
        '401':
          description: No autorizado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: >-
            No se encontró el modelo con los filtros de disponibilidad y
            proveedor solicitados
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    ModelEndpointsResponse:
      type: object
      required:
        - ok
        - id
        - name
        - description
        - organization
        - modalities
        - availability_mode
        - endpoints
      properties:
        ok:
          type: boolean
          enum:
            - true
        id:
          type: string
        name:
          type: string
        description:
          type: string
        organization:
          $ref: '#/components/schemas/GatewayModelOrganization'
        modalities:
          $ref: '#/components/schemas/GatewayModalities'
        availability_mode:
          type: string
          enum:
            - active
            - all
        endpoints:
          type: array
          items:
            $ref: '#/components/schemas/ModelEndpointCapability'
      additionalProperties: false
    InvalidRequestResponse:
      type: object
      required:
        - ok
        - error
        - message
      properties:
        ok:
          type: boolean
          enum:
            - false
          example: false
        error:
          type: string
          example: invalid_request
        message:
          type: string
          example: Invalid request parameters.
        max_offset:
          type: integer
          minimum: 0
      additionalProperties: true
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        ok:
          type: boolean
          example: false
        error:
          oneOf:
            - type: string
            - type: object
              additionalProperties: true
          example: error_type
        message:
          type: string
          example: Human-readable error message
        description:
          type: string
          example: Additional error details.
        generation_id:
          type: string
          example: G-abc123
        status_code:
          type: integer
          example: 502
        error_type:
          type: string
          enum:
            - user
            - system
          example: system
        error_origin:
          type: string
          enum:
            - user
            - gateway
            - upstream
          example: upstream
        reason:
          type: string
          example: all_candidates_failed
        attempt_count:
          type: integer
          example: 2
        failed_providers:
          type: array
          items:
            type: string
          example:
            - google-ai-studio
            - openai
        failed_statuses:
          type: array
          items:
            type: integer
          example:
            - 403
            - 429
        upstream_error:
          $ref: '#/components/schemas/ErrorUpstreamError'
        failure_sample:
          type: array
          items:
            $ref: '#/components/schemas/ErrorFailureSampleItem'
        provider_failure_diagnostics:
          $ref: '#/components/schemas/ErrorProviderFailureDiagnostics'
        routing_diagnostics:
          $ref: '#/components/schemas/ErrorRoutingDiagnostics'
        provider_candidate_diagnostics:
          $ref: '#/components/schemas/ErrorProviderCandidateDiagnostics'
        provider_enablement:
          $ref: '#/components/schemas/ErrorProviderEnablementDiagnostics'
        missing_pricing_providers:
          type: array
          items:
            type: string
        provider_payment_required_provider:
          type: string
          example: openai
        provider_payment_required_support_notice:
          type: string
          example: >-
            Our upstream provider billing appears to be unavailable. If this
            persists, contact support.
        details:
          type: array
          items:
            type: object
            additionalProperties: true
      additionalProperties: true
    GatewayModelOrganization:
      type: object
      nullable: true
      required:
        - id
        - name
        - color
      properties:
        id:
          type: string
        name:
          type: string
          nullable: true
        color:
          type: string
          nullable: true
    GatewayModalities:
      type: object
      required:
        - input
        - output
      properties:
        input:
          type: array
          items:
            type: string
        output:
          type: array
          items:
            type: string
    ModelEndpointCapability:
      type: object
      required:
        - id
        - endpoint
        - capability_id
        - public_path
        - collection
        - provider
        - model
        - routable
        - status
        - status_reason
        - modalities
        - capabilities
        - routing
        - effective
        - pricing
      properties:
        id:
          type: string
          example: openai:responses
        endpoint:
          type: string
          example: responses
        capability_id:
          type: string
          example: responses
        public_path:
          type: string
          example: /v1/responses
        collection:
          type: string
          enum:
            - text
            - images
            - video
            - audio
            - embeddings
            - rerank
            - moderation
            - ocr
            - music
            - batch
            - files
        provider:
          type: object
          required:
            - id
            - name
          properties:
            id:
              type: string
              example: openai
            name:
              type: string
              nullable: true
              example: OpenAI
        model:
          type: string
          nullable: true
          example: gpt-5.4-mini
        routable:
          type: boolean
        status:
          type: string
          enum:
            - active
            - coming_soon
            - inactive
        status_reason:
          $ref: '#/components/schemas/GatewayProviderAvailabilityReason'
        modalities:
          $ref: '#/components/schemas/GatewayModalities'
        capabilities:
          $ref: '#/components/schemas/GatewayCapabilities'
        routing:
          type: object
          required:
            - provider
            - model
            - capability
          properties:
            provider:
              $ref: '#/components/schemas/GatewayRoutingStatus'
            model:
              $ref: '#/components/schemas/GatewayRoutingStatus'
            capability:
              $ref: '#/components/schemas/GatewayCapabilityStatus'
        effective:
          type: object
          required:
            - from
            - to
          properties:
            from:
              type: string
              nullable: true
            to:
              type: string
              nullable: true
        pricing:
          $ref: '#/components/schemas/GatewayPricing'
    ErrorUpstreamError:
      type: object
      properties:
        code:
          type: string
          nullable: true
          example: PERMISSION_DENIED
        message:
          type: string
          nullable: true
          example: The caller does not have permission.
        description:
          type: string
          nullable: true
        param:
          type: string
          nullable: true
    ErrorFailureSampleItem:
      type: object
      properties:
        provider:
          type: string
          nullable: true
        type:
          type: string
          nullable: true
        status:
          type: integer
          nullable: true
        upstream_error_code:
          type: string
          nullable: true
        upstream_error_message:
          type: string
          nullable: true
        upstream_error_description:
          type: string
          nullable: true
        upstream_error_param:
          type: string
          nullable: true
        upstream_payload_preview:
          type: string
          nullable: true
        retryable:
          type: boolean
          nullable: true
      additionalProperties: true
    ErrorProviderFailureDiagnostics:
      type: object
      properties:
        category:
          type: string
          enum:
            - credentials_not_configured
            - credentials_invalid_or_forbidden
            - provider_access_missing
            - region_or_project_restriction
            - model_unavailable_for_endpoint
            - rate_limited
            - server_error
        hint:
          type: string
        provider:
          type: string
          nullable: true
    ErrorRoutingDiagnostics:
      type: object
      properties:
        filterStages:
          type: array
          items:
            type: object
            properties:
              stage:
                type: string
              beforeCount:
                type: integer
              afterCount:
                type: integer
              droppedProviders:
                type: array
                items:
                  type: object
                  properties:
                    providerId:
                      type: string
                      nullable: true
                    reason:
                      type: string
                      nullable: true
                  additionalProperties: true
            additionalProperties: true
      additionalProperties: true
    ErrorProviderCandidateDiagnostics:
      type: object
      properties:
        totalProviders:
          type: integer
        supportsEndpointCount:
          type: integer
        candidateCount:
          type: integer
        droppedUnsupportedEndpoint:
          type: array
          items:
            type: string
        droppedMissingAdapter:
          type: array
          items:
            type: object
            properties:
              providerId:
                type: string
                nullable: true
              endpoint:
                type: string
                nullable: true
            additionalProperties: true
      additionalProperties: true
    ErrorProviderEnablementDiagnostics:
      type: object
      properties:
        capability:
          type: string
        providersBefore:
          type: array
          items:
            type: string
        providersAfter:
          type: array
          items:
            type: string
        dropped:
          type: array
          items:
            type: object
            properties:
              providerId:
                type: string
                nullable: true
              reason:
                type: string
                nullable: true
            additionalProperties: true
      additionalProperties: true
    GatewayProviderAvailabilityReason:
      type: string
      enum:
        - active
        - preview_only
        - gated
        - access_limited
        - region_limited
        - project_limited
        - paused
        - soft_blocked
        - deranked_lvl1
        - deranked_lvl2
        - deranked_lvl3
        - internal_testing
        - scheduled
        - coming_soon
        - provider_disabled
        - model_disabled
        - capability_disabled
        - provider_not_ready
        - provider_inactive
        - inactive
        - retired
    GatewayCapabilities:
      type: object
      required:
        - parameters
        - parameter_details
      properties:
        endpoints:
          type: array
          items:
            type: string
        parameters:
          type: array
          items:
            type: string
        parameter_details:
          $ref: '#/components/schemas/SupportedParameterDetails'
    GatewayRoutingStatus:
      type: string
      enum:
        - active
        - deranked_lvl1
        - deranked_lvl2
        - deranked_lvl3
        - disabled
    GatewayCapabilityStatus:
      type: string
      enum:
        - active
        - coming_soon
        - deranked_lvl1
        - deranked_lvl2
        - deranked_lvl3
        - disabled
        - internal_testing
    GatewayPricing:
      type: object
      required:
        - pricing_plan
        - meters
      properties:
        pricing_plan:
          type: string
          enum:
            - standard
        meters:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/GatewayPricingMeter'
    SupportedParameterDetails:
      type: object
      description: >-
        Restricciones estructuradas y compatibilidad del proveedor para los
        parámetros de solicitud, organizadas por nombre de parámetro.
      additionalProperties:
        type: object
        additionalProperties: true
    GatewayPricingMeter:
      type: object
      nullable: true
      required:
        - provider_id
        - unit
        - unit_size
        - price_per_unit
        - currency
      properties:
        provider_id:
          type: string
        unit:
          type: string
        unit_size:
          type: number
          minimum: 0
          exclusiveMinimum: true
        price_per_unit:
          type: string
        currency:
          type: string
          enum:
            - USD
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Autenticación con token Bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.