---
title: "Returns one live actor."
method: GET
path: "/actors/{actor_id}"
tags: ["actors::get"]
---

# Returns one live actor.

`GET /actors/{actor_id}`

## Request

- Base URL: `https://api.rivet.dev`
- URL: `https://api.rivet.dev/actors/{actor_id}`
- Auth: one of:
  - HTTP bearer
  - API key in header `x-rivet-token`

## Path parameters

- `actor_id` string, required: A Rivet ID: 30 lowercase base36 characters.

## Query parameters

- `namespace` string

## Response `200`

The actor.

- ActorsGetResponse
  - `actor` Actor, required
    - `actor_id` string, required: A Rivet ID: 30 lowercase base36 characters.
    - `name` string, required: Actor name.
    - `key` string, required: Actor key in slash-separated form. An empty string for an actor without a key.
    - `namespace` string, required: Name of the namespace the actor belongs to.
    - `pool` string, required: Name of the node pool the actor runs in.
    - `create_ts` integer, required: When the actor was created, in Unix milliseconds.
    - `start_ts` integer, nullable, required: When the actor first started. Not recorded by this version, so always `null`.
    - `pending_allocation_ts` integer, nullable, required: When the actor started waiting for a node. Not recorded by this version, so always `null`.
    - `connectable_ts` integer, nullable, required: When the actor last became connectable. Not recorded by this version, so always `null`.
    - `sleep_ts` integer, nullable, required: When the actor went to sleep. Not recorded by this version, so always `null`.
    - `reschedule_ts` integer, nullable, required: When the actor will next try to allocate. Not recorded by this version, so always `null`.
    - `destroy_ts` integer, nullable, required: When the actor was destroyed, in Unix milliseconds. Only set in listings that include destroyed actors; otherwise `null`.

## Other responses

- `400`: `envoy.invalid_namespace_name`: the `namespace` value is not a DNS label of 1 to 63 lowercase letters, digits and hyphens.
- `401`: `auth.invalid_token`: the request carries no token, or the token is not valid. `auth.token_expired`: the token has expired.
- `403`: `auth.insufficient_permissions`: the token's grants do not cover this request. For a namespace token this is also returned when the actor does not exist.
- `404`: `actor.not_found`: the actor does not exist, was destroyed, or belongs to another namespace. `namespace.not_found`: the namespace does not exist.
- `500`: `core.internal_error`: an unexpected failure, including an `actor_id` that is not a valid Rivet ID.
- `503`: `auth.verification_unavailable`: token verification keys are temporarily unavailable. Retry the request.

## Changes

- **2026-10-31** `aa8d1a8a5d14`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rivet-dev/apis/rivet-api-public/changes/actors/:actor_id/get.md)

---

[API](https://skmtc.dev/rivet-dev/apis/rivet-api-public.md) - [All operations](https://skmtc.dev/rivet-dev/apis/rivet-api-public/llms.txt) - [OpenAPI document](https://skmtc.dev/rivet-dev/apis/rivet-api-public/revisions/531e21275aec?raw)
