# Get an endpoint (/docs/api/catalog/catalog_get)

Full definition of one endpoint: input JSON Schema, pricing model and quality.

`GET /v1/catalog/endpoints/{provider}/{endpoint}`

```json
{
  "operationId": "catalog_get",
  "summary": "Get an endpoint",
  "description": "Full definition of one endpoint: input JSON Schema, pricing model and quality.",
  "tags": [
    "catalog"
  ],
  "parameters": [
    {
      "schema": {
        "type": "string",
        "pattern": "^[a-z0-9-]+$"
      },
      "required": true,
      "name": "provider",
      "in": "path"
    },
    {
      "schema": {
        "type": "string",
        "pattern": "^[a-z0-9._-]+$"
      },
      "required": true,
      "name": "endpoint",
      "in": "path"
    }
  ],
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "provider": {
                "type": "string"
              },
              "capability": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "description": {
                "type": "string"
              },
              "mode": {
                "type": "string"
              },
              "pricing_model": {
                "type": "string"
              },
              "quote_micro": {
                "type": "integer",
                "description": "Worst-case cost for an empty input, in micro-USD"
              },
              "byok": {
                "type": "boolean"
              },
              "sandbox": {
                "type": "boolean"
              },
              "quality": {
                "type": "object",
                "properties": {
                  "reliability": {
                    "type": "number"
                  },
                  "fill": {
                    "type": "number"
                  },
                  "score": {
                    "type": "number"
                  },
                  "samples": {
                    "type": "integer"
                  }
                },
                "required": [
                  "reliability",
                  "fill",
                  "score",
                  "samples"
                ]
              },
              "input_schema": {
                "type": "object",
                "additionalProperties": {}
              },
              "pricing": {
                "type": "object",
                "additionalProperties": {}
              }
            },
            "required": [
              "id",
              "provider",
              "capability",
              "name",
              "description",
              "mode",
              "pricing_model",
              "quote_micro",
              "byok",
              "sandbox",
              "quality",
              "input_schema",
              "pricing"
            ]
          }
        }
      }
    },
    "default": {
      "description": "Error",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "enum": [
                      "invalid_request",
                      "unauthorized",
                      "insufficient_balance",
                      "max_cost_exceeded",
                      "scope_denied",
                      "budget_blocked",
                      "not_found",
                      "idempotency_mismatch",
                      "invalid_meta",
                      "rate_limited",
                      "upstream_error",
                      "response_buffer_limit",
                      "provider_capacity_unavailable",
                      "grid_saturated",
                      "upstream_timeout",
                      "conflict",
                      "internal_error",
                      "account_frozen",
                      "strict_filters",
                      "plan_limit_reached",
                      "validation_failed",
                      "deadline_exceeded",
                      "cancelled"
                    ]
                  },
                  "message": {
                    "type": "string"
                  },
                  "request_id": {
                    "type": "string"
                  },
                  "call_id": {
                    "type": "string"
                  },
                  "retry_after_ms": {
                    "type": "integer",
                    "minimum": 0
                  },
                  "details": {
                    "type": "object",
                    "additionalProperties": {}
                  }
                },
                "required": [
                  "code",
                  "message"
                ]
              }
            },
            "required": [
              "error"
            ]
          }
        }
      }
    }
  }
}
```
