---
title: "Trigger a manual build"
method: POST
path: "/v3beta1/organizations/{org_id}/snapshot-setup/builds"
tags: ["snapshot_setup"]
---

# Trigger a manual build

`POST /v3beta1/organizations/{org_id}/snapshot-setup/builds`

## Request

- The document declares no server URL.
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/devinenterprise/apis/devin-api-v1/docs/v3beta1/organizations/:org_id/snapshot-setup/builds/post.ts> (a function with typed inputs; its response is checked against the schema)

Manually trigger a snapshot build using the org's current blueprints.

## Path parameters

- `org_id` string, required

## Request body

- TriggerBuildBody: ``POST /builds`` body. Empty per spec; reserved for future fields.

## Response `201`

Successful Response

- Build: Public ``Build`` resource shape — opaque "did this succeed yet?" view. Per spec, no platform/snapshot/per-job introspection is exposed. Future additions (``triggered_by_repo``, build metadata, etc.) are additive.
  - `build_id` string, required
  - `completed_at` integer, nullable, required
  - `created_at` integer, required
  - `pinned` boolean, required
  - `started_at` integer, nullable, required
  - `status` 'pending' | 'running' | 'succeeded' | 'failed' | 'cancelled', required
  - `trigger` 'manual' | 'auto', nullable, required
  - `triggered_by_user_id` string, nullable, required
  - `updated_at` integer, required

## Other responses

- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `422`: Unprocessable Content
- `429`: Too Many Requests

---

[API](https://skmtc.dev/devinenterprise/apis/devin-api-v1.md) - [All operations](https://skmtc.dev/devinenterprise/apis/devin-api-v1/llms.txt) - [OpenAPI document](https://skmtc.dev/devinenterprise/apis/devin-api-v1/revisions/e3244476af1c?raw)
