---
title: "Create an access request"
method: POST
path: "/v1beta/documents/{document_id}/access-requests"
tags: ["Access Requests"]
---

# Create an access request

`POST /v1beta/documents/{document_id}/access-requests`

Creates a new access request for the specified document.

## Path parameters

- `document_id` string, required — Document ID.

## Request body

- object — CreateAccessRequestRequest creates a new access request.
  - `message` string, nullable — Optional message from the requester.
  - `permission` 'view' | 'edit' | 'comment', required

## Response `200`

Success

- CreateAccessRequestResponse — CreateAccessRequestResponse contains the created access request.
  - `access_request` AccessRequest, required — AccessRequest represents a request for access to a document.
    - `created_at` string, date-time, required — When the request was created.
    - `document_id` string, required — Document this request is for. Pattern: doc_[0-9a-hjkmnp-tv-z]{26}
    - `id` string, required — Unique ID for the access request. Pattern: acr_[0-9a-hjkmnp-tv-z]{26}
    - `message` string, nullable — Optional message from the requester.
    - `permission` 'view' | 'edit' | 'comment', required
    - `request_status` 'pending' | 'approved' | 'denied', required
    - `subject` Subject, required — Subject is a lightweight reference to either a user or a bot. Used in embedded fields like created_by. For full details, call GetUser or GetBot with the subject's id. subject_type_matches_id_prefix // id prefix must match type (user_ for user, bot_ for bot)
      - `id` string, required — Unique ID. user_xxx for users, bot_xxx for bots.
      - `name` string, required — Display name of the user or bot.
      - `type` 'user' | 'bot', required
    - `subject_email` string — Email of the requesting user. Denormalized for display convenience.
    - `updated_at` string, date-time, required — When the request was last updated.

## Other responses

- `400` — Invalid request parameters
- `401` — Authentication failed - missing or invalid API key
- `403` — Authorization failed - valid key but insufficient permissions
- `404` — Resource not found
- `429` — Too many requests
- `500` — Internal server error

---

[API](https://skmtc.net/factify-inc/apis/factify-api.md) · [All operations](https://skmtc.net/factify-inc/apis/factify-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/factify-inc/factify-api/revisions/8baabdfb82bf/schema)
