API ReferencePromotions
Delete a promotion
Delete a promotion while retaining referenced order history.
Deletion permanently purges unreferenced phases. If an order or invoice references a phase, the promotion and referenced phase remain soft-deleted and may be restored.
AuthorizationBearer <token>
Provide your SellApp API key as a bearer token.
In: header
Path Parameters
promotion*integer
The promotion path parameter.
Header Parameters
X-STORE?string
Store slug. Required for OAuth access tokens. API keys may omit it to use their current store, or the first accessible store when no current store is selected.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X DELETE "https://sell.app/api/v2/promotions/0" \ -H "X-STORE: launch-lab"{
"data": {
"id": 30,
"name": "Launch week",
"status": "active",
"starts_at": "2026-09-01T12:00:00Z",
"ends_at": null,
"priority": 0,
"is_stackable": false,
"max_redemptions": null,
"phases": [
{
"id": 31,
"promotion_id": 30,
"sort_order": 1,
"discount_type": "percentage",
"discount_value": "10.00",
"ends_at": null,
"max_redemptions": null,
"minimum_amount": null,
"created_at": "2026-09-01T12:00:00Z",
"updated_at": "2026-09-01T12:00:00Z",
"deleted_at": null
}
],
"created_at": "2026-09-01T12:00:00Z",
"updated_at": "2026-09-01T12:00:00Z",
"deleted_at": "2026-09-07T12:00:00Z"
}
}{
"type": "invalid_request_error",
"code": "bad_request",
"message": "The request could not be understood.",
"status": 400,
"param": null,
"request_id": "01992a65-e064-71ba-b38f-902b7966a6be",
"docs_url": "https://sell.app/docs/api/errors#bad-request"
}{
"type": "authentication_error",
"code": "unauthenticated",
"message": "Unauthenticated.",
"status": 401,
"param": null,
"request_id": "01992a65-e064-71ba-b38f-902b7966a6be",
"docs_url": "https://sell.app/docs/api/errors#unauthenticated"
}{
"type": "authorization_error",
"code": "forbidden",
"message": "This action is unauthorized.",
"status": 403,
"param": null,
"request_id": "01992a65-e064-71ba-b38f-902b7966a6be",
"docs_url": "https://sell.app/docs/api/errors#forbidden"
}{
"type": "not_found_error",
"code": "resource_not_found",
"message": "Not Found.",
"status": 404,
"param": null,
"request_id": "01992a65-e064-71ba-b38f-902b7966a6be",
"docs_url": "https://sell.app/docs/api/errors#resource-not-found"
}{
"type": "validation_error",
"code": "validation_failed",
"message": "The selected product variant id is invalid.",
"status": 422,
"param": "product_variant_id",
"request_id": "01992a65-e064-71ba-b38f-902b7966a6be",
"docs_url": "https://sell.app/docs/api/errors#validation-failed",
"errors": {
"product_variant_id": [
"The selected product variant id is invalid."
]
}
}{
"type": "rate_limit_error",
"code": "rate_limit_exceeded",
"message": "Too Many Attempts.",
"status": 429,
"param": null,
"request_id": "01992a65-e064-71ba-b38f-902b7966a6be",
"docs_url": "https://sell.app/docs/api/errors#rate-limit-exceeded"
}{
"type": "api_error",
"code": "api_error",
"message": "Server Error",
"status": 500,
"param": null,
"request_id": "01992a65-e064-71ba-b38f-902b7966a6be",
"docs_url": "https://sell.app/docs/api/errors#api-error"
}