Skip to content
AchaduDevelopers
Operational APIGo to website ↗
Dashboard →
Developers/API/offer_publish
Offers

Post offer

Queues the offer's publication to an authorized group or thread.

POST/offers/{id}/publishpublications:write
BEHAVIOR

The request validates the input, persists the command, and returns the initial state. Execution can continue in the dedicated queue.

EFFECT

You can create asynchronous work and webhook events after confirmation in the database.

REPETITION

On network failure, confirm the resource status before retrying. Automatically redo only 429 and 5xx with backoff and jitter.

Request

idstring · pathResource identifier.minLength 2 · maxLength 100mandatory
segment_idstring · bodyTarget segment.optional
group_idstring · bodyTarget group.optional
with_imageboolean · bodyDeprecated and ignored. Offers are sent as text with a product link preview, never as photo attachments.optional
AuthorizationBearer ach_live_...
Acceptapplication/json
Scopepublications:write

Executable example

curl
curl -X POST 'https://achadu.com/api/v1/offers/resource_id/publish' \
  -H 'Authorization: Bearer ach_live_...' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  --data '{
  "segment_id": "string",
  "group_id": "string",
  "with_image": true
}'

Response and errors

Every response includes request_id. Lists add pagination; mutable resources return the persisted state after the operation.

200 application/json
{
  "data": {
    "id": "off_01J...",
    "marketplace": "amazon",
    "title": "Air fryer 5L",
    "url": "https://example.com/product",
    "price": 329.9,
    "currency": "BRL",
    "review_status": "pending",
    "created_at": "2026-08-31T18:20:00.000Z"
  },
  "request_id": "req_01J..."
}
200Operation completed.
400Invalid parameter, body or transition.
401Missing, invalid, expired or revoked key.
402The account plan does not release this interface.
403A chave precisa do escopo publications:write.
404Feature does not exist in this account.
409The current state prevents this operation.
413The JSON body exceeds 128 KB.
429The 120 requests per minute window has been exceeded.