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

# Obtain Access Token

> Use this request to obtain a JWT access token for authenticating with the API.

**Token Endpoint**: `https://auth.interactsms.com/token`  
**Grant Type**: `password`  
**Content-Type**: `application/x-www-form-urlencoded`

**Request body form fields**:
- `grant_type=password`
- `username=your_username`
- `password=your_strong_password`
- `client_id=ismstoken`

**Successful Response** will include:
- `access_token` — JWT to be passed in `Authorization: Bearer {token}`
- `expires_in` — Time in seconds before token expires
- `refresh_token` — Token used to obtain a new access token
- `scope`, `session_state`, etc.

This path is included for documentation only. Make actual requests directly to `https://auth.interactsms.com/token`.




## OpenAPI

````yaml POST /token
openapi: 3.1.2
info:
  title: Phonovation SMS API Suite
  description: >
    This API suite consists of two separate APIs:


    1. **Phonovation Auth API**: Used for authentication via
    `https://auth.interactsms.com`. This API issues JWT tokens for use in
    authenticated API requests.


    2. **Phonovation SMS API**: Provides bulk SMS functionality via
    `https://api.interactsms.com`. Requires authentication via the Auth API.
  version: 2.0.0
  contact:
    name: Phonovation Support
    email: support@phonovation.com
servers:
  - url: https://api.interactsms.com
    description: Phonovation SMS API Server
security: []
tags:
  - name: Authentication
    description: Endpoints related to user authentication and token management.
  - name: API
    description: Phonovation SMS API endpoints.
  - name: Webhooks
    description: Webhook payloads sent by Phonovation to customer-configured endpoints.
paths:
  /token:
    post:
      tags:
        - Authentication
      summary: Obtain Access Token
      description: >
        Use this request to obtain a JWT access token for authenticating with
        the API.


        **Token Endpoint**: `https://auth.interactsms.com/token`  

        **Grant Type**: `password`  

        **Content-Type**: `application/x-www-form-urlencoded`


        **Request body form fields**:

        - `grant_type=password`

        - `username=your_username`

        - `password=your_strong_password`

        - `client_id=ismstoken`


        **Successful Response** will include:

        - `access_token` — JWT to be passed in `Authorization: Bearer {token}`

        - `expires_in` — Time in seconds before token expires

        - `refresh_token` — Token used to obtain a new access token

        - `scope`, `session_state`, etc.


        This path is included for documentation only. Make actual requests
        directly to `https://auth.interactsms.com/token`.
      operationId: ObtainAccessToken
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              required:
                - client_id
                - username
                - password
                - grant_type
              properties:
                username:
                  type: string
                password:
                  type: string
                client_id:
                  type: string
                  enum:
                    - ismstoken
                grant_type:
                  type: string
                  enum:
                    - password
            examples:
              passwordGrant:
                summary: Password grant request
                value:
                  username: your_username
                  password: your_strong_password
                  client_id: ismstoken
                  grant_type: password
      responses:
        '200':
          description: JWT Token Response Body
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenResponse'
              examples:
                tokenResponse:
                  summary: Successful token response
                  value:
                    access_token: eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJE...
                    expires_in: 120
                    refresh_expires_in: 1200
                    refresh_token: eyJhbGciOiJIUzUxMiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJh...
                    token_type: Bearer
                    scope: email profile client_id
        '401':
          description: Invalid credentials
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenErrorResponse'
              examples:
                invalidCredentials:
                  summary: Invalid credentials response
                  value:
                    error: invalid_grant
                    error_description: Invalid user credentials
      security: []
      servers:
        - url: https://auth.interactsms.com
          description: Phonovation Authentication API Server
components:
  schemas:
    TokenResponse:
      type: object
      required:
        - access_token
        - expires_in
        - refresh_token
        - token_type
      properties:
        access_token:
          type: string
          description: JWT access token to pass in the Authorization header.
        expires_in:
          type: integer
          description: Number of seconds before the access token expires.
        refresh_expires_in:
          type: integer
          description: Number of seconds before the refresh token expires.
        refresh_token:
          type: string
          description: Token used to obtain a new access token.
        token_type:
          type: string
          enum:
            - Bearer
        scope:
          type: string
          description: Space-delimited scopes associated with the token.
    TokenErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: string
          description: Machine-readable OAuth error code.
        error_description:
          type: string
          description: Human-readable error detail.

````