Skip to content
Developer preview: the API may change before general availability. Request access

List events

GET
/events
curl --request GET \
--url 'https://sandbox.partners.loops.sa/v1/events?after=evt_01J9C2X4RS&types=order.*%2Cconnection.revoked&limit=50' \
--header 'Authorization: Bearer <token>' \
--header 'Loops-Merchant-Id: mer_7Hq2Lw8Z'

Events for the current connection, oldest first, starting after after. Use it to recover after downtime. Events are kept for 30 days.

Loops-Merchant-Id
string

The merchant you are acting for (mer_…). Required for platform applications; optional for direct integrations, which have a single merchant.

after
string

Return events after this event ID. Omit to start from the oldest retained event.

types
string

Comma-separated event types; wildcards such as order.* are allowed.

limit
integer
default: 50 >= 1 <= 100

Page size, 1–100.

A page of events.

Media typeapplication/json
object
data
required
Array<object>
object
id
required
string
type
required
string
created_at
required
string format: date-time
merchant_id
required
string
location_id
string | null
connection_id
required
string
origin
required

What caused the change. Ignore events where application_id is your own.

object
type
string
Allowed values: channel api web_app system
application_id
string | null
data
required

Event-specific payload.

object
key
additional properties
any
has_more
required

Whether more events exist after the last one returned.

boolean
Example
{
"data": [
{
"id": "evt_01J9C2X4RS",
"type": "order.status_changed",
"origin": {
"type": "channel"
}
}
]
}

The access token is missing, expired or invalid.

Media typeapplication/problem+json

RFC 9457 Problem Details with a stable code.

object
type
required
string format: uri
title
required
string
status
required
integer
code
required

Stable machine-readable error code. Switch on this, not on title.

string
Allowed values: invalid_request merchant_required unauthorized insufficient_scope scope_not_granted connection_not_active application_suspended channel_not_permitted not_found merchant_not_found rate_limited upstream_unavailable
detail
string
request_id
required
string
errors

Field errors, for invalid_request.

Array<object>
object
field
string
message
string
Example
{
"type": "https://docs.partners.loops.sa/errors/scope_not_granted",
"title": "Scope not granted",
"status": 403,
"code": "invalid_request",
"detail": "The merchant has not granted orders:read to this application.",
"request_id": "req_01J9X7P2QK"
}

Not allowed: the scope isn’t approved or granted, the connection is not active, or your application is suspended. See code.

Media typeapplication/problem+json

RFC 9457 Problem Details with a stable code.

object
type
required
string format: uri
title
required
string
status
required
integer
code
required

Stable machine-readable error code. Switch on this, not on title.

string
Allowed values: invalid_request merchant_required unauthorized insufficient_scope scope_not_granted connection_not_active application_suspended channel_not_permitted not_found merchant_not_found rate_limited upstream_unavailable
detail
string
request_id
required
string
errors

Field errors, for invalid_request.

Array<object>
object
field
string
message
string
Example
{
"type": "https://docs.partners.loops.sa/errors/scope_not_granted",
"title": "Scope not granted",
"status": 403,
"code": "invalid_request",
"detail": "The merchant has not granted orders:read to this application.",
"request_id": "req_01J9X7P2QK"
}