---
title: "Retrieve options level approval requests (BETA)"
method: GET
path: "/v1/accounts/options/approvals"
tags: ["Accounts"]
---

# Retrieve options level approval requests (BETA)

`GET /v1/accounts/options/approvals`

This endpoint retrieves options trading level approval requests. Query parameters can be specified to filter the results. If multiple query parameters are specified, the results will be filtered to include only those that match all of the specified parameters. Each query parameter can only be specified once.

## Query parameters

- `account_id` string, uuid
- `requested_level` 0 | 1 | 2 | 3 — Only return requests with the specified requested level. 0=Disabled, 1=Covered Call/Cash-Secured Put, 2=Long Call/Put, 3=Spreads/Straddles.
- `approved_level` 0 | 1 | 2 | 3 — Only return requests with the specified approved level. 0=Disabled, 1=Covered Call/Cash-Secured Put, 2=Long Call/Put, 3=Spreads/Straddles.
- `status` 'PENDING' | 'APPROVED' | 'LOWER_LEVEL_APPROVED' | 'REJECTED' — The request status. - PENDING: The request is under review. - APPROVED: The request has been successfully approved, the account is now able to trade options. - LOWER_LEVEL_APPROVED: The request has been approved for a level lower than the requested one. - REJECTED: The request has been rejected.
- `page_size` integer
- `page_token` string

## Response `200`

The request was submitted successfully.

- OptionsApprovalsList — A list of options approval requests.
  - `next_page_token` string, nullable — Use this token in your next API call to paginate through the dataset and retrieve the next page of results. A null token indicates there are no more data to fetch.
  - `options_approvals` OptionsApprovalResponse[] — An array of options approval requests.
    - `account_id` string, uuid — The account ID.
    - `approved_level` 0 | 1 | 2 | 3 — The option trading level approved for this request. Only present once the request has completed processiing. Note that a subsequent request may be approved for a different level. 0=Disabled, 1=Covered Call/Cash-Secured Put, 2=Long Call/Put, 3=Spreads/Straddles."
    - `created_at` string, date-time — The time when the request was submitted.
    - `id` string, uuid — The request ID.
    - `requested_level` 0 | 1 | 2 | 3 — The request option trading level. 0=Disabled, 1=Covered Call/Cash-Secured Put, 2=Long Call/Put, 3=Spreads/Straddles.
    - `requester` 'CORRESPONDENT' | 'ALPACA_ADMIN' — The requester of the options approval request.
    - `status` 'PENDING' | 'APPROVED' | 'LOWER_LEVEL_APPROVED' | 'REJECTED' — The request status. - PENDING: The request is under review. - APPROVED: The request has been successfully approved, the account is now able to trade options. - LOWER_LEVEL_APPROVED: The request has been approved for a level lower than the requested one. - REJECTED: The request has been rejected.
    - `updated_at` string, date-time — The time when the request was last updated.

## Other responses

- `400` — The request body is invalid.
- `401` — Client does not exist, you do not have access to the client, or "client_secret" is incorrect.
- `403` — The correspondent entity does not have access to options approvals or the account does not exist.

---

[API](https://skmtc.net/alpacahq/apis/gift-city-extensions-api.md) · [All operations](https://skmtc.net/alpacahq/apis/gift-city-extensions-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/alpacahq/gift-city-extensions-api/revisions/62e3378bb273/schema)
