Fulcrumpro Job API

The Job API from Fulcrumpro — 6 operation(s) for job.

Operations 8

POST /api/jobs/{jobId}/cancel Cancel a specific job #
POST /api/jobs Create a new job #
GET /api/jobs/{jobId} Get a specific job #
PATCH /api/jobs/{jobId} Partially update a job #
PUT /api/jobs/{jobId} Update a job #
GET /api/jobs/{jobId}/tracking Get a specific job's tracking information #
POST /api/jobs/list Find jobs based on search parameters. #
POST /api/jobs/{jobId}/status Update a job status #

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-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

fulcrumpro-job-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Fulcrum Public Accounting Code Job API
  version: v1
servers:
- url: https://api.fulcrumpro.com
tags:
- name: Job
paths:
  /api/jobs/{jobId}/cancel:
    post:
      tags:
      - Job
      summary: Cancel a specific job
      operationId: CancelJob
      parameters:
      - name: jobId
        in: path
        required: true
        schema:
          maxLength: 24
          minLength: 24
          type: string
      responses:
        '200':
          description: Success
        '204':
          description: Job did not exist
      x-c4-mutation: true
      x-c4-required-permissions:
      - Jobs-Jobs-Edit Job
  /api/jobs:
    post:
      tags:
      - Job
      summary: Create a new job
      operationId: CreateJob
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JobCreateDto'
          application/json:
            schema:
              $ref: '#/components/schemas/JobCreateDto'
          text/json:
            schema:
              $ref: '#/components/schemas/JobCreateDto'
          application/*+json:
            schema:
              $ref: '#/components/schemas/JobCreateDto'
        required: true
      responses:
        '200':
          description: Job created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreatedResponseDto'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/CreatedResponseDto'
        '400':
          description: Validation issues with input
      x-c4-mutation: true
      x-c4-required-permissions:
      - Jobs-Jobs-Edit Job
  /api/jobs/{jobId}:
    get:
      tags:
      - Job
      summary: Get a specific job
      operationId: GetJob
      parameters:
      - name: jobId
        in: path
        required: true
        schema:
          maxLength: 24
          minLength: 24
          type: string
      responses:
        '200':
          description: The job for the given id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobDto'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/JobDto'
        '404':
          description: Job did not exist
      x-c4-required-permissions:
      - Jobs-Jobs-View Job
    patch:
      tags:
      - Job
      summary: Partially update a job
      operationId: PatchJob
      parameters:
      - name: jobId
        in: path
        required: true
        schema:
          maxLength: 24
          minLength: 24
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JsonPatchDocument'
      responses:
        '200':
          description: Job item
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobDto'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/JobDto'
        '404':
          description: Job did not exist
      x-c4-mutation: true
      x-c4-required-permissions:
      - Jobs-Jobs-Edit Job
    put:
      tags:
      - Job
      summary: Update a job
      operationId: UpdateJob
      parameters:
      - name: jobId
        in: path
        required: true
        schema:
          maxLength: 24
          minLength: 24
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JobUpdateDto'
          application/json:
            schema:
              $ref: '#/components/schemas/JobUpdateDto'
          text/json:
            schema:
              $ref: '#/components/schemas/JobUpdateDto'
          application/*+json:
            schema:
              $ref: '#/components/schemas/JobUpdateDto'
        required: true
      responses:
        '200':
          description: Job item
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobDto'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/JobDto'
        '404':
          description: Job did not exist
  /api/jobs/{jobId}/tracking:
    get:
      tags:
      - Job
      summary: Get a specific job's tracking information
      operationId: GetJobTracking
      parameters:
      - name: jobId
        in: path
        required: true
        schema:
          maxLength: 24
          minLength: 24
          type: string
      responses:
        '200':
          description: The job for the given id
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JobTrackingDto'
            application/problem+json:
              schema:
                $ref: '#/components/schemas/JobTrackingDto'
        '404':
          description: Job did not exist
      x-c4-required-permissions:
      - Jobs-Jobs-View Job
  /api/jobs/list:
    post:
      tags:
      - Job
      summary: Find jobs based on search parameters.
      operationId: ListJob
      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:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JobRequestFindParameters'
          application/json:
            schema:
              $ref: '#/components/schemas/JobRequestFindParameters'
          text/json:
            schema:
              $ref: '#/components/schemas/JobRequestFindParameters'
          application/*+json:
            schema:
              $ref: '#/components/schemas/JobRequestFindParameters'
      responses:
        '200':
          description: List of jobs matching the filters
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/JobDto'
            application/problem+json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/JobDto'
      x-c4-required-permissions:
      - Jobs-Jobs-View Job
  /api/jobs/{jobId}/status:
    post:
      tags:
      - Job
      summary: Update a job status
      operationId: StatusUpdateJob
      parameters:
      - name: jobId
        in: path
        required: true
        schema:
          maxLength: 24
          minLength: 24
          type: string
      requestBody:
        content:
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/JobRequestUpdateStatus'
          application/json:
            schema:
              $ref: '#/components/schemas/JobRequestUpdateStatus'
          text/json:
            schema:
              $ref: '#/components/schemas/JobRequestUpdateStatus'
          application/*+json:
            schema:
              $ref: '#/components/schemas/JobRequestUpdateStatus'
        required: true
      responses:
        '200':
          description: Success
        '400':
          description: Job cannot be moved to requested status
        '404':
          description: Job did not exist
      x-c4-mutation: true
      x-c4-required-permissions:
      - Jobs-Jobs-Edit Job
components:
  schemas:
    ItemsAndInventoryRoutingsCostBreakdownType:
      enum:
      - estimated
      - inProgressJob
      - completedJob
      - cancelledJob
      type: string
    JobTrackingItemToMakeDto:
      required:
      - depth
      - id
      - isCustom
      - itemId
      - quantityToMake
      - status
      type: object
      properties:
        id:
          maxLength: 36
          minLength: 36
          type: string
          description: Unique Id associated to this entity
        itemId:
          maxLength: 24
          minLength: 24
          type: string
          description: 'Id of the item on which this entity is based.

            Please reference /api/items endpoint.'
        quantityToMake:
          type: number
          description: Quantity of this item produced by the associated job.
          format: double
        isCustom:
          type: boolean
          description: Denotes whether this job produces a customized version of the base item
        status:
          $ref: '#/components/schemas/JobItemToMakeStatusEnum'
        quantityMade:
          type:
          - number
          - 'null'
          description: Quantity already produced, if the job is in progress.
          format: double
        depth:
          type: integer
          description: 'Structurally, identify where in the tree of building the parent item this item lies.

            Example: The top-level item would have a depth of zero and it''s direct subcomponents would be 1.

            This cascades down so that a subcomponent to a subcomponent would be 2... and so on.'
          format: int32
        routingNotes:
          type:
          - string
          - 'null'
          description: 'The routing notes (the "Routing Notes" field) captured on this job''s routing for the item.

            Null when the job''s routing has no note for the item.'
        costBreakdown:
          $ref: '#/components/schemas/CommonCostBreakdownDto'
        costBreakdownEstimated:
          $ref: '#/components/schemas/CommonCostBreakdownDto'
        itemReference:
          $ref: '#/components/schemas/ItemReferenceDto'
      additionalProperties: false
      description: Represents an item to make on a job (for tracking purposes)
    JobDto:
      required:
      - id
      - name
      - number
      - parentItemId
      - priority
      - quantityToMake
      - status
      - workOrderIds
      - workOrders
      type: object
      properties:
        id:
          maxLength: 24
          minLength: 24
          type: string
          description: Unique Id associated to this entity
        number:
          minimum: 0
          type: integer
          description: Job number
          format: int32
        name:
          maxLength: 200
          minLength: 1
          type: string
          description: Job name, defaults to number unless otherwise specified.
        parentItemId:
          maxLength: 24
          minLength: 24
          type: string
          description: 'Unique identifier of the parent item produced by this job.

            Please reference api/items endpoint.'
        quantityToMake:
          minimum: 0
          type: number
          description: Quantity of parent item produced by this job
          format: double
        productionDueDate:
          type:
          - string
          - 'null'
          description: Due date
          format: date-time
        earliestStartDate:
          type:
          - string
          - 'null'
          description: If set, this is the earliest date that the job should be scheduled to begin.
          format: date-time
        salesOrderId:
          maxLength: 24
          minLength: 24
          type:
          - string
          - 'null'
          description: 'Identifier of sales order fulfilled by this job, if applicable.

            Please reference api/sales-orders endpoint.'
        salesOrderLineItemId:
          maxLength: 36
          minLength: 36
          type:
          - string
          - 'null'
          description: 'Identifier of sales order line item fulfilled by this job, if applicable.

            Please reference endpoints nested under api/sales-orders.'
        createdUtc:
          type: string
          description: The date the job was created
          format: date-time
        originalScheduledStartUtc:
          type:
          - string
          - 'null'
          description: The first scheduled start time.
          format: date-time
        originalScheduledEndUtc:
          type:
          - string
          - 'null'
          description: The first scheduled end time.
          format: date-time
        scheduledStartUtc:
          type:
          - string
          - 'null'
          description: The current scheduled start time.
          format: date-time
        scheduledEndUtc:
          type:
          - string
          - 'null'
          description: The current scheduled end time.
          format: date-time
        completedOnUtc:
          type:
          - string
          - 'null'
          description: The job completion datetime.
          format: date-time
        cancelledOnUtc:
          type:
          - string
          - 'null'
          description: The job cancelled datetime.
          format: date-time
        revenue:
          type:
          - number
          - 'null'
          description: Revenue
          format: double
        notes:
          type:
          - string
          - 'null'
          description: Job level internal notes
        workOrderIds:
          type: array
          items:
            type: string
          description: 'Identifier of work order(s) that this job is associated to, if applicable.

            Please reference api/work-orders endpoint.'
        workOrders:
          type: array
          items:
            $ref: '#/components/schemas/WorkOrderReferenceDto'
          description: Work order information, if applicable.
        status:
          $ref: '#/components/schemas/JobStatusEnum'
        priority:
          $ref: '#/components/schemas/JobPriorityEnum'
        customFields:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: Custom fields that have been defined on this entity.
      additionalProperties: false
      description: Represents a job
    CommonCostBreakdownLineDto:
      required:
      - cost
      - costType
      - name
      type: object
      properties:
        costType:
          $ref: '#/components/schemas/CommonEnumCostBreakdownLineTypeEnum'
        operationType:
          $ref: '#/components/schemas/CommonEnumOperationTypeEnum'
        name:
          minLength: 1
          type: string
          description: Decription of this line.
        cost:
          minimum: 0
          type: number
          description: Cost.
          format: double
        quantity:
          minimum: 0
          type:
          - number
          - 'null'
          description: Quantity (if applicable)
          format: double
        itemId:
          maxLength: 24
          minLength: 24
          type:
          - string
          - 'null'
          description: Id of the item that was picked. Please reference /api/items endpoint.
        itemName:
          type:
          - string
          - 'null'
          description: The name of the item that was picked.
        accountingCodeId:
          maxLength: 24
          minLength: 24
          type:
          - string
          - 'null'
          description: Accounting code affected. Please reference /api/accounting-codes endpoint.
        operationInformation:
          $ref: '#/components/schemas/CommonCostBreakdownOperationDto'
      additionalProperties: false
      description: Cost breakdown line information.
    WorkOrderReferenceDto:
      required:
      - id
      - name
      - number
      type: object
      properties:
        id:
          maxLength: 24
          minLength: 24
          type: string
          description: 'Identifier of work order.

            Please reference api/work-orders endpoint for additional information.'
        number:
          minimum: 0
          type: integer
          description: Number
          format: int32
        name:
          maxLength: 200
          minLength: 1
          type: string
          description: Work order name, defaults to number unless otherwise specified.
      additionalProperties: false
      description: Work order reference information
    CommonCostBreakdownOperationDto:
      required:
      - operationId
      type: object
      properties:
        operationId:
          maxLength: 24
          minLength: 24
          type: string
          description: Operation id. Please reference /api/operations
        name:
          type:
          - string
          - 'null'
          description: Operation name.
        timeInSeconds:
          minimum: 0
          type:
          - number
          - 'null'
          description: Time in seconds.
          format: double
          readOnly: true
        timeInHours:
          minimum: 0
          type:
          - number
          - 'null'
          description: Time in hours
          format: double
        ratePerSecond:
          minimum: 0
          type:
          - number
          - 'null'
          description: Rate per second
          format: double
          readOnly: true
        ratePerHour:
          minimum: 0
          type:
          - number
          - 'null'
          description: Rate per hour
          format: double
      additionalProperties: false
      description: Operation information
    JobUpdateDto:
      type: object
      properties:
        name:
          type:
          - string
          - 'null'
          description: The name of the job
        priority:
          $ref: '#/components/schemas/JobPriorityEnum'
        quantityToMake:
          type:
          - number
          - 'null'
          description: The quantity the job should make
          format: double
        productionDueDate:
          type:
          - string
          - 'null'
          description: The production due date
          format: date-time
        earliestStartDate:
          type:
          - string
          - 'null'
          description: If set, this is the earliest date that the job should be scheduled to begin.
          format: date-time
        notes:
          type:
          - string
          - 'null'
          description: The internal notes
      additionalProperties: false
      description: Represents an update on an Job.
    JsonPatchOperation:
      type: object
      properties:
        op:
          type: string
        value:
          type: string
        path:
          type: string
    CreatedResponseDto:
      required:
      - id
      type: object
      properties:
        id:
          minLength: 1
          type: string
          description: The id of the created record
      additionalProperties: false
      description: Response for a created record
    JobStatusEnum:
      enum:
      - draft
      - needsReview
      - approved
      - engineering
      - scheduled
      - inProgress
      - complete
      - cancelled
      - hold
      type: string
      description: Job status
    JsonPatchDocument:
      type: array
      items:
        $ref: '#/components/schemas/JsonPatchOperation'
      description: Array of operations to perform
    JobTrackingDto:
      required:
      - id
      - name
      - number
      - parentItemId
      - priority
      - quantityToMake
      - status
      - workOrderIds
      - workOrders
      type: object
      properties:
        id:
          maxLength: 24
          minLength: 24
          type: string
          description: Unique Id associated to this entity
        number:
          minimum: 0
          type: integer
          description: Job number
          format: int32
        name:
          maxLength: 200
          minLength: 1
          type: string
          description: Job name, defaults to number unless otherwise specified.
        parentItemId:
          maxLength: 24
          minLength: 24
          type: string
          description: 'Unique identifier of the parent item produced by this job.

            Please reference api/items endpoint.'
        quantityToMake:
          minimum: 0
          type: number
          description: Quantity of parent item produced by this job
          format: double
        productionDueDate:
          type:
          - string
          - 'null'
          description: Due date
          format: date-time
        earliestStartDate:
          type:
          - string
          - 'null'
          description: If set, this is the earliest date that the job should be scheduled to begin.
          format: date-time
        salesOrderId:
          maxLength: 24
          minLength: 24
          type:
          - string
          - 'null'
          description: 'Identifier of sales order fulfilled by this job, if applicable.

            Please reference api/sales-orders endpoint.'
        salesOrderLineItemId:
          maxLength: 36
          minLength: 36
          type:
          - string
          - 'null'
          description: 'Identifier of sales order line item fulfilled by this job, if applicable.

            Please reference endpoints nested under api/sales-orders.'
        createdUtc:
          type: string
          description: The date the job was created
          format: date-time
        originalScheduledStartUtc:
          type:
          - string
          - 'null'
          description: The first scheduled start time.
          format: date-time
        originalScheduledEndUtc:
          type:
          - string
          - 'null'
          description: The first scheduled end time.
          format: date-time
        scheduledStartUtc:
          type:
          - string
          - 'null'
          description: The current scheduled start time.
          format: date-time
        scheduledEndUtc:
          type:
          - string
          - 'null'
          description: The current scheduled end time.
          format: date-time
        completedOnUtc:
          type:
          - string
          - 'null'
          description: The job completion datetime.
          format: date-time
        cancelledOnUtc:
          type:
          - string
          - 'null'
          description: The job cancelled datetime.
          format: date-time
        revenue:
          type:
          - number
          - 'null'
          description: Revenue
          format: double
        notes:
          type:
          - string
          - 'null'
          description: Job level internal notes
        workOrderIds:
          type: array
          items:
            type: string
          description: 'Identifier of work order(s) that this job is associated to, if applicable.

            Please reference api/work-orders endpoint.'
        workOrders:
          type: array
          items:
            $ref: '#/components/schemas/WorkOrderReferenceDto'
          description: Work order information, if applicable.
        status:
          $ref: '#/components/schemas/JobStatusEnum'
        priority:
          $ref: '#/components/schemas/JobPriorityEnum'
        customFields:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: Custom fields that have been defined on this entity.
        previousOperations:
          type: array
          items:
            $ref: '#/components/schemas/JobTrackingOperationDetailsDto'
          description: The previously completed operation(s) for the job.
        currentOperations:
          type: array
          items:
            $ref: '#/components/schemas/JobTrackingOperationDetailsDto'
          description: The current in progress/paused operation(s) for the job.
        nextOperations:
          type: array
          items:
            $ref: '#/components/schemas/JobTrackingOperationDetailsDto'
          description: The next ready operation(s) for the job.
        pendingOperations:
          type: array
          items:
            $ref: '#/components/schemas/JobTrackingOperationDetailsDto'
          description: The operations that are awaiting other operations to finish.
        cancelledOperations:
          type: array
          items:
            $ref: '#/components/schemas/JobTrackingOperationDetailsDto'
          description: The operations that were cancelled.
        estimatedSetupTimeInSeconds:
          type:
          - number
          - 'null'
          description: Estimated setup time (in seconds).
          format: double
          readOnly: true
        estimatedRunTimeInSeconds:
          type:
          - number
          - 'null'
          description: Estimated run time (in seconds).
          format: double
          readOnly: true
        estimatedLaborTimeInSeconds:
          type:
          - number
          - 'null'
          description: Estimated labor time (in seconds).
          format: double
          readOnly: true
        estimatedMachineTimeInSeconds:
          type:
          - number
          - 'null'
          description: Estimated machine time (in seconds).
          format: double
          readOnly: true
        elapsedSetupTimeInSeconds:
          type:
          - number
          - 'null'
          description: Elapsed setup time (in seconds).
          format: double
        elapsedRunTimeInSeconds:
          type:
          - number
          - 'null'
          description: Elapsed run time (in seconds).
          format: double
        elapsedLaborTimeInSeconds:
          type:
          - number
          - 'null'
          description: Elapsed labor time (in seconds).
          format: double
        elapsedMachineTimeInSeconds:
          type:
          - number
          - 'null'
          description: Elapsed machine time (in seconds).
          format: double
        customerName:
          type:
          - string
          - 'null'
          description: The customer that this job is associated with
      additionalProperties: false
      description: Represents a job (for tracking purposes). This is essentially a summary of the job's current state.
    CommonCostBreakdownDto:
      required:
      - calculatedOn
      - componentLabor
      - componentMachine
      - componentMaterial
      - componentOutsideProcessing
      - cumulative
      - cumulativeLabor
      - cumulativeMachine
      - cumulativeMaterial
      - cumulativeOutsideProcessing
      - id
      - itemLabor
      - itemMachine
      - itemMaterial
      - itemOutsideProcessing
      - lines
      - quantity
      - shopRateMachine
      - shopRateRun
      - shopRateSetup
      - time
      - type
      type: object
      properties:
        id:
          maxLength: 36
          minLength: 24
          type: string
          description: The id of the parent item.
        type:
          $ref: '#/components/schemas/ItemsAndInventoryRoutingsCostBreakdownType'
        quantity:
          minimum: 0
          type: integer
          description: Number of units.
          format: int32
        quantityScrapped:
          minimum: 0
          type:
          - integer
          - 'null'
          description: Number of units scrapped.
          format: int32
        calculatedOn:
          type: string
          description: When was this cost breakdown last calculated/aggregated.
          format: date-time
        time:
          $ref: '#/components/schemas/CommonTimeDto'
        cumulative:
          $ref: '#/components/schemas/CommonCostDto'
        cumulativeMaterial:
          $ref: '#/components/schemas/CommonCostDto'
        cumulativeLabor:
          $ref: '#/components/schemas/CommonCostDto'
        cumulativeMachine:
          $ref: '#/components/schemas/CommonCostDto'
        cumulativeOutsideProcessing:
          $ref: '#/components/schemas/CommonCostDto'
        itemMaterial:
          $ref: '#/components/schemas/CommonCostDto'
        itemLabor:
          $ref: '#/components/schemas/CommonCostDto'
        itemMachine:
          $ref: '#/components/schemas/CommonCostDto'
        itemOutsideProcessing:
          $ref: '#/components/schemas/CommonCostDto'
        shopRateSetup:
          $ref: '#/components/schemas/CommonCostDto'
        shopRateRun:
          $ref: '#/components/schemas/CommonCostDto'
        shopRateMachine:
          $ref: '#/components/schemas/CommonCostDto'
        componentMaterial:
          $ref: '#/components/schemas/CommonCostDto'
        componentLabor:
          $ref: '#/components/schemas/CommonCostDto'
        componentMachine:
          $ref: '#/components/schemas/CommonCostDto'
        componentOutsideProcessing:
          $ref: '#/components/schemas/CommonCostDto'
        lines:
          type: array
          items:
            $ref: '#/components/schemas/CommonCostBreakdownLineDto'
          description: Cost breakdown line details.
      additionalProperties: false
      description: Cost breakdown
    CommonTimeDto:
      required:
      - labor
      - machine
      - setup
      type: object
      properties:
        labor:
          minimum: 0
          type: number
          description: Total
          format: double
        machine:
          minimum: 0
          type: number
          description: Cost per unit
          format: double
        setup:
          minimum: 0
          type: number
          description: Cost per unit
          format: double
      additionalProperties: false
      description: Time information
    ItemReferenceDto:
      required:
      - id
      type: object
      properties:
        id:
          maxLength: 24
          minLength: 24
          type: string
          description: Unique Id associated to this entity
        number:
          maxLength: 200
          minLength: 1
          type: string
          description: Item number.
        revision:
          maxLength: 200
          minLength: 1
          type:
          - string
          - 'null'
          description: Revision name.
        name:
          maxLength: 200
          minLength: 1
          type:
          - string
          - 'null'
          description: Item name.
        description:
          maxLength: 2000
          minLength: 0
          type:
          - string
          - 'null'
          description: Item description.
      additionalProperties: false
      description: Item reference
    JobTrackingOperationDetailsDto:
      required:
      - itemToMake
      - operation
      type: object
      properties:
        itemToMake:
          $ref: '#/components/schemas/JobTrackingItemToMakeDto'
        operation:
          $ref: '#/components/schemas/JobTrackingOperationDto'
      additionalProperties: false
      description: Represents a job operation and the item affected (for tracking purposes).
    DomainOperationsRouting_Step_SetupTimeOption:
      enum:
      - fixed
      - perUnit
      type: string
    CommonCostDto:
      required:
      - perUnit
      - total
      type: object
      properties:
        total:
          minimum: 0
          type: number
          description: Total
          format: double
        perUnit:
          minimum: 0
          type: number
          description: Cost per unit
          format: double
      additionalProperties: false
      description: Cost information
    DomainOperationsRouting_Step_RunTimeOption:
      enum:
      - fixed
      - perUnit
      - unitsPerHour
      type: string
    JobItemToMakeOpStatusEnum:
      enum:
      - pending
      - ready
      - running
      - paused
      - complete
      - cancelled
      type: string
      description: Job Item to Make Operation status
    CommonEnumCostBreakdownLineTypeEnum:
      enum:
      - material
      - labor
      - setup
      - machine
      - outsideProcessing
      - componentMaterial
      - componentLabor
      - componentMachine
      - componentOutsideProcessing
      - nestPartMaterialUsage
      - nestPartMaterialScrap
      - overhead
      - unknown
      type: string
      description: Cost breakdown types
    JobRequestFindParameters:
      type: object
      properties:
        jobIds:
          maxItems: 500
          minItems: 1
          type:
          - array
          - 'null'
          items:
            type: string
          description: Filter to jobs whose ids are in the list
        numbers:
          maxItems: 500
          minItems: 1
       

# --- truncated at 32 KB (48 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fulcrumpro/refs/heads/main/openapi/fulcrumpro-job-api-openapi.yml