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

# Get Auth Token Create

> Authenticates the user with an API key and returns a JWT bearer token for accessing protected endpoints.



## OpenAPI

````yaml post /get_auth_token
openapi: 3.0.3
info:
  title: Gaana AI Visual On-Brand Generation
  version: v1
  description: >-
    This API helps external developers to use Gaana AI API to create visuals
    (image, video) which resonate with their brand guidelines. They can create
    visuals by giving a concept, providing product images, or using reference
    images that inspire them.
  contact:
    name: Gaana AI Support
    email: support@gaana.ai
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
servers:
  - description: Production
    url: https://production.getgaana.com/api
  - description: Stage/Sandbox
    url: https://experiment.getgaana.com/api
security: []
tags:
  - name: auth
    description: Authentication API to generate bearer token
  - name: file_upload
    description: File upload API to upload product images
  - name: products
    description: Product APIs
  - name: concept
    description: Concept APIs
  - name: media-config
    description: Media configuration APIs
  - name: media
    description: Media APIs
paths:
  /get_auth_token:
    post:
      tags:
        - auth
      description: >-
        Authenticates the user with an API key and returns a JWT bearer token
        for accessing protected endpoints.
      operationId: get_auth_token_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthTokenRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/AuthTokenRequest'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/AuthTokenRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessResponse_AuthTokenData'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
components:
  schemas:
    AuthTokenRequest:
      type: object
      properties:
        api_key:
          type: string
      required:
        - api_key
    SuccessResponse_AuthTokenData:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/AuthTokenData'
        message:
          type: string
        status:
          $ref: '#/components/schemas/StatusE7cEnum'
      required:
        - data
        - message
        - status
    ErrorResponse:
      type: object
      properties:
        data:
          type: array
          items: {}
        message:
          type: string
        status:
          $ref: '#/components/schemas/ErrorResponseStatusEnum'
      required:
        - message
        - status
    AuthTokenData:
      type: object
      properties:
        access_token:
          type: string
        token_type:
          type: string
        expires_at:
          type: integer
      required:
        - access_token
        - expires_at
        - token_type
    StatusE7cEnum:
      enum:
        - success
      type: string
      description: '* `success` - success'
    ErrorResponseStatusEnum:
      enum:
        - failed
      type: string
      description: '* `failed` - failed'

````