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.
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: 3.2.0
info:
title: Fulcrum Public 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:
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
CommonEnumInputItemValueTypeEnum:
enum:
- creates
- requires
type: string
description: Specifies how a routing input item quantity is measured.
ItemRoutingOperationUpdateDto:
type: object
properties:
order:
minimum: 0
type:
- integer
- 'null'
description: The order of this operation. Operations with the same order are expected to run in parallel
format: int32
outsideProcessingOperation:
$ref: '#/components/schemas/ItemRoutingOutsideProcessingOperationDto'
operation:
$ref: '#/components/schemas/ItemRoutingNormalOperationDto'
leadDays:
minimum: 0
type:
- integer
- 'null'
description: Lead days. Will default to zero if not provided.
format: int32
unattended:
type:
- boolean
- 'null'
description: 'If `true`, the run portion of this step is unattended by
an operator.'
instructions:
maxLength: 2000
minLength: 1
type:
- string
- 'null'
description: Instructions for this operation.
additionalProperties: false
description: A routing operation (step)
ItemRoutingOutsideProcessingCostOption:
enum:
- fixed
- perUnit
type: string
description: The cost option for the outside processing operation
MaterialShapeVendorPriceBreakDto:
required:
- id
- price
- quantity
type: object
properties:
id:
type: string
description: Unique id associated to this entity.
format: uuid
quantity:
minimum: 0
type: integer
description: The minimum quantity to associate this price break to.
format: int32
price:
type: number
description: The price per unit.
format: double
additionalProperties: false
description: Vendor prices breaks for a material shape.
ItemRoutingIptCreateDto:
required:
- fieldTypeId
- label
type: object
properties:
label:
minLength: 1
type: string
description: Label describing the in process tracking field
description:
type:
- string
- 'null'
description: The description of 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: The maximum acceptable value for a tracking field response
format: double
triggeringBooleanValue:
type:
- boolean
- 'null'
description: The target value for booleans. Typically Yes/No for proceeding with next checkpoint
triggeringDropdownValue:
type:
- string
- 'null'
description: The target value for multiple options
required:
type: boolean
description: Whether the in process tracking field requires a response
restricted:
type: boolean
description: If true, only users with the appropriate permission will be allowed to save a response.
firstArticle:
type: boolean
description: 'Only applies to the During phase. If true (and Required), this field will prevent adding any
completed items to inventory if target is not met.'
additionalProperties: false
description: An in process tracking field for a routing step
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
RoutingRequestIptFindParameters:
type: object
properties:
name:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: Filter to in process tracking fields whose label contains the given string
additionalProperties: false
description: Parameters used for searching/finding operations on an item's routing.
ItemRoutingDto:
type: object
properties:
allowContinuousFlow:
type:
- boolean
- 'null'
description: Allow an operation to start before previous operations in the routing end
additionalProperties: false
description: Represents an item's routing
RoutingRequestOperationFindParameters:
type: object
properties:
name:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: Filter to operations who's name contains the given string
additionalProperties: false
description: Parameters used for searching/finding operations on an item's routing.
ItemRoutingOperationDto:
required:
- id
- name
- systemOperationId
type: object
properties:
id:
maxLength: 36
minLength: 36
type: string
description: The Id of this operation spe
# --- 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