Fulcrumpro Operation API
The Operation API from Fulcrumpro — 4 operation(s) for operation.
The Operation API from Fulcrumpro — 4 operation(s) for operation.
openapi: 3.0.4
info:
title: Fulcrum Public Accounting Code Operation API
version: v1
servers:
- url: https://api.fulcrumpro.com
tags:
- name: Operation
paths:
/api/operation:
post:
tags:
- Operation
summary: Create a new operation
operationId: CreateOperation
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/OperationCreateDto'
application/json:
schema:
$ref: '#/components/schemas/OperationCreateDto'
text/json:
schema:
$ref: '#/components/schemas/OperationCreateDto'
application/*+json:
schema:
$ref: '#/components/schemas/OperationCreateDto'
required: true
responses:
'200':
description: Operation 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:
- System-System Data-Manage System Data
/api/operations/{id}:
get:
tags:
- Operation
summary: Get an operation.
operationId: GetOperation
parameters:
- name: id
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
responses:
'200':
description: The operation for the given id
content:
application/json:
schema:
$ref: '#/components/schemas/OperationDto'
application/problem+json:
schema:
$ref: '#/components/schemas/OperationDto'
'404':
description: Operation did not exist
x-c4-required-permissions:
- Scheduling-Schedule-View Schedule
/api/operations/list:
post:
tags:
- Operation
summary: Find operations based on search parameters.
operationId: ListOperation
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/OperationRequestFindParameters'
application/json:
schema:
$ref: '#/components/schemas/OperationRequestFindParameters'
text/json:
schema:
$ref: '#/components/schemas/OperationRequestFindParameters'
application/*+json:
schema:
$ref: '#/components/schemas/OperationRequestFindParameters'
responses:
'200':
description: List of operations matching the filters
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/OperationDto'
application/problem+json:
schema:
type: array
items:
$ref: '#/components/schemas/OperationDto'
x-c4-required-permissions:
- Scheduling-Schedule-View Schedule
/api/operation/{id}:
put:
tags:
- Operation
summary: Update an operation.
operationId: UpdateOperation
parameters:
- name: id
in: path
required: true
schema:
maxLength: 24
minLength: 24
type: string
requestBody:
content:
application/json-patch+json:
schema:
$ref: '#/components/schemas/OperationUpdateDto'
application/json:
schema:
$ref: '#/components/schemas/OperationUpdateDto'
text/json:
schema:
$ref: '#/components/schemas/OperationUpdateDto'
application/*+json:
schema:
$ref: '#/components/schemas/OperationUpdateDto'
required: true
responses:
'200':
description: The updated operation
content:
application/json:
schema:
$ref: '#/components/schemas/OperationDto'
application/problem+json:
schema:
$ref: '#/components/schemas/OperationDto'
'400':
description: Validation issues with input
'404':
description: Operation did not exist
x-c4-mutation: true
x-c4-required-permissions:
- System-System Data-Manage System Data
components:
schemas:
ItemRoutingOperationTimeOption:
enum:
- fixedSeconds
- fixedMinutes
- fixedHours
- fixedDays
- secondsPerUnit
- minutesPerUnit
- hoursPerUnit
- daysPerUnit
- unitsPerHour
type: string
description: The time unit or option used in operation times
ItemRoutingOutsideProcessingCostOption:
enum:
- fixed
- perUnit
type: string
description: The cost option for the outside processing operation
ItemRoutingOutsideProcessingOperationCost:
type: object
properties:
costOption:
$ref: '#/components/schemas/ItemRoutingOutsideProcessingCostOption'
fixedCost:
type: number
description: The fixed total cost for the operation
format: double
nullable: true
perUnitCost:
type: number
description: The cost per unit for the operation
format: double
nullable: true
additionalProperties: false
description: Outside processing operation cost
ItemRoutingOperationTime:
type: object
properties:
time:
type: number
description: Time or units of this operation
format: double
option:
$ref: '#/components/schemas/ItemRoutingOperationTimeOption'
additionalProperties: false
description: Operation time and type
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
OperationCreateDto:
required:
- description
- name
type: object
properties:
name:
maxLength: 200
minLength: 1
type: string
description: The name of operation.
description:
maxLength: 200
minLength: 1
type: string
description: The description of the operation.
isOutsideProcessing:
type: boolean
description: Specifies whether this is an outside processing operation.
setupTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
laborTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
machineTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
machineTimeTrackingEnabled:
type: boolean
description: Specifies whether machine tracking is enabled.
outsideProcessingCost:
$ref: '#/components/schemas/ItemRoutingOutsideProcessingOperationCost'
defaultVendorId:
maxLength: 24
minLength: 24
type: string
description: Default vendor id that will be used for this operation. Please reference /api/vendors endpoint.
nullable: true
vendors:
type: array
items:
type: string
description: Available vendors.
nullable: true
leadDays:
minimum: 0
type: integer
description: Lead days.
format: int32
nullable: true
instructions:
maxLength: 2000
minLength: 1
type: string
description: Instructions.
nullable: true
accountingCodeId:
maxLength: 24
minLength: 24
type: string
description: Accounting code key identifier. Please reference /api/accounting-codes endpoint.
nullable: true
additionalProperties: false
description: Details of operation to be created
OperationRequestFindParameters:
type: object
properties:
name:
maxLength: 200
minLength: 1
type: string
description: Filter operations based on their name.
nullable: true
modifiedBeforeUtc:
type: string
description: Filters operations modified before (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
format: date-time
nullable: true
modifiedAfterUtc:
type: string
description: 'Filters operations modified after (exclusive) this parameter in UTC time. If no time component is passed, midnight UTC will be used.
Useful for polling incrementally instead of re-syncing every operation.'
format: date-time
nullable: true
additionalProperties: false
description: Parameters used for searching/finding operations.
OperationDto:
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: 200
minLength: 1
type: string
description: A verbose description of the location.
nullable: true
setupTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
laborTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
machineTimeTrackingEnabled:
type: boolean
description: Is machine time tracking enabled.
nullable: true
machineTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
isOutsideProcessing:
type: boolean
description: Specifies whether this is an outside processing operation
outsideProcessingCost:
$ref: '#/components/schemas/ItemRoutingOutsideProcessingOperationCost'
unattended:
type: boolean
description: Specifies whether this is operation will be unattended.
defaultVendorId:
maxLength: 24
minLength: 24
type: string
description: Default vendor id that will be used for this operation. Please reference /api/vendors endpoint.
nullable: true
leadDays:
type: integer
description: Lead days.
format: int32
accountingCodeId:
maxLength: 24
minLength: 24
type: string
description: Accounting code key identifier. Please reference /api/accounting-codes endpoint.
nullable: true
workCenters:
type: array
items:
$ref: '#/components/schemas/CommonReferenceDto'
description: The work centers associated with the operation
isNestable:
type: boolean
description: Indicates if this operation is nestable.
instructions:
maxLength: 2000
minLength: 1
type: string
description: Instructions.
nullable: true
additionalProperties: false
description: Operation definition.
CommonEnumSortDirectionEnum:
enum:
- ascending
- descending
type: string
description: Specify sorting direction.
CommonReferenceDto:
type: object
properties:
id:
maxLength: 24
minLength: 24
type: string
description: Unique Id associated to the referenced object
nullable: true
name:
maxLength: 200
minLength: 1
type: string
description: Descriptive name associated to the object
nullable: true
additionalProperties: false
description: Represents a reference to a document in a DB collection
OperationUpdateDto:
required:
- description
- name
type: object
properties:
name:
maxLength: 200
minLength: 1
type: string
description: The name of operation.
description:
maxLength: 200
minLength: 1
type: string
description: The description of the operation.
isOutsideProcessing:
type: boolean
description: Specifies whether this is an outside processing operation.
setupTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
laborTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
machineTime:
$ref: '#/components/schemas/ItemRoutingOperationTime'
machineTimeTrackingEnabled:
type: boolean
description: Specifies whether machine tracking is enabled.
outsideProcessingCost:
$ref: '#/components/schemas/ItemRoutingOutsideProcessingOperationCost'
defaultVendorId:
maxLength: 24
minLength: 24
type: string
description: Default vendor id that will be used for this operation. Please reference /api/vendors endpoint.
nullable: true
vendors:
type: array
items:
type: string
description: Available vendors.
nullable: true
leadDays:
minimum: 0
type: integer
description: Lead days.
format: int32
nullable: true
instructions:
maxLength: 2000
minLength: 1
type: string
description: Instructions.
nullable: true
accountingCodeId:
maxLength: 24
minLength: 24
type: string
description: Accounting code key identifier. Please reference /api/accounting-codes endpoint.
nullable: true
additionalProperties: false
description: 'Details of an operation to be updated. This is a full replacement of the publicly-exposed fields.
Internal-only fields not exposed here (in-process tracking, tolerances, shop rates) are preserved.'
securitySchemes:
bearer:
type: http
description: Your API bearer token generated in System Data > Advanced > Public API Setup
scheme: bearer
bearerFormat: JWT
x-tagGroups:
- name: Accounting Code
tags:
- Accounting Code
- name: Attachment
tags:
- Attachment
- Attachment Certification
- name: Auth
tags:
- Auth
- name: CAPAs
tags:
- CAPAs
- name: Chart Of Accounts
tags:
- Chart Of Accounts
- name: Company Info
tags:
- Company Info
- name: Custom Field
tags:
- Custom Field
- name: Customer
tags:
- Customer
- Customer Address
- Customer Contact
- name: Customer Tier
tags:
- Customer Tier
- name: Department
tags:
- Department
- name: Equipment
tags:
- Equipment
- name: Gauge Code
tags:
- Gauge Code
- name: Grade Code
tags:
- Grade Code
- name: InProcessTrackingFieldType
tags:
- InProcessTrackingFieldType
- name: Inventory
tags:
- Inventory
- name: Inventory Event
tags:
- Inventory Event
- Inventory Event Details
- name: Inventory Lot
tags:
- Inventory Lot
- name: Inventory Transactions
tags:
- Inventory Transactions
- name: Invoice
tags:
- Invoice
- Invoice Deposit Adjustment Line Item
- Invoice Deposit Line Item
- Invoice Discount Line Item
- Invoice Fee Line Item
- Invoice Line Item
- Invoice Note
- Invoice Part Line Item
- Invoice Refund Line Item
- Invoice Shipping Charge Line Item
- Invoice Tax Line Item
- name: Item
tags:
- Item
- Item Custom Fields
- Item Customer
- Item Material Vendor
- Item PriceBreaks
- Item Routing
- Item Vendor
- name: Item Category
tags:
- Item Category
- name: Item Class
tags:
- Item Class
- name: Item Tag
tags:
- Item Tag
- name: Job
tags:
- Job
- Job Custom Fields
- Job Full Routing
- Job Part Line Item Full Routing
- Job Item To Make
- Job Item To Make Operation
- Job Operation
- name: Job Tracking Timers
tags:
- Job Tracking Timers
- name: Location
tags:
- Location
- name: Material
tags:
- Material
- Material Vendor
- name: Material Code
tags:
- Material Code
- name: NCRs
tags:
- NCRs
- name: Note
tags:
- Note
- name: Operation
tags:
- Operation
- name: Payment Term
tags:
- Payment Term
- name: Purchase Order
tags:
- Purchase Order
- Purchase Order Custom Fields
- Purchase Order Discount Line Item
- Purchase Order Fee Line Item
- Purchase Order Line Item
- Purchase Order Outside Processing Line Item
- Purchase Order Part Line Item
- Purchase Order Tax Line Item
- Purchase Order Vendor Credit Line Item
- name: Quote
tags:
- Quote
- Quote Custom Fields
- Quote Discount Line Item
- Quote Fee Line Item
- Quote Part Line Item
- Quote Part Line Item Custom Fields
- Quote Part Line Item Full Routing
- Quote Tax Line Item
- name: Receiving
tags:
- Receiving Receipt
- Receiving Receipt Line Item
- name: Refund Reason Code
tags:
- Refund Reason Code
- name: Reporting
tags:
- Reporting
- name: Sales Order
tags:
- Sales Order
- Sales Order Blanket Line Item
- Sales Order Custom Fields
- Sales Order Discount Line Item
- Sales Order Fee Line Item
- Sales Order Line Item
- Sales Order Part Line Item
- Sales Order Part Line Item Custom Fields
- Sales Order Part Line Item Full Routing
- Sales Order Refund Line Item
- Sales Order Shipping Charge Line Item
- Sales Order Tax Line Item
- name: ScrapReport
tags:
- ScrapReport
- name: Shape Code
tags:
- Shape Code
- name: Shipment Line Items (V3)
tags:
- Shipment Line Items (V3)
- name: Shipment
tags:
- Shipment Custom Fields
- name: Shipments
tags:
- Shipments
- name: Shipping Method
tags:
- Shipping Method
- name: Tag
tags:
- Tag
- name: Tax Rate
tags:
- Tax Rate
- name: Time Clock Timers
tags:
- Time Clock Timers
- name: Timer
tags:
- Timer
- name: User
tags:
- User
- User Status
- name: Vendor
tags:
- Vendor
- Vendor Address
- Vendor Contact
- name: Work Order
tags:
- Work Order
- name: WorkCenter
tags:
- WorkCenter