---
title: "Send the exact authorized Tally email draft"
method: POST
path: "/admin/tally-emails/{id}/send"
tags: ["Administration"]
---

# Send the exact authorized Tally email draft

`POST /admin/tally-emails/{id}/send`

## Request

- Base URL: `https://ledgerhq.pro/api/v1`
- URL: `https://ledgerhq.pro/api/v1/admin/tally-emails/{id}/send`
- Auth: one of:
  - HTTP bearer and API key in header `x-organization-id`
  - HTTP bearer and API key in header `x-organization-id`

Requires admin:tally-email:send. User authorization is required. Idempotent per draft, including concurrent calls; uncertain attempts older than 23 hours require provider reconciliation, never a new draft as a retry. Returns the persisted accepted receipt; acceptance is not delivery.

## Path parameters

- `id` string, uuid, required

## Request body

- object
  - `digest` string, required
  - `confirmed` true, required

## Response `200`

Receipt with provider id, draftId, digest and acceptedAt.

## Other responses

- `403`: Site-admin or scoped admin-agent access required.
- `409`: Preview mismatch, stale template, or expired uncertain attempt. Nothing newly sent.

---

[API](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api.md) · [All operations](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/revisions/9a8269f0a586?raw)
