curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"type": "custom",
"title": "Enquanto o PIX não cai",
"custom": {
"type": "card",
"content": "<h1>Oferta exclusiva!</h1><a href=\"{{INSELL_URL}}\">Aproveitar</a>",
"url": { "placeholder": "{{INSELL_URL}}", "value": "https://insell.cliente.digital/" }
}
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"type": "iframe",
"title": "Oferta parceira",
"iframe": { "type": "card", "url": "https://insell.cliente.digital/" }
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"title": "Garanta mais números",
"simple": {
"button_text": "Quero mais",
"button_url": "https://loja.cliente.digital/oferta"
}
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
{
"success": true,
"message": "Insell criado com sucesso",
"data": {
"id": "4b3a2c1d-0e9f-8a7b-6c5d-e4f3a2b1c0d9",
"type": "iframe",
"title": "Oferta parceira",
"description": null,
"display_order": 0,
"iframe": { "type": "card", "url": "https://insell.cliente.digital/" },
"is_active": true,
"created_at": "2026-07-06T12:00:00.000Z",
"updated_at": "2026-07-06T12:00:00.000Z"
}
}
Insells
Criar insell
Cria uma promoção de insell (simple, custom ou iframe) em uma ação
POST
/
v1
/
raffles
/
{id}
/
insells
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"type": "custom",
"title": "Enquanto o PIX não cai",
"custom": {
"type": "card",
"content": "<h1>Oferta exclusiva!</h1><a href=\"{{INSELL_URL}}\">Aproveitar</a>",
"url": { "placeholder": "{{INSELL_URL}}", "value": "https://insell.cliente.digital/" }
}
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"type": "iframe",
"title": "Oferta parceira",
"iframe": { "type": "card", "url": "https://insell.cliente.digital/" }
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"title": "Garanta mais números",
"simple": {
"button_text": "Quero mais",
"button_url": "https://loja.cliente.digital/oferta"
}
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
{
"success": true,
"message": "Insell criado com sucesso",
"data": {
"id": "4b3a2c1d-0e9f-8a7b-6c5d-e4f3a2b1c0d9",
"type": "iframe",
"title": "Oferta parceira",
"description": null,
"display_order": 0,
"iframe": { "type": "card", "url": "https://insell.cliente.digital/" },
"is_active": true,
"created_at": "2026-07-06T12:00:00.000Z",
"updated_at": "2026-07-06T12:00:00.000Z"
}
}
Cria um insell na ação — uma promoção exibida na tela do PIX, no momento em que a chave aparece para copiar (pedido fechado, pagamento pendente). Máximo de 10 insells por ação.
Path params
string
required
ID da ação (UUID).
Body — campos comuns
string
default:"simple"
simple, custom ou iframe. Omitido = simple.string
required
Título (1–255 caracteres).
string | null
Descrição (máx. 1000).
number
default:"0"
Ordem de exibição (menor = primeiro).
boolean
default:"true"
Se o insell é exibido.
Body — por tipo
simple
object
required
custom
object
required
Show custom
Show custom
string
required
card (dentro da tela do PIX) ou fullscreen (tela inteira).string
required
HTML (1–50.000 caracteres). Sanitizado no servidor com as mesmas regras dos upsells/presells.
string
required
Marcador no formato
{{NOME}}, ex.: {{INSELL_URL}}. Precisa aparecer no content.string
required
URL http(s) que substituirá o placeholder na renderização.
iframe
object
required
Erros
| HTTP | Código | Quando ocorre |
|---|---|---|
404 | RAFFLE_NOT_FOUND | Ação inexistente ou de outra conta |
400 | INSELL_LIMIT_REACHED | Já existem 10 insells na ação |
400 | INSELL_SIMPLE_FIELDS_REQUIRED | tipo simple sem o objeto simple completo |
400 | INSELL_CUSTOM_CONFIG_REQUIRED | custom sem o objeto custom |
400 | INSELL_IFRAME_CONFIG_REQUIRED | iframe sem o objeto iframe |
400 | INSELL_CONFIG_TYPE_MISMATCH | Objeto de configuração não corresponde ao type |
400 | INSELL_CUSTOM_CONTENT_EMPTY | HTML vazio após sanitização |
400 | INSELL_PLACEHOLDER_NOT_FOUND | Placeholder não aparece no content |
422 | VALIDATION | Formato inválido — inclusive type: "redirect", que não existe em insells |
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"type": "custom",
"title": "Enquanto o PIX não cai",
"custom": {
"type": "card",
"content": "<h1>Oferta exclusiva!</h1><a href=\"{{INSELL_URL}}\">Aproveitar</a>",
"url": { "placeholder": "{{INSELL_URL}}", "value": "https://insell.cliente.digital/" }
}
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"type": "iframe",
"title": "Oferta parceira",
"iframe": { "type": "card", "url": "https://insell.cliente.digital/" }
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
curl -u "pb_xxx:sk_xxx" -X POST \
-H "Content-Type: application/json" \
-d '{
"title": "Garanta mais números",
"simple": {
"button_text": "Quero mais",
"button_url": "https://loja.cliente.digital/oferta"
}
}' \
"https://api.sortify.com.br/v1/raffles/{id}/insells"
{
"success": true,
"message": "Insell criado com sucesso",
"data": {
"id": "4b3a2c1d-0e9f-8a7b-6c5d-e4f3a2b1c0d9",
"type": "iframe",
"title": "Oferta parceira",
"description": null,
"display_order": 0,
"iframe": { "type": "card", "url": "https://insell.cliente.digital/" },
"is_active": true,
"created_at": "2026-07-06T12:00:00.000Z",
"updated_at": "2026-07-06T12:00:00.000Z"
}
}