Get legacy message details
Method POST {API_BASE}/v2.1/client/{key}/{crid}/details
Return the V2 details envelope for a CRID with a message. messageUrl
keeps its historical domain/{urid} format; new URL fields are complete
HTTPS URLs.
Authorization
Required scope
client_v2
The API key is intentionally kept in the path for V2 compatibility:
/v2.1/client/{key}/{crid}/... or /v2.1/user/{key}/{crid}/....
Client routes require the client_v2 scope. User routes require the user_v2
scope. Unknown, expired, revoked, malformed, or wrong-scope keys return the
legacy JSON error envelope.
Parameters
| Name | In | Type | Required | Constraints | Description |
|---|---|---|---|---|---|
key |
Path | string |
Required |
API key kept in the URL for V2 compatibility. Requires client_v2 or user_v2 depending on the route.
|
|
crid |
Path | string |
Required | Client reference ID, usually an order or campaign reference. |
Responses
Message details, or shipped container without message.
Invalid key, CRID, payload, message state or business precondition.
{
"status": 1,
"error": "key_invalid"
}
keyInvalid
{
"status": 1,
"error": "key_invalid"
}
cridUnknown
{
"status": 1,
"error": "crid_unknown"
}
dataInvalid
{
"status": 1,
"error": "data_invalid"
}
noMessage
{
"status": 1,
"error": "no_message_for_this_crid"
}
messageMissing
{
"status": 1,
"error": "message_missing"
}
noLanguage
{
"status": 1,
"error": "no_language_found"
}
noPdfTemplate
{
"status": 1,
"error": "no_pdf_template"
}
webhookNotFound
{
"status": 1,
"error": "webhook_not_found"
}
Key is authenticated but scope or platform constraints are invalid.
{
"status": 1,
"error": "forbidden"
}
forbidden
{
"status": 1,
"error": "forbidden"
}
invalidPlatformConstraint
{
"status": 1,
"error": "key_invalid"
}