---
title: "Reply to the regulatory reviewer"
method: POST
path: "/v1/messaging/phone-numbers/{id}/remediate/reply"
tags: ["Phone Numbers"]
---

# Reply to the regulatory reviewer

`POST /v1/messaging/phone-numbers/{id}/remediate/reply`

## Request

- Base URL: `https://apihub.co.il`
- URL: `https://apihub.co.il/v1/messaging/phone-numbers/{id}/remediate/reply`
- Auth: HTTP bearer

Post a free-text reply (with optional file attachments) to the reviewer
on a number awaiting remediation, for asks the structured form can't
express (e.g. "is this personal or business?"). Attachments are stored by
us and their links are added to the reviewer's comment thread (the
carrier's number order takes no loose files). A reply to a comment-style
ask moves the number back to "in review"; a reply on a formal decline is
supplementary and you must still resubmit the fix. Requires text or at
least one attachment.


**Billing:** Request; paid actions are priced in credits (see GET /v1/messaging/prices) · **Rate limit:** 60/min

## Path parameters

- `id` string, required

## Headers

- `Idempotency-Key` string
- `X-Tag` string

## Request body

- object
  - `text` string: The reply message to the reviewer.
  - `attachments` object[]: Files (PDF/JPG/PNG/WEBP, max 10 MB each) whose links are added to the reply.
    - `base64` string, required: Base64-encoded file bytes.
    - `filename` string, required

## Response `200`

Completed

- object
  - `id` string: Execution id — stable across internal retries; use it with GET /v1/executions/{id}
  - `status` 'pending' | 'processing' | 'completed' | 'partial' | 'failed' | 'cancelled' | 'timeout'
  - `operation` string
  - `tag` string, nullable: Your X-Tag, if sent
  - `created_at` string, date-time
  - `completed_at` string, date-time, nullable
  - `output` object: Operation result (see each operation). While a Studio render is processing: `stage` (queued · transcribing · downloading · preparing · cleaning_voice · mixing_audio · rendering · finishing), `phase` (the engine's: download · prepare · voice · audio · encode · qa · upload, or null), `progress` (a percent, 0–100) and `progress_fraction` (0–1), `eta_seconds` (seconds left, never below 0) and `estimate_seconds`
    - `posted` boolean
    - `attachments` integer: Number of attachments uploaded.
  - `error` string, nullable
  - `usage` object
    - `credits_charged` number, nullable
    - `credits_reserved` number
    - `estimated_credits` number
    - `cost_source` 'provider_reported' | 'calculated' | 'estimated' | 'null', nullable
    - `provider_usage` object, nullable: Normalised consumption, e.g. { VIDEO_SECOND: 22.4 }
  - `balance` object
    - `available` number
    - `reserved` number

## Other responses

- `400`: Invalid input
- `402`: Insufficient credits / project budget
- `404`: Resource not found (or not yours)
- `429`: Rate limited
- `503`: Service temporarily paused

---

[API](https://skmtc.dev/apihub/apis/apihub-one-api-for-chat-image-video-ai.md) · [All operations](https://skmtc.dev/apihub/apis/apihub-one-api-for-chat-image-video-ai/llms.txt) · [OpenAPI document](https://skmtc.dev/apihub/apis/apihub-one-api-for-chat-image-video-ai/revisions/a8caa42835ce?raw)
