> You are reading the Docusign Developer Documentation. For clean Markdown of any page, append .md to the page URL.
>
> Documentation indexes by section:
> - APIs and SDKs: https://docusign.docs.buildwithfern.com/docs/llms.txt
> - Platform 101: https://docusign.docs.buildwithfern.com/platform/llms.txt
> - Extension Apps: https://docusign.docs.buildwithfern.com/extension-apps/llms.txt
> - Docusign CLI: https://docusign.docs.buildwithfern.com/docusign-cli/llms.txt
>
> Authentication (OAuth, JWT Grant, M2M): https://docusign.docs.buildwithfern.com/platform/auth
> Webhooks and Connect: https://docusign.docs.buildwithfern.com/platform/webhooks
>
> OpenAPI specifications: https://docusign.docs.buildwithfern.com/openapi.json
> MCP server: https://docusign.docs.buildwithfern.com/_mcp/server

# List request type fields

GET https://api-d.docusign.com/v1/accounts/{accountId}/request-types/{requestTypeId}/fields

Returns the list of fields defined on the specified request type.

Reference: https://developers.docusign.com/docs/agreement-desk-api/reference/agreementdesk/requesttypes/listrequesttypefields

## Authentication

- `Authorization` header (bearer token, required) — Docusign OAuth 2.0 access token

## Servers

- `https://api-d.docusign.com` (Demo, default)
- `https://api.docusign.com` (Production)

## Request

### Path parameters

- `accountId` (string, required) — The ID of the account that owns the request statuses.
- `requestTypeId` (string, required) — The ID of the request type to which these fields belong.

## Response

### 200

The list of fields for the request type.

- `_links` (PageLinks, optional) — Hypermedia controls (HATEOAS) for navigating between pages in a paginated collection of results. Links for the current page, next page, and previous page.
- `response_metadata` (ResponseMetadata, optional) — Control information and metadata for the response.
- `fields` (list of RequestTypeField, optional) — The fields belonging to a request type.

## Errors

### 401 Unauthorized Error

The request was not authenticated.

- `status` (integer, required) — The HTTP status code generated for this occurrence of the problem.
- `title` (string, required) — A short, human-readable summary of the problem type.
- `type` (string, required) — A URI reference that identifies the problem type.
- `detail` (string, optional) — A human-readable explanation specific to this occurrence of the problem.
- `errors` (list of ValidationError, optional) — Field-level validation errors when multiple issues exist.
- `instance` (string, optional) — A URI reference that identifies the specific occurrence of the problem.
- `request_id` (string, optional) — Unique identifier for the request, useful for tracing with support.
- `timestamp` (datetime, optional) — The timestamp when the error occurred.

### 403 Forbidden Error

The request was not authorized or the feature is not enabled.

- `status` (integer, required) — The HTTP status code generated for this occurrence of the problem.
- `title` (string, required) — A short, human-readable summary of the problem type.
- `type` (string, required) — A URI reference that identifies the problem type.
- `detail` (string, optional) — A human-readable explanation specific to this occurrence of the problem.
- `errors` (list of ValidationError, optional) — Field-level validation errors when multiple issues exist.
- `instance` (string, optional) — A URI reference that identifies the specific occurrence of the problem.
- `request_id` (string, optional) — Unique identifier for the request, useful for tracing with support.
- `timestamp` (datetime, optional) — The timestamp when the error occurred.

### 404 Not Found Error

The specified request type was not found.

- `status` (integer, required) — The HTTP status code generated for this occurrence of the problem.
- `title` (string, required) — A short, human-readable summary of the problem type.
- `type` (string, required) — A URI reference that identifies the problem type.
- `detail` (string, optional) — A human-readable explanation specific to this occurrence of the problem.
- `errors` (list of ValidationError, optional) — Field-level validation errors when multiple issues exist.
- `instance` (string, optional) — A URI reference that identifies the specific occurrence of the problem.
- `request_id` (string, optional) — Unique identifier for the request, useful for tracing with support.
- `timestamp` (datetime, optional) — The timestamp when the error occurred.

## Types

### PageLinks

Hypermedia controls (HATEOAS) for navigating between pages in a paginated collection of results. Links for the current page, next page, and previous page.

- `collection` (PageLink, optional) — A URL that references a specific page in the pagination process.
- `next` (PageLink, optional) — A URL that references a specific page in the pagination process.
- `self` (PageLink, optional) — A URL that references a specific page in the pagination process.

### ResponseMetadata

Control information and metadata for the response.

- `request_id` (string, required, nullable) — Unique identifier for the request, useful for tracking and debugging.
- `response_timestamp` (datetime, required, nullable) — The timestamp indicating when the response was generated.
- `page_limit` (integer, optional, nullable, default: 25) — The maximum number of items that can be returned in a single page.

### RequestTypeField

A form field defined on a request type.

- `_links` (PageLinks, optional) — Hypermedia controls (HATEOAS) for navigating between pages in a paginated collection of results. Links for the current page, next page, and previous page.
- `metadata` (ResourceMetadata, optional) — Audit and provenance metadata for a resource.
- `id` (string, optional) — The API reference name of the field (componentName from the web form configuration). Set in the Web Forms builder Properties panel under "API reference name". Never case-transformed.
- `name` (string, optional) — The display label of the form field.
- `field_type` (string, optional) — The type of the form field. Valid values include Short Text, Text, Date, Number, Currency, Enum, DynamicList, and Attachment.
- `description` (string, optional) — A human-readable description of the form field.
- `required` (boolean, optional) — Whether the field must be filled in when submitting a request.
- `allowed_values` (list of RequestTypeFieldAllowedValue, optional) — The permitted options for an Enum field, each with selected marking the form author's pre-selection. Values are case-sensitive. Empty array for all other field types.
- `default_value` (any, optional, nullable) — The default value the form author configured for the field, if any, in the webform's own authored shape — not the shape intake_form_fields accepts. This is exactly the value an omitted field is seeded with when creating a request. Shape depends on field_type: - Short Text, Text, Date, Number: a string. - Enum: a string — the pre-selected option's value (also reflected in allowed_values[].selected). - Currency: &#123;"amount": &lt;number>, "currency": "&lt;lowercase ISO 4217 code>"&#125;. null unless the form author set both an amount and a currency; a currency code alone (no amount configured) is not a default and reports null. - DynamicList: [&#123;"id": "&lt;party UUID>", "value": "&lt;display name>"&#125;]. - Attachment: always null. null when the field has no authored default.
- `read_only` (boolean, optional) — Whether this field cannot be set via intake_form_fields on POST .../requests. True for any field the form author configured as read-only in the webform builder. Also true for a DynamicList (Parties lookup) field, unless Party integration is enabled for the account and the field is a supported Party lookup — in that case it is writable; see intake_form_fields for the accepted shape. Submitting a value for a read-only field is rejected with a 400 error rather than accepted or silently ignored. Attachment fields are not read-only: upload the file to DMS yourself, then submit the field's value as an object of the form &#123;"documentId": "&lt;DMS document GUID>", "fileName": "Lease Agreement.docx"&#125;.
- `upload_link` (ActionLink, optional) — A hypermedia action affordance (HATEOAS) — a link the caller can invoke to perform an operation.
- `_actions` (RequestTypeFieldActions, optional) — Available actions on the field (HATEOAS). Attachment fields include an upload_link action: upload the file to its href (the DMS document ID is already embedded in the URL), then submit that same ID as documentId in intake_form_fields. Omitted for field types with no available actions.

### ValidationError

A single field-level or parameter-level validation error.

- `code` (string, required) — A machine-readable error code identifying the specific validation failure.
- `message` (string, required) — A human-readable description of the validation error.
- `target` (string, optional) — The name of the field, parameter, or path segment that caused the error.

### PageLink

A URL that references a specific page in the pagination process.

- `href` (string, required) — The URL for the referenced page.

### ResourceMetadata

Audit and provenance metadata for a resource.

- `created_at` (datetime, optional, nullable) — Timestamp when the resource was created.
- `created_by` (string, optional, nullable) — User ID of the person who created the resource.
- `modified_at` (datetime, optional, nullable) — Timestamp when the resource was last modified.
- `modified_by` (string, optional, nullable) — User ID of the person who last modified the resource.

### RequestTypeFieldAllowedValue

A permitted option for an Enum field.

- `label` (string, optional) — The option's display label in the webform builder.
- `selected` (boolean, optional) — Whether the form author pre-selected this option as the field's default.
- `value` (string, optional) — The option's value, as submitted in intake_form_fields.

### ActionLink

A hypermedia action affordance (HATEOAS) — a link the caller can invoke to perform an operation.

- `href` (string, required) — The URL to invoke to perform the action.

### RequestTypeFieldActions

Available actions on the field (HATEOAS). Attachment fields include an upload_link action: upload the file to its href (the DMS document ID is already embedded in the URL), then submit that same ID as documentId in intake_form_fields. Omitted for field types with no available actions.

- `upload_link` (ActionLink, optional) — A hypermedia action affordance (HATEOAS) — a link the caller can invoke to perform an operation.

## Examples

**Response**

```json
{
  "_links": {
    "self": {
      "href": "https://api.docusign.com/v1/accounts/9f8e7d6c-1234-4a5b-8c9d-0e1f2a3b4c5d/request-types/7b2c4d6e-8f9a-4b1c-9d2e-3f4a5b6c7d8e/fields"
    }
  },
  "response_metadata": {
    "request_id": "3f7c9e4b-851c-4f9b-89e7-123456789abc",
    "response_timestamp": "2026-08-26T14:30:00Z",
    "page_limit": 25
  },
  "fields": [
    {
      "id": "RequestorEmail",
      "name": "Requestor Email",
      "field_type": "Short Text",
      "description": "Email address of the person requesting the agreement",
      "required": true,
      "allowed_values": [],
      "default_value": null,
      "read_only": false
    },
    {
      "id": "AnnualValue",
      "name": "Annual Value",
      "field_type": "Currency",
      "description": "Estimated annual contract value",
      "required": false,
      "allowed_values": [],
      "default_value": null,
      "read_only": false
    },
    {
      "id": "StartDate",
      "name": "Start Date",
      "field_type": "Date",
      "description": "Requested agreement start date",
      "required": true,
      "allowed_values": [],
      "default_value": null,
      "read_only": false
    },
    {
      "id": "Priority",
      "name": "Priority",
      "field_type": "Enum",
      "description": "Urgency of the request",
      "required": false,
      "allowed_values": [
        {
          "label": "Low",
          "selected": false,
          "value": "Low"
        },
        {
          "label": "Medium",
          "selected": true,
          "value": "Medium"
        },
        {
          "label": "High",
          "selected": false,
          "value": "High"
        }
      ],
      "default_value": null,
      "read_only": false
    },
    {
      "id": "Counterparty",
      "name": "Counterparty",
      "field_type": "DynamicList",
      "description": "Party lookup, not settable via intake_form_fields",
      "required": true,
      "allowed_values": [],
      "default_value": null,
      "read_only": true
    },
    {
      "id": "SupportingDocument",
      "name": "Supporting Document",
      "field_type": "Attachment",
      "description": "Attach via the documents endpoint after creating the request",
      "required": false,
      "allowed_values": [],
      "default_value": null,
      "read_only": false
    }
  ]
}
```