---
title: "Answer an ask"
method: POST
path: "/v5/asks/{id}/answer"
tags: ["Asks"]
---

# Answer an ask

`POST /v5/asks/{id}/answer`

## Request

- Base URL: `https://api.carbonvoice.app`
- URL: `https://api.carbonvoice.app/v5/asks/{id}/answer`
- Auth: one of:
  - API key in header `pxtoken`
  - OAuth 2 (implicit, authorization URL `https://api.carbonvoice.app/oauth/authorize`)

single_choice / permission_request: action_id. multi_choice: values.option_ids. form: values keyed by field id. free_text: values.text. The first answer wins; later ones get 409 with the current state in custom_error.ask.

## Path parameters

- `id` string, required

## Request body

- AnswerAskPayload
  - `action_id` string: The chosen option id
  - `values` object: Structured answer values (depends on the ask type)

## Response `200`

- AskResponse
  - `id` string, required
  - `conversation_id` string, required
  - `message_id` string, required: The anchor message
  - `creator_id` string, required
  - `creator_kind` 'agent' | 'user', required
  - `type` 'single_choice' | 'multi_choice' | 'form' | 'free_text' | 'permission_request' | 'connect_account', required
  - `payload` object, required: { question, options?: [{ id, label }], form?: { fields: [{ id, label, required? }] }, connect?: { mode: "connect" | "reconnect", providers: [{ id, label }] }, details?: [{ label, value }] }
  - `audience` object, required: "conversation" or { users: [ids] } — who may see the ask
  - `responders` object, required: "any" or { users: [ids] } — who may answer the ask
  - `response_mode` 'single' | 'per_user', required
  - `status` 'pending' | 'answered' | 'expired' | 'canceled', required: Effective status: a pending ask past expires_at is expired
  - `expires_at` string, date-time, nullable
  - `answered_by` string, nullable
  - `answer` object, nullable: The winning answer of a single ask: { user_id, action_id?, values?, created_at }
  - `resolved_at` string, date-time, nullable
  - `created_at` string, date-time, required

## Other responses

- `400`
- `403`
- `404`
- `409`: The ask is no longer pending

---

[API](https://skmtc.dev/carbonvoice/apis/carbon-voice-api.md) · [All operations](https://skmtc.dev/carbonvoice/apis/carbon-voice-api/llms.txt) · [OpenAPI document](https://skmtc.dev/carbonvoice/apis/carbon-voice-api/revisions/b91c5c845122?raw)
