List deployments
Retrieve a paginated list of deployments within a workspace, newest first.
Filter by project, app, environment, and lifecycle status. All filters are
optional; with none set, every deployment in the workspace is returned.
Filters nest: app requires project, and environment requires both
project and app. Results are paginated; when hasMore is true, pass the
returned cursor to fetch the next page.
Required Permissions
Your root key must have the environment.*.read_deployment permission.
Listing spans environments, so a grant on a single environment is not
sufficient.
Authorizations
Unkey uses bearer tokens for authentication. Public integrations use root keys, while the dashboard proxy uses short-lived JWTs. To authenticate, include the token in the Authorization header of each request:
Root keys have specific permissions attached to them, controlling what operations they can perform. Legacy permissions use tuple strings like api.*.create_key; resource permissions use Unkey Resource Names plus actions, like unkey:v1:ws_123:keyspaces/*#create_key.
Security best practices:
- Keep root keys secure and never expose them in client-side code
- Use different root keys for different environments
- Rotate keys periodically, especially after team member departures
- Create keys with minimal necessary permissions following least privilege principle
- Monitor key usage with audit logs.
Body
Filter deployments within a workspace. All filters are optional; with none set, every deployment in the workspace is returned, newest first.
Restrict results to a single project, identified by its ID or slug.
Required when filtering by app or environment.
3 - 255^[a-zA-Z0-9_-]+$"proj_1234abcd"
Restrict results to a single app, identified by its ID or slug.
Requires project to also be set.
3 - 255^[a-zA-Z0-9_-]+$"proj_1234abcd"
Restrict results to a single environment, identified by its ID or slug.
Requires project and app to also be set.
3 - 255^[a-zA-Z0-9_-]+$"proj_1234abcd"
Restrict results to deployments in any of the given lifecycle statuses. Omit to return deployments in every status.
13Current lifecycle status of the deployment. Poll until it reaches a terminal state: ready (serving), failed, skipped, superseded, stopped, or cancelled.
pending, starting, building, deploying, network, finalizing, ready, failed, skipped, awaiting_approval, stopped, superseded, cancelled Maximum number of deployments to return per request. Balance between response size and number of pagination calls needed.
1 <= x <= 100Pagination cursor from a previous response to fetch the next page.
Use when hasMore: true in the previous response.
Response
Successfully retrieved a paginated list of deployments. Use the pagination cursor for additional results when hasMore: true.
Metadata object included in every API response. This provides context about the request and is essential for debugging, audit trails, and support inquiries. The requestId is particularly important when troubleshooting issues with the Unkey support team.
Array of deployments, ordered newest first.
100Pagination metadata for list endpoints. Provides information necessary to traverse through large result sets efficiently using cursor-based pagination.