Introduction
Organisations and venues
Marketing
Workflows
Going live
Deal Codes
Deal codes allow Stampede users to uniquely send a code for each marketing email that gets sent out from Stampede. Customers can send a birthday campaign from Stampede which includes a 10%_OFF deal within this deal, a code will be sent within each email to prevent customers from using the same code multiple times. An example of how the deal structure works below:
10%_OFF:
ABC1
ABC2
ABC3
BOGOF:
DEF1
DEF2
DEF3
2FOR1:
GHI1
GHI2
GHI3Get a paginated response of all deals
GET
/v1/deal{
data: {
id: string;
active: boolean;
name: string;
description: string | null;
expires_at: string | null;
created_at: string;
updated_at: string;
cash_value_amount: number | null;
cash_value_currency: string | null;
days_code_valid_for: number | null;
voucher_codes_count: number;
}[];
links: {
first: string;
last: string;
prev: string | null;
next: string | null;
};
meta: {
current_page: number;
from: number;
last_page: number;
links: {
url: string | null;
label: string;
active: boolean;
}[];
path: string;
per_page: number;
to: number;
total: number;
};
}Create a new deal
POST
/v1/dealRequest Body
| Name | Type | Description |
|---|---|---|
namerequired | String | The name of the voucher |
cash_value_amount | Number | Cash value amount in pennies |
expires_at | ISO 8601 | The expiry date of the voucher |
active | Boolean | If the voucher is active or inactive |
description | String | The description of the voucher |
days_code_valid_for | Number | How long is this code valid for from date of issue |
cash_value_currency | ISO 4217 | The currency code of the cash value (for example, GBP) |
{
message: string;
voucher: {
id: string;
active: boolean;
name: string | null;
description: string;
expires_at: string | null;
created_at: string;
updated_at: string;
cash_value_amount: number | null;
cash_value_currency: string | null;
days_code_valid_for: number | null;
voucher_codes_count: number | null;
};
}Search for a code
GET
/v1/code/searchQuery Parameters
| Name | Type | Description |
|---|---|---|
coderequired | String | The code you're looking to search |
{
data: {
id: string;
voucher_id?: string;
voucher?: {
id: string;
active: boolean;
name: string;
description: string;
expires_at: string | null;
created_at: string;
updated_at: string;
cash_value_amount: number | null;
cash_value_currency: string | null;
days_code_valid_for: number | null;
voucher_codes_count: number;
};
code?: string;
sent_to_profile_id?: number;
redeemed_by_profile_id?: number | null;
redeemed_by_user_id?: number | null;
redeemed_at?: string | null;
is_redeemed?: boolean;
revoked_at?: string | null;
is_revoked?: boolean;
is_revokable?: boolean;
expires_at?: string | null;
created_at?: string;
updated_at?: string;
sent_to_profile_data?: any;
}[];
links: {
first: string;
last: string;
prev: string | null;
next: string | null;
};
meta: {
current_page: number;
from: number | null;
last_page: number;
links: {
url: string | null;
label: string;
active: boolean;
}[];
path: string;
per_page: number;
to: number | null;
total: number;
};
}Revoke a code
POST
/v1/code/revokeQuery Parameters
| Name | Type | Description |
|---|---|---|
code | String | The voucher code you're looking to revoke |
{
message: string;
voucher_code: {
id: string;
voucher_id: string;
code: string;
sent_to_profile_id: string | null;
redeemed_by_profile_id: string | null;
redeemed_by_user_id: string | null;
redeemed_at: string | null;
is_redeemed: boolean;
revoked_at: string;
is_revoked: boolean;
is_revokable: boolean;
expires_at: string | null;
created_at: string;
updated_at: string;
};
}