messages
post/api/v1/threads/{threadId}/message

Request

  • Base URL
    https://api.capy.ai
  • Auth
    HTTP bearer

Path parameters

threadIdstring required

Request body

textstring required
delivery'queue' | 'steer' | 'interrupt'

How the message reaches a working thread. interrupt (the default) cuts the running step and makes the message the next input; steer lands it at the agent's next step with nothing cancelled; queue waits until the current work finishes.

clientKeystring

A key you choose for this send, unique per message. A retried send with the same key, from the same key's principal to the same thread, posts nothing new and answers the first send's message id with deduped: true.

editOfstring

Resend one of your earlier messages as a new version. The thread resets to that message before the agent reads the new text; the rows after it stay stored and can be switched back to.

switchTostring

Make this superseded version of an edited message live before the send lands, so the message answers on that branch.

pullRequestAuthor'user' | 'capy' nullable

Set the thread's pull request author: capy or user sets it, null clears it back to the Git identity preference, and absent leaves it unchanged. It applies when the agent picks this message up, so a queued message never changes a pull request opened before it.

Response

AdmitReceipt

idstring required
dedupedboolean required

Changes

    • breaking

      the //// response's property type changed from string to no type for status

    • info

      added subschema #1 to the //// response property anyOf list for the response status

    • info

      removed the claude enum value from the //// response property for the response status

    • info

      removed the codex enum value from the //// response property for the response status

    • info

      removed the copilot enum value from the //// response property for the response status

    • info

      removed the supergrok enum value from the //// response property for the response status

    • breaking

      the response's body type changed from object to no type for status

    • breaking

      the response's body type changed from object to no type for status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • warning

      removed the optional property from the response with the status

    • info

      added the new optional request property

    • info

      added to the response body anyOf list for the response status

    • info

      added to the response body anyOf list for the response status