Skip to content

Get a specific intent

LegacyAPI v1 is the older API. It still works and is supported, but new integrations should use API v2. Migrating from v1 to v2

GET
/external/intents/{id}
curl --request GET \
--url https://app.stoqapp.com/api/v1/external/intents/example \
--header 'X-Auth-Token: <X-Auth-Token>'

Retrieve a single back-in-stock intent (signup) by its STOQ ID. Returns the full intent record — the customer contact details, channel, requested quantity, and notification status. Returns 404 if no intent with that ID exists for the authenticated shop.

id
required
string

Intent ID

X-Auth-Token
required
string

API key for authentication

Intent details

Media typeapplication/json
object
id

Unique identifier for the intent

string
blocked_at

Timestamp when the intent was blocked from sending

string format: date-time
nullable
channel

Communication channel used for notifications (e.g., Email, SMS)

string
email

Customer’s email address for notifications

string
notified_at

Timestamp of the notification sent

string format: date-time
nullable
optin_confirmed

Whether the customer has confirmed their GDPR opt-in for notifications

boolean
phone

Customer’s phone number for SMS notifications

string
quantity

Requested quantity of the product when back in stock

integer
sent_notifications_count

Number of notifications sent for this intent

integer
source
string
type

Type of the intent (e.g., restock, wishlist_reminder)

string
unsubscribed_at

Timestamp when the customer unsubscribed from notifications

string format: date-time
nullable
created_at

Timestamp when the intent was created

string format: date-time
updated_at

Timestamp when the intent was last updated

string format: date-time
customer_id

Unique identifier for the customer

string
intent_trigger_id

Identifier for the trigger that created this intent

string
nullable
product_variant_id

Internal product variant identifier

string
nullable
shop_id

Unique identifier for the shop

string
shopify_inventory_item_id

Shopify’s inventory item identifier

integer
nullable
shopify_market_id

Shopify’s market identifier for multi-market stores

integer
nullable
shopify_product_id

Shopify’s product identifier

integer
nullable
shopify_variant_id

Shopify’s variant identifier

integer
nullable
customer_name

Customer’s full name

string
nullable
contact

Customer’s contact information

string
nullable
customer_unsubscribed_at

Timestamp when the customer unsubscribed from all notifications

string format: date-time
nullable
accepts_marketing

Whether the customer has opted in to receive marketing communications

boolean
nullable
notifications_count

Total number of notifications sent for this intent

integer
nullable

Example

{
"id": "8f3c2b1a-7d4e-4c2a-9f10-2b3c4d5e6f70",
"channel": "email",
"email": "shopper@example.com",
"phone": null,
"quantity": 1,
"notified_at": null,
"optin_confirmed": true,
"source": "api",
"type": "restock",
"sent_notifications_count": 0,
"created_at": "2026-06-20T14:30:00Z",
"updated_at": "2026-06-20T14:30:00Z",
"customer_id": "c1d2e3f4-5a6b-7c8d-9e0f-1a2b3c4d5e6f",
"shop_id": "a1b2c3d4-5e6f-7081-92a3-b4c5d6e7f809",
"shopify_product_id": 7891234567890,
"shopify_variant_id": 43900910010503,
"accepts_marketing": true
}

Unauthorized

Intent not found

Was this page helpful?

Still stuck? Ask Quinn or chat with support