Create Promotion
Create a promotion.
In: header
Query Parameters
Comma-separated fields that should be included in the returned data. if a field is prefixed with + it will be added to the default fields, using - will remove it from the default fields. without prefix it will replace the entire default fields.
Request Body
application/json
The promotion's code.
Whether the promotion is applied automatically.
The promotion's type.
"standard" | "buyget"The ID of the campaign that the promotion belongs to.
The details of a campaign to create and add the promotion to it.
The promotion's application method.
The promotion's rules.
Pass additional custom data to the API route. This data is passed to the underlying workflow under the additional_data parameter.
Response Body
application/json
application/json
text/plain
application/json
application/json
application/json
application/json
curl -X POST "https://{tenant}.api.myxclade.com/admin/promotions" \ -H "Content-Type: application/json" \ -d '{ "code": "string", "type": "standard", "campaign_id": "string", "application_method": { "description": "string", "value": 0, "currency_code": "string", "max_quantity": 0, "type": "fixed", "target_type": "order", "apply_to_quantity": 0, "buy_rules_min_quantity": 0 } }'{
"promotion": {
"application_method": {
"promotion": {},
"target_rules": [
{
"id": "string",
"description": "string",
"attribute": "customer_group_id",
"operator": "gt",
"values": [
"cusgroup_123"
]
}
],
"buy_rules": [
{
"id": "string",
"description": "string",
"attribute": "customer_group_id",
"operator": "gt",
"values": [
"cusgroup_123"
]
}
],
"id": "string",
"type": "fixed",
"target_type": "items",
"allocation": "each",
"value": 0,
"currency_code": "usd",
"max_quantity": 0,
"buy_rules_min_quantity": 0,
"apply_to_quantity": 0
},
"rules": [
{
"id": "string",
"description": "string",
"attribute": "customer_group_id",
"operator": "gt",
"values": [
"cusgroup_123"
]
}
],
"id": "string",
"code": "OFF50",
"type": "standard",
"is_automatic": true,
"campaign_id": "string",
"campaign": {
"id": "string",
"name": "string",
"description": "string",
"currency": "string",
"campaign_identifier": "string",
"starts_at": "string",
"ends_at": "string",
"budget": {
"id": "string",
"type": "spend",
"currency_code": "string",
"limit": 0,
"used": 0,
"attribute": "string"
},
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"deleted_at": "2019-08-24T14:15:22Z"
},
"created_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"deleted_at": "2019-08-24T14:15:22Z",
"status": "draft",
"is_tax_inclusive": true
}
}{
"message": "Discount must be set to dynamic",
"type": "not_allowed"
}"Unauthorized"{
"message": "Entity with id 1 was not found",
"type": "not_found"
}{
"code": "unknown_error",
"message": "The request conflicted with another request. You may retry the request with the provided Idempotency-Key.",
"type": "QueryRunnerAlreadyReleasedError"
}{
"code": "invalid_request_error",
"message": "Discount with code TEST already exists.",
"type": "duplicate_error"
}{
"code": "api_error",
"message": "An error occured while hashing password",
"type": "database_error"
}List Rule Values Given a Rule Attribute
Retrieve all potential values for promotion rules and target and buy rules based on the specified rule attribute and type. For example, if you provide the ID of the `currency_code` rule attribute, and set `rule_type` to `rules`, a list of currencies are retrieved in label-value pairs.
Update a Promotion
Update a promotion's details.