Returns promotion history targeting this project, newest first across all target workspaces.
Query parameters
-
Page size (1-100, default 20)
Minimum value is
1, maximum value is100. Default value is20. -
Page offset (0-10000, default 0)
Minimum value is
0, maximum value is10000. Default value is0.
Responses
-
Unsupported or malformed API version, an operation unavailable in the selected published contract, or an unacceptable representation (including unsupported media-type parameters or excluded SSE). Existing authentication, authorization, and rate-limit failures take precedence.
-
OK
-
Bad Request
-
Forbidden
-
Not Found
-
Too Many Requests
-
Internal Server Error
-
Bad Gateway
-
Service Unavailable
GET
/api/v1/projects/{id}/promotions
curl \
--request GET 'https://agentengine.mongodb.com/api/v1/projects/{id}/promotions' \
--header "Authorization: $API_KEY"
Response examples (406)
Operation unavailable
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "This operation supports text/event-stream, which the Accept header excludes. Remove unsupported media-type parameters or accept this type with a positive q value.",
"error": 406,
"errorCode": "UNACCEPTABLE_MEDIA_TYPE",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
{
"detail": "The requested API version is not supported. Supported versions: 2026-09-20-preview.",
"error": 406,
"errorCode": "UNSUPPORTED_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
Response examples (406)
{
"detail": "This operation is not available in API version 2026-09-20-preview.",
"error": 406,
"errorCode": "OPERATION_NOT_IN_API_VERSION",
"parameters": [
"Accept"
],
"reason": "Not Acceptable"
}
Response examples (200)
{
"promotions": [
{
"created_at": "string",
"failure_reason": "string",
"finished_at": "string",
"force": true,
"initiated_by": "string",
"org_id": "string",
"promotion_id": "string",
"source_build_id": "string",
"status": "pending",
"target_build_id": "string",
"target_project_id": "string",
"target_workspace_id": "string"
}
],
"total": 42
}
Response examples (200)
{
"promotions": [
{
"created_at": "string",
"failure_reason": "string",
"finished_at": "string",
"force": true,
"initiated_by": "string",
"org_id": "string",
"promotion_id": "string",
"source_build_id": "string",
"status": "pending",
"target_build_id": "string",
"target_project_id": "string",
"target_workspace_id": "string"
}
],
"total": 42
}
Response examples (400)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (400)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (403)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (403)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (404)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (404)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (429)
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
Response examples (429)
# Headers
Retry-After: string
# Payload
{
"code": "string",
"error": "string",
"success": true
}
Response examples (500)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (500)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (502)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (502)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (503)
{
"code": "string",
"error": "string",
"success": true
}
Response examples (503)
{
"code": "string",
"error": "string",
"success": true
}