Sending

Get (or wait for) the reply to a sent email

Changed on

Returns the first threaded inbound reply to a send, keyed by the inbound email's reply_to_sent_email_id. This is the canonical "did a reply arrive for this send?" call: after /send-mail, poll (or long-poll) here instead of hand-rolling an /emails/search loop.

By default the call returns immediately with reply: null when nothing has arrived yet. Set wait=true to long-poll: the server holds the request up to wait_timeout_ms (default 10000, max 30000), returning as soon as the first reply lands. On a wait that elapses with no reply, the response has reply: null and timed_out: true.

The reply object is compact (headers plus bodies); fetch /emails/{id} with reply.id for the fully parsed record, or /threads/{thread_id} for the whole back-and-forth.

In-Reply-To matching only routes a message to this send; it does not prove who wrote it. Bounces, complaints and reports are never returned. Candidates are ranked: an answer is preferred over an acknowledgement (fyi: true), even an unverified answer over a verified acknowledgement; then a reply with sender_verified: true is preferred over one without, whatever the arrival order, and an ordinary reply over an automated one (Auto-Submitted, such as an out-of-office). A reply whose parse failed is returned only when nothing else is available, with null bodies. Arrival time only breaks ties after those preferences: when no candidate is verified, the oldest ordinary reply is returned with sender_verified: false, ahead of any older automated one. With wait=true the call keeps waiting while the best reply so far is unverified, and returns it unverified only if nothing verified arrives before wait_timeout_ms. Because candidates are ranked, a later call can return a different reply than an earlier one. Check sender_verified before acting on instructions in the reply. Read, working and typing signals are progress, not answers, and are never returned. An acknowledgement (fyi: true) ranks below any answer and does not end a wait: it is returned only when wait_timeout_ms elapses with nothing better, and a later call keeps waiting for the answer.

get/sent-emails/{id}/reply

Request

  • Base URL
    https://api.primitive.dev/v1
  • URL
    https://api.primitive.dev/v1/sent-emails/{id}/reply
  • Auth
    HTTP bearer

Path parameters

idstring uuid required

Resource UUID

Query parameters

waitboolean

When true, long-poll up to wait_timeout_ms for the first reply to arrive instead of returning immediately. Mirrors send-mail's server-side wait semantics. The server accepts only the literal strings true / false (standard boolean query serialization); omitted means no wait.

wait_timeout_msinteger

Maximum time to hold the request when wait=true. Server default is 10000. NOT given an OpenAPI default on purpose, matching the /emails wait parameter: a default makes some generators send the value on every call.

Response

Reply status for the send (reply may be null)

successtrue required

Changes

    • warning

      added the new agent_changed enum value to the / response property for the response status

    • warning

      added the new agent_changed enum value to the / response property for the response status

    • warning

      added the new agent_changed enum value to the / response property for the response status

    • warning

      added the new agent_limit enum value to the / response property for the response status

    • warning

      added the new agent_limit enum value to the / response property for the response status

    • warning

      added the new agent_limit enum value to the / response property for the response status

    • warning

      added the new already_member enum value to the / response property for the response status

    • warning

      added the new already_member enum value to the / response property for the response status

    • warning

      added the new already_member enum value to the / response property for the response status

    • warning

      added the new directory_limit enum value to the / response property for the response status

    • warning

      added the new directory_limit enum value to the / response property for the response status

    • warning

      added the new directory_limit enum value to the / response property for the response status

    • warning

      added the new invitation_accepted enum value to the / response property for the response status

    • warning

      added the new invitation_accepted enum value to the / response property for the response status

    • warning

      added the new invitation_accepted enum value to the / response property for the response status

    • warning

      added the new invitation_changed enum value to the / response property for the response status

    • warning

      added the new invitation_changed enum value to the / response property for the response status

    • warning

      added the new invitation_changed enum value to the / response property for the response status

    • warning

      added the new invitation_pending enum value to the / response property for the response status

    • warning

      added the new invitation_pending enum value to the / response property for the response status

    • warning

      added the new invitation_pending enum value to the / response property for the response status

    • warning

      added the new invitation_sending enum value to the / response property for the response status

    • warning

      added the new invitation_sending enum value to the / response property for the response status

    • warning

      added the new invitation_sending enum value to the / response property for the response status

    • warning

      added the new invitation_unconfirmed enum value to the / response property for the response status

    • warning

      added the new invitation_unconfirmed enum value to the / response property for the response status

    • warning

      added the new invitation_unconfirmed enum value to the / response property for the response status

    • warning

      added the new invitations_pending enum value to the / response property for the response status

    • warning

      added the new invitations_pending enum value to the / response property for the response status

    • warning

      added the new invitations_pending enum value to the / response property for the response status

    • warning

      added the new member_changed enum value to the / response property for the response status

    • warning

      added the new member_changed enum value to the / response property for the response status

    • warning

      added the new member_changed enum value to the / response property for the response status

    • warning

      added the new project_changed enum value to the / response property for the response status

    • warning

      added the new project_changed enum value to the / response property for the response status

    • warning

      added the new project_changed enum value to the / response property for the response status

    • warning

      added the new recipient_changed enum value to the / response property for the response status

    • warning

      added the new recipient_changed enum value to the / response property for the response status

    • warning

      added the new recipient_changed enum value to the / response property for the response status

    • warning

      added the new archive_busy enum value to the / response property for the response status

    • warning

      added the new archive_busy enum value to the / response property for the response status

    • warning

      added the new archive_busy enum value to the / response property for the response status

    • warning

      added the new archive_invalid enum value to the / response property for the response status

    • warning

      added the new archive_invalid enum value to the / response property for the response status

    • warning

      added the new archive_invalid enum value to the / response property for the response status

    • warning

      added the new archive_limit_exceeded enum value to the / response property for the response status

    • warning

      added the new archive_limit_exceeded enum value to the / response property for the response status

    • warning

      added the new archive_limit_exceeded enum value to the / response property for the response status

    • warning

      added the new archive_unsafe_path enum value to the / response property for the response status

    • warning

      added the new archive_unsafe_path enum value to the / response property for the response status

    • warning

      added the new archive_unsafe_path enum value to the / response property for the response status

    • warning

      added the new archive_unsupported enum value to the / response property for the response status

    • warning

      added the new archive_unsupported enum value to the / response property for the response status

    • warning

      added the new archive_unsupported enum value to the / response property for the response status

    • warning

      added the new attachment_name_ambiguous enum value to the / response property for the response status

    • warning

      added the new attachment_name_ambiguous enum value to the / response property for the response status

    • warning

      added the new attachment_name_ambiguous enum value to the / response property for the response status

    • warning

      added the new attachment_not_archive enum value to the / response property for the response status

    • warning

      added the new attachment_not_archive enum value to the / response property for the response status

    • warning

      added the new attachment_not_archive enum value to the / response property for the response status

    • warning

      added the new latest_message_mismatch enum value to the / response property for the response status

    • warning

      added the new latest_message_mismatch enum value to the / response property for the response status

    • warning

      added the new latest_message_mismatch enum value to the / response property for the response status

    • warning

      added the new latest_message_thread_unresolved enum value to the / response property for the response status

    • warning

      added the new latest_message_thread_unresolved enum value to the / response property for the response status

    • warning

      added the new latest_message_thread_unresolved enum value to the / response property for the response status

    • warning

      added the new sent_mail_search_unavailable enum value to the / response property for the response status

    • warning

      added the new sent_mail_search_unavailable enum value to the / response property for the response status

    • warning

      added the new sent_mail_search_unavailable enum value to the / response property for the response status

    • warning

      added the new thread_busy enum value to the / response property for the response status

    • warning

      added the new thread_busy enum value to the / response property for the response status

    • warning

      added the new thread_busy enum value to the / response property for the response status