Error reference / bulk-rows-invalid
Some bulk rows are invalid
One or more rows in a bulk send failed validation, so nothing was sent.
| Problem type | /problems/bulk-rows-invalid |
|---|---|
| HTTP status | 422 |
| Emitted by | REST API (/v1) |
| Title values | Some rows are invalid |
| Extra members | bulk_send_idrows |
| Trigger | REST API (/v1): a bulk send with one or more invalid rows; `rows[]` names each row and its errors, nothing is sent (BS-2, D56) |
What happened
POST /v1/bulk-sends received rows that do not fit the template: a recipient count that does not match the template’s placeholders, a malformed name or email, an unknown form_values key, a missing prefill for a read-only field, or an authentication level that is not available yet. The response is HTTP 422 and carries a rows list naming each invalid row number and its errors.
What it means
The batch was stored with status invalid and cannot be dispatched. No document was created and nothing was sent: a batch is validated whole before anything moves, so a malformed file never half-sends.
What to do next
Fix the rows the response names and create the batch again. form_values keys are field names first, then the field’s index as a string in the template’s field order; the allowed recipient fields are name, email, and auth_level (link or otp).
Problem body
Every error is an RFC 9457 problem document with media type
application/problem+json. The type member is the
stable identifier to switch on; docs_url is this page.
{
"type": "/problems/bulk-rows-invalid",
"title": "Some rows are invalid",
"status": 422,
"instance": "/v1/...",
"docs_url": "https://docs.signenvoy.com/errors/bulk-rows-invalid",
"bulk_send_id": "...",
"rows": "..."
}