---
title: "Create Deploy Intent"
method: POST
path: "/v1/deployments/deploy-intents"
tags: ["deployments"]
---

# Create Deploy Intent

`POST /v1/deployments/deploy-intents`

## Request

- Base URL: `https://api.usekeel.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.usekeel.io/v1/deployments/deploy-intents`
- Auth: none declared

Mint a deploy-intent token for a strategy the caller's org owns.

## Headers

- `Authorization` string, nullable
- `X-Org-Id` string, nullable

## Request body

- CreateDeployIntentRequest: Mint request. ``extra="forbid"`` is the R2 hard rule made structural: no API path accepts agent-supplied sizing (or any other config) into the prefill — a body carrying ``sizing_usd``/``suggested_config``/anything else is rejected with a 422, not silently ignored.
  - `strategy_id` string, required

## Response `201`

Successful Response

- DeployIntentResponse
  - `intent_id` string, required
  - `intent_token` string, required
  - `handoff_url` string, required
  - `expires_at` string, required
  - `status` string, required
  - `strategy_id` string, required
  - `suggested_config` object, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/usekeel/apis/keel-api.md) · [All operations](https://skmtc.dev/usekeel/apis/keel-api/llms.txt) · [OpenAPI document](https://skmtc.dev/usekeel/apis/keel-api/revisions/3191ca10b0ab?raw)
