Skip to main content
Every endpoint goes through two gates before it serves traffic: an operator review, then automated validation. After that, TokenChange keeps checking it while it’s live.

Status

An endpoint’s status shows where it is in review and whether you’ve paused it.

Availability

Once approved, an endpoint’s availability shows whether it’s serving traffic.

How availability changes

  • A new or edited endpoint starts as Pending validation and is tested shortly after approval.
  • If every required check passes, it becomes Up. If a check fails, or the endpoint stays unreachable over repeated attempts, it becomes Rejected. Fix the problem and edit the endpoint to try again.
  • An endpoint that’s up becomes Degraded after repeated failed requests. It returns to Up when test traffic succeeds.
  • An endpoint that stays degraded for more than an hour, or fails a periodic re-check, becomes Down. It returns to Up when a re-check passes.
  • Changing the URL, bearer token or upstream model name sends the endpoint back to Pending validation, because earlier results no longer apply.
Turn on Endpoint alerts in Settings to get emails when your endpoints go up, down, degraded or rejected.

Validation checks

The required check tests that your endpoint speaks the OpenAI protocol the way TokenChange needs:
  1. /v1/models lists your upstream model name.
  2. A short streamed chat completion with a fixed arithmetic question returns the correct answer in delta.content. Reasoning fields are ignored.
  3. The final usage chunk reports prompt_tokens, completion_tokens and prompt_tokens_details.cached_tokens.
Checks send as many requests at once as your endpoint has slots.

Read validation results

Open an endpoint from Provider > Endpoints:
  • Current results shows the latest run of each check for the current configuration.
  • Validation runs lists every run, most recent first, with its result, trigger and when it finished.
A run’s result is Passed, Failed, Unreachable, Timed out or Skipped. Its trigger is Admission for the first test, Re-check for periodic checks and Manual when an operator started it. You can read the same runs with GET /v1/provider/endpoints/{id}/validations.