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

List channels

GET
/channels
curl --request GET \
--url https://sandbox.partners.loops.sa/v1/channels \
--header 'Authorization: Bearer <token>'

Channels available through Loops, with the capabilities each one supports. Use it to build your own UI and to know what a channel can do before calling it.

The channel catalog.

Media typeapplication/json
object
data
required
Array<object>
object
id
required
string
name
required
string
type
required
string
Allowed values: delivery marketplace ecommerce logistics
status
required
string
Allowed values: ga beta deprecated
capabilities
required

Operation → supported (true/false) or a qualifier such as with_reason.

object
key
additional properties
One of:
boolean
fields

Field availability notes, e.g. masked customer phone numbers.

object
key
additional properties
string
Example
{
"data": [
{
"type": "delivery",
"status": "ga",
"capabilities": {
"order.receive": true,
"order.accept": true,
"order.cancel": "with_reason"
}
}
]
}

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"
}