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

# Estimate a job cost

> Validate a model and its settings, then return the job cost in Credits.



## OpenAPI

````yaml https://backend.tensorpix.ai/api/schema/ post /api/v2/tensorshots/jobs/cost/
openapi: 3.1.0
info:
  title: TensorPix OpenAPI Documentation
  version: 1.1.0
  termsOfService: https://tensorpix.ai/terms-conditions
  contact:
    name: TensorPix Dev Team
    email: devs@tensorpix.ai
servers:
  - url: https://backend.tensorpix.ai
security: []
tags:
  - name: tensorshots-projects
    description: Create, read, update, and delete TensorShots projects.
    x-displayName: Projects
    x-group: TensorShots Projects
  - name: tensorshots-shots
    description: Manage TensorShots project shots and shot voiceovers.
    x-displayName: Shots
    x-group: TensorShots Shots
  - name: tensorshots-assets
    description: Manage TensorShots audio, image, video, and shared assets.
    x-displayName: Assets
    x-group: TensorShots Assets
  - name: tensorshots-jobs
    description: Start, list, read, and delete TensorShots generation and render jobs.
    x-displayName: Jobs
    x-group: TensorShots Jobs
  - name: tensorshots-settings
    description: Manage TensorShots styles, music, voices, and prompt templates.
    x-displayName: Settings
    x-group: TensorShots Settings
  - name: real-estate-projects
    description: Create, read, update, and delete real estate projects.
    x-displayName: Projects
    x-group: Real Estate Projects
  - name: real-estate-shots
    description: Create, read, update, and delete real estate project shots.
    x-displayName: Shots
    x-group: Real Estate Shots
  - name: real-estate-assets
    description: Manage image, video, logo, and music assets for real estate projects.
    x-displayName: Assets
    x-group: Real Estate Assets
  - name: real-estate-voiceover
    description: Manage voiceover text, audio, and text limits for real estate projects.
    x-displayName: Voiceover
    x-group: Real Estate Voiceover
  - name: real-estate-jobs
    description: Start, list, read, and cancel jobs for real estate projects and shots.
    x-displayName: Jobs
    x-group: Real Estate Jobs
  - name: real-estate-branding
    description: Manage reusable agents and brand kits for real estate projects.
    x-displayName: Branding
    x-group: Real Estate Branding
  - name: real-estate-templates
    description: List video templates for real estate projects.
    x-displayName: Templates
    x-group: Real Estate Templates
externalDocs:
  url: https://docs.tensorpix.ai
  description: Check out the full TensorPix documentation.
paths:
  /api/v2/tensorshots/jobs/cost/:
    post:
      tags:
        - tensorshots-jobs
      summary: Estimate a job cost
      description: Validate a model and its settings, then return the job cost in Credits.
      operationId: v2_tensorshots_jobs_cost_create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GetCreditsCostEstimate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/GetCreditsCostEstimate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/GetCreditsCostEstimate'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetCreditsCostEstimate'
          description: ''
        '400':
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail: {}
                  error_id:
                    type: string
                    format: uuid
                additionalProperties: true
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthenticatedError'
          description: ''
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenError'
          description: ''
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RateLimitError'
          description: ''
      security:
        - tokenAuth: []
        - jwtAuth: []
components:
  schemas:
    GetCreditsCostEstimate:
      type: object
      properties:
        model_name:
          $ref: '#/components/schemas/GetCreditsCostEstimateModelNameEnum'
        model_config:
          type: object
          additionalProperties: {}
      required:
        - model_config
        - model_name
    UnauthenticatedError:
      type: object
      description: Serializer stub used for simple documented error payloads.
      properties:
        detail:
          type: string
        error_id:
          type: string
          format: uuid
      required:
        - detail
        - error_id
    ForbiddenError:
      type: object
      description: Serializer stub used for simple documented error payloads.
      properties:
        detail:
          type: string
        error_id:
          type: string
          format: uuid
      required:
        - detail
        - error_id
    RateLimitError:
      type: object
      description: Serializer stub used for simple documented error payloads.
      properties:
        detail:
          type: string
        error_id:
          type: string
          format: uuid
      required:
        - detail
        - error_id
    GetCreditsCostEstimateModelNameEnum:
      enum:
        - hexal_standard_t2v
        - hexal_fast_i2v
        - hexal_ultra_t2v
        - hexal_standard_i2v
        - hexal_standard_nsfw_i2v
        - hexal_ultra_i2v
        - hexal_ultra_nsfw_i2v
        - atlas_ultra_i2v
        - atlas_ultra_nsfw_i2v
        - volta_standard_i2v
        - volta_ultra_i2v
        - veo_3_1_generate_preview
        - veo_3_1_fast_generate_preview
        - veo_3_1_fast_generate_preview_v2
        - veo_3_1_fast_fal_first_last_frame_i2v
        - veo_3_1_fal_i2v
        - veo_3_1_fal_first_last_frame_i2v
        - seedance_2_0_i2v
        - seedance_2_0_fast_i2v
        - seedance_2_0_t2v
        - kling_3_0_i2v
        - kling_3_0_pro_i2v
        - kling_3_0_turbo_standard_i2v
        - kling_3_0_turbo_pro_i2v
        - kling_2_6_pro_i2v
        - sora_2_i2v
        - sora_2_pro_i2v
        - radix_i2i
        - radix_t2i
        - nebula_i2i
        - nebula_nsfw_i2i
        - nebula_t2i
        - nebula_nsfw_t2i
        - refina_i2i
        - refina_t2i
        - zephyr_i2i
        - zephyr_t2i
        - gemini_3_1_flash_i2i
        - gemini_3_1_flash_t2i
        - gpt_image_2_t2i
        - gpt_image_2_i2i
        - seedream_5_0_pro_t2i
        - seedream_5_0_pro_i2i
        - grok_imagine_image_t2i
        - grok_imagine_image_i2i
        - grok_imagine_image_quality_t2i
        - grok_imagine_image_quality_i2i
        - parallax_t2a
        - elevenlabs_v3_t2a
        - happy_horse_1_0_i2v
        - grok_imagine_video_i2v
        - grok_imagine_video_1_5_i2v
        - gemini_omni_flash_i2v
        - gemini_omni_flash_1_1_i2v
        - wan_2_7_i2v
        - minimax_h3_i2v
        - seedance_2_5_i2v
      type: string
      description: >-
        * `hexal_standard_t2v` - hexal_standard_t2v

        * `hexal_fast_i2v` - hexal_fast_i2v

        * `hexal_ultra_t2v` - hexal_ultra_t2v

        * `hexal_standard_i2v` - hexal_standard_i2v

        * `hexal_standard_nsfw_i2v` - hexal_standard_nsfw_i2v

        * `hexal_ultra_i2v` - hexal_ultra_i2v

        * `hexal_ultra_nsfw_i2v` - hexal_ultra_nsfw_i2v

        * `atlas_ultra_i2v` - atlas_ultra_i2v

        * `atlas_ultra_nsfw_i2v` - atlas_ultra_nsfw_i2v

        * `volta_standard_i2v` - volta_standard_i2v

        * `volta_ultra_i2v` - volta_ultra_i2v

        * `veo_3_1_generate_preview` - veo_3_1_generate_preview

        * `veo_3_1_fast_generate_preview` - veo_3_1_fast_generate_preview

        * `veo_3_1_fast_generate_preview_v2` - veo_3_1_fast_generate_preview_v2

        * `veo_3_1_fast_fal_first_last_frame_i2v` -
        veo_3_1_fast_fal_first_last_frame_i2v

        * `veo_3_1_fal_i2v` - veo_3_1_fal_i2v

        * `veo_3_1_fal_first_last_frame_i2v` - veo_3_1_fal_first_last_frame_i2v

        * `seedance_2_0_i2v` - seedance_2_0_i2v

        * `seedance_2_0_fast_i2v` - seedance_2_0_fast_i2v

        * `seedance_2_0_t2v` - seedance_2_0_t2v

        * `kling_3_0_i2v` - kling_3_0_i2v

        * `kling_3_0_pro_i2v` - kling_3_0_pro_i2v

        * `kling_3_0_turbo_standard_i2v` - kling_3_0_turbo_standard_i2v

        * `kling_3_0_turbo_pro_i2v` - kling_3_0_turbo_pro_i2v

        * `kling_2_6_pro_i2v` - kling_2_6_pro_i2v

        * `sora_2_i2v` - sora_2_i2v

        * `sora_2_pro_i2v` - sora_2_pro_i2v

        * `radix_i2i` - radix_i2i

        * `radix_t2i` - radix_t2i

        * `nebula_i2i` - nebula_i2i

        * `nebula_nsfw_i2i` - nebula_nsfw_i2i

        * `nebula_t2i` - nebula_t2i

        * `nebula_nsfw_t2i` - nebula_nsfw_t2i

        * `refina_i2i` - refina_i2i

        * `refina_t2i` - refina_t2i

        * `zephyr_i2i` - zephyr_i2i

        * `zephyr_t2i` - zephyr_t2i

        * `gemini_3_1_flash_i2i` - gemini_3_1_flash_i2i

        * `gemini_3_1_flash_t2i` - gemini_3_1_flash_t2i

        * `gpt_image_2_t2i` - gpt_image_2_t2i

        * `gpt_image_2_i2i` - gpt_image_2_i2i

        * `seedream_5_0_pro_t2i` - seedream_5_0_pro_t2i

        * `seedream_5_0_pro_i2i` - seedream_5_0_pro_i2i

        * `grok_imagine_image_t2i` - grok_imagine_image_t2i

        * `grok_imagine_image_i2i` - grok_imagine_image_i2i

        * `grok_imagine_image_quality_t2i` - grok_imagine_image_quality_t2i

        * `grok_imagine_image_quality_i2i` - grok_imagine_image_quality_i2i

        * `parallax_t2a` - parallax_t2a

        * `elevenlabs_v3_t2a` - elevenlabs_v3_t2a

        * `happy_horse_1_0_i2v` - happy_horse_1_0_i2v

        * `grok_imagine_video_i2v` - grok_imagine_video_i2v

        * `grok_imagine_video_1_5_i2v` - grok_imagine_video_1_5_i2v

        * `gemini_omni_flash_i2v` - gemini_omni_flash_i2v

        * `gemini_omni_flash_1_1_i2v` - gemini_omni_flash_1_1_i2v

        * `wan_2_7_i2v` - wan_2_7_i2v

        * `minimax_h3_i2v` - minimax_h3_i2v

        * `seedance_2_5_i2v` - seedance_2_5_i2v
  securitySchemes:
    tokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: Token-based authentication with required prefix "Token"
    jwtAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````