Update configuration
Updates any part of the configuration except the prompt and the on/off status. Single values are merged, collections are replaced. This does not put the receptionist on the line: that is PUT /v2/api/numbers/{number}/agent/status.
AGENTS_WRITEBehavior
Updates any part of the receptionist’s configuration except the prompt and the on/off status. Returns the whole configuration after the write, in the same shape as Get configuration. Two merge rules apply:- Single values are merged.
name, the business details,language,voice_id,greeting_message,closing_message,tone_of_voice,answer_typeandknowledge.textkeep their current value when you omit them. - Collections are replaced.
capabilities,business_hours,transfer_rulesandscheduling.calendarsare complete sets. Send one and it replaces what was configured, omit it and it is left alone.
capabilities map you send.
A field this endpoint does not declare is rejected with 400 UNKNOWN_FIELD, including read-only ones such as custom_prompt, prompt_metadata and status. Nothing is dropped in silence.
Transfer rules
description is the field that decides whether a transfer works. The receptionist matches what the caller says they want against this text, so write it as the caller’s reason (“billing or invoice questions”, “wants to book a repair”), not as an instruction to the receptionist.
Each rule needs the target its type implies:
transfer_rules[1].description.
Business hours
schedule is required whenever you send business_hours. Times are seconds since midnight, so 9am to 5pm is 32400 to 61200, and a day left out of the list is closed.
Scheduling calendars
scheduling.calendars is a map keyed by a calendar id from List calendars. A calendar the receptionist does not have yet is linked to it, one mapped to [] stays linked with no event type selected, and one left out of the map loses access.
Event types come from Get a calendar. Send id, slug, title and length_in_minutes back as they were read, and add your own description to say when the receptionist should book that one rather than another.
Connecting a calendar to the workspace is an OAuth flow, done in the Allo app. This endpoint chooses among the connections that already exist.
Field limits
Errors
400 UNKNOWN_FIELD: a field this endpoint does not accept, named inparam.400 INVALID_REQUEST_BODY: a declared field failed validation. The failing field is inerrors[].400 MISSING_FIELD: a required part of a collection is missing, named inparam.400 INVALID_AGENT_LANGUAGE/400 INVALID_AGENT_CAPABILITY: an unknown value. The allowed ones are listed in the message.400 INVALID_TIMEZONE:business_hours.timezoneis not an IANA identifier.400 INVALID_PHONE_NUMBER:business_phoneis not a usable number.400 AGENT_TRANSFER_RULE_TARGET_REQUIRED: a rule is missing the target its type requires.403 AGENT_TRANSFER_RULE_MEMBER_NO_LINE_ACCESS: the target teammate has no access to this line.404 AGENT_VOICE_NOT_FOUND: no voice with thatvoice_id. List them with List voices.404 AGENT_CALENDAR_NOT_FOUND: a calendar id in the map is not one you can see.404 PHONE_NUMBER_NOT_FOUND: the number is not one you have access to.
Authorizations
Path Parameters
Allo phone number in E.164 format
"+14155551234"
Body
Two merge rules apply. Single values are merged: omit one and it keeps its current value. The collections capabilities, business_hours, transfer_rules and scheduling.calendars are complete sets: send one and it replaces what was configured, omit it and it is left alone. An undeclared field is rejected with 400 UNKNOWN_FIELD rather than ignored.
64"Maya"
64"Acme Plumbing"
255E.164 format.
64"+14155551234"
646464fr, fr-CA, en-US, en-GB, es, de, hr "en-US"
An id from GET /v2/api/voices, listed under the receptionist's language.
"maya"
10001000FRIENDLY, PROFESSIONAL, NEUTRAL, ENTHUSIASTIC CONCISE, STANDARD, DETAILED The complete set of toggles. A capability left out of the map is turned off, so read the current ones first and send them all back.
Replaces the whole week. schedule is required when this key is sent.
Replaces the whole rule set. Send [] to remove every rule.
Only the free-text knowledge is writable here. Websites and files have their own endpoints.
Response
The configuration after the write
The whole configuration of one line's AI receptionist.