Fulcrumpro Job Full Routing API
The Job Full Routing API from Fulcrumpro — 14 operation(s) for job full routing.
The Job Full Routing API from Fulcrumpro — 14 operation(s) for job full routing.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/fulcrumpro-job-full-routing-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Fulcrum Public Accounting Code Job Full Routing API
version: v1
servers:
- url: https://api.fulcrumpro.com
tags:
- name: Job Full Routing
paths:
/api/jobs/{jobId}/routing/{routingId}/operations/{operationId}/ipts/{phase}/{iptId}:
delete:
tags:
- Job Full Routing
summary: Deletes a full routing operation in process tracking field for a job
operationId: JobFullRoutingIptDelete
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: phase
in: path
required: true
schema:
$ref: '#/components/schemas/DomainInProcessTrackingFieldCheckpointPhase'
- name: iptId
in: path
required: true
schema:
type: string
format: uuid
responses:
'200':
description: OK
/api/jobs/{jobId}/routing/{routingId}/operations/{operationId}/ipts/{phase}/list:
post:
tags:
- Job Full Routing
summary: Lists full routing operation in process tracking field for a job
operationId: JobPartLineItemFullRoutingIptList
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: phase
in: path
required: true
schema:
$ref: '#/components/schemas/DomainInProcessTrackingFieldCheckpointPhase'
- name: skip
in: query
schema:
minimum: 0
type: integer
format: int32
default: 0
- name: take
in: query
schema:
maximum: 5000
minimum: 0
type: integer
format: int32
default: 50
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/RoutingRequestIptFindParameters'
application/json:
schema:
$ref: '#/components/schemas/RoutingRequestIptFindParameters'
text/json:
schema:
$ref: '#/components/schemas/RoutingRequestIptFindParameters'
application/*+json:
schema:
$ref: '#/components/schemas/RoutingRequestIptFindParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingIptDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingIptDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
/api/jobs/{JobId}/routing/{routingId}/input-items:
post:
tags:
- Job Full Routing
summary: Create a full routing input item for a job
operationId: JobFullRoutingInputItemCreate
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
text/json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
application/problem+json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
/api/jobs/{jobId}/routing/{routingId}/input-items/{inputItemId}:
delete:
tags:
- Job Full Routing
summary: Delete a full routing input item from job
operationId: JobFullRoutingInputItemDelete
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: inputItemId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
responses:
'200':
description: OK
get:
tags:
- Job Full Routing
summary: Gets a full routing input item for a job
operationId: JobFullRoutingInputItemGet
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: inputItemId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
post:
tags:
- Job Full Routing
summary: Update a full routing input item for a job
operationId: JobFullRoutingInputItemUpdate
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: inputItemId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
text/json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemCreateDto'
required: true
responses:
'200':
description: OK
/api/jobs/{jobId}/routing/{routingId}/input-items/list:
post:
tags:
- Job Full Routing
summary: Lists the full routing input items for a job
operationId: JobFullRoutingInputItemList
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: skip
in: query
schema:
minimum: 0
type: integer
format: int32
default: 0
- name: take
in: query
schema:
maximum: 5000
minimum: 0
type: integer
format: int32
default: 50
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
application/json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
text/json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
application/*+json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
/api/jobs/{jobId}/routing/{routingId}/input-materials/list:
post:
tags:
- Job Full Routing
summary: List input materials for a job's routing
operationId: JobFullRoutingInputMaterialList
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: skip
in: query
schema:
minimum: 0
type: integer
format: int32
default: 0
- name: take
in: query
schema:
maximum: 5000
minimum: 0
type: integer
format: int32
default: 50
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
application/json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
text/json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
application/*+json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingInputMaterialDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingInputMaterialDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
/api/jobs/{jobId}/routing/{routingId}/operations/{operationId}/ipts/{phase}:
post:
tags:
- Job Full Routing
summary: Creates a full routing operation in process tracking field for a job
operationId: JobFullRoutingIptCreate
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: phase
in: path
required: true
schema:
$ref: '#/components/schemas/DomainInProcessTrackingFieldCheckpointPhase'
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemRoutingIptCreateDto'
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingIptCreateDto'
text/json:
schema:
$ref: '#/components/schemas/ItemRoutingIptCreateDto'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRoutingIptCreateDto'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
application/problem+json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
/api/jobs/{jobId}/make-summary:
get:
tags:
- Job Full Routing
summary: Get a summary of the make routing for a job
operationId: JobFullRoutingMakeSummaryGet
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RoutingDataFullRoutingMakeSummaryDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/RoutingDataFullRoutingMakeSummaryDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
/api/jobs/{jobId}/routing/{routingId}/operations:
post:
tags:
- Job Full Routing
summary: Creates a full routing operation for a job
operationId: JobFullRoutingOperationCreate
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationCreateDto'
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationCreateDto'
text/json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationCreateDto'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationCreateDto'
required: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
application/problem+json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
/api/jobs/{jobId}/routing/{routingId}/operations/{operationId}:
delete:
tags:
- Job Full Routing
summary: Removes a full routing operation for a job
operationId: JobFullRoutingOperationDelete
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
responses:
'200':
description: OK
get:
tags:
- Job Full Routing
summary: Gets a full routing operation for a job
operationId: JobFullRoutingOperationGet
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
post:
tags:
- Job Full Routing
summary: Updates a full routing operation for a job
operationId: JobFullRoutingOperationUpdate
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationUpdateDto'
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationUpdateDto'
text/json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationUpdateDto'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRoutingOperationUpdateDto'
required: true
responses:
'200':
description: OK
/api/jobs/{jobId}/routing/{routingId}/operations/{operationId}/items/{operationItemId}:
get:
tags:
- Job Full Routing
summary: Gets a full routing operation item for a job
operationId: JobFullRoutingOperationItemGet
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationItemId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
/api/jobs/{jobId}/routing/{routingId}/operations/{operationId}/items/list:
post:
tags:
- Job Full Routing
summary: List full routing operation items for a job
operationId: JobFullRoutingOperationItemList
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: operationId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: skip
in: query
schema:
minimum: 0
type: integer
format: int32
default: 0
- name: take
in: query
schema:
maximum: 5000
minimum: 0
type: integer
format: int32
default: 50
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
application/json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
text/json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
application/*+json:
schema:
$ref: '#/components/schemas/RoutingRequestItemFindParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingInputItemDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
/api/jobs/{jobId}/routing/{routingId}/operations/list:
post:
tags:
- Job Full Routing
summary: Lists full routing operations for a job
operationId: JobFullRoutingOperationList
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
- name: skip
in: query
schema:
minimum: 0
type: integer
format: int32
default: 0
- name: take
in: query
schema:
maximum: 5000
minimum: 0
type: integer
format: int32
default: 50
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/RoutingRequestOperationFindParameters'
application/json:
schema:
$ref: '#/components/schemas/RoutingRequestOperationFindParameters'
text/json:
schema:
$ref: '#/components/schemas/RoutingRequestOperationFindParameters'
application/*+json:
schema:
$ref: '#/components/schemas/RoutingRequestOperationFindParameters'
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingOperationDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemRoutingOperationDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
/api/jobs/{jobId}/routing/{routingId}:
get:
tags:
- Job Full Routing
summary: Gets a full routing routing for a job
operationId: JobFullRoutingRoutingGet
parameters:
- name: jobId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
- name: routingId
in: path
required: true
schema:
maxLength: 36
minLength: 36
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/ItemRoutingDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemRoutingDto'
x-c4-required-permissions:
- Jobs-Jobs-View Job
components:
schemas:
CommonEnumMaterialFormEnum:
enum:
- sheet
- plate
- roundBar
- flatBar
- channel
- squareTube
- angle
- treadPlate
- hexBar
- squareBar
- teeBar
- hBeam
- rectTube
- pipe
- wBeam
- sBeam
- roundTube
- rectBar
- wideBar
type: string
description: Specifies the form of the material.
ItemRoutingInputMaterialNestingDto:
required:
- d2
- d3
- id
- produces
type: object
properties:
id:
maxLength: 36
minLength: 36
type: string
description: Id of this input material's nesting in the item's routing material
format: uuid
d2:
type: number
description: Length
format: double
d3:
type: number
description: For Sheets, the Width
format: double
produces:
type: integer
description: The quantity produced, given the bounding box dimensions (D2 x D3).
format: int32
useForEstimatedCosting:
type: boolean
description: 'Indicates if this nesting record will be used for estimated costing.
NOTE: Only one nesting record for a material can have this value set to true.'
additionalProperties: false
description: Create an input material nesting for routing
ItemRoutingNormalOperationDto:
type: object
properties:
setupTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
laborTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
machineTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
anyEquipment:
type: boolean
description: Specifies that any equipment associated with this operation can be used
selectedEquipmentIds:
type: array
items:
type: string
description: List of equipment ids selected from equipment associated with this operation
isNestable:
type: boolean
description: Indicate if this operation is nestable.
additionalProperties: false
description: Defines non-outside-processing fields
ItemRoutingInputMaterialDto:
required:
- costing
- id
- materialId
- materialName
type: object
properties:
id:
maxLength: 36
minLength: 36
type: string
description: Id of this input material in the item's routing
format: uuid
materialId:
minLength: 1
type: string
description: The material id. Please reference /api/materials endpoint.
materialName:
maxLength: 200
minLength: 1
type: string
description: The material name.
materialShape:
$ref: '#/components/schemas/MaterialShapeDto'
costing:
$ref: '#/components/schemas/CommonEnumMaterialRequirementCostingEnum'
nestings:
type: array
items:
$ref: '#/components/schemas/ItemRoutingInputMaterialNestingDto'
description: Nestings associated to this material indicating bounding box dimensions and production quantities.
routingStepId:
maxLength: 36
minLength: 36
type:
- string
- 'null'
description: 'The routing step id.
This value should be the Id from the response from items/{itemId}/routing/operations/list'
additionalProperties: false
description: An item input material
MaterialShapeVendorDto:
required:
- id
- isPrimary
- priceBreaks
- priceUnit
- vendorId
type: object
properties:
id:
type: string
description: Unique id associated to this entity.
format: uuid
vendorId:
maxLength: 24
minLength: 24
type: string
description: Vendor identifier. Pelase reference /api/vendors endpoint.
isPrimary:
type: boolean
description: Signifies if this is the primary vendor for this material.
currencyCode:
type:
- string
- 'null'
description: Currency code/denomination associated to this vendor.
priceUnit:
$ref: '#/components/schemas/CommonEnumMaterialVendorPriceUnitEnum'
leadTimeInDays:
minimum: 0
type:
- integer
- 'null'
description: Number of days required between order and receipt
format: int32
priceBreaks:
type: array
items:
$ref: '#/components/schemas/MaterialShapeVendorPriceBreakDto'
description: Vendor price breaks
additionalProperties: false
description: Material vendor definition
ItemRoutingInputItemDto:
required:
- description
- id
- itemId
- number
- valueType
- valueTypeUnits
type: object
properties:
id:
maxLength: 36
minLength: 36
type: string
description: Id of this input item in the item's routing
itemId:
maxLength: 24
minLength: 24
type: string
description: Item Id
readOnly: true
number:
maxLength: 200
minLength: 1
type: string
description: The number to give the item.
readOnly: true
revision:
maxLength: 200
minLength: 1
type: string
description: The revision of the item
readOnly: true
description:
maxLength: 2000
minLength: 0
type: string
description: The description to give the item.
readOnly: true
valueTypeUnits:
type: number
description: Measurement unit depending on FulcrumProduct.PublicApi.Dto.Item.Routing.InputItemDto.ValueType
format: double
valueType:
$ref: '#/components/schemas/CommonEnumInputItemValueTypeEnum'
additionalProperties: false
description: An item
ItemRoutingInputItemCreateDto:
required:
- itemId
- valueType
- valueTypeUnits
type: object
properties:
itemId:
maxLength: 24
minLength: 24
type: string
description: The item id to be added. Please reference /api/items endpoint.
valueTypeUnits:
type: number
description: Measurement unit depending on FulcrumProduct.PublicApi.Dto.Item.Routing.InputItemCreateDto.ValueType
format: double
valueType:
$ref: '#/components/schemas/CommonEnumInputItemValueTypeEnum'
additionalProperties: false
description: An input item for routing
ItemRoutingIptDto:
required:
- fieldTypeId
- id
- label
type: object
properties:
id:
type: string
description: Id of the in process tracking field
format: uuid
label:
minLength: 1
type: string
description: Label describing the in process tracking field
units:
type:
- string
- 'null'
description: The units used when this in process tracking field represents a number
fieldTypeId:
minLength: 1
type: string
description: The id of the field type for this in process tracking field
targetValue:
type:
- number
- 'null'
description: The target or ideal value of an in process tracking field response
format: double
minimumValue:
type:
- number
- 'null'
description: The minimum acceptable value for a tracking field response
format: double
maximumValue:
type:
- number
- 'null'
description
# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fulcrumpro/refs/heads/main/openapi/fulcrumpro-job-full-routing-api-openapi.yml