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

# Get Request

> Fetches the status for an intake request.

### Permissions

Requires `Intake` permissions. If these permissions are not available to select, contact [support@harvey.ai](mailto:support@harvey.ai).


## OpenAPI

````yaml /intake_api.json get /api/v1/intake/requests/{request_id}
openapi: 3.0.3
info:
  title: Harvey Intake API
  description: >-
    Push legal requests into Harvey Intake from your own systems and read their
    progress back. Submit a request with an idempotency key, any title and
    description, and the documents it concerns, then read the request to see its
    status, assignee, and attachments as they appear in Harvey.
  version: 1.0.0
  contact:
    email: support@harvey.ai
servers:
  - url: https://api.harvey.ai
    description: Harvey API server
security: []
paths:
  /api/v1/intake/requests/{request_id}:
    get:
      tags:
        - Intake
      summary: Get Request
      description: Fetches the status for an intake request.
      operationId: getIntakeRequest
      parameters:
        - name: request_id
          in: path
          required: true
          description: >-
            The unique identifier of the intake request, as returned when it was
            submitted.
          schema:
            type: string
            format: uuid
          example: 6b5d8f02-4c1a-4f8e-9a77-2d0c3e5b1a94
      responses:
        '200':
          description: The intake request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntakeRequest'
              examples:
                getIntakeRequest:
                  summary: Example response for a single request
                  value:
                    request_id: 6b5d8f02-4c1a-4f8e-9a77-2d0c3e5b1a94
                    status: IN_PROGRESS
                    harvey_url: >-
                      https://app.harvey.ai/intake/requests/6b5d8f02-4c1a-4f8e-9a77-2d0c3e5b1a94
                    title: Review the Northwind master services agreement
                    description: >-
                      Counterparty sent back redlines on the termination and
                      liability sections.
                    created_at: '2026-10-09T05:12:59.454218Z'
                    updated_at: '2026-10-09T07:41:03.112904Z'
                    completed_at: null
                    due_at: '2026-10-16'
                    assignee:
                      type: USER
                      name: Dana Whitfield
                    attachments:
                      - file_id: 66fead63-460e-4426-a179-39c70b224a99
                        name: northwind-msa.pdf
        '401':
          description: >-
            Unauthorized - Invalid or missing API token, or a token that may not
            read intake requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                missingPermission:
                  summary: The token lacks permission to read requests
                  value:
                    error: User does not have permission to read Intake requests
        '404':
          description: >-
            Not Found - No intake request you can read has this id. Also
            returned for a request in another workspace, a deleted request, a
            request that has moved into a Space, and when the Intake API is not
            enabled for your workspace
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                notFound:
                  summary: The request is not reachable
                  value:
                    error: Request not found.
        '429':
          description: >-
            Too Many Requests - Rate limit exceeded. The response carries a
            `Retry-After` header giving the seconds to wait
        '500':
          description: Internal Server Error
      security:
        - bearerAuth: []
components:
  schemas:
    IntakeRequest:
      type: object
      properties:
        request_id:
          type: string
          format: uuid
          description: The unique identifier of the intake request.
        status:
          $ref: '#/components/schemas/IntakeRequestStatus'
        harvey_url:
          type: string
          description: Deep link to the request in Harvey.
        title:
          type: string
          nullable: true
          description: The request's title. Null when its content is no longer retained.
        description:
          type: string
          nullable: true
          description: >-
            The request's description. Null when it has none, or its content is
            no longer retained.
        created_at:
          type: string
          format: date-time
          description: When the request was submitted.
        updated_at:
          type: string
          format: date-time
          description: When the request last changed.
        completed_at:
          type: string
          format: date-time
          nullable: true
          description: When the request reached `DONE`. Null while it is still open.
        due_at:
          type: string
          format: date
          nullable: true
          description: The date the request is due. Null when no due date is set.
        assignee:
          description: Who is working the request. Null when nobody is assigned.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/IntakeRequestAssignee'
        attachments:
          type: array
          description: Files submitted with the request. Empty when it has none.
          items:
            $ref: '#/components/schemas/IntakeRequestAttachment'
    Error:
      type: object
      properties:
        error:
          type: string
          description: A readable explanation of the failure. Localized, and may change.
    IntakeRequestStatus:
      type: string
      description: >-
        Lifecycle state of an intake request. A state Harvey adds internally is
        absent here until it is published in this enum, so you can treat these
        as the complete set.
      enum:
        - TODO
        - IN_PROGRESS
        - READY_FOR_REVIEW
        - DONE
        - CANCELLED
    IntakeRequestAssignee:
      type: object
      description: Who is working the request inside Harvey.
      properties:
        type:
          $ref: '#/components/schemas/IntakeRequestAssigneeType'
        name:
          type: string
          nullable: true
          description: >-
            The assignee's display name. Null when no name can be shown, which
            this API reports rather than falling back to an email address.
    IntakeRequestAttachment:
      type: object
      description: One file submitted with the request.
      properties:
        file_id:
          type: string
          format: uuid
          description: The unique identifier of the file.
        name:
          type: string
          nullable: true
          description: The file's name. Null when it was submitted without one.
    IntakeRequestAssigneeType:
      type: string
      description: >-
        Whether the request is being worked by a person or by Harvey's routing
        agent.
      enum:
        - USER
        - AGENT
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Token

````

## Related topics

- [Create Request](https://developers.harvey.ai/api-reference/intake/create-request.md)
- [Rate Limits](https://developers.harvey.ai/api-reference/ratelimits.md)
- [Get File Details](https://developers.harvey.ai/api-reference/vault/get-file-details.md)


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