> ## Documentation Index
> Fetch the complete documentation index at: https://darwin.so/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Act request

> Read an Act request and its child threads, messages, and pending requests.

Use the same authorized caller that started the work. An Act request groups the child thread receipts from a start. Its status describes accepting those starts; it does not prove the providers completed the work.

<Note>Thread-state inclusion is pending deployment. Until it is released, existing clients can continue using their current thread reader.</Note>

Set `includeThreadState=true` to read each child thread's current messages, actions, and pending requests in `threads[].state`. Darwin checks the live grant and access to every thread. Failed starts have no thread state. Without this option, the response remains the original receipt.

```bash theme={null}
curl 'https://api.darwin.so/api/v3/act/requests/ACT_REQUEST_ID?includeThreadState=true' \
  -H "x-api-key: $DARWIN_API_KEY"
```

Each thread's `state` contains `messages`, `actions`, `requests`, `cursor`, and `hasMore`. To read the next page, send the same Act request ID with `includeThreadState=true`, that child's `threadId`, and its `cursor`. `limit` is 1–100, default 20 per thread. A thread from another Act request is rejected.

Continue the selected child through [Act](/docs/reference/act), using its `threadId`. Copy authentication, payment and approval request IDs from that child's `state.requests`; text is never a substitute for consent or payment.


## OpenAPI

````yaml openapi-v3.json GET /v3/act/requests/{actRequestId}
openapi: 3.1.0
info:
  title: Darwin Search and Act
  version: 3.0.0
servers:
  - url: https://api.darwin.so/api
security: []
paths:
  /v3/act/requests/{actRequestId}:
    get:
      summary: Get Act request
      operationId: get_act_request
      parameters:
        - name: actRequestId
          in: path
          required: true
          schema:
            type: string
        - name: includeThreadState
          in: query
          schema:
            type: boolean
            default: false
          description: >-
            Include authorized child thread messages, actions and pending
            requests.
        - name: threadId
          in: query
          schema:
            type: string
          description: >-
            Read state for this child thread only. Must belong to the Act
            request.
        - name: cursor
          in: query
          schema:
            type: string
          description: >-
            Read the next message page for threadId. Requires
            includeThreadState=true.
        - name: limit
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 20
      responses:
        '200':
          description: >-
            Act request receipt and optional live, authorized child thread
            state.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActV3RequestResponse'
        '403':
          description: Credential or agent access denied
      security:
        - apiKey: []
        - bearer: []
components:
  schemas:
    ActV3RequestResponse:
      type: object
      properties:
        type:
          type: string
          const: request
        actRequestId:
          type: string
          minLength: 1
          maxLength: 200
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
        searchId:
          anyOf:
            - type: string
              minLength: 1
              maxLength: 200
              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
            - type: 'null'
        status:
          type: string
          enum:
            - pending
            - completed
            - partial
            - failed
          description: >-
            Act Request handoff status only. Completed means thread receipts
            were created; read each thread for action confirmation and provider
            result.
        createdAt:
          type: string
          format: date-time
          pattern: >-
            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
        threads:
          minItems: 1
          maxItems: 8
          type: array
          items:
            type: object
            properties:
              agentId:
                type: string
                minLength: 1
                maxLength: 200
                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
              capabilityId:
                type: string
                minLength: 1
                maxLength: 200
                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
              threadId:
                type: string
                minLength: 1
                maxLength: 200
                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
              messageId:
                type: string
                minLength: 1
                maxLength: 200
                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
              errorCode:
                type: string
                minLength: 1
                maxLength: 200
                pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
              state:
                type: object
                properties:
                  thread:
                    type: string
                    minLength: 1
                    maxLength: 200
                    pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                  messages:
                    maxItems: 100
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            message:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            from:
                              type: string
                              enum:
                                - you
                                - agent
                                - darwin
                            content:
                              maxItems: 20
                              type: array
                              items:
                                oneOf:
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: text
                                      text:
                                        type: string
                                        minLength: 1
                                        maxLength: 32000
                                    required:
                                      - type
                                      - text
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: image
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: audio
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: video
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: file
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                            status:
                              type: string
                              enum:
                                - accepted
                                - delivered
                                - failed
                                - unknown
                            createdAt:
                              type: string
                              format: date-time
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                            type:
                              type: string
                              const: message
                          required:
                            - message
                            - from
                            - content
                            - status
                            - createdAt
                            - type
                          additionalProperties: false
                        - type: object
                          properties:
                            message:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            from:
                              type: string
                              enum:
                                - you
                                - agent
                                - darwin
                            content:
                              maxItems: 20
                              type: array
                              items:
                                oneOf:
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: text
                                      text:
                                        type: string
                                        minLength: 1
                                        maxLength: 32000
                                    required:
                                      - type
                                      - text
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: image
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: audio
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: video
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                                  - type: object
                                    properties:
                                      type:
                                        type: string
                                        const: file
                                      assetId:
                                        type: string
                                        minLength: 1
                                        maxLength: 200
                                        pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                    required:
                                      - type
                                      - assetId
                                    additionalProperties: false
                            status:
                              type: string
                              enum:
                                - accepted
                                - delivered
                                - failed
                                - unknown
                            createdAt:
                              type: string
                              format: date-time
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                            type:
                              type: string
                              const: result
                            data: {}
                          required:
                            - message
                            - from
                            - content
                            - status
                            - createdAt
                            - type
                          additionalProperties: false
                  errors:
                    description: >-
                      Error events in this page. Retryable does not authorize
                      replaying an accepted effect or payment.
                    maxItems: 100
                    type: array
                    items:
                      type: object
                      properties:
                        event:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        code:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        retryable:
                          type: boolean
                        action:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        createdAt:
                          type: string
                          format: date-time
                          pattern: >-
                            ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                      required:
                        - event
                        - code
                        - retryable
                        - createdAt
                      additionalProperties: false
                  actions:
                    type: array
                    items:
                      type: object
                      properties:
                        action:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        capability:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        request:
                          type: string
                          minLength: 1
                          maxLength: 200
                          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                        status:
                          type: string
                          enum:
                            - awaiting_confirmation
                            - queued
                            - running
                            - waiting
                            - reconciling
                            - succeeded
                            - failed
                            - cancelled
                            - withdrawn
                        cancellationRequested:
                          type: boolean
                        accepted:
                          type: boolean
                      required:
                        - action
                        - capability
                        - request
                        - status
                        - cancellationRequested
                      additionalProperties: false
                  requests:
                    type: array
                    items:
                      oneOf:
                        - type: object
                          properties:
                            request:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            action:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            status:
                              type: string
                              enum:
                                - pending
                                - resolved
                                - expired
                                - cancelled
                                - settled
                                - failed
                                - voided
                                - partially_refunded
                                - reversal_pending
                                - reversal_failed
                                - disputed
                                - refunded
                            type:
                              type: string
                              const: action_request
                            capability:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            arguments:
                              type: object
                              propertyNames:
                                type: string
                                minLength: 1
                                maxLength: 200
                              additionalProperties: {}
                            account:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          required:
                            - request
                            - action
                            - status
                            - type
                            - capability
                            - arguments
                          additionalProperties: false
                        - type: object
                          properties:
                            request:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            action:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            status:
                              type: string
                              enum:
                                - pending
                                - resolved
                                - expired
                                - cancelled
                                - settled
                                - failed
                                - voided
                                - partially_refunded
                                - reversal_pending
                                - reversal_failed
                                - disputed
                                - refunded
                            type:
                              type: string
                              const: approval_request
                            reason:
                              type: string
                              minLength: 1
                              maxLength: 2000
                            expiresAt:
                              type: string
                              format: date-time
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                            capability:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            arguments:
                              type: object
                              propertyNames:
                                type: string
                                minLength: 1
                                maxLength: 200
                              additionalProperties: {}
                            account:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          required:
                            - request
                            - action
                            - status
                            - type
                            - reason
                            - expiresAt
                            - capability
                            - arguments
                          additionalProperties: false
                        - type: object
                          properties:
                            request:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            action:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            status:
                              type: string
                              enum:
                                - pending
                                - resolved
                                - expired
                                - cancelled
                                - settled
                                - failed
                                - voided
                                - partially_refunded
                                - reversal_pending
                                - reversal_failed
                                - disputed
                                - refunded
                            type:
                              type: string
                              const: authentication_request
                            targetAgent:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            authenticationType:
                              type: string
                              minLength: 1
                              maxLength: 100
                              pattern: ^[a-z][a-z0-9_]*(?:\.[a-z][a-z0-9_]*)*$
                            resource:
                              type: string
                              maxLength: 2000
                              format: uri
                            scopes:
                              maxItems: 50
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                            account:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          required:
                            - request
                            - action
                            - status
                            - type
                            - targetAgent
                            - authenticationType
                            - resource
                            - scopes
                          additionalProperties: false
                        - type: object
                          properties:
                            request:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            action:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            status:
                              type: string
                              enum:
                                - pending
                                - resolved
                                - expired
                                - cancelled
                                - settled
                                - failed
                                - voided
                                - partially_refunded
                                - reversal_pending
                                - reversal_failed
                                - disputed
                                - refunded
                            type:
                              type: string
                              const: authentication_required
                            targetAgent:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            scopes:
                              maxItems: 50
                              type: array
                              items:
                                type: string
                                minLength: 1
                                maxLength: 200
                            account:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            expiresAt:
                              type: string
                              format: date-time
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                          required:
                            - request
                            - action
                            - status
                            - type
                            - targetAgent
                            - scopes
                          additionalProperties: false
                        - type: object
                          properties:
                            request:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            action:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            status:
                              type: string
                              enum:
                                - pending
                                - resolved
                                - expired
                                - cancelled
                                - settled
                                - failed
                                - voided
                                - partially_refunded
                                - reversal_pending
                                - reversal_failed
                                - disputed
                                - refunded
                            type:
                              type: string
                              const: payment_request
                            amountMinor:
                              type: string
                              pattern: ^[1-9][0-9]{0,17}$
                            currency:
                              type: string
                              pattern: ^[A-Z]{3}$
                            payee:
                              type: object
                              properties:
                                agent:
                                  type: string
                                  minLength: 1
                                  maxLength: 200
                                  pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                                name:
                                  type: string
                                  minLength: 1
                                  maxLength: 200
                              required:
                                - agent
                                - name
                              additionalProperties: false
                            acceptedMethods:
                              minItems: 1
                              maxItems: 8
                              type: array
                              items:
                                type: string
                                enum:
                                  - card
                                  - bank
                                  - hosted_checkout
                                  - darwin_wallet
                                  - mpp
                                  - x402
                                  - ucp
                                  - acp
                            expiresAt:
                              type: string
                              format: date-time
                              pattern: >-
                                ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
                          required:
                            - request
                            - action
                            - status
                            - type
                            - amountMinor
                            - currency
                            - payee
                            - acceptedMethods
                            - expiresAt
                          additionalProperties: false
                        - type: object
                          properties:
                            request:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            action:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                            status:
                              type: string
                              enum:
                                - pending
                                - resolved
                                - expired
                                - cancelled
                                - settled
                                - failed
                                - voided
                                - partially_refunded
                                - reversal_pending
                                - reversal_failed
                                - disputed
                                - refunded
                            type:
                              type: string
                              const: completion_request
                            result:
                              type: string
                              minLength: 1
                              maxLength: 200
                              pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
                          required:
                            - request
                            - action
                            - status
                            - type
                            - result
                          additionalProperties: false
                  cursor:
                    type: string
                    minLength: 3
                    maxLength: 200
                    pattern: ^.+:(0|[1-9][0-9]*)$
                  hasMore:
                    type: boolean
                  archived:
                    type: boolean
                  needsAttention:
                    type: boolean
                required:
                  - thread
                  - messages
                  - actions
                  - requests
                  - cursor
                  - hasMore
                  - archived
                  - needsAttention
                additionalProperties: false
            required:
              - agentId
            additionalProperties: false
      required:
        - type
        - actRequestId
        - searchId
        - status
        - createdAt
        - threads
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
    bearer:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.