Fulcrumpro Job Tracking Timers API

The Job Tracking Timers API from Fulcrumpro — 3 operation(s) for job tracking timers.

Operations 3

POST /api/job-tracking-timers/list Finds job tracking timers based on search parameters #
POST /api/job-tracking-timers/start Starts a job tracking timer. #
POST /api/job-tracking-timers/stop Stops a job tracking timer #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/fulcrumpro-job-tracking-timers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

fulcrumpro-job-tracking-timers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fulcrum Public Accounting Code Job Tracking Timers API
  version: v1
servers:
- url: https://api.fulcrumpro.com
tags:
- name: Job Tracking Timers
paths:
  /api/job-tracking-timers/list:
    post:
      tags:
      - Job Tracking Timers
      summary: Finds job tracking timers based on search parameters
      operationId: ListJobTrackingTimer
      parameters:
      - name: Sort.Field
        in: query
        description: Sort field
        schema:
          minLength: 1
          type: string
      - name: Sort.Dir
        in: query
        description: Sort direction
        schema:
          $ref: '#/components/schemas/CommonEnumSortDirectionEnum'
      - name: Skip
        in: query
        description: Number of records to skip.
        schema:
          minimum: 0
          type: integer
          format: int32
      - name: Take
        in: query
        description: Number of records to return (maximum)
        schema:
          maximum: 5000
          minimum: 0
          type: integer
          format: int32
      requestBody:
        description: The search parameters
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerRequestListTimersParameters'
          application/json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerRequestListTimersParameters'
          text/json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerRequestListTimersParameters'
          application/*+json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerRequestListTimersParameters'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DtoPagedResultDtoTimerDto'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/DtoPagedResultDtoTimerDto'
      x-c4-required-permissions:
      - Jobs-Jobs-View Job
      - Time-Time-View Time Management
  /api/job-tracking-timers/start:
    post:
      tags:
      - Job Tracking Timers
      summary: Starts a job tracking timer.
      operationId: StartTimer
      requestBody:
        description: ''
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStartTimerDto'
          application/json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStartTimerDto'
          text/json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStartTimerDto'
          application/*+json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStartTimerDto'
      responses:
        '200':
          description: OK
      x-c4-mutation: true
      x-c4-required-permissions:
      - Time-Time-Edit Time Managements
  /api/job-tracking-timers/stop:
    post:
      tags:
      - Job Tracking Timers
      summary: Stops a job tracking timer
      operationId: StopTimer
      requestBody:
        description: ''
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStopTimerDto'
          application/json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStopTimerDto'
          text/json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStopTimerDto'
          application/*+json:
            schema:
              $ref: '#/components/schemas/JobTrackingTimerStopTimerDto'
      responses:
        '200':
          description: OK
      x-c4-mutation: true
      x-c4-required-permissions:
      - Time-Time-Edit Time Managements
components:
  schemas:
    JobTrackingTimerStopTimerDto:
      required:
      - timerId
      type: object
      properties:
        userId:
          maxLength: 24
          minLength: 24
          type:
          - string
          - 'null'
          description: The user identifier to associate the timer to.  If not supplied, will use the user assigned to the api key used for authorization
        timerId:
          maxLength: 24
          minLength: 24
          type: string
          description: The timer identifier
      additionalProperties: false
      description: Model for stopping a timer
    JobTrackingTimerRequestListTimersParameters:
      type: object
      properties:
        userId:
          type:
          - string
          - 'null'
          description: Filter timers based on who started it
        jobId:
          type:
          - string
          - 'null'
          description: Filter timers based on job
        runningTimersOnly:
          type:
          - boolean
          - 'null'
          description: Filter to only running timers
        types:
          minItems: 1
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/DomainTimeTrackingTimer_Type'
          description: Filter to specific timer types
        createdBeforeUtc:
          type:
          - string
          - 'null'
          description: Filters timers created before (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        createdAfterUtc:
          type:
          - string
          - 'null'
          description: Filters timers created after (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        modifiedBeforeUtc:
          type:
          - string
          - 'null'
          description: Filters timers modified before (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        modifiedAfterUtc:
          type:
          - string
          - 'null'
          description: Filters timers modified after (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        startedBeforeUtc:
          type:
          - string
          - 'null'
          description: Filters timers started before (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        startedAfterUtc:
          type:
          - string
          - 'null'
          description: Filters timers started after (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        stoppedBeforeUtc:
          type:
          - string
          - 'null'
          description: Filters timers stopped before (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        stoppedAfterUtc:
          type:
          - string
          - 'null'
          description: Filters timers stopped after (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
          format: date-time
        stoppedBeforeUtcOriginal:
          type:
          - string
          - 'null'
          description: 'Filters timers stopped before (exclusive) this parameter in UTC time.

            This explicitly looks at the ORIGINAL stopped date which means this would be primarily for filtering mechanics that necessitate scope limiting.

            If no time component is passed, midnight UTC will be used.'
          format: date-time
        stoppedAfterUtcOriginal:
          type:
          - string
          - 'null'
          description: 'Filters timers stopped after (exclusive) this parameter in UTC time.

            This explicitly looks at the ORIGINAL stopped date which means this would be primarily for filtering mechanics that necessitate scope limiting.

            If no time component is passed, midnight UTC will be used.'
          format: date-time
      additionalProperties: false
      description: Parameters used for searching job tracking timers
    CommonExternalReferenceDto:
      required:
      - externalId
      type: object
      properties:
        type:
          maxLength: 50
          minLength: 0
          type:
          - string
          - 'null'
          description: Specifies the type of this identifier.
        externalId:
          maxLength: 500
          minLength: 0
          type: string
          description: The external identifier
        displayId:
          maxLength: 500
          minLength: 0
          type:
          - string
          - 'null'
          description: 'The id/number that a human sees. For a quote, this might be ''Q1000''.  If this is null, the display

            will fall back to the ExternalId'
        status:
          type:
          - string
          - 'null'
          description: A status for the external reference
        url:
          type:
          - string
          - 'null'
          description: An external url for the reference
        modifiedUtc:
          type:
          - string
          - 'null'
          description: Date the external reference was modified
          format: date-time
        lastSyncedUtc:
          type:
          - string
          - 'null'
          description: 'Date the external system last successfully synced this reference. Set by integrations

            on successful sync only; null means never synced or that the sync timestamp isn''t

            maintained by the integration.'
          format: date-time
      additionalProperties: false
      description: The external reference for entities that implement FulcrumProduct.Domain.Common.IHasExternalReferences
    TimerDto:
      required:
      - createdUtc
      - id
      - segments
      - startedOnUtc
      - startedOnUtcOriginal
      - type
      type: object
      properties:
        id:
          maxLength: 24
          minLength: 24
          type: string
          description: The timer identifier
        jobId:
          type:
          - string
          - 'null'
          description: The job identifier
        jobName:
          type:
          - string
          - 'null'
          description: The job name.
        itemToMakeId:
          type:
          - string
          - 'null'
          description: The item to make identifier
        itemToMakeItemId:
          type:
          - string
          - 'null'
          description: The item to make's original item id.
        itemToMakeName:
          type:
          - string
          - 'null'
          description: The item to make name.
        itemToMakeDescription:
          type:
          - string
          - 'null'
          description: The item to make description.
        jobOperationId:
          type:
          - string
          - 'null'
          description: The job operation identifier
        jobOperationName:
          type:
          - string
          - 'null'
          description: The job operation name.
        jobOperationDescription:
          type:
          - string
          - 'null'
          description: The job operation description.
        startedById:
          type:
          - string
          - 'null'
          description: The user identifier who started the timer
        startedOnUtc:
          type: string
          description: When the timer was started in UTC time.
          format: date-time
        startedOnUtcOriginal:
          type: string
          description: When the timer was ORIGINALLY started in UTC time.
          format: date-time
        stoppedOnUtc:
          type:
          - string
          - 'null'
          description: When the timer was stopped in UTC time.
          format: date-time
        stoppedOnUtcOriginal:
          type:
          - string
          - 'null'
          description: When the timer was ORIGINALLY stopped in UTC time.
          format: date-time
        type:
          $ref: '#/components/schemas/DomainTimeTrackingTimer_Type'
        isRunning:
          type: boolean
          description: Whether the timer is running or not
          readOnly: true
        createdUtc:
          type: string
          description: When the timer was created in UTC time.
          format: date-time
        modifiedUtc:
          type:
          - string
          - 'null'
          description: When the timer was modified in UTC time.
          format: date-time
        elapsedTimeInSeconds:
          type:
          - number
          - 'null'
          description: Elapsed time this timer was running.  Can be greater than the labor time if the operator has multiple concurrent timers.
          format: double
        operationTimeInSeconds:
          type:
          - number
          - 'null'
          description: 'Total Operation run time

            If this timer was overridden, the operation time will be adjusted by the multiple of the adjustment'
          format: double
        laborTimeInSeconds:
          type:
          - number
          - 'null'
          description: 'Labor time for use in costing calculations

            Can be less than elapsed time if an operator''s time was split between jobs'
          format: double
        machineTimeInSeconds:
          type:
          - number
          - 'null'
          description: 'Machine time for use in costing and time displays which is just the elapsed time of the segments

            If the start/stop time has been overridden directly, use that value'
          format: double
        segments:
          type: array
          items:
            $ref: '#/components/schemas/TimerSegmentDto'
          description: The segments of time that this overall timer represents.
        externalReferences:
          type:
          - object
          - 'null'
          additionalProperties:
            $ref: '#/components/schemas/CommonExternalReferenceDto'
          description: External references associated with this entity.
        details:
          $ref: '#/components/schemas/DtoTimerAttributionDetails'
      additionalProperties: false
      description: Data transfer object for Timer entity
    JobTrackingTimerStartTimerDto:
      required:
      - itemToMakeId
      - jobId
      - operationId
      - type
      type: object
      properties:
        userId:
          maxLength: 24
          minLength: 24
          type:
          - string
          - 'null'
          description: The user identifier to associate the timer to.  If not supplied, will use the user assigned to the api key used for authorization
        jobId:
          minLength: 1
          type: string
          description: The job identifier
        itemToMakeId:
          maxLength: 36
          minLength: 36
          type: string
          description: The item to make identifier
        operationId:
          maxLength: 36
          minLength: 36
          type: string
          description: The operation identifier
        type:
          $ref: '#/components/schemas/DomainTimeTrackingTimer_Type'
      additionalProperties: false
      description: Model for starting a job tracking timer via the public api
    DtoPagedResultDtoTimerDto:
      required:
      - data
      - hasNextPage
      - hasPreviousPage
      - page
      - pageSize
      - totalCount
      - totalPages
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/TimerDto'
          description: The data
        page:
          type: integer
          description: The 1-indexed page
          format: int32
          readOnly: true
        pageSize:
          type: integer
          description: The page size
          format: int32
          readOnly: true
        totalCount:
          type: integer
          description: The total count of records
          format: int32
        totalPages:
          type: integer
          description: The total pages
          format: int32
          readOnly: true
        hasPreviousPage:
          type: boolean
          description: True if there is a previous page
          readOnly: true
        hasNextPage:
          type: boolean
          description: True if there is a next page
          readOnly: true
      additionalProperties: false
      description: Paged result
    DtoTimerSegmentAttributionDetails:
      required:
      - timeInSeconds
      - timeInSecondsWeighted
      type: object
      properties:
        timeInSeconds:
          type: number
          description: Elapsed time. If the segment is not stopped, this value will be calculated as of now.
          format: double
        timeInSecondsWeighted:
          type: number
          description: Time in seconds (after using the multiplier/weighted).
          format: double
        multiplier:
          type:
          - number
          - 'null'
          description: With timers, because segments account for overlapping operations, we must account for the percentage to attribute to this segment.
          format: double
      additionalProperties: false
      description: Time attribution for a timer segment.
    DomainTimeTrackingTimer_Type:
      enum:
      - setup
      - run
      - clockIn
      - break
      - labor
      - machine
      type: string
    TimerSegmentDto:
      required:
      - id
      - startedOnUtc
      type: object
      properties:
        id:
          type: string
          description: The timer segment identifier.
          format: uuid
        startedOnUtc:
          type: string
          description: When this segment begins.
          format: date-time
        stoppedOnUtc:
          type:
          - string
          - 'null'
          description: When this segment ends. If the timer is not stopped (still running), this value will be blank.
          format: date-time
        isRunning:
          type: boolean
          description: Whether the timer segment is running or not.
          readOnly: true
        details:
          $ref: '#/components/schemas/DtoTimerSegmentAttributionDetails'
      additionalProperties: false
      description: Data transfer object for TimerSegments entity
    DtoTimerAttributionDetails:
      required:
      - timeInSeconds
      - timeInSecondsWeighted
      type: object
      properties:
        timeInSeconds:
          type: number
          description: Elapsed time.
          format: double
        timeInSecondsWeighted:
          type: number
          description: Time in seconds (after using the multiplier/weighted).
          format: double
        rateHourlyInPrimaryCurrency:
          type:
          - number
          - 'null'
          description: Rate in primary currency.
          format: double
        cost:
          type:
          - number
          - 'null'
          description: Cost. This value will always reflect the current calculated cost. What this means is that overriding start/stop times would affect this value.
          format: double
      additionalProperties: false
      description: Cost and time attribution for a timer.
    CommonEnumSortDirectionEnum:
      enum:
      - ascending
      - descending
      type: string
      description: Specify sorting direction.
  securitySchemes:
    bearer:
      type: http
      description: Your API bearer token generated in System Data > Advanced > Public API Setup
      scheme: bearer
      bearerFormat: JWT
x-tagGroups:
- name: Accounting Code
  tags:
  - Accounting Code
- name: Attachment
  tags:
  - Attachment
  - Attachment Certification
- name: Auth
  tags:
  - Auth
- name: CAPAs
  tags:
  - CAPAs
- name: Chart Of Accounts
  tags:
  - Chart Of Accounts
- name: Company Info
  tags:
  - Company Info
- name: Custom Field
  tags:
  - Custom Field
- name: Customer
  tags:
  - Customer
  - Customer Address
  - Customer Contact
- name: Customer Tier
  tags:
  - Customer Tier
- name: Department
  tags:
  - Department
- name: Equipment
  tags:
  - Equipment
- name: Gauge Code
  tags:
  - Gauge Code
- name: Grade Code
  tags:
  - Grade Code
- name: InProcessTrackingFieldType
  tags:
  - InProcessTrackingFieldType
- name: Inventory
  tags:
  - Inventory
- name: Inventory Event
  tags:
  - Inventory Event
  - Inventory Event Details
- name: Inventory Lot
  tags:
  - Inventory Lot
- name: Inventory Transactions
  tags:
  - Inventory Transactions
- name: Invoice
  tags:
  - Invoice
  - Invoice Deposit Adjustment Line Item
  - Invoice Deposit Line Item
  - Invoice Discount Line Item
  - Invoice Fee Line Item
  - Invoice Line Item
  - Invoice Note
  - Invoice Part Line Item
  - Invoice Refund Line Item
  - Invoice Shipping Charge Line Item
  - Invoice Tax Line Item
- name: Item
  tags:
  - Item
  - Item Custom Fields
  - Item Customer
  - Item Material Vendor
  - Item PriceBreaks
  - Item Routing
  - Item Vendor
- name: Item Category
  tags:
  - Item Category
- name: Item Class
  tags:
  - Item Class
- name: Item Tag
  tags:
  - Item Tag
- name: Job
  tags:
  - Job
  - Job Custom Fields
  - Job Full Routing
  - Job Part Line Item Full Routing
  - Job Item To Make
  - Job Item To Make Operation
  - Job Operation
- name: Job Tracking Timers
  tags:
  - Job Tracking Timers
- name: Location
  tags:
  - Location
- name: Material
  tags:
  - Material
  - Material Vendor
- name: Material Code
  tags:
  - Material Code
- name: NCRs
  tags:
  - NCRs
- name: Note
  tags:
  - Note
- name: Operation
  tags:
  - Operation
- name: Payment Term
  tags:
  - Payment Term
- name: Purchase Order
  tags:
  - Purchase Order
  - Purchase Order Custom Fields
  - Purchase Order Discount Line Item
  - Purchase Order Fee Line Item
  - Purchase Order Line Item
  - Purchase Order Outside Processing Line Item
  - Purchase Order Part Line Item
  - Purchase Order Tax Line Item
  - Purchase Order Vendor Credit Line Item
- name: Quote
  tags:
  - Quote
  - Quote Custom Fields
  - Quote Discount Line Item
  - Quote Fee Line Item
  - Quote Part Line Item
  - Quote Part Line Item Custom Fields
  - Quote Part Line Item Full Routing
  - Quote Tax Line Item
- name: Receiving
  tags:
  - Receiving Receipt
  - Receiving Receipt Line Item
- name: Refund Reason Code
  tags:
  - Refund Reason Code
- name: Reporting
  tags:
  - Reporting
- name: Sales Order
  tags:
  - Sales Order
  - Sales Order Blanket Line Item
  - Sales Order Custom Fields
  - Sales Order Discount Line Item
  - Sales Order Fee Line Item
  - Sales Order Line Item
  - Sales Order Part Line Item
  - Sales Order Part Line Item Custom Fields
  - Sales Order Part Line Item Full Routing
  - Sales Order Refund Line Item
  - Sales Order Shipping Charge Line Item
  - Sales Order Tax Line Item
- name: ScrapReport
  tags:
  - ScrapReport
- name: Shape Code
  tags:
  - Shape Code
- name: Shipment Line Items (V3)
  tags:
  - Shipment Line Items (V3)
- name: Shipment
  tags:
  - Shipment Custom Fields
- name: Shipments
  tags:
  - Shipments
- name: Shipping Method
  tags:
  - Shipping Method
- name: Tag
  tags:
  - Tag
- name: Tax Rate
  tags:
  - Tax Rate
- name: Time Clock Timers
  tags:
  - Time Clock Timers
- name: Timer
  tags:
  - Timer
- name: User
  tags:
  - User
  - User Status
- name: Vendor
  tags:
  - Vendor
  - Vendor Address
  - Vendor Contact
- name: Work Order
  tags:
  - Work Order
- name: WorkCenter
  tags:
  - WorkCenter