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

# List Properties

> Retrieves all properties for the **StopWatch Time Log** object type.
<Note>
  See [HubSpot API documentation](https://developers.hubspot.com/docs/api-reference/crm-properties-v3/core/get-crm-v3-properties-objectType) for a list of available **Query Parameters**
</Note>




## OpenAPI

````yaml /apis/stopwatch-openapi.yaml get /stopwatch/v1/timelogs/properties
openapi: 3.0.3
info:
  title: StopWatch API
  description: >
    An authentication wrapper for read-only access to HubSpot App Object APIs. 

    This API allows programmatic access to StopWatch Time Log records,
    bypassing 

    standard HubSpot scope restrictions for App Objects.
  version: 1.0.0
servers:
  - url: https://api.threadi.au
    description: Production server
security:
  - bearerAuth: []
paths:
  /stopwatch/v1/timelogs/properties:
    get:
      summary: List Properties
      description: |
        Retrieves all properties for the **StopWatch Time Log** object type.
        <Note>
          See [HubSpot API documentation](https://developers.hubspot.com/docs/api-reference/crm-properties-v3/core/get-crm-v3-properties-objectType) for a list of available **Query Parameters**
        </Note>
      responses:
        '200':
          description: A list of all StopWatch Time Log properties
          content:
            application/json:
              schema:
                type: object
                properties:
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/Property'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '403':
          $ref: '#/components/responses/ForbiddenError'
        '429':
          $ref: '#/components/responses/TooManyRequestsError'
        '500':
          $ref: '#/components/responses/InternalServerError'
        '503':
          $ref: '#/components/responses/ServiceUnavailableError'
components:
  schemas:
    Property:
      type: object
      properties:
        calculated:
          type: boolean
          example: false
        createdAt:
          type: string
          format: date-time
          example: '2025-06-26T00:54:50.551Z'
        dataSensitivity:
          type: string
          enum:
            - non_sensitive
            - sensitive
            - highly_sensitive
        description:
          type: string
          example: Unique record ID for StopWatch App ...
        displayOrder:
          type: number
          example: -1
        externalOptions:
          type: boolean
          example: false
        fieldType:
          type: string
          example: text
        formField:
          type: boolean
          example: false
        groupName:
          type: string
          example: time_log_information
        hasUniqueValue:
          type: boolean
          example: false
        hidden:
          type: boolean
          example: false
        label:
          type: string
          example: StopWatch Record ID
        modificationMetadata:
          type: object
          properties:
            archivable:
              type: boolean
              example: true
            readOnlyDefinition:
              type: boolean
              example: true
            readOnlyValue:
              type: boolean
              example: false
        name:
          type: string
          example: a552213_record_id
        options:
          type: array
          example: []
          items:
            type: object
        type:
          type: string
          example: string
        updatedAt:
          type: string
          format: date-time
          example: '2026-03-20T08:39:01.844Z'
    Error401:
      type: object
      properties:
        error:
          type: string
          example: Invalid API key
    Error403:
      type: object
      properties:
        error:
          type: string
          example: API key has been deactivated
    Error429:
      type: object
      properties:
        error:
          type: string
          example: Daily quota exceeded
        details:
          type: string
          example: >-
            This API key has reached its UTC daily request limit. Use response
            header x-stopwatch-ratelimit-reset to know when this quota will
            reset.
    Error500:
      type: object
      properties:
        error:
          type: string
          example: Internal Server Error
        details:
          type: string
          example: An unexpected error occurred.
    Error503:
      type: object
      properties:
        error:
          type: string
          example: Service temporarily busy
        details:
          type: string
          example: Unable to process request right now. Please retry shortly.
  responses:
    UnauthorizedError:
      description: API key is missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error401'
    ForbiddenError:
      description: API key has been deactivated.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error403'
    TooManyRequestsError:
      description: UTC daily API quota exceeded for this API key.
      headers:
        x-stopwatch-ratelimit-reset:
          description: UTC timestamp indicating when the daily quota resets.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error429'
    InternalServerError:
      description: An unexpected error occurred.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error500'
    ServiceUnavailableError:
      description: Service is temporarily busy.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error503'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >
        Bearer Authorization header of the form Bearer {token}, where {token} is
        your API key.

        By default, each API key is **rate-limited to 1,000 requests per day**
        (UTC). If you need a higher daily limit, please submit a [support
        request](https://www.threadi.au/support?app_name=stopwatch).

````