---
title: "Activate a validated private endpoint"
method: POST
path: "/private-endpoints/{id}/activate"
tags: ["Private Endpoints"]
---

# Activate a validated private endpoint

`POST /private-endpoints/{id}/activate`

Make a validated draft routable. Returns 409 when the endpoint was never validated, the validation is stale, or it is already active. [Management key](/docs/guides/overview/auth/management-api-keys) required.

## Path parameters

- `id` string, uuid, required — Stable identifier of the private endpoint.

## Response `200`

The endpoint after the change

- ManagedPrivateEndpointResponse
  - `data` ManagedPrivateEndpoint, required
    - `created_at` string, required — ISO timestamp of when the endpoint was created.
    - `id` string, uuid, required — Stable identifier of the private endpoint.
    - `model_name` string, nullable, required — Display name of the model, or `null` when the model is no longer listed.
    - `model_permaslug` string, required — Permanent slug of the model this endpoint serves.
    - `model_slug` string, nullable, required — Public model slug, or `null` when the model is no longer listed.
    - `provider_name` string, required — Display name of the upstream provider.
    - `status` 'draft' | 'active' | 'disabled', required — Lifecycle state. `draft` endpoints are not routable until validated and activated; `disabled` endpoints are activated but temporarily not routable.
    - `declared_region` 'global' | 'europe' | 'us' | 'null', nullable, required — Where you attest this deployment processes data. `global` means not regional; `null` means undeclared.
    - `declared_zdr` boolean, nullable, required — Whether you attest this deployment retains no prompt or completion data. `null` means undeclared.

## Other responses

- `400` — Bad Request - Invalid request parameters or malformed input
- `401` — Unauthorized - Authentication required or invalid credentials
- `403` — Forbidden - Authentication successful but insufficient permissions
- `404` — Not Found - Resource does not exist
- `408` — Request Timeout - Operation exceeded time limit
- `409` — Conflict - Resource conflict or concurrent modification
- `422` — Unprocessable Entity - Semantic validation failure
- `500` — Internal Server Error - Unexpected server error
- `502` — Bad Gateway - Provider/upstream API failure

## Changes

- **2026-09-28** `057102d53272` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/openrouterteam/apis/openrouter-api/changes/private-endpoints/:id/activate/post.md)

---

[API](https://skmtc.dev/openrouterteam/apis/openrouter-api.md) · [All operations](https://skmtc.dev/openrouterteam/apis/openrouter-api/llms.txt) · [OpenAPI document](https://skmtc.dev/openrouterteam/apis/openrouter-api/revisions/ae97b5c6983d?raw)
