Fulcrumpro Item API
The Item API from Fulcrumpro — 8 operation(s) for item.
The Item API from Fulcrumpro — 8 operation(s) for item.
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-item-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 Accounting Code Item API
version: v1
servers:
- url: https://api.fulcrumpro.com
tags:
- name: Item
paths:
/api/items/{itemId}/revision:
post:
tags:
- Item
summary: Add a revision to an item
operationId: AddRevisionItem
parameters:
- name: itemId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemRequestAddRevision'
application/json:
schema:
$ref: '#/components/schemas/ItemRequestAddRevision'
text/json:
schema:
$ref: '#/components/schemas/ItemRequestAddRevision'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRequestAddRevision'
required: true
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
application/problem+json:
schema:
$ref: '#/components/schemas/CreatedResponseDto'
'404':
description: Item did not exist
'409':
description: Item revision already exists
x-c4-mutation: true
x-c4-required-permissions:
- ItemsAndInventory-Items-Edit Item
/api/items:
post:
tags:
- Item
summary: Create a new item
operationId: CreateItem
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemCreateDto'
application/json:
schema:
$ref: '#/components/schemas/ItemCreateDto'
text/json:
schema:
$ref: '#/components/schemas/ItemCreateDto'
application/*+json:
schema:
$ref: '#/components/schemas/ItemCreateDto'
required: true
responses:
'200':
description: Item 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:
- ItemsAndInventory-Items-Edit Item
/api/items/{itemId}:
get:
tags:
- Item
summary: Get a specific item
operationId: GetItem
parameters:
- name: itemId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
responses:
'200':
description: The item for the given id
content:
application/json:
schema:
$ref: '#/components/schemas/ItemDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemDto'
'404':
description: Item did not exist
x-c4-required-permissions:
- ItemsAndInventory-Items-View Item
patch:
tags:
- Item
summary: Partially update an item
operationId: PatchItem
parameters:
- name: itemId
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: Item
content:
application/json:
schema:
$ref: '#/components/schemas/ItemDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemDto'
'404':
description: Item did not exist
x-c4-mutation: true
x-c4-required-permissions:
- ItemsAndInventory-Items-Edit Item
put:
tags:
- Item
summary: Update a specific item
operationId: UpdateItem
parameters:
- name: itemId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/ItemUpdateDto'
application/json:
schema:
$ref: '#/components/schemas/ItemUpdateDto'
text/json:
schema:
$ref: '#/components/schemas/ItemUpdateDto'
application/*+json:
schema:
$ref: '#/components/schemas/ItemUpdateDto'
required: true
responses:
'200':
description: Item
content:
application/json:
schema:
$ref: '#/components/schemas/ItemDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemDto'
'404':
description: Item did not exist
/api/items/{itemId}/can-make:
get:
tags:
- Item
summary: 'Get the can-make quantities for an item. Returns how much of this item can be produced
from current subcomponent inventory (on-hand and available).'
operationId: GetItemCanMake
parameters:
- name: itemId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
responses:
'200':
description: The can-make quantities for the given item
content:
application/json:
schema:
$ref: '#/components/schemas/ItemCanMakeDto'
application/problem+json:
schema:
$ref: '#/components/schemas/ItemCanMakeDto'
'404':
description: Item id provided was not found
'400':
description: Item is not a make item
x-c4-required-permissions:
- ItemsAndInventory-Items-View Item
/api/items/list:
post:
tags:
- Item
summary: TO BE REMOVED 11/02/2023 - Find items based on search parameters.
description: Use V2 which includes a list of number filters
operationId: ListItem
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/ItemRequestFindParameters'
application/json:
schema:
$ref: '#/components/schemas/ItemRequestFindParameters'
text/json:
schema:
$ref: '#/components/schemas/ItemRequestFindParameters'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRequestFindParameters'
responses:
'200':
description: List of items matching the filters
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemDto'
deprecated: true
/api/items/list/v2:
post:
tags:
- Item
summary: Find items based on search parameters.
operationId: ListItemV2
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/ItemRequestFindParametersV2'
application/json:
schema:
$ref: '#/components/schemas/ItemRequestFindParametersV2'
text/json:
schema:
$ref: '#/components/schemas/ItemRequestFindParametersV2'
application/*+json:
schema:
$ref: '#/components/schemas/ItemRequestFindParametersV2'
responses:
'200':
description: List of items matching the filters
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemListDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/ItemListDto'
x-c4-required-permissions:
- ItemsAndInventory-Items-View Item
/api/items/{itemId}/inventory/pick:
post:
tags:
- Item
summary: TO BE REMOVED 10/13/2023 - Pick inventory against a specific item.
description: Use /inventory/pick API instead
operationId: PickItemInventory
parameters:
- name: itemId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryPickEvent'
application/json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryPickEvent'
text/json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryPickEvent'
application/*+json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryPickEvent'
required: true
responses:
'200':
description: Inventory transaction processed
'400':
description: Validation issues with input
deprecated: true
/api/items/{itemId}/inventory/receive:
post:
tags:
- Item
summary: TO BE REMOVED 10/13/2023 - Receive inventory against a specific item.
description: Use /inventory/receive API instead
operationId: ReceiveItemInventory
parameters:
- name: itemId
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryReceiveEvent'
application/json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryReceiveEvent'
text/json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryReceiveEvent'
application/*+json:
schema:
$ref: '#/components/schemas/InventoryRequestItemInventoryReceiveEvent'
required: true
responses:
'200':
description: Inventory transaction processed
'400':
description: Validation issues with input
deprecated: true
components:
schemas:
ItemDto:
required:
- accountingDetails
- description
- id
- itemOrigin
- number
- unitOfMeasureName
- unitTypeName
type: object
properties:
id:
maxLength: 24
minLength: 24
type: string
description: Id
number:
maxLength: 200
minLength: 1
type: string
description: The number to give the item.
description:
maxLength: 2000
minLength: 0
type: string
description: The description to give the item.
itemOrigin:
$ref: '#/components/schemas/DomainItemsAndInventoryItemOrigin'
unitTypeName:
minLength: 1
type: string
description: 'The unit of measure type, ex: Piece, Volume or Weight'
unitOfMeasureName:
minLength: 1
type: string
description: The unit of measure name. Options available depend on the selected UnitTypeName. For Pieces, you might have a UOM of Piece, Set or Case. For Volume, options include Liter, Milliliter, etc.
revision:
$ref: '#/components/schemas/ItemRevisionDto'
barCodeNumber:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: The barcode number to give the item.
isSellable:
type: boolean
description: Define if this item is able to be sold/sellable.
isArchived:
type: boolean
description: Indicate if this item is archived.
isNonInventory:
type: boolean
description: Indicate if this item is considered a non-inventory item.
accountingCodeId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Accounting code key identifier. Please reference /api/accounting-codes endpoint.
accountingCode2Id:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Accounting code 2 key identifier. Please reference /api/accounting-codes endpoint.
materialCodeId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Item material code key identifier. Please reference /api/material-codes endpoint.
gradeId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Item grade code key identifier. Please reference /api/grade-codes endpoint.
shapeId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Item shape code key identifier. Please reference /api/shape-codes endpoint.
gaugeId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Item gauge code key identifier. Please reference /api/gauge-codes endpoint.
categoryId:
type:
- string
- 'null'
description: Item category code key identifier. Please reference /api/item-categories endpoint.
width:
minimum: 0
type:
- number
- 'null'
description: Item width
format: double
height:
minimum: 0
type:
- number
- 'null'
description: Item height
format: double
length:
minimum: 0
type:
- number
- 'null'
description: Item length
format: double
weight:
minimum: 0
type:
- number
- 'null'
description: Item weight
format: double
materialWeight:
minimum: 0
type:
- number
- 'null'
description: The weight of material item (calculated)
format: double
minimumStockOnHand:
minimum: 0
type:
- number
- 'null'
description: Item minimum stock on hand.
format: double
minimumProductionQuantity:
minimum: 0
type:
- number
- 'null'
description: Item minimum production quantity for a manufacturing run.
format: double
customFields:
type:
- object
- 'null'
additionalProperties: {}
description: Custom fields that have been defined on this entity.
tags:
type: array
items:
$ref: '#/components/schemas/TagDto'
description: Item tags.
internalNotes:
maxLength: 2000
minLength: 1
type:
- string
- 'null'
description: Internal item notes.
salesUnitOfMeasureConversions:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonUnitOfMeasureConversionDto'
description: Sales unit of measurements
externalReferences:
type:
- object
- 'null'
additionalProperties:
$ref: '#/components/schemas/CommonExternalReferenceDto'
description: External references associated with this entity.
isTaxable:
type:
- boolean
- 'null'
description: Whether this item is taxable
buildToOrder:
type:
- boolean
- 'null'
description: Whether or not this item is build to order (jobs are made from sales orders, not overall demand)
buildToStock:
type:
- boolean
- 'null'
description: Whether or not this item is build to stock (jobs are created from overall demand, not sales orders)
isSingleUseItem:
type:
- boolean
- 'null'
description: Indicate if this item is intended for single use.
isLotTracked:
type:
- boolean
- 'null'
description: Indicate if this item is lot-tracked.
shipping:
$ref: '#/components/schemas/ItemShippingDto'
createdUtc:
type: string
description: The date the item was created
format: date-time
modifiedUtc:
type: string
description: The date the item was last modified
format: date-time
customerTiers:
type: array
items:
$ref: '#/components/schemas/ItemCustomerTierDto'
description: Customer tiers associated with this item.
materialDetails:
$ref: '#/components/schemas/ItemMaterialDetailsDto'
accountingDetails:
$ref: '#/components/schemas/CommonAccountingDetailsDto'
materialVendorDetails:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ItemMaterialVendorDto'
description: Includes vendor (purchasing) details for this item. This is specific to material-based items.
vendorDetails:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ItemVendorDto'
description: Includes vendor (purchasing) details for this item.
customerDetails:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ItemCustomerDto'
description: Includes customer (selling) details for this item.
qualityPlanStatus:
$ref: '#/components/schemas/ItemsAndInventoryDataQualityPlanStatus'
additionalProperties: false
description: An item
ItemNumberFilter:
required:
- casingOption
- mode
- query
type: object
properties:
query:
maxLength: 200
minLength: 1
type: string
description: The filter string to match against.
mode:
$ref: '#/components/schemas/ItemRequestFilterMode'
casingOption:
$ref: '#/components/schemas/CommonEnumCasingOption'
revision:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: Optional revision to match against. Revision is always tested for exact equality
additionalProperties: false
description: Filter used to limit results by item number
CommonEnumTagTypeEnum:
enum:
- item
- accountingCode
- itemCategory
- itemShape
- itemMaterial
- itemGrade
- itemGauge
- itemShippingContainer
- itemClass
- breakReasonCode
- refundReasonCode
- vendorOrderIssueCode
- chartOfAccounts
type: string
description: What the tag is used for (can be many).
ItemRequestFilterMode:
enum:
- equal
- startsWith
- contains
type: string
description: How item numbers are matched against the search string
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
CustomerTierDto:
required:
- id
- name
type: object
properties:
id:
maxLength: 24
minLength: 24
type: string
description: Unique id associated to this entity.
name:
maxLength: 200
minLength: 1
type: string
description: Identifying name. Must be unique.
description:
maxLength: 2000
minLength: 0
type:
- string
- 'null'
description: Description
additionalProperties: false
description: Customer tier definition.
JsonPatchDocument:
type: array
items:
$ref: '#/components/schemas/JsonPatchOperation'
description: Array of operations to perform
InventoryEventSecondaryType:
enum:
- pick
- receive
- override
- revert
- deposit
- create
- consume
- ship
- sold
- transferOut
- transferIn
- found
- expired
- damaged
- lost
- returnVendor
- returnStock
- receivedNoPo
- returnIncrease
- returnDecrease
- otherIncrease
- otherDecrease
- scrap
- waste
- transferredFromSalesOrder
- overrideItemValue
- transferFromLot
- transferToLot
- stockAdjustmentIncrease
- stockAdjustmentDecrease
- stockTake
type: string
description: Secondary, verbose description for an event.
CommonEnumStyleEnum:
enum:
- primary
- secondary
- success
- danger
- warning
- info
- light
- dark
- connected
type: string
description: Style enum (for tags).
ItemMaterialVendorDto:
required:
- id
- vendorId
type: object
properties:
id:
maxLength: 36
minLength: 36
type: string
description: Id
vendorId:
maxLength: 24
minLength: 24
type: string
description: Vendor id associated to this entity. Please reference /api/vendors endpoint.
vendorItemNumber:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: The item number for this vendor.
vendorItemName:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: The item name for this vendor.
notes:
maxLength: 2000
minLength: 1
type:
- string
- 'null'
description: Notes to the vendor.
additionalProperties: false
description: Material vendor with additional context for an item.
ItemRevisionDto:
type: object
properties:
isLatestRevision:
type: boolean
description: Indicate if this is the latest revision of an item.
revision:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: Revision name.
additionalProperties: false
description: Item revision information.
TagDto:
required:
- id
- name
- style
- types
type: object
properties:
id:
maxLength: 24
minLength: 24
type: string
description: Unique Id associated to the referenced object
name:
maxLength: 200
minLength: 1
type: string
description: Descriptive name associated to the object
style:
$ref: '#/components/schemas/CommonEnumStyleEnum'
description:
maxLength: 200
minLength: 1
type:
- string
- 'null'
description: Descriptive name associated to the object
types:
type: array
items:
$ref: '#/components/schemas/CommonEnumTagTypeEnum'
description: Represents where/how this tag is used.
deleted:
type:
- boolean
- 'null'
description: Indicate if this tag has been deleted.
additionalProperties: false
description: Represents a tag
CommonPriceBreakDto:
required:
- type
type: object
properties:
quantity:
type:
- integer
- 'null'
description: Indicates at what quantity this price break becomes active.
format: int32
price:
type:
- number
- 'null'
description: The price "per unit" at this price break.
format: double
margin:
type:
- number
- 'null'
description: Margin
format: double
currencyCode:
type:
- string
- 'null'
description: Currency code associated to this price break.
vendorId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Vendor identifier. Please reference /api/vendors endpoint.
customerId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Customer identifier. Please reference /api/customers endpoint.
customerTierId:
maxLength: 24
minLength: 24
type:
- string
- 'null'
description: Customer tier identifier. Please reference /api/customer-tiers endpoint.
unitOfMeasureName:
type:
- string
- 'null'
description: The unit of measurement.
type:
$ref: '#/components/schemas/DomainPriceBreaksPriceBreakTypeEnum'
additionalProperties: false
description: Price break definition
ItemsAndInventoryDataQualityPlanStatus:
enum:
- needsApproval
- approved
type: string
ItemShippingDto:
type: object
properties:
class:
type:
- string
- 'null'
description: The item shipping class
nmfc:
type:
- string
- 'null'
description: The National Motor Freight Classification
isHazmat:
type: boolean
description: Whether the item is hazardous to ship
unitWeight:
type:
- number
- 'null'
description: The unit weight in lbs.
format: double
tariffCode:
type:
- string
- 'null'
description: The item tariff code
countryOfOrigin:
type:
- string
- 'null'
description: The country of origin
additionalProperties: false
description: Item Shipping Properties
ItemCanMakeDto:
type: object
properties:
canMakeFromOnHand:
type:
- number
- 'null'
description: 'The quantity that can be made from on-hand inventory of subcomponents of this item.
Null if the planning cache has not yet been computed.'
format: double
canMakeFromAvailable:
type:
- number
- 'null'
description: 'The quantity that can be made from available inventory (on-hand + incoming supply) of subcomponents of this item.
Null if the planning cache has not yet been computed.'
format: double
additionalProperties: false
description: 'Indicates how much of this item can be produced from its subcomponent inventory.
Only applicable to make items.'
ItemRequestFindParametersV2:
type: object
properties:
numbers:
maxItems: 50
type:
- array
- 'null'
items:
$ref: '#/components/schemas/ItemNumberFilter'
description: Filter items based on numbers
customField:
$ref: '#/components/schemas/CommonCustomFieldSearchDto'
customFields:
maxItems: 50
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CommonCustomFieldSearchDto'
description: 'Filter items based on custom fields
Note: these will be OR''d with each other and are not additive in filtering.'
latestRevision:
type: boolean
description: Indicate whether we want the latest revision(s) of the items.
itemIds:
maxItems: 50
type:
- array
- 'null'
items:
type: string
description: Filter to items whose ids are in the list
descriptionFilter:
type:
- string
- 'null'
description: 'Filter items by description.
Use (escaped) double-quotes to filter by exact phrase, e.g., \\"search phrase\\".
Prepend search term with "-" to exclude'
isArchived:
type:
- boolean
- 'null'
description: Include or exclude archived items
includeUsageData:
type: boolean
description: If set to true, data on where the item is being used will be included in the results
includeVendorData:
type: boolean
description: If set to true, vendor details about the item will be included in the results
includeCustomerData:
type: boolean
description: If set to true, customer details about the item will be included in the results
includeCustomerTierData:
type: boolean
description: If set to true, customer tier details about the item will be included in the results
vendorId:
type:
- string
- 'null'
description: If provided, filter to items that are produced by this vendor.
additionalProperties: false
description: Parameters used for searching/finding items.
ItemMaterialDetailsDto:
type: object
properties:
materialWidth:
minimum: 0
type:
- number
- 'null'
description: For Sheets, the Width
format: double
materialLength:
minimum: 0
type:
- number
- 'null'
description: Length. For Sheets, the Height
format: double
materialThickness:
minimum: 0
type:
- number
- 'null'
description: Thickness or Diameter
format: double
form:
$ref
# --- truncated at 32 KB (70 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/fulcrumpro/refs/heads/main/openapi/fulcrumpro-item-api-openapi.yml