Create or fetch a container
Method POST https://client-api.v5.livstick.com/api/v3/containers
Use this endpoint to initialize a container by business reference (crid).
Contact values can be supplied for server-side message prefill. Recipient
first and last names are optional. Without recipient.channel, email is
selected whenever recipient.email is available, even if a phone is also
supplied. A phone-only recipient must explicitly use channel: sms.
If the container already exists for the platform, the API returns existing
links without mutating it. Use PATCH /containers/{crid} for corrections.
Authorization
Required scope
containers:write
Use Authorization: Bearer liv_<prefix>_<secret>.
Request body
| Name | Type | Required | Description |
|---|---|---|---|
crid |
string
|
Required | |
emailDeprecated |
string
|
Optional |
Deprecated alias of sender.email.
Constraints
format email
|
sender |
SenderInput
|
Optional | Optional sender identity and contact values. |
recipient |
RecipientInput
|
Optional |
Optional recipient identity and contact values. With no channel, email is
selected when present. A phone-only recipient must set channel to sms.
|
language |
string
|
Optional | |
codeGroup |
string
|
Optional | |
mode |
ContainerMode
|
Optional |
Container mode. single (default) holds one message; gallery accepts
multiple messages. Ignored when the container already exists.
Values
single
gallery
|
additionalData |
object
|
Optional |
Arbitrary metadata, preserved unchanged. Historical contact aliases
remain recognized: email, senderEmail, sender first/last-name
variants, receiverEmail, receiverPhone, and messageNotified.
|
Responses
Container created or reused.
Request rejected due to invalid payload or business precondition.
{
"error": {
"code": "DATA_INVALID",
"message": "Invalid request data"
}
}
Authentication failed or missing bearer token.
{
"error": {
"code": "UNAUTHORIZED",
"message": "Missing API key"
}
}
Authenticated but not allowed by scope or key constraints.
{
"error": {
"code": "FORBIDDEN",
"message": "Insufficient permissions"
}
}