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

# List all time tracking activities

> Returns a list of time tracking activities. Use the `cursor` parameter to paginate through the results.



## OpenAPI

````yaml GET /quickbooks-desktop/time-tracking-activities
openapi: 3.1.0
info:
  title: Conductor API
  version: 0.0.1
servers:
  - url: https://api.conductor.is/v1
security:
  - BearerAuth: []
paths:
  /quickbooks-desktop/time-tracking-activities:
    get:
      summary: List all time tracking activities
      description: >-
        Returns a list of time tracking activities. Use the `cursor` parameter
        to paginate through the results.
      parameters:
        - in: query
          name: ids
          description: >-
            Filter for specific time tracking activities by their
            QuickBooks-assigned unique identifier(s).


            **IMPORTANT**: If you include this parameter, QuickBooks will ignore
            all other query parameters for this request.


            **NOTE**: If any of the values you specify in this parameter are not
            found, the request will return an error.
          schema:
            type: array
            items:
              type: string
            description: >-
              Filter for specific time tracking activities by their
              QuickBooks-assigned unique identifier(s).


              **IMPORTANT**: If you include this parameter, QuickBooks will
              ignore all other query parameters for this request.


              **NOTE**: If any of the values you specify in this parameter are
              not found, the request will return an error.
            example:
              - 123ABC-1234567890
        - in: query
          name: limit
          description: >-
            The maximum number of objects to return. Accepts values ranging from
            1 to 150, defaults to 150. When used with cursor-based pagination,
            this parameter controls how many results are returned per page. To
            paginate through results, combine this with the `cursor` parameter.
            Each response will include a `nextCursor` value that can be passed
            to subsequent requests to retrieve the next page of results.
          schema:
            type: integer
            minimum: 1
            maximum: 150
            default: 150
            description: >-
              The maximum number of objects to return. Accepts values ranging
              from 1 to 150, defaults to 150. When used with cursor-based
              pagination, this parameter controls how many results are returned
              per page. To paginate through results, combine this with the
              `cursor` parameter. Each response will include a `nextCursor`
              value that can be passed to subsequent requests to retrieve the
              next page of results.
            example: 150
        - in: query
          name: cursor
          description: >-
            The pagination token to fetch the next set of results when
            paginating with the `limit` parameter. Do not include this parameter
            on the first call. Use the `nextCursor` value returned in the
            previous response to request subsequent results.
          schema:
            type: string
            description: >-
              The pagination token to fetch the next set of results when
              paginating with the `limit` parameter. Do not include this
              parameter on the first call. Use the `nextCursor` value returned
              in the previous response to request subsequent results.
            example: 12345678-abcd-abcd-example-1234567890ab
        - in: query
          name: updatedAfter
          description: >-
            Filter for time tracking activities updated on or after this
            date/time. Accepts the following ISO 8601 formats:

            - **date-only** (YYYY-MM-DD) - QuickBooks Desktop interprets the
            date as the **start of the specified day** in the local timezone of
            the end-user's computer (e.g., `2025-01-01` →
            `2025-01-01T00:00:00`).

            - **datetime without timezone** (YYYY-MM-DDTHH:mm:ss) - QuickBooks
            Desktop interprets the timestamp in the local timezone of the
            end-user's computer.

            - **datetime with timezone** (YYYY-MM-DDTHH:mm:ss±HH:mm) -
            QuickBooks Desktop interprets the timestamp using the specified
            timezone.
          schema:
            type: string
            description: >-
              Filter for time tracking activities updated on or after this
              date/time. Accepts the following ISO 8601 formats:

              - **date-only** (YYYY-MM-DD) - QuickBooks Desktop interprets the
              date as the **start of the specified day** in the local timezone
              of the end-user's computer (e.g., `2025-01-01` →
              `2025-01-01T00:00:00`).

              - **datetime without timezone** (YYYY-MM-DDTHH:mm:ss) - QuickBooks
              Desktop interprets the timestamp in the local timezone of the
              end-user's computer.

              - **datetime with timezone** (YYYY-MM-DDTHH:mm:ss±HH:mm) -
              QuickBooks Desktop interprets the timestamp using the specified
              timezone.
            example: '2025-01-01T12:34:56.000Z'
        - in: query
          name: updatedBefore
          description: >-
            Filter for time tracking activities updated on or before this
            date/time. Accepts the following ISO 8601 formats:

            - **date-only** (YYYY-MM-DD) - QuickBooks Desktop interprets the
            date as the **end of the specified day** in the local timezone of
            the end-user's computer (e.g., `2025-01-01` →
            `2025-01-01T23:59:59`).

            - **datetime without timezone** (YYYY-MM-DDTHH:mm:ss) - QuickBooks
            Desktop interprets the timestamp in the local timezone of the
            end-user's computer.

            - **datetime with timezone** (YYYY-MM-DDTHH:mm:ss±HH:mm) -
            QuickBooks Desktop interprets the timestamp using the specified
            timezone.
          schema:
            type: string
            description: >-
              Filter for time tracking activities updated on or before this
              date/time. Accepts the following ISO 8601 formats:

              - **date-only** (YYYY-MM-DD) - QuickBooks Desktop interprets the
              date as the **end of the specified day** in the local timezone of
              the end-user's computer (e.g., `2025-01-01` →
              `2025-01-01T23:59:59`).

              - **datetime without timezone** (YYYY-MM-DDTHH:mm:ss) - QuickBooks
              Desktop interprets the timestamp in the local timezone of the
              end-user's computer.

              - **datetime with timezone** (YYYY-MM-DDTHH:mm:ss±HH:mm) -
              QuickBooks Desktop interprets the timestamp using the specified
              timezone.
            example: '2025-02-01T12:34:56.000Z'
        - in: query
          name: transactionDateFrom
          description: >-
            Filter for time tracking activities whose `date` field is on or
            after this date, in ISO 8601 format (YYYY-MM-DD).


            **NOTE:** QuickBooks Desktop interprets this date as the **start of
            the specified day** in the local timezone of the end-user's computer
            (e.g., `2025-01-01` → `2025-01-01T00:00:00`).
          schema:
            type: string
            format: date
            description: >-
              Filter for time tracking activities whose `date` field is on or
              after this date, in ISO 8601 format (YYYY-MM-DD).


              **NOTE:** QuickBooks Desktop interprets this date as the **start
              of the specified day** in the local timezone of the end-user's
              computer (e.g., `2025-01-01` → `2025-01-01T00:00:00`).
            example: '2025-01-01'
        - in: query
          name: transactionDateTo
          description: >-
            Filter for time tracking activities whose `date` field is on or
            before this date, in ISO 8601 format (YYYY-MM-DD).


            **NOTE:** QuickBooks Desktop interprets this date as the **end of
            the specified day** in the local timezone of the end-user's computer
            (e.g., `2025-01-01` → `2025-01-01T23:59:59`).
          schema:
            type: string
            format: date
            description: >-
              Filter for time tracking activities whose `date` field is on or
              before this date, in ISO 8601 format (YYYY-MM-DD).


              **NOTE:** QuickBooks Desktop interprets this date as the **end of
              the specified day** in the local timezone of the end-user's
              computer (e.g., `2025-01-01` → `2025-01-01T23:59:59`).
            example: '2025-02-01'
        - in: query
          name: entityIds
          description: >-
            Filter for time tracking activities tracking the time of these
            employees, vendors, or persons on QuickBooks's "Other Names" list.
          schema:
            type: array
            items:
              type: string
            description: >-
              Filter for time tracking activities tracking the time of these
              employees, vendors, or persons on QuickBooks's "Other Names" list.
            example:
              - 80000001-1234567890
        - in: header
          name: Conductor-End-User-Id
          description: The ID of the End-User to receive this request.
          schema:
            type: string
            description: The ID of the End-User to receive this request.
            example: end_usr_1234567abcdefg
            x-stainless-naming:
              typescript:
                method_argument: conductorEndUserId
              mcp:
                method_argument: conductorEndUserId
          required: true
      responses:
        '200':
          description: Returns a list of time tracking activities.
          headers:
            Conductor-Request-Id:
              schema:
                type: string
                description: The unique identifier for this API request.
                example: req_1234567abcdefg
              required: true
          content:
            application/json:
              schema:
                type: object
                properties:
                  objectType:
                    type: string
                    const: list
                    description: The type of object. This value is always `"list"`.
                    example: list
                  url:
                    type: string
                    description: The endpoint URL where this list can be accessed.
                    example: /v1/quickbooks-desktop/time-tracking-activities
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/qbd_time_tracking_activity'
                    description: The array of time tracking activities.
                  nextCursor:
                    type:
                      - string
                      - 'null'
                    description: >-
                      The `nextCursor` is a pagination token returned in the
                      response when you use the `limit` parameter in your
                      request. To retrieve subsequent pages of results, include
                      this token as the value of the `cursor` request parameter
                      in your following API calls.


                      **NOTE**: The `nextCursor` value remains constant
                      throughout the pagination process for a specific list
                      instance; continue to use the same `nextCursor` token in
                      each request to fetch additional pages.
                    example: 12345678-abcd-abcd-example-1234567890ab
                  remainingCount:
                    type:
                      - number
                      - 'null'
                    description: The number of objects remaining to be fetched.
                    example: 10
                  hasMore:
                    type: boolean
                    description: Indicates whether there are more objects to be fetched.
                required:
                  - objectType
                  - url
                  - data
                  - nextCursor
                  - remainingCount
                  - hasMore
                additionalProperties: false
      security:
        - BearerAuth: []
      x-codeSamples:
        - lang: JavaScript
          source: >-
            import Conductor from 'conductor-node';


            const conductor = new Conductor({
              apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted
            });


            // Automatically fetches more pages as needed.

            for await (const timeTrackingActivity of
            conductor.qbd.timeTrackingActivities.list({
              conductorEndUserId: 'end_usr_1234567abcdefg',
            })) {
              console.log(timeTrackingActivity.id);
            }
        - lang: Python
          source: |-
            import os
            from conductor import Conductor

            conductor = Conductor(
                api_key=os.environ.get("CONDUCTOR_SECRET_KEY"),  # This is the default and can be omitted
            )
            page = conductor.qbd.time_tracking_activities.list(
                conductor_end_user_id="end_usr_1234567abcdefg",
            )
            page = page.data[0]
            print(page.id)
components:
  schemas:
    qbd_time_tracking_activity:
      type: object
      properties:
        id:
          type: string
          description: >-
            The unique identifier assigned by QuickBooks to this time tracking
            activity. This ID is unique across all transaction types.
          example: 123ABC-1234567890
        objectType:
          type: string
          const: qbd_time_tracking_activity
          description: >-
            The type of object. This value is always
            `"qbd_time_tracking_activity"`.
          example: qbd_time_tracking_activity
        createdAt:
          type: string
          description: >-
            The date and time when this time tracking activity was created, in
            ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks
            Desktop interprets in the local timezone of the end-user's computer.
          example: '2025-01-01T12:34:56.000Z'
        updatedAt:
          type: string
          description: >-
            The date and time when this time tracking activity was last updated,
            in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks
            Desktop interprets in the local timezone of the end-user's computer.
          example: '2025-02-01T12:34:56.000Z'
        revisionNumber:
          type: string
          description: >-
            The current QuickBooks-assigned revision number of this time
            tracking activity object, which changes each time the object is
            modified. When updating this object, you must provide the most
            recent `revisionNumber` to ensure you're working with the latest
            data; otherwise, the update will return an error.
          example: '1721172183'
        transactionDate:
          type: string
          format: date
          description: >-
            The date of this time tracking activity, in ISO 8601 format
            (YYYY-MM-DD).
          example: '2024-10-01'
        entity:
          type: object
          properties:
            id:
              type:
                - string
                - 'null'
              description: >-
                The unique identifier assigned by QuickBooks to this object.
                This ID is unique across all objects of the same type, but not
                across different QuickBooks object types.
              example: 80000001-1234567890
            fullName:
              type:
                - string
                - 'null'
              description: >-
                The fully-qualified unique name for this object, formed by
                combining the names of its parent objects with its own `name`,
                separated by colons. Not case-sensitive.
              example: Parent:Child:Grandchild
          required:
            - id
            - fullName
          additionalProperties: false
          description: >-
            The employee, vendor, or person on QuickBooks's "Other Names" list
            whose time is being tracked in this time tracking activity. This
            cannot refer to a customer - use the `customer` field to associate a
            customer or customer-job with this time tracking activity.
          example:
            id: 80000001-1234567890
            fullName: Acme Corporation
        customer:
          type:
            - object
            - 'null'
          properties:
            id:
              type:
                - string
                - 'null'
              description: >-
                The unique identifier assigned by QuickBooks to this object.
                This ID is unique across all objects of the same type, but not
                across different QuickBooks object types.
              example: 80000001-1234567890
            fullName:
              type:
                - string
                - 'null'
              description: >-
                The fully-qualified unique name for this object, formed by
                combining the names of its parent objects with its own `name`,
                separated by colons. Not case-sensitive.
              example: Parent:Child:Grandchild
          required:
            - id
            - fullName
          additionalProperties: false
          description: >-
            The customer or customer-job to which this time tracking activity
            could be billed. If `billingStatus` is set to "billable", this field
            is required.
          example:
            id: 80000001-1234567890
            fullName: Acme Corporation
        serviceItem:
          type:
            - object
            - 'null'
          properties:
            id:
              type:
                - string
                - 'null'
              description: >-
                The unique identifier assigned by QuickBooks to this object.
                This ID is unique across all objects of the same type, but not
                across different QuickBooks object types.
              example: 80000001-1234567890
            fullName:
              type:
                - string
                - 'null'
              description: >-
                The fully-qualified unique name for this object, formed by
                combining the names of its parent objects with its own `name`,
                separated by colons. Not case-sensitive.
              example: Parent:Child:Grandchild
          required:
            - id
            - fullName
          additionalProperties: false
          description: >-
            The type of service performed during this time tracking activity,
            referring to billable or purchasable services such as specialized
            labor, consulting hours, and professional fees.


            **NOTE**: This field is not required if no `customer` is specified.
            However, if `billingStatus` is set to "billable", both this field
            and `customer` are required.
          example:
            id: 80000001-1234567890
            fullName: Legal Consulting
        duration:
          type: string
          description: >-
            The time spent performing the service during this time tracking
            activity, in ISO 8601 format for time intervals (PTnHnMnS). For
            example, 1 hour and 30 minutes is represented as PT1H30M.


            **NOTE**: Although seconds can be specified when creating a time
            tracking activity, they are not returned in responses since
            QuickBooks Desktop's UI does not display seconds.


            **IMPORTANT**: This field is required for updating time tracking
            activities, even if the field is not being modified, because of a
            bug in QuickBooks itself.
          example: PT1H30M
        class:
          type:
            - object
            - 'null'
          properties:
            id:
              type:
                - string
                - 'null'
              description: >-
                The unique identifier assigned by QuickBooks to this object.
                This ID is unique across all objects of the same type, but not
                across different QuickBooks object types.
              example: 80000001-1234567890
            fullName:
              type:
                - string
                - 'null'
              description: >-
                The fully-qualified unique name for this object, formed by
                combining the names of its parent objects with its own `name`,
                separated by colons. Not case-sensitive.
              example: Parent:Child:Grandchild
          required:
            - id
            - fullName
          additionalProperties: false
          description: >-
            The time tracking activity's class. Classes can be used to
            categorize objects into meaningful segments, such as department,
            location, or type of work. In QuickBooks, class tracking is off by
            default.
          example:
            id: 80000001-1234567890
            fullName: Project Management
        payrollWageItem:
          type:
            - object
            - 'null'
          properties:
            id:
              type:
                - string
                - 'null'
              description: >-
                The unique identifier assigned by QuickBooks to this object.
                This ID is unique across all objects of the same type, but not
                across different QuickBooks object types.
              example: 80000001-1234567890
            fullName:
              type:
                - string
                - 'null'
              description: >-
                The fully-qualified unique name for this object, formed by
                combining the names of its parent objects with its own `name`,
                separated by colons. Not case-sensitive.
              example: Parent:Child:Grandchild
          required:
            - id
            - fullName
          additionalProperties: false
          description: >-
            The payroll wage item (e.g., Regular Pay, Overtime Pay) to use for
            this time tracking activity. This field can only be used for time
            tracking if: (1) the person specified in `entity` is an employee in
            QuickBooks, and (2) the "Use time data to create paychecks"
            preference is enabled in their payroll settings.
          example:
            id: 80000001-1234567890
            fullName: Regular Pay
        note:
          type:
            - string
            - 'null'
          description: A note or comment about this time tracking activity.
          example: Project planning meeting with client.
        billingStatus:
          type:
            - string
            - 'null'
          enum:
            - billable
            - has_been_billed
            - not_billable
            - null
          description: >-
            The billing status of this time tracking activity.


            **IMPORTANT**: When this field is set to "billable" for time
            tracking activities, both `customer` and `serviceItem` are required
            so that an invoice can be created.
          example: billable
        externalId:
          type:
            - string
            - 'null'
          description: >-
            A globally unique identifier (GUID) you, the developer, can provide
            for tracking this object in your external system. This field is
            immutable and can only be set during object creation.
          example: 12345678-abcd-1234-abcd-1234567890ab
        isBilled:
          type:
            - boolean
            - 'null'
          description: Indicates whether this time tracking activity has been billed.
          example: false
      required:
        - id
        - objectType
        - createdAt
        - updatedAt
        - revisionNumber
        - transactionDate
        - entity
        - customer
        - serviceItem
        - duration
        - class
        - payrollWageItem
        - note
        - billingStatus
        - externalId
        - isBilled
      additionalProperties: false
      title: The Time Tracking Activity object
      x-conductor-object-type: transaction
      summary: >-
        A time tracking activity records billable or non-billable time spent by
        an employee, vendor, or other person on a specific service item,
        optionally associated with a customer or job for payroll and invoicing.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Your Conductor secret key using Bearer auth (e.g., `"Authorization:
        Bearer {{YOUR_SECRET_KEY}}"`).

````

Built with [Mintlify](https://mintlify.com).