Toolset negotiations
Responses and invitations: lists, states, messages.
10 tools. Mutations require an explicit confirm=true argument; Auth marks tools that need an hh.ru token.
| Tool | Operation | Auth | Confirm | Description |
|---|---|---|---|---|
get_negotiation |
GET /negotiations/{id} |
yes | – | Get full information about a single negotiation (response or invitation) by its id, including messages URL and available state actions. |
get_negotiation_test_solution |
GET /negotiations/{nid}/test/solution |
yes | – | Get the results of tests completed by the applicant of a negotiation (attached to the vacancy). |
list_collection_negotiations |
GET /negotiations/response |
yes | – | List negotiations of the unsorted responses collection ("/response") of a vacancy with resume-like filters: area, experience, education, salary range, age and others. The same URL pattern serves other collections: replace the last path segment with the collection id from the collections list. |
list_negotiation_messages |
GET /negotiations/{nid}/messages |
yes | – | List all messages of a negotiation (response or invitation) thread. Note: hh.ru considers negotiation messaging legacy and recommends chats; use with_text_only to skip service messages. |
list_negotiations |
GET /negotiations |
yes | – | List negotiations (responses and invitations) of the current user. Filter by status, vacancy or unread updates; ordered by last update (newest first) by default. The response contains collections with actions URLs used by other negotiation tools. |
mark_negotiations_read |
POST /negotiations/read |
yes | yes | Mark negotiations as read. topic_id values in the body must belong to one vacancy (up to 50 ids). Mutation: requires confirm=True. |
move_negotiation |
PUT /negotiations/{collection_name}/{nid} |
yes | yes | Change the employer or applicant state of a negotiation by moving it to another collection (for example from response to invitation). collection_name and nid come from the actions URL of the negotiation; an optional message can be attached. Mutation: requires confirm=True. |
request_phone_interview |
POST /negotiations/phone_interview |
yes | yes | Invite an applicant to a vacancy by resume: creates an invitation negotiation, optionally sends an email message and an SMS notification. resume_id and vacancy_id are required in the body (sent form-encoded per the vendor spec). Mutation: requires confirm=True. |
send_negotiation_message |
POST /negotiations/{nid}/messages |
yes | yes | Send a new message inside a negotiation thread. Sending is possible while the conversation is open (see the hh.ru rules for negotiations). Mutation: requires confirm=True. |
update_negotiation |
PUT /negotiations/{id} |
yes | yes | Apply a collection action (for example invite or decline) to one or more negotiations. The {id} path value and required body arguments (topic_id, message, send_sms and others) come from actions[].url and actions[].arguments of the negotiation list. Mutation: requires confirm=True. |