ApikeeApikeeDocs
REST API

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%7D

Use 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
QueryNotes
project_envRequired
page, limit1-based; limit 1–100, default 10
methodFilter by HTTP method
pathFilter 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.

FieldNotes
methodRequired. A standard HTTP method
pathRequired. Must start with /, no whitespace, up to 500 characters
nameRequired. Up to 200 characters
descriptionUp to 2000 characters
request, responseJSON Schema fragment or example object
metadataFree-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.

On this page