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

# Get user plan

> Get the plan type for an account. For Business and Enterprise plans, the response also includes permission flags indicating whether the user is an admin or owner. (Permitted scopes: **fax:all:read**, **fax:member:read**, **fax:user:read**)

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET https://restapi.fax.plus/v3/accounts/{user_id}/plan \
    -H 'Accept: application/json' \
    -H 'Authorization: Bearer {access-token}' \
    -H 'x-fax-clientid: YOUR_CLIENT_ID'
  ```

  ```http HTTP theme={null}
  GET /v3/accounts/{user_id}/plan HTTP/1.1
  Host: restapi.fax.plus
  Accept: application/json
  Authorization: Bearer {access-token}
  x-fax-clientid: YOUR_CLIENT_ID
  ```
</RequestExample>


## OpenAPI

````yaml get /accounts/{user_id}/plan
openapi: 3.0.1
info:
  title: Fax.Plus REST API
  description: >-
    This is the Fax.Plus API v3 developed for third party developers and
    organizations. In order to have a better coding experience with this API,
    let's quickly go through some points:<br /><br /> - This API assumes
    **/accounts** as an entry point with the base url of
    **https://restapi.fax.plus/v3**. <br /><br /> - This API treats all date and
    times sent to it in requests as **UTC**. Also, all dates and times returned
    in responses are in **UTC**<br /><br /> - Once you have an access_token, you
    can easily send a request to the resource server with the base url of
    **https://restapi.fax.plus/v3** to access your permitted resources. As an
    example to get the user's profile info you would send a request to
    **https://restapi.fax.plus/v3/accounts/self** when **Authorization** header
    is set to **Bearer YOUR_ACCESS_TOKEN** and custom header of
    **x-fax-clientid** is set to YOUR_CLIENT_ID
  version: 3.5.0
  contact:
    name: Fax.Plus
    email: info@fax.plus
    url: https://github.com/alohi
servers:
  - url: https://restapi.fax.plus/v3
  - url: /v3
security: []
paths:
  /accounts/{user_id}/plan:
    get:
      tags:
        - Accounts
      summary: Get user plan
      description: >-
        Get the plan type for an account. For Business and Enterprise plans, the
        response also includes permission flags indicating whether the user is
        an admin or owner. (Permitted scopes: **fax:all:read**,
        **fax:member:read**, **fax:user:read**)
      operationId: getUserPlan
      parameters:
        - description: >-
            User ID to get plan information about. For your own account use
            **'self'**
          name: user_id
          in: path
          required: true
          schema:
            type: string
            default: self
          example: 473e1eb6
      responses:
        '200':
          $ref: '#/components/responses/AccountPlan'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/Error'
        '500':
          $ref: '#/components/responses/ServerError'
      security:
        - oauth2:
            - all
        - personal_access_token:
            - fax:all:read
            - fax:member:read
            - fax:user:read
components:
  responses:
    AccountPlan:
      description: Object containing user plan type and permission flags
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AccountPlan'
    Error:
      description: Error object in case there's a problem with given data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: invalid_user_id
            description: Invalid user id given
    UnauthorizedError:
      description: Error object in case there's a problem with the authorization
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: unauthorized
            description: >-
              The access token provided is expired, revoked, malformed, or
              invalid for other reasons.
    ServerError:
      description: Error object in case there's a server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: internal_server_error
            description: An unexpected error happened, please contact support
  schemas:
    AccountPlan:
      description: User plan and permission flags
      properties:
        plan_type:
          description: Current plan type
          type: string
          enum:
            - free
            - basic
            - premium
            - business
            - enterprise
            - unknown
        is_admin:
          description: >-
            Whether the user has admin permissions (manage_plan or
            manage_hierarchy).
          type: boolean
        is_owner:
          description: >-
            Whether the user has owner permissions (assign_admin, manage_plan,
            or manage_hierarchy).
          type: boolean
      required:
        - plan_type
        - is_admin
        - is_owner
      example:
        plan_type: enterprise
        is_admin: true
        is_owner: true
    Error:
      properties:
        description:
          type: string
        error:
          type: string
      additionalProperties: false
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth2 Authorization Grant
      flows:
        authorizationCode:
          authorizationUrl: >-
            https://accounts.fax.plus/login?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=http://localhost&scope=all
          tokenUrl: https://accounts.fax.plus/token
          refreshUrl: >-
            https://accounts.fax.plus/token?grant_type=refresh_token&refresh_token=YOUR_REFRESH_TOKEN
          scopes:
            all: >-
              for now when a user grants permission, all grants will be
              permitted
    personal_access_token:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Personal Access Token (PAT) is a Bearer token used for secure API calls.
        For direct API calls, the PAT is used in the Authorization header as
        'Bearer {PAT}'. For MCP usage, configure your PAT in your MCP client
        settings (e.g., in your IDE's MCP server configuration) - authentication
        will be handled automatically.

````