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

# A variant's full sheet: plate figures, spec groups, prices (kind and date) and media links

> A variant's full sheet: plate figures, spec groups, prices with their kind and date, on-road by state, launch date and media links.



## OpenAPI

````yaml /api-reference/openapi.json get /v1/variants/{slug}
openapi: 3.1.0
info:
  title: Truckaurbus API
  version: v1
  description: >-
    The public v1 API at https://api.truckaurbus.com/v1. Authenticate with an
    API key in the Authorization header: Bearer tab_live_...
servers:
  - url: https://api.truckaurbus.com
security: []
paths:
  /v1/variants/{slug}:
    get:
      tags:
        - v1
      summary: >-
        A variant's full sheet: plate figures, spec groups, prices (kind and
        date) and media links
      description: >-
        A variant's full sheet: plate figures, spec groups, prices with their
        kind and date, on-road by state, launch date and media links.
      operationId: identity_api_v1_variant
      parameters:
        - in: path
          name: slug
          required: true
          schema:
            title: Slug
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VariantOut'
          description: OK
components:
  schemas:
    VariantOut:
      properties:
        axle_config:
          anyOf:
            - type: string
            - type: 'null'
          title: Axle Config
        body_types:
          items:
            type: string
          title: Body Types
          type: array
        fitments:
          default: []
          items:
            $ref: '#/components/schemas/FitmentOut'
          title: Fitments
          type: array
        fuel:
          anyOf:
            - type: string
            - type: 'null'
          title: Fuel
        gvw_kg:
          anyOf:
            - type: integer
            - type: 'null'
          title: Gvw Kg
        image:
          anyOf:
            - type: string
            - type: 'null'
          title: Image
        is_sample:
          title: Is Sample
          type: boolean
        lifecycle:
          title: Lifecycle
          type: string
        manufacturer:
          $ref: '#/components/schemas/RefOut'
        media:
          default: []
          items:
            $ref: '#/components/schemas/MediaOut'
          title: Media
          type: array
        model:
          $ref: '#/components/schemas/RefOut'
        name:
          title: Name
          type: string
        payload_kg:
          anyOf:
            - type: integer
            - type: 'null'
          title: Payload Kg
        power_hp:
          anyOf:
            - type: integer
            - type: 'null'
          title: Power Hp
        price_as_of:
          anyOf:
            - format: date
              type: string
            - type: 'null'
          title: Price As Of
        price_from_inr:
          anyOf:
            - type: integer
            - type: 'null'
          title: Price From Inr
        price_kind:
          anyOf:
            - type: string
            - type: 'null'
          title: Price Kind
        price_state:
          anyOf:
            - type: string
            - type: 'null'
          title: Price State
        price_to_inr:
          anyOf:
            - type: integer
            - type: 'null'
          title: Price To Inr
        prices:
          items:
            $ref: '#/components/schemas/PriceOut'
          title: Prices
          type: array
        published_at:
          anyOf:
            - format: date
              type: string
            - type: 'null'
          title: Published At
        seating:
          anyOf:
            - type: integer
            - type: 'null'
          title: Seating
        segment:
          anyOf:
            - type: string
            - type: 'null'
          title: Segment
        slug:
          title: Slug
          type: string
        spec:
          items:
            $ref: '#/components/schemas/SpecGroupOut'
          title: Spec
          type: array
        torque_nm:
          anyOf:
            - type: integer
            - type: 'null'
          title: Torque Nm
        tyre_size:
          anyOf:
            - type: string
            - type: 'null'
          title: Tyre Size
        tyres_count:
          anyOf:
            - type: integer
            - type: 'null'
          title: Tyres Count
        vehicle_class:
          title: Vehicle Class
          type: string
        verified_at:
          anyOf:
            - format: date
              type: string
            - type: 'null'
          title: Verified At
        wheelbase_mm:
          anyOf:
            - type: integer
            - type: 'null'
          title: Wheelbase Mm
        battery_ah:
          anyOf:
            - type: integer
            - type: 'null'
          title: Battery Ah
        battery_volts:
          anyOf:
            - type: integer
            - type: 'null'
          title: Battery Volts
        launched_at:
          anyOf:
            - format: date
              type: string
            - type: 'null'
          title: Launched At
        on_road:
          anyOf:
            - $ref: '#/components/schemas/OnRoadOut'
            - type: 'null'
      required:
        - slug
        - name
        - manufacturer
        - model
        - vehicle_class
        - body_types
        - lifecycle
        - is_sample
        - spec
        - prices
      title: VariantOut
      type: object
    FitmentOut:
      properties:
        attrs:
          additionalProperties: true
          title: Attrs
          type: object
        category:
          title: Category
          type: string
        confidence:
          title: Confidence
          type: number
      required:
        - category
        - attrs
        - confidence
      title: FitmentOut
      type: object
    RefOut:
      properties:
        name:
          title: Name
          type: string
        slug:
          title: Slug
          type: string
      required:
        - slug
        - name
      title: RefOut
      type: object
    MediaOut:
      properties:
        alt:
          anyOf:
            - type: string
            - type: 'null'
          title: Alt
        attribution:
          anyOf:
            - type: string
            - type: 'null'
          title: Attribution
        height:
          anyOf:
            - type: integer
            - type: 'null'
          title: Height
        highlights:
          default: []
          items:
            type: string
          title: Highlights
          type: array
        kind:
          title: Kind
          type: string
        licence:
          anyOf:
            - type: string
            - type: 'null'
          title: Licence
        summary:
          anyOf:
            - type: string
            - type: 'null'
          title: Summary
        summary_by:
          anyOf:
            - type: string
            - type: 'null'
          title: Summary By
        url:
          title: Url
          type: string
        width:
          anyOf:
            - type: integer
            - type: 'null'
          title: Width
        thumb_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Thumb Url
      required:
        - kind
        - url
      title: MediaOut
      type: object
    PriceOut:
      properties:
        basis:
          additionalProperties: true
          default: {}
          title: Basis
          type: object
        city:
          anyOf:
            - type: string
            - type: 'null'
          title: City
        ex_showroom_inr:
          title: Ex Showroom Inr
          type: integer
        high_inr:
          anyOf:
            - type: integer
            - type: 'null'
          title: High Inr
        kind:
          title: Kind
          type: string
        observed_at:
          format: date
          title: Observed At
          type: string
        source_kind:
          default: maker
          title: Source Kind
          type: string
        state_code:
          title: State Code
          type: string
      required:
        - state_code
        - ex_showroom_inr
        - kind
        - observed_at
      title: PriceOut
      type: object
    SpecGroupOut:
      properties:
        fields:
          items:
            $ref: '#/components/schemas/SpecFieldOut'
          title: Fields
          type: array
        key:
          title: Key
          type: string
        label:
          title: Label
          type: string
      required:
        - key
        - label
        - fields
      title: SpecGroupOut
      type: object
    OnRoadOut:
      description: >-
        The on-road estimate for ONE state from the ex-showroom figure the page
        shows (D27, state leg): the tax rules, central

        fees and insurance base premiums are a versioned table; a dealer's own
        quote for a state replaces the base when one exists.

        One state per response on purpose (founder, 07/09/2026: the state table
        is not for scrapers); the page asks for another

        state through the rate-limited /variants/{slug}/on-road?state= route.
      properties:
        base_inr:
          title: Base Inr
          type: integer
        base_kind:
          title: Base Kind
          type: string
        default_state:
          title: Default State
          type: string
        rules_version:
          title: Rules Version
          type: string
        states:
          items:
            $ref: '#/components/schemas/OnRoadStateOut'
          title: States
          type: array
      required:
        - default_state
        - rules_version
        - base_inr
        - base_kind
        - states
      title: OnRoadOut
      type: object
    SpecFieldOut:
      properties:
        confidence:
          anyOf:
            - type: number
            - type: 'null'
          title: Confidence
        key:
          title: Key
          type: string
        label:
          title: Label
          type: string
        unit:
          anyOf:
            - type: string
            - type: 'null'
          title: Unit
        value:
          anyOf:
            - type: string
            - type: integer
            - type: number
            - type: 'null'
          title: Value
      required:
        - key
        - label
      title: SpecFieldOut
      type: object
    OnRoadStateOut:
      properties:
        code:
          title: Code
          type: string
        name:
          title: Name
          type: string
      required:
        - code
        - name
      title: OnRoadStateOut
      type: object

````