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

# Query dimensions

> Query dimensions for the authenticated user. Use these to configure any dimensions that your users need to track against. These are what your users will see and can assign transactions to (e.g., Location, Job, Department, etc.). Dimensions can be hierarchical (e.g., Region -> Location -> Building).



## OpenAPI

````yaml https://dev.tight.com/v3/api-docs post /v6/templates/dimensions/query
openapi: 3.0.1
info:
  title: Tight API
  contact:
    name: Hurdlr, Inc. (dba Tight)
    url: https://www.tight.com
    email: api@tight.com
  version: 6.0.0
servers:
  - url: https://sandbox.tight.com
    description: Staging Environment
  - url: https://prod.tight.com
    description: Production Environment
security:
  - EmbedToken: []
paths:
  /v6/templates/dimensions/query:
    post:
      tags:
        - Templates
      summary: Query dimensions
      description: >-
        Query dimensions for the authenticated user. Use these to configure any
        dimensions that your users need to track against. These are what your
        users will see and can assign transactions to (e.g., Location, Job,
        Department, etc.). Dimensions can be hierarchical (e.g., Region ->
        Location -> Building).
      operationId: queryDimensions
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DimensionPaginatedResponse'
              example:
                result: SUCCESS
                data:
                  - id: tdim_439512
                    name: Region
                    status: ACTIVE
                    requiredness: REQUIRED
                    child:
                      id: tdim_439513
                      name: Location
                      status: ACTIVE
                      requiredness: NOT_REQUIRED
                  - id: tdim_439514
                    name: Job Site
                    status: ACTIVE
                    requiredness: NOT_REQUIRED
                cursor:
                  after: <string>
                  before: <string>
                error: []
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: REQUIRED
                    message: Amount is required
                    param: amount
        '401':
          description: Not authenticated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: INVALID_TOKEN
                    message: Invalid access token
        '403':
          description: Not authorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: FORBIDDEN
                    message: Expired access token
        '404':
          description: Endpoint not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: BAD_REQUEST
                    message: Resource not found
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                result: FAILURE
                error:
                  - type: UNKNOWN_ERROR
                    message: Something went wrong. Please try again later.
      security:
        - PartnerAuth: []
components:
  schemas:
    DimensionPaginatedResponse:
      type: object
      properties:
        result:
          type: string
          description: Result status
          example: SUCCESS
          enum:
            - SUCCESS
            - FAILURE
        data:
          type: array
          description: List of dimensions
          items:
            $ref: '#/components/schemas/DimensionGetDto'
        cursor:
          $ref: '#/components/schemas/ResponseCursor'
      description: Paginated response for dimensions
    ErrorResponse:
      type: object
      properties:
        result:
          type: string
          description: The result of the action performed.
          enum:
            - SUCCESS
            - FAILURE
        data:
          type: object
          description: The data generated by the action performed.
          nullable: true
        error:
          type: array
          items:
            $ref: '#/components/schemas/ErrorItem'
    DimensionGetDto:
      required:
        - child
        - id
        - name
        - requiredness
        - status
      type: object
      properties:
        id:
          type: string
          description: Id of the dimension
          example: tdim_123456
        name:
          type: string
          description: Name of the dimension
          example: Job Site
        status:
          type: string
          description: Status of the dimension
          example: ACTIVE
          enum:
            - ACTIVE
            - INACTIVE
            - REMOVED
        requiredness:
          type: string
          description: Requiredness of the dimension
          example: NOT_REQUIRED
          enum:
            - REQUIRED
            - NOT_REQUIRED
        child:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/DimensionGetDto'
      description: List of dimensions
    ResponseCursor:
      type: object
      properties:
        after:
          type: string
          description: >-
            After cursor - Fetches entities after this cursor. Useful for paging
            forwards.
        before:
          type: string
          description: >-
            Before cursor - Fetches entities before this cursor. Useful for
            paging backwards.
      description: >-
        Cursor to be used in your subsequent paginated request. Only populated
        if there are more pages available.
    ErrorItem:
      type: object
      properties:
        type:
          type: string
          description: The type of the error. Safe for programmatic use.
          enum:
            - UNKNOWN_ERROR
            - INVALID_TOKEN
            - EXPIRED_TOKEN
            - FORBIDDEN
            - BAD_REQUEST
            - JSON_ERROR
            - DUPLICATE
            - REQUIRED
            - INVALID_VALUE
            - NOT_MODIFIABLE
            - INVALID_FORMAT
            - NOT_FOUND
        message:
          type: string
          description: >-
            A human-readable message providing more details about the error.
            Safe for displaying to a user.
        param:
          type: string
          description: >-
            If the error is parameter-specific, the parameter related to the
            error. This can be used to display a message near the correct form
            field.
      description: Errors associated with the action performed, if applicable.
  securitySchemes:
    EmbedToken:
      type: http
      description: >-
        Bearer authentication header of the form `Bearer <token>`, see
        [Authentication for more
        detail](/api-reference/authentication#partner-level-authentication).
      scheme: bearer
    PartnerAuth:
      type: http
      description: >-
        Bearer authentication header of the form `Bearer <token>`, where
        `<token>` is a [partner-level
        token](/api-reference/authentication#partner-level-authentication).
      scheme: bearer

````