<div class="endpoint"><span class="method">POST</span><code>/api/v1/workspaces/&#123;workspaceId&#125;/health-invoices/&#123;invoiceId&#125;/emissions</code></div>

**Operation ID:** `healthInvoices.retryEmission` · **Access:** PAT with `send` scope and authorized workspace where applicable · **Effect:** `external`.

:::caution[Production action]
This operation can send data to an external service. Use a new idempotency key for each new intent. A timeout does not prove that the action failed.
:::

An `Idempotency-Key` is **required**. Retry the same intent with the same key and the same request bytes. [Read the retry rules](/guides/errors-and-retries/).

Read the [health invoices workflow](/guides/health-documents/) before this operation.

## Parameters

| Name | In | Required | Type / allowed values |
| --- | --- | --- | --- |
| `workspaceId` | path | Yes | string |
| `invoiceId` | path | Yes | string |
| `idempotency-key` | header | Yes | string |

## Responses

| HTTP | Content | Schema |
| --- | --- | --- |
| 200 | `application/json` | [HealthInvoice](/reference/schemas/health-invoice/) |
| 202 | `application/json` | [HealthInvoice](/reference/schemas/health-invoice/) |
| 400 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 401 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 403 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 404 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 409 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 422 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 428 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 500 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 502 | `application/json` | [ApiError](/reference/schemas/api-error/) |
| 503 | `application/json` | [ApiError](/reference/schemas/api-error/) |

Use `error.code`, `error.issues`, and `requestId` for JSON errors. [Error and recovery guide](/guides/errors-and-retries/).

## cURL

Set the connection variables from the [quickstart](/guides/quickstart/). Set each path variable to an authorized identifier or an allowed parameter value from the table above.

Set `IDEMPOTENCY_KEY` to a unique key for this intent. Preserve it and the exact request for retries.

```bash
curl --fail-with-body --request POST \
  "$RIPSCLOUD_BASE_URL/api/v1/workspaces/$WORKSPACE_ID/health-invoices/$INVOICE_ID/emissions" \
  --header "Authorization: Bearer $RIPSCLOUD_TOKEN" \
  --header 'Accept: application/json' \
  --header "Idempotency-Key: $IDEMPOTENCY_KEY"
```
