openapi: 3.0.2 info: title: Klaviyo Accounts Coupons API version: '2026-04-15' description: The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details. contact: name: Klaviyo Developer Experience Team email: developers@klaviyo.com url: https://developers.klaviyo.com termsOfService: https://www.klaviyo.com/legal/api-terms license: name: License url: https://www.klaviyo.com/legal servers: - url: https://a.klaviyo.com description: Production security: - Klaviyo-API-Key: [] tags: - name: Coupons description: coupons paths: /api/coupons: get: operationId: get_coupons summary: Get Coupons description: 'Get all coupons in an account. To learn more, see our [Coupons API guide](https://developers.klaviyo.com/en/docs/use_klaviyos_coupons_api).

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupons:read`' parameters: - name: fields[coupon] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - description - external_id - monitor_configuration explode: false - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 100. Min: 1. Max: 100.' required: false schema: type: integer default: 100 maximum: 100 minimum: 1 - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupons:read post: operationId: create_coupon summary: Create Coupon description: 'Creates a new coupon.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `coupons:write`' parameters: - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/CouponCreateQuery' responses: '201': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PostCouponResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - coupons:write /api/coupons/{id}: get: operationId: get_coupon summary: Get Coupon description: 'Get a specific coupon with the given coupon ID.

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupons:read`' parameters: - name: id in: path description: The internal id of a Coupon is equivalent to its external id stored within an integration. required: true schema: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF - name: fields[coupon] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - description - external_id - monitor_configuration explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupons:read patch: operationId: update_coupon summary: Update Coupon description: '*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `coupons:write`' parameters: - name: id in: path description: The internal id of a Coupon is equivalent to its external id stored within an integration. required: true schema: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/CouponUpdateQuery' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PatchCouponResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - coupons:write delete: operationId: delete_coupon summary: Delete Coupon description: 'Delete the coupon with the given coupon ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `coupons:write`' parameters: - name: id in: path description: The internal id of a Coupon is equivalent to its external id stored within an integration. required: true schema: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '204': description: Success 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - coupons:write /api/coupon-codes: get: operationId: get_coupon_codes summary: Get Coupon Codes description: 'Gets a list of coupon codes associated with a coupon/coupons or a profile/profiles. A coupon/coupons or a profile/profiles must be provided as required filter params.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:read`' parameters: - name: fields[coupon-code] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - expires_at - status - unique_code explode: false - name: fields[coupon] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - description - external_id - monitor_configuration explode: false - name: filter in: query description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
`status`: `equals`
`coupon.id`: `any`, `equals`
`profile.id`: `any`, `equals`' required: true schema: type: string example: equals(coupon.id,'10OFF') - name: include in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships schema: type: array items: type: string enum: - coupon explode: false - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 100. Min: 1. Max: 100.' required: false schema: type: integer default: 100 maximum: 100 minimum: 1 - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponCodeResponseCollectionCompoundDocument' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 350/s steady: 3500/m x-klaviyo-scopes: - coupon-codes:read post: operationId: create_coupon_code summary: Create Coupon Code description: 'Synchronously creates a coupon code for the given coupon.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:write`' parameters: - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/CouponCodeCreateQuery' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PostCouponCodeResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 350/s steady: 3500/m x-klaviyo-scopes: - coupon-codes:write /api/coupon-codes/{id}: get: operationId: get_coupon_code summary: Get Coupon Code description: 'Returns a Coupon Code specified by the given identifier.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:read`' parameters: - name: id in: path description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. required: true schema: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 - name: fields[coupon-code] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - expires_at - status - unique_code explode: false - name: fields[coupon] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - description - external_id - monitor_configuration explode: false - name: include in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships schema: type: array items: type: string enum: - coupon explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponCodeResponseCompoundDocument' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 350/s steady: 3500/m x-klaviyo-scopes: - coupon-codes:read patch: operationId: update_coupon_code summary: Update Coupon Code description: 'Updates a coupon code specified by the given identifier synchronously. We allow updating the ''status'' and ''expires_at'' of coupon codes.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:write`' parameters: - name: id in: path description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. required: true schema: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/CouponCodeUpdateQuery' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PatchCouponCodeResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 350/s steady: 3500/m x-klaviyo-scopes: - coupon-codes:write delete: operationId: delete_coupon_code summary: Delete Coupon Code description: 'Deletes a coupon code specified by the given identifier synchronously. If a profile has been assigned to the coupon code, an exception will be raised

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:write`' parameters: - name: id in: path description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. required: true schema: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '204': description: Success 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 350/s steady: 3500/m x-klaviyo-scopes: - coupon-codes:write /api/coupon-code-bulk-create-jobs: get: operationId: get_bulk_create_coupon_code_jobs summary: Get Bulk Create Coupon Code Jobs description: 'Get all coupon code bulk create jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupon-codes:read`' parameters: - name: fields[coupon-code-bulk-create-job] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - completed_at - completed_count - created_at - errors - expires_at - failed_count - status - total_count explode: false - name: filter in: query description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`status`: `equals`' schema: type: string example: equals(status,'processing') - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponCodeCreateJobResponseCollectionCompoundDocument' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-operation-aliases: - get_coupon_code_bulk_create_jobs x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupon-codes:read post: operationId: bulk_create_coupon_codes summary: Bulk Create Coupon Codes description: 'Create a coupon-code-bulk-create-job to bulk create a list of coupon codes. Max number of coupon codes per job we allow for is 1000. Max number of jobs queued at once we allow for is 100.

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupon-codes:write`' parameters: - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/CouponCodeCreateJobCreateQuery' responses: '202': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PostCouponCodeCreateJobResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-operation-aliases: - spawn_coupon_code_bulk_create_job - create_coupon_code_bulk_create_job x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupon-codes:write /api/coupon-code-bulk-create-jobs/{job_id}: get: operationId: get_bulk_create_coupon_codes_job summary: Get Bulk Create Coupon Codes Job description: 'Get a coupon code bulk create job with the given job ID.

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupon-codes:read`' parameters: - name: job_id in: path description: ID of the job to retrieve. required: true schema: description: ID of the job to retrieve. type: string example: 01GSQPBF74KQ5YTDEPP41T1BZH - name: fields[coupon-code-bulk-create-job] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - completed_at - completed_count - created_at - errors - expires_at - failed_count - status - total_count explode: false - name: fields[coupon-code] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - expires_at - status - unique_code explode: false - name: include in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships schema: type: array items: type: string enum: - coupon-codes explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponCodeCreateJobResponseCompoundDocument' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-operation-aliases: - get_coupon_code_bulk_create_job x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupon-codes:read /api/coupon-codes/{id}/coupon: get: operationId: get_coupon_for_coupon_code summary: Get Coupon For Coupon Code description: 'Get the coupon associated with a given coupon code ID.

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupons:read`' parameters: - name: id in: path description: The ID of the coupon to look up the relationship of. required: true schema: description: The ID of the coupon to look up the relationship of. type: string example: 10OFF - name: fields[coupon] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - description - external_id - monitor_configuration explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-operation-aliases: - get_coupon_code_coupon x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupons:read /api/coupon-codes/{id}/relationships/coupon: get: operationId: get_coupon_id_for_coupon_code summary: Get Coupon ID for Coupon Code description: 'Gets the coupon relationship associated with the given coupon code id

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupons:read`' parameters: - name: id in: path description: The ID of the coupon to look up the relationship of. required: true schema: description: The ID of the coupon to look up the relationship of. type: string example: 10OFF - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponCodeCouponRelationshipResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-operation-aliases: - get_coupon_relationships_coupon_codes x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupons:read /api/coupons/{id}/coupon-codes: get: operationId: get_coupon_codes_for_coupon summary: Get Coupon Codes for Coupon description: 'Gets a list of coupon codes associated with the given coupon id

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupon-codes:read`' parameters: - name: id in: path description: The ID of the coupon to look up the relationship of. required: true schema: description: The ID of the coupon to look up the relationship of. type: string example: 10OFF - name: fields[coupon-code] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - expires_at - status - unique_code explode: false - name: filter in: query description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
`status`: `equals`
`coupon.id`: `any`, `equals`
`profile.id`: `any`, `equals`' schema: type: string example: less-than(expires_at,2022-11-08T00:00:00+00:00) - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 100. Min: 1. Max: 100.' required: false schema: type: integer default: 100 maximum: 100 minimum: 1 - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponCodeResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-operation-aliases: - get_coupon_coupon_codes - get_codes_for_coupon x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupon-codes:read /api/coupons/{id}/relationships/coupon-codes: get: operationId: get_coupon_code_ids_for_coupon summary: Get Coupon Code IDs for Coupon description: 'Gets a list of coupon code relationships associated with the given coupon id

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `coupon-codes:read`' parameters: - name: id in: path description: The ID of the coupon to look up the relationship of. required: true schema: description: The ID of the coupon to look up the relationship of. type: string example: 10OFF - name: filter in: query description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`
`status`: `equals`
`coupon.id`: `any`, `equals`
`profile.id`: `any`, `equals`' schema: type: string example: less-than(expires_at,2022-11-08T00:00:00+00:00) - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 100. Min: 1. Max: 100.' required: false schema: type: integer default: 100 maximum: 100 minimum: 1 - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetCouponCodesRelationshipsResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Coupons x-klaviyo-operation-aliases: - get_coupon_code_relationships_coupon - get_code_ids_for_coupon - get_coupon_relationships_codes x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - coupon-codes:read components: schemas: GetCouponCodeResponseCollectionCompoundDocument: type: object properties: data: type: array items: $ref: '#/components/schemas/CouponCodeResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' included: type: array items: $ref: '#/components/schemas/CouponResponseObjectResource' required: - data CouponCodeCreateQuery: type: object properties: data: $ref: '#/components/schemas/CouponCodeCreateQueryResourceObject' required: - data CouponCodeEnum: type: string enum: - coupon-code CouponCodeCreateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/CouponCodeEnum' attributes: type: object properties: unique_code: description: This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon. type: string example: ASD325FHK324UJDOI2M3JNES99 expires_at: description: The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year. type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true required: - unique_code relationships: type: object properties: coupon: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: type: string example: 10OFF required: - type - id required: - coupon required: - type - attributes - relationships CouponEnum: type: string enum: - coupon CouponCreateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/CouponEnum' attributes: type: object properties: external_id: description: This is the id that is stored in an integration such as Shopify or Magento. type: string example: 10OFF description: description: A description of the coupon. type: string example: 10% off for purchases over $50 nullable: true monitor_configuration: description: The monitor configuration for the coupon. type: object example: low_balance_threshold: 500 nullable: true required: - external_id required: - type - attributes GetCouponResponse: type: object properties: data: $ref: '#/components/schemas/CouponResponseObjectResource' links: $ref: '#/components/schemas/ObjectLinks' required: - data CouponCodeCreateJobCreateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/CouponCodeBulkCreateJobEnum' attributes: type: object properties: coupon-codes: description: Array of coupon codes to create. type: object properties: data: type: array items: $ref: '#/components/schemas/CouponCodeCreateQueryResourceObject' required: - data required: - coupon-codes required: - type - attributes CouponCodeUpdateQuery: type: object properties: data: $ref: '#/components/schemas/CouponCodeUpdateQueryResourceObject' required: - data CouponCodeCreateJobCreateQuery: type: object properties: data: $ref: '#/components/schemas/CouponCodeCreateJobCreateQueryResourceObject' required: - data ErrorSource: type: object properties: pointer: description: A pointer to the source of the error in the request payload. type: string example: /data default: /data nullable: true CouponCodeUpdateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/CouponCodeEnum' id: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 attributes: type: object properties: status: description: The API status of our coupon codes. type: string enum: - ASSIGNED_TO_PROFILE - DELETING - PROCESSING - UNASSIGNED - USED - VERSION_NOT_ACTIVE nullable: true expires_at: description: The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year. type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true required: - type - id - attributes APIJobErrorPayload: type: object properties: id: description: Unique identifier for the error. type: string example: e4eebb08-b055-4a6f-bb13-c8cb69c9eb94 code: description: A code for classifying the error type. type: string example: invalid title: description: A high-level message about the error. type: string example: Invalid input detail: description: Specific details about the error. type: string example: The payload provided in the request is invalid. source: description: Additional information on the source of the error. $ref: '#/components/schemas/ErrorSource' required: - id - code - title - detail - source CouponCreateQuery: type: object properties: data: $ref: '#/components/schemas/CouponCreateQueryResourceObject' required: - data PostCouponResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF attributes: type: object properties: external_id: description: This is the id that is stored in an integration such as Shopify or Magento. type: string example: 10OFF description: description: A description of the coupon. type: string example: 10% off for purchases over $50 nullable: true monitor_configuration: description: The monitor configuration for the coupon. type: object example: low_balance_threshold: 500 nullable: true required: - external_id links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data PatchCouponCodeResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponCodeEnum' id: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 attributes: type: object properties: unique_code: description: This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon. type: string example: ASD325FHK324UJDOI2M3JNES99 nullable: true expires_at: description: The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year. type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true status: description: The current status of the coupon code. type: string example: UNASSIGNED enum: - ASSIGNED_TO_PROFILE - DELETING - PROCESSING - UNASSIGNED - USED - VERSION_NOT_ACTIVE nullable: true relationships: type: object properties: coupon: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: type: string example: 10OFF required: - type - id links: $ref: '#/components/schemas/RelationshipLinks' profile: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/ProfileEnum' id: type: string example: 01GDDKASAP8TKDDA2GRZDSVP4H required: - type - id links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data ProfileEnum: type: string enum: - profile GetCouponCodeResponseCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/CouponCodeResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' required: - data PatchCouponResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF attributes: type: object properties: external_id: description: This is the id that is stored in an integration such as Shopify or Magento. type: string example: 10OFF description: description: A description of the coupon. type: string example: 10% off for purchases over $50 nullable: true monitor_configuration: description: The monitor configuration for the coupon. type: object example: low_balance_threshold: 500 nullable: true required: - external_id links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data GetCouponCodeCouponRelationshipResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF required: - type - id links: $ref: '#/components/schemas/ObjectLinks' required: - data PostCouponCodeCreateJobResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponCodeBulkCreateJobEnum' id: description: Unique identifier for retrieving the job. Generated by Klaviyo. type: string attributes: type: object properties: status: description: Status of the asynchronous job. type: string example: processing enum: - cancelled - complete - processing - queued created_at: description: The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2022-11-08T00:00:00+00:00' total_count: description: The total number of operations to be processed by the job. See `completed_count` for the job's current progress. type: integer example: 10 completed_count: description: The total number of operations that have been completed by the job. type: integer example: 9 default: 0 nullable: true failed_count: description: The total number of operations that have failed as part of the job. type: integer example: 1 default: 0 nullable: true completed_at: description: Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true errors: description: Array of errors encountered during the processing of the job. type: array items: $ref: '#/components/schemas/APIJobErrorPayload' nullable: true expires_at: description: Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true required: - status - created_at - total_count relationships: type: object properties: coupon-codes: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/CouponCodeEnum' id: description: IDs of the created coupon codes. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data GetCouponCodeResponseCompoundDocument: type: object properties: data: $ref: '#/components/schemas/CouponCodeResponseObjectResource' included: type: array items: $ref: '#/components/schemas/CouponResponseObjectResource' links: $ref: '#/components/schemas/ObjectLinks' required: - data GetCouponResponseCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/CouponResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' required: - data PostCouponCodeResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponCodeEnum' id: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 attributes: type: object properties: unique_code: description: This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon. type: string example: ASD325FHK324UJDOI2M3JNES99 nullable: true expires_at: description: The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year. type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true status: description: The current status of the coupon code. type: string example: UNASSIGNED enum: - ASSIGNED_TO_PROFILE - DELETING - PROCESSING - UNASSIGNED - USED - VERSION_NOT_ACTIVE nullable: true relationships: type: object properties: coupon: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: type: string example: 10OFF required: - type - id links: $ref: '#/components/schemas/RelationshipLinks' profile: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/ProfileEnum' id: type: string example: 01GDDKASAP8TKDDA2GRZDSVP4H required: - type - id links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data CouponUpdateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF attributes: type: object properties: description: description: A description of the coupon. type: string example: 10% off for purchases over $50 nullable: true monitor_configuration: description: The monitor configuration for the coupon. type: object example: low_balance_threshold: 500 nullable: true required: - type - id - attributes GetCouponCodesRelationshipsResponseCollection: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/CouponCodeEnum' id: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 links: $ref: '#/components/schemas/CollectionLinks' required: - data GetCouponCodeCreateJobResponseCollectionCompoundDocument: type: object properties: data: type: array items: $ref: '#/components/schemas/CouponCodeCreateJobResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' required: - data ObjectLinks: type: object properties: self: type: string format: uri required: - self GetCouponCodeCreateJobResponseCompoundDocument: type: object properties: data: $ref: '#/components/schemas/CouponCodeCreateJobResponseObjectResource' included: type: array items: $ref: '#/components/schemas/CouponCodeResponseObjectResource' links: $ref: '#/components/schemas/ObjectLinks' required: - data CouponUpdateQuery: type: object properties: data: $ref: '#/components/schemas/CouponUpdateQueryResourceObject' required: - data CouponCodeCreateJobResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/CouponCodeBulkCreateJobEnum' id: description: Unique identifier for retrieving the job. Generated by Klaviyo. type: string attributes: type: object properties: status: description: Status of the asynchronous job. type: string example: processing enum: - cancelled - complete - processing - queued created_at: description: The date and time the job was created in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2022-11-08T00:00:00+00:00' total_count: description: The total number of operations to be processed by the job. See `completed_count` for the job's current progress. type: integer example: 10 completed_count: description: The total number of operations that have been completed by the job. type: integer example: 9 default: 0 nullable: true failed_count: description: The total number of operations that have failed as part of the job. type: integer example: 1 default: 0 nullable: true completed_at: description: Date and time the job was completed in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true errors: description: Array of errors encountered during the processing of the job. type: array items: $ref: '#/components/schemas/APIJobErrorPayload' nullable: true expires_at: description: Date and time the job expires in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true required: - status - created_at - total_count relationships: type: object properties: coupon-codes: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/CouponCodeEnum' id: description: IDs of the created coupon codes. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links CollectionLinks: type: object properties: self: type: string format: uri first: type: string format: uri last: type: string format: uri prev: type: string format: uri next: type: string format: uri required: - self CouponCodeResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/CouponCodeEnum' id: description: The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with. type: string example: 10OFF-ASD325FHK324UJDOI2M3JNES99 attributes: type: object properties: unique_code: description: This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon. type: string example: ASD325FHK324UJDOI2M3JNES99 nullable: true expires_at: description: The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year. type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true status: description: The current status of the coupon code. type: string example: UNASSIGNED enum: - ASSIGNED_TO_PROFILE - DELETING - PROCESSING - UNASSIGNED - USED - VERSION_NOT_ACTIVE nullable: true relationships: type: object properties: coupon: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: type: string example: 10OFF required: - type - id links: $ref: '#/components/schemas/RelationshipLinks' profile: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/ProfileEnum' id: type: string example: 01GDDKASAP8TKDDA2GRZDSVP4H required: - type - id links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links CouponCodeBulkCreateJobEnum: type: string enum: - coupon-code-bulk-create-job CouponResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/CouponEnum' id: description: The internal id of a Coupon is equivalent to its external id stored within an integration. type: string example: 10OFF attributes: type: object properties: external_id: description: This is the id that is stored in an integration such as Shopify or Magento. type: string example: 10OFF description: description: A description of the coupon. type: string example: 10% off for purchases over $50 nullable: true monitor_configuration: description: The monitor configuration for the coupon. type: object example: low_balance_threshold: 500 nullable: true required: - external_id links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links RelationshipLinks: type: object properties: self: type: string format: uri related: type: string format: uri required: - self - related responses: ClientError: description: Client Error content: application/vnd.api+json: schema: type: object properties: errors: type: array items: type: object required: - id - code - title - detail properties: id: type: string code: type: string title: type: string detail: type: string source: type: object properties: pointer: type: string parameter: type: string required: - errors ServerError: description: Server Error content: application/vnd.api+json: schema: type: object properties: errors: type: array items: type: object required: - id - code - title - detail properties: id: type: string code: type: string title: type: string detail: type: string source: type: object properties: pointer: type: string parameter: type: string required: - errors securitySchemes: Klaviyo-API-Key: type: apiKey in: header name: Authorization description: Private key authentication for /api/ endpoints is performed by setting the `Authorization` header to `Klaviyo-API-Key your-private-api-key`
For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#authentication x-default: Klaviyo-API-Key your-private-api-key x-readme: explorer-enabled: false proxy-enabled: true samples-enabled: true