Endpoints API
Use the Apikee REST API to register, list, update, and delete endpoints. Manage the route registry for your projects and environments.
Base path /api/v1/endpoint. Every route takes project_env as a query parameter.
In server mode the SDKs populate this automatically — these routes are for bulk import, corrections, and anything you prefer to declare rather than discover.
Addressing
An endpoint is identified by METHOD:::/path, URL-encoded in a path segment:
GET:::/v1/users → GET%3A%3A%3A%2Fv1%2Fusers
GET:::/v1/users/{id} → GET%3A%3A%3A%2Fv1%2Fusers%2F%7Bid%7DUse the path template, not a concrete value — /v1/users/{id}, never
/v1/users/42, or you get one record per user.
List endpoints
GET /api/v1/endpoint?project_env=payments-api-production| Query | Notes |
|---|---|
project_env | Required |
page, limit | 1-based; limit 1–100, default 10 |
method | Filter by HTTP method |
path | Filter by path |
Create endpoints
POST /api/v1/endpoint?project_env=payments-api-production{
"method": "GET",
"path": "/v1/users",
"name": "List users",
"description": "List users in the caller's tenant.",
"metadata": { "scopes": ["read:users"], "tags": ["users"] }
}Pass an array to create up to 200 in one call — the shape of a bulk import.
| Field | Notes |
|---|---|
method | Required. A standard HTTP method |
path | Required. Must start with /, no whitespace, up to 500 characters |
name | Required. Up to 200 characters |
description | Up to 2000 characters |
request, response | JSON Schema fragment or example object |
metadata | Free-form. Where the SDKs put scopes, tags and deprecated |
Endpoints are unique per (environment, path, method). Creating a duplicate is a
no-op rather than an error; a batch where every entry already exists returns
409.
Get an endpoint
GET /api/v1/endpoint/{method_path}?project_env=…Update an endpoint
PUT /api/v1/endpoint/{method_path}?project_env=…{
"name": "List users",
"description": "Now returns only active users by default.",
"metadata": { "scopes": ["read:users"], "deprecated": false }
}Method and path are the identity, so they cannot be changed here — delete and recreate to move a route.
Delete an endpoint
DELETE /api/v1/endpoint/{method_path}?project_env=…Removes the record and its place in the generated docs. Historical request logs are unaffected.
With autoRegisterEndpoints left on, a deleted route reappears the next time the
SDK sees traffic for it. Turn auto-registration off if you want the registry to be
exactly what you declare.

