@redotech/redo-api-schema
Version:
Common definitions for Redo API
1,640 lines (1,638 loc) • 88.1 kB
YAML
components:
headers:
page-next.header:
description: Next value for X-Page-Continue, for more results
schema:
type: string
parameters:
document-type.param:
description: Type of document to download
in: path
name: documentType
required: true
schema:
$ref: '#/components/schemas/shipment-document-type.schema'
invoice-id.param:
description: Invoice ID
in: path
name: invoiceId
required: true
schema:
example: 64e4d5e837572a4813b73e40
type: string
page-continue.param:
description: Page marker, from X-Page-Next header
example: 64df700931a04885276c3364
in: header
name: X-Page-Continue
schema:
type: string
page-size.param:
description: Page size, defaults to 20
example: 20
in: header
name: X-Page-Size
schema:
maximum: 500
minimum: 1
type: integer
provider-order-name:
description: Provider specific order name
in: query
name: provider_order_name
schema:
example: XYZ1025
type: string
return-id.param:
description: Return ID
in: path
name: returnId
required: true
schema:
example: 64e4d5e837572a4813b73e40
type: string
shipment-id.param:
description: Shipment ID
in: path
name: shipmentId
required: true
schema:
example: 67c7e87a2c8c262c0ddc9861
type: string
shopify-order-name:
description: Shopify specific order name
in: query
name: shopify_order_name
schema:
example: XYZ1025
type: string
store-id.param:
description: Store ID
in: path
name: storeId
required: true
schema:
example: 64e5a8a1af49a89df37e4ee7
type: string
updated-at-max.param:
description: Maximum updated time, exclusive
example: '2000-02-01T00:00:00Z'
in: query
name: updated_at_max
schema:
format: date-time
type: string
updated-at-min.param:
description: Minimum updated time, inclusive
example: '2000-01-01T00:00:00Z'
in: query
name: updated_at_min
schema:
format: date-time
type: string
webhook-id.param:
description: Webhook ID
in: path
name: webhookId
required: true
schema:
example: 64e5a865a58eefeed7f05ea6
type: string
schemas:
address.schema:
description: Address.
properties:
city:
description: City name
examples:
- Anytown
title: City
type: string
country:
description: Country code
examples:
- US
- CA
title: Country
type: string
line1:
description: Line 1
examples:
- 123 Main St
title: Line 1
type: string
line2:
default: ''
description: Line 2
examples:
- ''
title: Line 2
type: string
postalCode:
description: Postal or ZIP code
examples:
- '12345'
title: Postal code
type: string
state:
description: State or province
examples:
- WA
- Washington
title: State
type: string
required:
- city
- country
- line1
- state
- postalCode
title: Address
type: object
comment.schema:
description: Comment with either message or image.
examples:
- message: Item is worn.
- image: eJxiYAEAAAD//wMAAAYABQ==
oneOf:
- additionalProperties: false
properties:
image:
contentEncoding: base64
description: Base64-encoded image
title: Image
type: string
required:
- image
title: Image comment
type: object
- additionalProperties: false
properties:
message:
description: Message.
title: Message
type: string
required:
- message
title: Message comment
type: object
title: Comment
coverage-product.schema:
description: Coverage product.
properties:
coverages:
description: Coverage.
items:
properties:
lineItems:
items:
properties:
id:
description: Line item ID.
title: ID
type: string
type: object
type: array
type:
enum:
- shipping_failure
- return_shipping
title: Coverage
required:
- lineItems
- type
type: object
type: array
id:
description: Coverage ID.
title: ID
type: string
price:
$ref: '#/components/schemas/money.schema'
description: Price.
title: Price
required:
- coverage
- id
- price
title: Coverage product
type: object
custom-event-request.schema:
additionalProperties: false
description: Custom event to trigger flows with merchant-defined event names and properties.
properties:
email:
description: Customer email address (one of email or phone is required).
type: string
event_name:
description: The name of the custom event (e.g., 'user_registered', 'purchase_completed').
type: string
event_timestamp:
description: ISO 8601 timestamp when the event occurred. Defaults to current time if not provided.
format: date-time
type: string
phone:
description: Customer phone number (one of email or phone is required).
type: string
properties:
additionalProperties: true
description: Custom properties for this event. Access in templates using dot notation (e.g., {{ properties.product_name }}).
type: object
required:
- event_name
title: Custom Event Request
type: object
custom-event-response.schema:
additionalProperties: false
description: Response after successfully creating a custom event.
properties:
event_id:
description: The unique identifier for the created event.
type: string
event_name:
description: The name of the custom event that was created.
type: string
status:
description: Status of the event processing.
enum:
- processed
type: string
required:
- event_id
- status
- event_name
title: Custom Event Response
type: object
customer-subscription-email.schema:
description: Email subscription updates
properties:
email:
description: Email address
format: email
type: string
subscriptions:
properties:
marketing:
$ref: '#/components/schemas/subscription-status-marketing.schema'
type: object
required:
- email
- subscriptions
type: object
customer-subscription-sms.schema:
description: SMS subscription updates
properties:
phoneNumber:
description: Phone number in E.164 format (e.g., +12345678900)
type: string
subscriptions:
properties:
marketing:
$ref: '#/components/schemas/subscription-status-marketing.schema'
transactional:
$ref: '#/components/schemas/subscription-status-transactional.schema'
type: object
required:
- phoneNumber
- subscriptions
type: object
customer-subscription-update-response.schema:
description: Customer subscription update response
properties:
message:
description: Human-readable success message
type: string
success:
description: Whether the operation was successful
type: boolean
updatedSubscriptions:
description: Details of which subscriptions were updated
properties:
email:
properties:
marketing:
description: Whether email marketing was updated
type: boolean
type: object
sms:
properties:
marketing:
description: Whether SMS marketing was updated
type: boolean
transactional:
description: Whether SMS transactional was updated
type: boolean
type: object
type: object
required:
- success
- message
- updatedSubscriptions
type: object
error.schema:
description: Problem details. See [RFC 7807 Section 3](https://datatracker.ietf.org/doc/html/rfc7807#section-3).
properties:
detail:
description: Human-readable description of the problem.
title: Detail
type: string
instance:
description: A URI reference that identifies this problem.
format: uri-reference
type: string
title:
description: Human-readable summary of the problem type.
title: Title
type: string
type:
default: about:blank
description: A URI reference that identifies the problem type.
format: uri-reference
type: string
title: Problem details
type: object
exchange-provision.schema:
enum:
- instant
- deferred
example: deferred
title: Exchang provision
type: string
https-callback.schema:
description: HTTPS callback
properties:
auth:
description: Authorization.
oneOf:
- properties:
bearer:
description: Bearer
properties:
token:
description: Token for Bearer authorization.
example: abc123
format: password
title: Token
type: string
title: Bearer
title: Bearer authorization
type: object
- type: 'null'
title: Authorization
url:
description: HTTPS callback URL.
example: https://subscriber.example.org/events
format: uri
pattern: ^https://
title: URL
type: string
required:
- auth
- url
title: HTTPS callback
type: object
invoice.schema:
description: Schema for an invoice.
properties:
charge:
$ref: '#/components/schemas/money.schema'
description: The charge that the invoice is for.
createdAt:
description: The time the invoice was created.
format: date-time
type: string
id:
description: The ID of the charge.
type: string
status:
description: The status of the invoice.
type: string
store:
properties:
id:
description: The ID of the store.
type: string
required:
- id
type: object
updatedAt:
description: The time the invoice was last updated.
format: date-time
type: string
required:
- team
- updatedAt
- status
- createdAt
- charge
type: object
item-quantity.schema:
description: Item quantity.
example: 1
exclusiveMinimum: 0
title: Item quantity
type: number
length.schema:
description: Length measurement with unit.
properties:
unit:
description: Length unit
enum:
- in
- cm
examples:
- in
- cm
title: Unit
type: string
value:
description: Numeric length value
examples:
- 10.5
- 30
minimum: 0
title: Value
type: number
required:
- value
- unit
title: Length
type: object
money.schema:
description: Currency amount
properties:
amount:
examples:
- '50.2'
- '1.78'
title: Amount
type: string
currency:
examples:
- USD
- EUR
title: Currency
type: string
title: Money
type: object
order-read.schema:
description: Order.
properties:
customer:
properties:
emailAddress:
description: Email address of customer.
format: email
title: Email address
type: string
name:
$ref: '#/components/schemas/person-name.schema'
description: Name of customer.
title: Name
phoneNumber:
$ref: '#/components/schemas/phone-number.schema'
description: Phone number of customer.
title: Phone number
required:
- name
type: object
discounts:
$ref: '#/components/schemas/money.schema'
description: The total amount discounted on the order before returns. This includes both order and line level discounts.
title: Discounts
externalId:
description: Shopify ID
examples:
- '1073459971'
- '450789469'
title: External ID
type: string
id:
description: Order ID
example: 64e4da943dd822979a70bd12
title: ID
type: string
items:
items:
properties:
externalId:
example: '123'
type: string
fulfillmentLocationId:
description: ID of the location where the item was be fulfilled.
example: '123'
type:
- string
- 'null'
id:
description: Line item ID
title: ID
type: string
price:
$ref: '#/components/schemas/money.schema'
title: Price
product:
$ref: '#/components/schemas/product.schema'
title: Product
quantity:
$ref: '#/components/schemas/item-quantity.schema'
title: Quantity
variant:
$ref: '#/components/schemas/product-variant.schema'
title: Variant
required:
- id
- product
- quantity
- variant
- price
- fulfillmentLocationId
title: Line items
type: array
lineItemsTotal:
$ref: '#/components/schemas/money.schema'
description: Total price of all line items before discounts, shipping, and taxes.
title: Line Items Total
name:
description: Shopify name.
examples:
- '#123'
title: Name
type: string
shippingCost:
$ref: '#/components/schemas/money.schema'
description: The total shipping cost for the order. This includes fees and any related discounts that were refunded.
title: Shipping Cost
taxes:
$ref: '#/components/schemas/money.schema'
description: Total taxes applied to the order.
title: Taxes
total:
$ref: '#/components/schemas/money.schema'
description: The total price of the order, before returns. This includes taxes, discounts, and shipping costs.
title: Total
required:
- customer
- id
- items
- name
- discounts
- lineItemsTotal
- shippingCost
- total
- taxes
title: Order
type: object
parcel-type.schema:
description: Parcel type enum.
enum:
- box
- envelope
- soft_pack
title: Parcel Type
type: string
parcel.schema:
description: Parcel information for shipping.
properties:
height:
$ref: '#/components/schemas/length.schema'
length:
$ref: '#/components/schemas/length.schema'
type:
$ref: '#/components/schemas/parcel-type.schema'
weight:
$ref: '#/components/schemas/shipping-weight.schema'
width:
$ref: '#/components/schemas/length.schema'
required:
- height
- length
- width
- weight
- type
title: Parcel
type: object
person-name.schema:
description: Person name.
properties:
given:
description: Given name
examples:
- John
- Mary
type: string
surname:
description: Surname
examples:
- Smith
- Brown
type: string
required:
- given
- surname
title: Person name
type: object
phone-number.schema:
description: Phone number, in E.164 format
examples:
- '+15555555555'
title: Phone number
type: string
product-variant.schema:
properties:
externalId:
title: External ID
type: string
name:
title: Title
type: string
sku:
title: SKU
type: string
weight:
$ref: '#/components/schemas/weight.schema'
title: Weight
required:
- name
title: Product variant
type: object
product.schema:
description: Product.
properties:
externalId:
description: Product ID in external system (e.g. shopify).
title: External ID
type: string
name:
description: Product title
title: Name
type: string
required:
- name
title: Product
type: object
return-read.schema:
description: Return read.
properties:
compensationMethods:
description: Array of compensation methods available for this return
items:
enum:
- refund
- store_credit
- exchange
type: string
title: Compensation Methods
type: array
createdAt:
description: Time of creation.
format: date-time
title: Created at
type: string
destination:
properties:
mailingAddress:
$ref: '#/components/schemas/address.schema'
description: Mailing address to send the returned items.
title: Mailing address
phoneNumber:
$ref: '#/components/schemas/phone-number.schema'
description: Phone number of the destination.
title: Phone number
type: object
exchange:
description: Exchange order
properties:
itemCount:
description: Total quantity of all exchange items
type: integer
items:
items:
properties:
id:
title: ID
type: string
originalPrice:
description: Original price for the exchange item without discounts and taxes
properties:
amount:
type: string
currency:
type: string
type: object
price:
description: Subtotal price for the exchange item including discounts
properties:
amount:
type: string
currency:
type: string
tax:
type: string
type: object
product:
$ref: '#/components/schemas/product.schema'
title: Product
quantity:
$ref: '#/components/schemas/item-quantity.schema'
title: Quantity
variant:
$ref: '#/components/schemas/product-variant.schema'
required:
- id
- quantity
- variant
title: Line items
type: array
order:
properties:
externalId:
description: ID of external order
title: External ID
type: string
type: object
provision:
$ref: '#/components/schemas/exchange-provision.schema'
title: Provision
totalTax:
description: Total tax for exchange items
properties:
amount:
type: string
currency:
type: string
type: object
required:
- items
- provision
title: Exchange
type: object
externalOrderIds:
description: Array of external order IDs associated with this return
items:
type: string
title: External Order IDs
type: array
giftCards:
description: Gift card(s) created for return
items:
properties:
amount:
$ref: '#/components/schemas/money.schema'
title: Amount
code:
description: Gift card 16 digit code.
title: Code
type: string
externalId:
description: Gift card ID.
title: ID
type: string
required:
- amount
- code
- externalId
type: object
title: Gift cards
type: array
id:
description: Return identifier.
examples:
- 64df65d4c5a4ca3eff4b4e43
title: Identifier
type: string
internalCreatedByName:
description: Name of the internal team member who created this return
title: Internal Created By Name
type: string
items:
description: Return items
items:
properties:
assessments:
description: Assessment records for this return item. Only applicable for warranties.
items:
properties:
assignedUser:
description: User assigned to this assessment
properties:
email:
type: string
firstName:
type: string
id:
type: string
lastName:
type: string
name:
type: string
required:
- id
- name
- firstName
- lastName
- email
type: object
responses:
description: Assessment responses
items:
discriminator:
propertyName: type
oneOf:
- properties:
type:
const: short_text
type: string
value:
description: Short text response value
type: string
required:
- type
- value
title: Short Text Response
type: object
- properties:
type:
const: long_text
type: string
value:
description: Long text response value
type: string
required:
- type
- value
title: Long Text Response
type: object
- properties:
type:
const: select
type: string
value:
description: Select response values (array of selected options)
items:
type: string
type: array
required:
- type
- value
title: Select Response
type: object
- properties:
type:
const: number
type: string
value:
description: Number response value
type: number
required:
- type
- value
title: Number Response
type: object
- properties:
type:
const: boolean
type: string
value:
description: Boolean response value
type: boolean
required:
- type
- value
title: Boolean Response
type: object
- properties:
type:
const: file_upload
type: string
value:
description: File upload response values (array of file URLs or identifiers)
items:
type: string
type: array
required:
- type
- value
title: File Upload Response
type: object
- properties:
type:
const: date
type: string
value:
description: Date response value
format: date-time
type: string
required:
- type
- value
title: Date Response
type: object
type: array
required:
- assignedUser
- responses
type: object
type: array
customerComment:
description: Customer's comment about the return
type: string
exchangeItem:
description: Exchange item details if this return item is being exchanged
properties:
product:
properties:
externalId:
type: string
name:
type: string
type: object
quantity:
type: integer
variant:
properties:
externalId:
type: string
name:
type: string
type: object
title: Exchange item
type: object
greenReturn:
description: Whether this is a green return (no physical return required)
type: boolean
id:
description: Return item ID.
title: ID
type: string
multipleChoiceQuestions:
description: Multiple choice questions and answers for this return item
items:
properties:
answer:
description: The selected answer
type: string
question:
description: The question text
type: string
required:
- question
- answer
type: object
type: array
orderItem:
description: Order line item
properties:
id:
description: 'Line item reference ID in format: {orderId}/{lineItemIndex}'
title: ID
type: string
line_item_id:
description: Original Shopify line item ID
title: Line Item ID
type: string
required:
- id
title: Order item
type: object
productAdjustment:
description: Product adjustment details
type: string
productId:
description: Product ID
type: string
quantity:
description: Quantity of items being returned
type: integer
reason:
description: Primary return reason
examples:
- Too big
- Other
type: string
reasonCode:
description: Return reason code
type: string
reasonCodes:
description: Array of return reason codes
items:
type: string
type: array
reasons:
description: Array of return reasons
items:
type: string
type: array
refund:
description: Refund details
properties:
amount:
$ref: '#/components/schemas/money.schema'
title: Amount
type:
description: Refund strategy
type: string
required:
- amount
type: object
sku:
description: Product SKU
type: string
status:
description: Return item status
type: string
variantId:
description: Product variant ID
type: string
required:
- id
- orderItem
- quantity
- reason
type: object
type: array
notes:
description: Teammembers generated notes and comments on the return
items:
properties:
image:
description: Optional image URL attached to the note
title: Image URL
type: string
message:
description: The note text
title: Message
type: string
required:
- message
type: object
title: Notes
type: array
order:
description: Original order.
properties:
id:
description: Order ID.
example: abc123
title: ID
type: string
required:
- id
title: Order
type: object
shipment:
$ref: '#/components/schemas/return-shipment.schema'
description: Shipment, if has been made
title: Shipment
shipments:
description: Array of all shipments associated with this return
items:
$ref: '#/components/schemas/return-shipment.schema'
title: Shipments
type: array
shopifyOrderIds:
description: Array of Shopify order IDs (deprecated, use externalOrderIds)
items:
type: string
title: Shopify Order IDs
type: array
source:
properties:
emailAddress:
description: Email address.
format: email
title: Email address
type: string
mailingAddress:
$ref: '#/components/schemas/address.schema'
description: Mailing address returned items are sent from.
title: Mailing address
name:
$ref: '#/components/schemas/person-name.schema'
description: Name of returner.
title: Name
phoneNumber:
$ref: '#/components/schemas/phone-number.schema'
description: Phone number of returner.
title: Phone number
required:
- emailAddress
- mailingAddress
- name
- phoneNumber
type: object
status:
$ref: '#/components/schemas/return-status.schema'
description: Return status.
title: Status
totals:
description: Calculated totals for the return
properties:
charge:
description: The upsell amount for the exchange order
properties:
amount:
$ref: '#/components/schemas/money.schema'
required:
- amount
type: object
exchange:
description: Total value of new items in exchange
properties:
amount:
$ref: '#/components/schemas/money.schema'
required:
- amount
type: object
refund:
description: Total refund amount excluding shipping
properties:
amount:
$ref: '#/components/schemas/money.schema'
required:
- amount
type: object
storeCredit:
description: Total store credit amount
properties:
amount:
$ref: '#/components/schemas/money.schema'
required:
- amount
type: object
required:
- refund
- exchange
- storeCredit
- charge
title: Totals
type: object
type:
$ref: '#/components/schemas/return-type.schema'
description: Return type.
title: Type
updatedAt:
description: Time of last update.
format: date-time
title: Updated at
type: string
required:
- createdAt
- destination
- giftCards
- source
- id
- order
- items
- status
- updatedAt
title: Return
type: object
return-shipment.schema:
description: Return shipment tracking information
properties:
carrier:
description: Carrier code
title: Carrier
type: string
postageLabel:
description: Postage label URL
title: Postage Label
type: string
status:
description: Status of shipment
enum:
- unknown
- pre_transit
- in_transit
- out_for_delivery
- available_for_pickup
- cancelled
- delivered
- error
- failure
- return_to_sender
- expired
title: Status
type: string
tracker:
description: Tracking number
title: Tracker
type: string
trackingUrl:
description: Tracking URL
title: Tracking URL
type: string
title: Return Shipment
type: object
return-status-update.schema:
description: |
Return status.
* complete: The return has been completed successfully.
* open: Return has been approved and is awaiting shipment.
* flagged: A problem with return processing requires merchant action.
* rejected: The return has been rejected.
* deleted: The return has been reset.
enum:
- complete
- open
- flagged
- rejected
- deleted
example: open
title: Return status
type: string
return-status.schema:
description: |
Return status.
* open: Return has been approved and is awaiting shipment.
* in_transit: Return shipment is in transit.
* delivered: Return shipment has been delivered and awaiting processing.
* needs_review: Return requires review before further action.
* in_review: Return is currently being reviewed.
* complete: The return has been completed successfully.
* rejected: The return has been rejected.
* flagged: A problem with return processing requires merchant action.
* pre_shipment: Return requires pre-shipment merchant authorization.
* deleted: The return has been deleted (Reset).
enum:
- open
- in_transit
- delivered
- needs_review
- in_review
- complete
- rejected
- flagged
- pre_shipment
- deleted
example: open
title: Return status
type: string
return-type.schema:
description: |
Return type.
enum:
- claim
- return
- warranty
example: return
title: Return type
type: string
shipment-document-type.schema:
description: Type of shipping document.
enum:
- label
- commercialInvoice
title: Shipment Document Type
type: string
shipment-document.schema:
description: Shipping document information.
properties:
type:
$ref: '#/components/schemas/shipment-document-type.schema'
required:
- type
title: Shipment Document
type: object
shipment-rate.schema:
description: Shipping rate information.
properties:
carrier:
properties:
id:
description: ID for the carrier account that provides the shipping rate.
title: Carrier Account ID
type: string
name:
description: Carrier display name
examples:
- USPS
- FedEx
title: Carrier Name
type: string
required:
- id
- name
type: object
price:
$ref: '#/components/schemas/money.schema'
service:
properties:
name:
description: Service level name
examples:
- Priority
- Ground
title: Service Name
type: string
required:
- name
type: object
required:
- carrier
- price
- service
title: Shipment Rate
type: object
shipment-tracker.schema:
description: Shipment tracking information.
properties:
code:
description: Carrier tracking code
examples:
- '9400100000000000000000'
title: Tracking Code
type: string
required:
- code
title: Shipment Tracker
type: object
shipment.schema:
description: Shipment information.
properties:
documents:
description: Available shipping documents. You can access these documents using the GET Shipment document endpoint.
items:
$ref: '#/components/schemas/shipment-document.schema'
title: Documents
type: array
id:
description: Shipment identifier
title: Shipment ID
type: string
price:
$ref: '#/components/schemas/money.schema'
tracker:
$ref: '#/components/schemas/shipment-tracker.schema'
required:
- id
- documents
- tracker
- price
title: Shipment
type: object
shipping-contact.schema:
description: Contact information for shipping.
properties:
address:
$ref: '#/components/schemas/address.schema'
name:
description: Contact name
examples:
- John Doe
title: Name
type: string
phoneNumber:
description: Contact phone number
examples:
- '+12025550123'
title: Phone Number
type: string
required:
- name
- phoneNumber
- address
title: Shipping Contact
type: object
shipping-weight.schema:
description: Weight measurement with unit for shipping.
properties:
unit:
description: Weight unit
enum:
- g
- kg
- oz
- lb
examples:
- lb
- kg
title: Unit
type: string
value:
description: Numeric weight value
examples:
- 1.5
- 10
minimum: 0
title: Value
type: number
required:
- value
- unit
title: Shipping Weight
type: object
storefront-cart.schema:
description: Storefront cart.
properties:
lineItems:
description: Line items.
items:
properties:
coupons:
items:
properties:
code:
type: string
discountAmount:
$ref: '#/components/schemas/money.schema'
description: The amount this coupon discounts in dollars for this line item.
id:
type: string
required:
- id
- code
- discountAmount
type: object
type: array
id:
description: Line item ID.
title: ID
type: string
originalPrice:
$ref: '#/components/schemas/money.schema'
description: Original price.
title: Original Price
priceTotal:
$ref: '#/components/schemas/money.schema'
description: Total price.
title: Price
product:
description: Product.
properties:
id:
description: Identifier of the product.
title: ID
type: string
required:
- id
type: object
quantity:
description: Quantity.
title: Quantity
type: integer
variant:
description: Variant.
properties:
id:
description: Identifier of the variant.
title: ID
type: string
required:
- id
type: object
required:
- id
- quantity
- product
- variant
- priceTotal
type: object
title: Line items
type: array
priceTotal:
$ref: '#/components/schemas/money.schema'
description: Total price.
title: Price
required:
- lineItems
- priceTotal
title: Storefront Cart
type: object
storefront-customer.schema:
description: Storefront customer.
properties:
id:
description: Customer ID.
title: ID
type: string
required:
- id
title: Storefront Customer
type: object
storefront-event.schema:
additionalProperties: true
description: Shopify pixel event for storefront tracking.
properties:
anonymousId:
description: Anonymous identifier for users without account.
type: string
cart:
description: Cart information.
type:
- object
- 'null'
cartLine:
description: Information about specific cart line item.
type: object
checkout:
description: Checkout information.
type: object
collection:
description: Collection information.
type: object
customer:
description: Customer information if available.
type:
- object
- 'null'
customerEmail:
description: Customer email if available.
format: email
type: string
customerPhone:
description: Customer phone if available.
type: string
eventId:
description: Unique identifier for the event.
type: string
eventName:
description: Name of the Shopify pixel event.
enum:
- product_added_to_cart
- product_removed_from_cart
- product_viewed
- checkout_started
- checkout_completed
- checkout_contact_info_submitted
- page_viewed
- collection_viewed
type: string
productVariant:
description: Product variant information.
type: object
source:
description: Source of the event.
enum:
- AIMERCE
type: string
timestamp:
description: ISO 8601 timestamp when the event occurred.
format: date-time
type: string
urlWithParams:
description: Complete page URL with query parameters.
type: string
urlWithoutParams:
description: Page URL without query parameters.
type: string
required:
- eventName
- eventId
- timestamp
- source
title: Storefront Event
type: object
subscription-status-marketing.schema:
description: Marketing subscription status
properties:
subscriptionStatus:
description: Subscription status
enum:
- subscribed
- confirmed
- unsubscribed
type: string
triggerAutomations:
default: false
description: Whether to trigger automations for this subscription change. Defaults to false.
type: boolean
updatedAt:
description: ISO 8601 timestamp. If not provided, defaults to now.
format: date-time
type: string
required:
- subscriptionStatus
type: object
subscription-status-transactional.schema:
description: Transactional subscription status (order tracking)
properties:
subscriptionStatus:
description: Subscription status. Only subscribed and unsubscribed are supported for transactional.
enum:
- subscribed
- unsubscribed
type: string
updatedAt:
description: ISO 8601 timestamp. If not provided, defaults to now.
format: date-time
type: string
required:
- subscriptionStatus
type: object
webhook-create.schema:
description: Webhook create.
properties:
backfill:
default: false
description: Create events for already-existing items
title: Backfill
type: boolean
callback:
$ref: '#/components/schemas/https-callback.schema'
description: HTTPS callback to POST events.
title: HTTPS callback
externalId:
default: null
d