Skip to content

Send a batch

Check that an import's drafts are ready and follow the batch send, which you make in the panel with one sworn statement per row.

This is the recipe the MCP server gives AI assistants, as is. It is in English because models follow it best that way; the assistant answers you in your language.

An assistant reads it with docs({uri:"docs://recipes/send-a-batch"})

docs://recipes/send-a-batch
docs://recipes/send-a-batch — get an import's drafts ready for the lawyer's batch send, then follow it

Use when a CSV import made many drafts (docs://recipes/import-a-csv-batch) and the lawyer wants
them sent. "Enviar el lote" is the LAWYER's act on https://www.notificado.co/importar: they read
each address and tick one juramento box per row. There is no tool that sends a batch, and you
never request one send per draft to get around that. You check readiness, fix what you may, and
follow the progress.

1. whoami({})
   → orgId
   skip if you already hold orgId

2. manage_resource({resource:"imports", action:"importSendables", params:{orgId:"<orgId>", importId:"<import.id>"}})
   → one row per draft: notificationId, radicado, name, email, source, proofs, attachments,
     warnings[], blocker
   No import.id? manage_resource({resource:"imports", action:"listImports", params:{orgId:"<orgId>", limit:20}})
   and ask which one.

3. For each row with a blocker, one line to the lawyer, by blocker:
   - no_attachments: attach a PDF to that draft — docs://recipes/send-an-article-8-notification
     steps 4 and 6 — or they add it in the panel.
   - provenance_missing: the file did not say how the address was obtained; the lawyer sends that
     draft on its own from its page in the panel, swearing the address there.
   - case_archived: the case was archived — unarchive it only if the lawyer asks.
   - not_draft | in_batch | awaiting_approval | recipients_edited: already moving or changed by
     hand; leave it out of this batch.
   warnings with code duplicate_send? The case already notified that address in the last 30 days:
   tell the lawyer before they send again.

4. manage_resource({resource:"notifications", action:"creditsBalance", params:{orgId:"<orgId>"}})
   → balance
   One credit per ready row. balance below that? The WHOLE batch is refused
   (X_CREDITS_INSUFFICIENT): docs://recipes/top-up-credits, or the lawyer sends fewer rows.

5. Send the lawyer to https://www.notificado.co/importar?lote=<import.id> to swear the addresses
   and press "Enviar el lote". Wait until they say they did.

6. manage_resource({resource:"imports", action:"importSends", params:{orgId:"<orgId>", importId:"<import.id>"}})
   → per batch: status (requested | queued | running | completed), total, queued, sent, failed,
     failures[] ({ lineNo, notificationId, code })
   queued or running? Check again after 30 seconds, at most 10 times, then stop and say how far
   it got.
   A failure's code is the single send's refusal (e.g. X_CREDITS_INSUFFICIENT): report each one
   with its lineNo.

Done when the lawyer has the batch's final counts and every failure with its line.

Tips
- Each sent draft is a normal notification: follow any one with
  docs://recipes/check-a-notification-status, and its evidence is its own.
- Nothing in the batch is sent until the lawyer's click; you cannot swear, tick or confirm for them.

All recipes · Connect an assistant