---
title: "Mint a remote controller token"
method: POST
path: "/api/runtime-controllers/{id}/token"
tags: ["Runtime pools"]
---

# Mint a remote controller token

`POST /api/runtime-controllers/{id}/token`

## Request

- Base URL: `http://localhost:3013`
- URL: `http://localhost:3013/api/runtime-controllers/{id}/token`
- Auth: HTTP bearer

Returns the token once. Revokes the previous token and disconnects its session.

## Path parameters

- `id` string, required

## Response `200`

Controller token

- object
  - `tokenId` string, required
  - `plaintext` string, required
  - `expiresAt` string, required

## Other responses

- `400`: Controller placement must be remote
- `403`: Operator or user credentials required
- `404`: Controller not found or runtime pools disabled

## Changes

- **2026-10-12** `2d005144fe35`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/desplega-ai/apis/agent-swarm-api/changes/api/runtime-controllers/:id/token/post.md)

---

[API](https://skmtc.dev/desplega-ai/apis/agent-swarm-api.md) - [All operations](https://skmtc.dev/desplega-ai/apis/agent-swarm-api/llms.txt) - [OpenAPI document](https://skmtc.dev/desplega-ai/apis/agent-swarm-api/revisions/7e4c7198192a?raw)
