ReferenceΒΆ

/about/

get

Get information about the service like the current version. Useful for testing the service is 'up'

get

Get service metadata

Schema (application/json)
PropertyTypeDescription
version string

The current version of the service


Example: '"1.4"'
Responses
Status CodeDescription
200

The request was successful

/bureau/

get post

Administer information about a bureau. Most users of the ERP module will want to first register a bureau as most other resources in the system expect to take a bureau as a parameter. A bureau is what customers will see when placing orders - in order to generate an order in the system they must indicate which bureau should fulfill the order

Bureaus require a group URI that ties the bureau to a group in the user system. Members of that group will be able to make changes to the bureau and service requests on the bureau

get

List all of the bureaus in the system for your account.

Schema (application/json)
PropertyTypeDescription
description string

The description of the bureau.


group URL

The URI of the user group that will get access to orders from the bureau.


name string

The name of the bureau.


notifications object

Allows a bureau to receive emails.


Example: ('{"order_summary": "True|False", "order_confirmation": "True|False", ' '"order_scheduled": "True|False", "order_print": "True|False", "order_error": ' '"True|False", "order_shipped": "True|False"}')
order_banner object

Order banner message intended for restricted users only.


Example: '{}'
reply_to string

Reply to email address for a bureau


uri URI

The URI of the bureau.


user string

The URI of the user making the bureau.


Responses
Status CodeDescription
200

The request was successful

400

The requested bureau name already exists.

403

You are not authorized to complete the request.

404

The requested bureau cannot be found.

500

UserServiceCommunicationError: Your request could not be completed because the user service is unavailable

post

Create a new bureau.

Schema (application/json)
PropertyTypeDescription
description string

The description of the bureau.


Default: None
group URL

The URI of the user group that will get access to orders from the bureau.


Required
name string

The name of the bureau.


Required
notifications object

Allows a bureau to receive emails.


Default: None
Example: ('{"order_summary": "True|False", "order_confirmation": "True|False", ' '"order_scheduled": "True|False", "order_print": "True|False", "order_error": ' '"True|False", "order_shipped": "True|False"}')
order_banner object

Order banner message intended for restricted users only.


Default: None
Example: '{}'
reply_to string

Reply to email address for a bureau


Default: None
uri URI

The URI of the bureau.


Default: None
user string

The URI of the user making the bureau.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The requested bureau name already exists.

403

You are not authorized to complete the request.

404

The requested bureau cannot be found.

500

UserServiceCommunicationError: Your request could not be completed because the user service is unavailable

Administer information about a bureau. Most users of the ERP module will want to first register a bureau as most other resources in the system expect to take a bureau as a parameter. A bureau is what customers will see when placing orders - in order to generate an order in the system they must indicate which bureau should fulfill the order

Bureaus require a group URI that ties the bureau to a group in the user system. Members of that group will be able to make changes to the bureau and service requests on the bureau

get

Get a single bureau by UUID.

Schema (application/json)
PropertyTypeDescription
description string

The description of the bureau.


group URL

The URI of the user group that will get access to orders from the bureau.


name string

The name of the bureau.


notifications object

Allows a bureau to receive emails.


Example: ('{"order_summary": "True|False", "order_confirmation": "True|False", ' '"order_scheduled": "True|False", "order_print": "True|False", "order_error": ' '"True|False", "order_shipped": "True|False"}')
order_banner object

Order banner message intended for restricted users only.


Example: '{}'
reply_to string

Reply to email address for a bureau


uri URI

The URI of the bureau.


user string

The URI of the user making the bureau.


Responses
Status CodeDescription
200

The request was successful

400

The requested bureau name already exists.

403

You are not authorized to complete the request.

404

The requested bureau cannot be found.

500

UserServiceCommunicationError: Your request could not be completed because the user service is unavailable

Currency Conversion is an endpoint which works with /material/ and /shipping/. Once an order has a currency specified, we will be able to calculate the material cost and shipping cost for a bureau and currency mentioned in the order.

get

List all of the currency conversion in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the currency-conversion value.


currency string

Currency abbreviation.


Choices
  • AED
  • AFN
  • ALL
  • AMD
  • ANG
  • AOA
  • ARS
  • AUD
  • AWG
  • AZN
  • BAM
  • BBD
  • BDT
  • BGN
  • BHD
  • BIF
  • BMD
  • BND
  • BOB
  • BOV
  • BRL
  • BSD
  • BTN
  • BWP
  • BYR
  • BZD
  • CAD
  • CDF
  • CHE
  • CHF
  • CHW
  • CLF
  • CLP
  • CNY
  • COP
  • COU
  • CRC
  • CUP
  • CVE
  • CYP
  • CZK
  • DJF
  • DKK
  • DOP
  • DZD
  • EEK
  • EGP
  • ERN
  • ETB
  • EUR
  • FJD
  • FKP
  • GBP
  • GEL
  • GHS
  • GIP
  • GMD
  • GNF
  • GTQ
  • GYD
  • HKD
  • HNL
  • HRK
  • HTG
  • HUF
  • IDR
  • ILS
  • INR
  • IQD
  • IRR
  • ISK
  • JMD
  • JOD
  • JPY
  • KES
  • KGS
  • KHR
  • KMF
  • KPW
  • KRW
  • KWD
  • KYD
  • KZT
  • LAK
  • LBP
  • LKR
  • LRD
  • LSL
  • LTL
  • LVL
  • LYD
  • MAD
  • MDL
  • MGA
  • MKD
  • MMK
  • MNT
  • MOP
  • MRO
  • MTL
  • MUR
  • MVR
  • MWK
  • MXN
  • MXV
  • MYR
  • MZN
  • NAD
  • NGN
  • NIO
  • NOK
  • NPR
  • NZD
  • OMR
  • PAB
  • PEN
  • PGK
  • PHP
  • PKR
  • PLN
  • PYG
  • QAR
  • RON
  • RSD
  • RUB
  • RWF
  • SAR
  • SBD
  • SCR
  • SDG
  • SEK
  • SGD
  • SHP
  • SLL
  • SOS
  • SRD
  • STD
  • SVC
  • SYP
  • SZL
  • THB
  • TJS
  • TMM
  • TND
  • TOP
  • TRY
  • TTD
  • TWD
  • TZS
  • UAH
  • UGX
  • USD
  • USN
  • USS
  • UYI
  • UYU
  • UZS
  • VEF
  • VND
  • VUV
  • WST
  • XAF
  • XAG
  • XAU
  • XBA
  • XBB
  • XBC
  • XBD
  • XCD
  • XDR
  • XFO
  • XFU
  • XOF
  • XPD
  • XPF
  • XPT
  • XTS
  • XXX
  • YER
  • ZAR
  • ZMK
  • ZWD
Example: '"AED|AFN|ALL|AMD|ANG|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYR|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CYP|CZK|DJF|DKK|DOP|DZD|EEK|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LTL|LVL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRO|MTL|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLL|SOS|SRD|STD|SVC|SYP|SZL|THB|TJS|TMM|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|USS|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XDR|XFO|XFU|XOF|XPD|XPF|XPT|XTS|XXX|YER|ZAR|ZMK|ZWD"'
uri URI

The URI for currency conversion.


value float

The currency conversion value for a particular currency and bureau.


Responses
Status CodeDescription
200

The request was successful

400

A currency-conversion with this bureau and currency already exists.

403

You are not authorized to complete the request.

404

The requested currency-conversion cannot be found.

post

Create a new currency conversion.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the currency-conversion value.


Required
currency string

Currency abbreviation.


Required
Choices
  • AED
  • AFN
  • ALL
  • AMD
  • ANG
  • AOA
  • ARS
  • AUD
  • AWG
  • AZN
  • BAM
  • BBD
  • BDT
  • BGN
  • BHD
  • BIF
  • BMD
  • BND
  • BOB
  • BOV
  • BRL
  • BSD
  • BTN
  • BWP
  • BYR
  • BZD
  • CAD
  • CDF
  • CHE
  • CHF
  • CHW
  • CLF
  • CLP
  • CNY
  • COP
  • COU
  • CRC
  • CUP
  • CVE
  • CYP
  • CZK
  • DJF
  • DKK
  • DOP
  • DZD
  • EEK
  • EGP
  • ERN
  • ETB
  • EUR
  • FJD
  • FKP
  • GBP
  • GEL
  • GHS
  • GIP
  • GMD
  • GNF
  • GTQ
  • GYD
  • HKD
  • HNL
  • HRK
  • HTG
  • HUF
  • IDR
  • ILS
  • INR
  • IQD
  • IRR
  • ISK
  • JMD
  • JOD
  • JPY
  • KES
  • KGS
  • KHR
  • KMF
  • KPW
  • KRW
  • KWD
  • KYD
  • KZT
  • LAK
  • LBP
  • LKR
  • LRD
  • LSL
  • LTL
  • LVL
  • LYD
  • MAD
  • MDL
  • MGA
  • MKD
  • MMK
  • MNT
  • MOP
  • MRO
  • MTL
  • MUR
  • MVR
  • MWK
  • MXN
  • MXV
  • MYR
  • MZN
  • NAD
  • NGN
  • NIO
  • NOK
  • NPR
  • NZD
  • OMR
  • PAB
  • PEN
  • PGK
  • PHP
  • PKR
  • PLN
  • PYG
  • QAR
  • RON
  • RSD
  • RUB
  • RWF
  • SAR
  • SBD
  • SCR
  • SDG
  • SEK
  • SGD
  • SHP
  • SLL
  • SOS
  • SRD
  • STD
  • SVC
  • SYP
  • SZL
  • THB
  • TJS
  • TMM
  • TND
  • TOP
  • TRY
  • TTD
  • TWD
  • TZS
  • UAH
  • UGX
  • USD
  • USN
  • USS
  • UYI
  • UYU
  • UZS
  • VEF
  • VND
  • VUV
  • WST
  • XAF
  • XAG
  • XAU
  • XBA
  • XBB
  • XBC
  • XBD
  • XCD
  • XDR
  • XFO
  • XFU
  • XOF
  • XPD
  • XPF
  • XPT
  • XTS
  • XXX
  • YER
  • ZAR
  • ZMK
  • ZWD
Example: '"AED|AFN|ALL|AMD|ANG|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYR|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CYP|CZK|DJF|DKK|DOP|DZD|EEK|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LTL|LVL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRO|MTL|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLL|SOS|SRD|STD|SVC|SYP|SZL|THB|TJS|TMM|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|USS|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XDR|XFO|XFU|XOF|XPD|XPF|XPT|XTS|XXX|YER|ZAR|ZMK|ZWD"'
uri URI

The URI for currency conversion.


Default: None
value float

The currency conversion value for a particular currency and bureau.


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

A currency-conversion with this bureau and currency already exists.

403

You are not authorized to complete the request.

404

The requested currency-conversion cannot be found.

Currency Conversion is an endpoint which works with /material/ and /shipping/. Once an order has a currency specified, we will be able to calculate the material cost and shipping cost for a bureau and currency mentioned in the order.

get

Get an individual currency conversion resource by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the currency-conversion value.


currency string

Currency abbreviation.


Choices
  • AED
  • AFN
  • ALL
  • AMD
  • ANG
  • AOA
  • ARS
  • AUD
  • AWG
  • AZN
  • BAM
  • BBD
  • BDT
  • BGN
  • BHD
  • BIF
  • BMD
  • BND
  • BOB
  • BOV
  • BRL
  • BSD
  • BTN
  • BWP
  • BYR
  • BZD
  • CAD
  • CDF
  • CHE
  • CHF
  • CHW
  • CLF
  • CLP
  • CNY
  • COP
  • COU
  • CRC
  • CUP
  • CVE
  • CYP
  • CZK
  • DJF
  • DKK
  • DOP
  • DZD
  • EEK
  • EGP
  • ERN
  • ETB
  • EUR
  • FJD
  • FKP
  • GBP
  • GEL
  • GHS
  • GIP
  • GMD
  • GNF
  • GTQ
  • GYD
  • HKD
  • HNL
  • HRK
  • HTG
  • HUF
  • IDR
  • ILS
  • INR
  • IQD
  • IRR
  • ISK
  • JMD
  • JOD
  • JPY
  • KES
  • KGS
  • KHR
  • KMF
  • KPW
  • KRW
  • KWD
  • KYD
  • KZT
  • LAK
  • LBP
  • LKR
  • LRD
  • LSL
  • LTL
  • LVL
  • LYD
  • MAD
  • MDL
  • MGA
  • MKD
  • MMK
  • MNT
  • MOP
  • MRO
  • MTL
  • MUR
  • MVR
  • MWK
  • MXN
  • MXV
  • MYR
  • MZN
  • NAD
  • NGN
  • NIO
  • NOK
  • NPR
  • NZD
  • OMR
  • PAB
  • PEN
  • PGK
  • PHP
  • PKR
  • PLN
  • PYG
  • QAR
  • RON
  • RSD
  • RUB
  • RWF
  • SAR
  • SBD
  • SCR
  • SDG
  • SEK
  • SGD
  • SHP
  • SLL
  • SOS
  • SRD
  • STD
  • SVC
  • SYP
  • SZL
  • THB
  • TJS
  • TMM
  • TND
  • TOP
  • TRY
  • TTD
  • TWD
  • TZS
  • UAH
  • UGX
  • USD
  • USN
  • USS
  • UYI
  • UYU
  • UZS
  • VEF
  • VND
  • VUV
  • WST
  • XAF
  • XAG
  • XAU
  • XBA
  • XBB
  • XBC
  • XBD
  • XCD
  • XDR
  • XFO
  • XFU
  • XOF
  • XPD
  • XPF
  • XPT
  • XTS
  • XXX
  • YER
  • ZAR
  • ZMK
  • ZWD
Example: '"AED|AFN|ALL|AMD|ANG|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYR|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CYP|CZK|DJF|DKK|DOP|DZD|EEK|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LTL|LVL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRO|MTL|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLL|SOS|SRD|STD|SVC|SYP|SZL|THB|TJS|TMM|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|USS|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XDR|XFO|XFU|XOF|XPD|XPF|XPT|XTS|XXX|YER|ZAR|ZMK|ZWD"'
uri URI

The URI for currency conversion.


value float

The currency conversion value for a particular currency and bureau.


Responses
Status CodeDescription
200

The request was successful

400

A currency-conversion with this bureau and currency already exists.

403

You are not authorized to complete the request.

404

The requested currency-conversion cannot be found.

/downtime/

get post

Downtime resource will help block a perticular machine for a period of time. The machine can be any of of printer, post processor or shipping. Once the machine is blocked, no prints can be executed in that period of time for the machine. This helps block a machine for any purpose like maintenance or similar.

get

Get all downtime resources for your account.

Schema (application/json)
PropertyTypeDescription
description string

The description of the downtime.


Example: '"downtime for Maintenance"'
finish iso-8601 datetime

The estimated finish date of Machine downtime.


post_processor URI

The URI of the post-processor for which we have to downtime.


printer URI

The URI of the printer for which we have to downtime.


shipping URI

The URI of the shipping for which we have to downtime.


start iso-8601 datetime

The estimated start date of Machine downtime.


uri URI

The URI for downtime resource.


user string

The URI of the user creating downtime.


Responses
Status CodeDescription
200

The request was successful

400

The requested downtime name already exists.

404

The requested downtime cannot be found.

post

Create a new downtime resource.

Schema (application/json)
PropertyTypeDescription
description string

The description of the downtime.


Required
Example: '"downtime for Maintenance"'
finish iso-8601 datetime

The estimated finish date of Machine downtime.


Required
post_processor URI

The URI of the post-processor for which we have to downtime.


Default: None
printer URI

The URI of the printer for which we have to downtime.


Default: None
shipping URI

The URI of the shipping for which we have to downtime.


Default: None
start iso-8601 datetime

The estimated start date of Machine downtime.


Required
uri URI

The URI for downtime resource.


Default: None
user string

The URI of the user creating downtime.


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The requested downtime name already exists.

404

The requested downtime cannot be found.

Downtime resource will help block a perticular machine for a period of time. The machine can be any of of printer, post processor or shipping. Once the machine is blocked, no prints can be executed in that period of time for the machine. This helps block a machine for any purpose like maintenance or similar.

get

Get an individual downtime resource by UUID.

Schema (application/json)
PropertyTypeDescription
description string

The description of the downtime.


Example: '"downtime for Maintenance"'
finish iso-8601 datetime

The estimated finish date of Machine downtime.


post_processor URI

The URI of the post-processor for which we have to downtime.


printer URI

The URI of the printer for which we have to downtime.


shipping URI

The URI of the shipping for which we have to downtime.


start iso-8601 datetime

The estimated start date of Machine downtime.


uri URI

The URI for downtime resource.


user string

The URI of the user creating downtime.


Responses
Status CodeDescription
200

The request was successful

400

The requested downtime name already exists.

404

The requested downtime cannot be found.

/event/

get

The Event API contains information about events that have occurred in the system. This may include orders being processed, prints being created printers that need servicing, etc. Events are recorded for nearly every change in the system and do not expire

get

List all of the events in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


created iso-8601 datetime

The date the event was created.


current_value anything

The new value after the change has completed


key string none available
previous_value anything

The old value before the change took place


reference URL

The URI of the resourcce that changed


uri URI

The URI of the event.


user string

The user that made the change


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested event cannot be found.

The Event API contains information about events that have occurred in the system. This may include orders being processed, prints being created printers that need servicing, etc. Events are recorded for nearly every change in the system and do not expire

get

Get a single event by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


created iso-8601 datetime

The date the event was created.


current_value anything

The new value after the change has completed


key string none available
previous_value anything

The old value before the change took place


reference URL

The URI of the resourcce that changed


uri URI

The URI of the event.


user string

The user that made the change


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested event cannot be found.

/feature/

get post

The feature API is for Authentise to control access to features. Ordinary users can only view features, not change them either through POST or PUT or DELETE

get

List all of the features in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau affected by the feature setting.


description string

The description of the feature.


enabled boolean

Whether or not the feature is enabled


name string

The name of the feature.


Choices
  • ip-sensitivity
  • itar
  • order-customer-po
  • order-quote-number
  • order-sales-representative
  • order-order-owner
  • order-documents
  • eos-order-fields
  • fastradius-order-fields
  • netfabb
  • traveler
  • quoting
Example: '"ip-sensitivity|itar|order-customer-po|order-quote-number|order-sales-representative|order-order-owner|order-documents|eos-order-fields|fastradius-order-fields|netfabb|traveler|quoting"'
uri URI

The URI of the feature.


Responses
Status CodeDescription
200

The request was successful

400

The requested feature name already exists.

403

You are not authorized to complete the request.

404

The requested feature cannot be found.

post

Create a new feature.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau affected by the feature setting.


Default: None
description string

The description of the feature.


Default: None
enabled boolean

Whether or not the feature is enabled


Required
name string

The name of the feature.


Required
Choices
  • ip-sensitivity
  • itar
  • order-customer-po
  • order-quote-number
  • order-sales-representative
  • order-order-owner
  • order-documents
  • eos-order-fields
  • fastradius-order-fields
  • netfabb
  • traveler
  • quoting
Example: '"ip-sensitivity|itar|order-customer-po|order-quote-number|order-sales-representative|order-order-owner|order-documents|eos-order-fields|fastradius-order-fields|netfabb|traveler|quoting"'
uri URI

The URI of the feature.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The requested feature name already exists.

403

You are not authorized to complete the request.

404

The requested feature cannot be found.

The feature API is for Authentise to control access to features. Ordinary users can only view features, not change them either through POST or PUT or DELETE

get

Get a single feature by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau affected by the feature setting.


description string

The description of the feature.


enabled boolean

Whether or not the feature is enabled


name string

The name of the feature.


Choices
  • ip-sensitivity
  • itar
  • order-customer-po
  • order-quote-number
  • order-sales-representative
  • order-order-owner
  • order-documents
  • eos-order-fields
  • fastradius-order-fields
  • netfabb
  • traveler
  • quoting
Example: '"ip-sensitivity|itar|order-customer-po|order-quote-number|order-sales-representative|order-order-owner|order-documents|eos-order-fields|fastradius-order-fields|netfabb|traveler|quoting"'
uri URI

The URI of the feature.


Responses
Status CodeDescription
200

The request was successful

400

The requested feature name already exists.

403

You are not authorized to complete the request.

404

The requested feature cannot be found.

The line item report api is for exporting line item information of a given time range.

get

List all of the line item reports in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau a report belongs to.


content URL

the download link for the document


created iso-8601 datetime

The date the report was created.


end iso-8601 datetime

the end datetime within which line items will be reported on.


start iso-8601 datetime

the start datetime within which line items will be reported on.


status string

Status of a report.


Choices
  • pending
  • processing
  • complete
  • error
Example: '"pending|processing|complete|error"'
uri URI

The URI of the report.


user string

The URI of the user making the report.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested report cannot be found.

post

Create a new line item report.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau a report belongs to.


Default: None
content URL

the download link for the document


Default: None
created iso-8601 datetime

The date the report was created.


Default: None
end iso-8601 datetime

the end datetime within which line items will be reported on.


Required
start iso-8601 datetime

the start datetime within which line items will be reported on.


Required
status string

Status of a report.


Default: None
Choices
  • pending
  • processing
  • complete
  • error
Example: '"pending|processing|complete|error"'
uri URI

The URI of the report.


Default: None
user string

The URI of the user making the report.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

403

You are not authorized to complete the request.

404

The requested report cannot be found.

The line item report api is for exporting line item information of a given time range.

get

Get a single line item report by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau a report belongs to.


content URL

the download link for the document


created iso-8601 datetime

The date the report was created.


end iso-8601 datetime

the end datetime within which line items will be reported on.


start iso-8601 datetime

the start datetime within which line items will be reported on.


status string

Status of a report.


Choices
  • pending
  • processing
  • complete
  • error
Example: '"pending|processing|complete|error"'
uri URI

The URI of the report.


user string

The URI of the user making the report.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested report cannot be found.

/line-item/

get post

A line-item is a request for a single model to be printed one or more times in a single material. Line-items are used to build up orders and include multiple requests in a single order for things to be built. Line-items are also used to track the status of parts of an order as well as estimate parts of an order.

In general a client will specify the bureau, model, materials, quantity and template to be used for the line-item. Other fields are populated by the system as calculations are performed and the order moves through the system towards completion

get

List all of the line_item in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of bureau the line-item belongs to.


created iso-8601 datetime

The date the line-item was created.


error string none available
estimates object none available
Example: '{"materials": {}}'
itar boolean

flag to set to conform with ITAR


layer_thickness float

The layer thickness of the print in mm. Must be < 1.


materials object none available
Example: '{}'
model URL

The URI of the line-item's model.


notes string

Notes for a line item.


order URI

The URI of order the line-item belongs to.


quantity integer

The number of objects to produce.


status string

Status of an line-item.


Choices
  • calculating_estimates
  • cancelled
  • confirmed
  • complete
  • error
  • new
  • pending
  • post-processing
  • printed
  • printing
  • shipping
Example: '"calculating_estimates|cancelled|confirmed|complete|error|new|pending|post-processing|printed|printing|shipping"'
template URI

The URI of template.


third_party_provider URI

The URI of third party.


uri URI

The URI of the line-item.


Responses
Status CodeDescription
200

The request was successful

400

The quantity value is too low or too high

The model does not seem printable

Either supply a model uri, or set itar to True. You cannot do both, and you cannot do neither.

An line-item with active prints cannot be deleted

Provided status transformation is not allowed

Template is required for the line-item.

404

The requested line-item cannot be found.

post

Create a new line_item.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of bureau the line-item belongs to.


Required
created iso-8601 datetime

The date the line-item was created.


Default: None
error string none available
Default: None
estimates object none available
Default: None
Example: '{"materials": {}}'
itar boolean

flag to set to conform with ITAR


Default: False
layer_thickness float

The layer thickness of the print in mm. Must be < 1.


Default: 0.2
materials object none available
Required
Example: '{}'
model URL

The URI of the line-item's model.


Default: None
notes string

Notes for a line item.


Default: None
order URI

The URI of order the line-item belongs to.


Default: None
quantity integer

The number of objects to produce.


Required
status string

Status of an line-item.


Default: None
Choices
  • calculating_estimates
  • cancelled
  • confirmed
  • complete
  • error
  • new
  • pending
  • post-processing
  • printed
  • printing
  • shipping
Example: '"calculating_estimates|cancelled|confirmed|complete|error|new|pending|post-processing|printed|printing|shipping"'
template URI

The URI of template.


Default: None
third_party_provider URI

The URI of third party.


Default: None
uri URI

The URI of the line-item.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The quantity value is too low or too high

The model does not seem printable

Either supply a model uri, or set itar to True. You cannot do both, and you cannot do neither.

An line-item with active prints cannot be deleted

Provided status transformation is not allowed

Template is required for the line-item.

404

The requested line-item cannot be found.

This is an internal API that is used by the estimation and slicing system to report back the status of the estimation process

post
No description provided
Schema (application/json)
PropertyTypeDescription
error string none available
Default: None
slice_time_ms integer none available
Default: 0
slicing_uri URL none available
Required
status string none available
Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested line item cannot be found.

A line-item is a request for a single model to be printed one or more times in a single material. Line-items are used to build up orders and include multiple requests in a single order for things to be built. Line-items are also used to track the status of parts of an order as well as estimate parts of an order.

In general a client will specify the bureau, model, materials, quantity and template to be used for the line-item. Other fields are populated by the system as calculations are performed and the order moves through the system towards completion

get

Get a single line_item by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of bureau the line-item belongs to.


created iso-8601 datetime

The date the line-item was created.


error string none available
estimates object none available
Example: '{"materials": {}}'
itar boolean

flag to set to conform with ITAR


layer_thickness float

The layer thickness of the print in mm. Must be < 1.


materials object none available
Example: '{}'
model URL

The URI of the line-item's model.


notes string

Notes for a line item.


order URI

The URI of order the line-item belongs to.


quantity integer

The number of objects to produce.


status string

Status of an line-item.


Choices
  • calculating_estimates
  • cancelled
  • confirmed
  • complete
  • error
  • new
  • pending
  • post-processing
  • printed
  • printing
  • shipping
Example: '"calculating_estimates|cancelled|confirmed|complete|error|new|pending|post-processing|printed|printing|shipping"'
template URI

The URI of template.


third_party_provider URI

The URI of third party.


uri URI

The URI of the line-item.


Responses
Status CodeDescription
200

The request was successful

400

The quantity value is too low or too high

The model does not seem printable

Either supply a model uri, or set itar to True. You cannot do both, and you cannot do neither.

An line-item with active prints cannot be deleted

Provided status transformation is not allowed

Template is required for the line-item.

404

The requested line-item cannot be found.

/location/

get post

Locations are normally set up shortly after a bureau. This is because several other resources need to have a location defined in order to create them such as printers. The location identifies an office where a bureau might maintain stock or process orders from customers or ship out finished goods.

get

List all of the locations in the system for your account.

Schema (application/json)
PropertyTypeDescription
address string

The address of the location.


bureau URI

The URI of the bureau.


contact URL

The URI of the user that will be the contact of the location.


group string

The URI of the user group.


name string

The name of the location.


phone string

The phone of the location.


uri URI

The URI of the location.


Responses
Status CodeDescription
200

The request was successful

400

You cannot change a location's group.

The requested location name already exists.

The requested location name already exists.

Could not delete location's group.

403

You are not authorized to complete the request.

404

The requested location cannot be found.

post

Create a new location.

Schema (application/json)
PropertyTypeDescription
address string

The address of the location.


Required
bureau URI

The URI of the bureau.


Required
contact URL

The URI of the user that will be the contact of the location.


Default: None
group string

The URI of the user group.


Default: None
name string

The name of the location.


Required
phone string

The phone of the location.


Default: None
uri URI

The URI of the location.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

You cannot change a location's group.

The requested location name already exists.

The requested location name already exists.

Could not delete location's group.

403

You are not authorized to complete the request.

404

The requested location cannot be found.

Locations are normally set up shortly after a bureau. This is because several other resources need to have a location defined in order to create them such as printers. The location identifies an office where a bureau might maintain stock or process orders from customers or ship out finished goods.

get

Get a single location by UUID.

Schema (application/json)
PropertyTypeDescription
address string

The address of the location.


bureau URI

The URI of the bureau.


contact URL

The URI of the user that will be the contact of the location.


group string

The URI of the user group.


name string

The name of the location.


phone string

The phone of the location.


uri URI

The URI of the location.


Responses
Status CodeDescription
200

The request was successful

400

You cannot change a location's group.

The requested location name already exists.

The requested location name already exists.

Could not delete location's group.

403

You are not authorized to complete the request.

404

The requested location cannot be found.

/manufacturer/

get post

A manufacturer represents an organization that creates a printer. This allows the system to keep track of what organization makes the printer to group printers with similar capabilities, support contracts and sales contacts together for convenience

get

List all of the manufacturers in the system for your account.

Schema (application/json)
PropertyTypeDescription
address string

The address of the manufacturer.


bureau URI

The URI of the bureau for the manufacturer.


contact object

The user that will be the contact of the manufacturer.


Example: '{}'
name string

The name of the manufacturer.


notes string

Notes about manufacturer.


support object

The user that will be the support contact of the manufacturer.


Example: '{}'
uri URI

The URI of the manufacturer.


Responses
Status CodeDescription
200

The request was successful

400

The requested manufacturer name already exists.

403

You are not authorized to complete the request.

404

The requested manufacturer cannot be found.

post

Create a new manufacturer.

Schema (application/json)
PropertyTypeDescription
address string

The address of the manufacturer.


Required
bureau URI

The URI of the bureau for the manufacturer.


Required
contact object

The user that will be the contact of the manufacturer.


Required
Example: '{}'
name string

The name of the manufacturer.


Required
notes string

Notes about manufacturer.


Required
support object

The user that will be the support contact of the manufacturer.


Required
Example: '{}'
uri URI

The URI of the manufacturer.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The requested manufacturer name already exists.

403

You are not authorized to complete the request.

404

The requested manufacturer cannot be found.

A manufacturer represents an organization that creates a printer. This allows the system to keep track of what organization makes the printer to group printers with similar capabilities, support contracts and sales contacts together for convenience

get

Get a single manufacturer by UUID.

Schema (application/json)
PropertyTypeDescription
address string

The address of the manufacturer.


bureau URI

The URI of the bureau for the manufacturer.


contact object

The user that will be the contact of the manufacturer.


Example: '{}'
name string

The name of the manufacturer.


notes string

Notes about manufacturer.


support object

The user that will be the support contact of the manufacturer.


Example: '{}'
uri URI

The URI of the manufacturer.


Responses
Status CodeDescription
200

The request was successful

400

The requested manufacturer name already exists.

403

You are not authorized to complete the request.

404

The requested manufacturer cannot be found.

/material/

get post

A material resource represents some kind of product that can be used to create digitally manufactured goods. This includes thermoplastics, metal powders, foundry sand, etc. Any material that may be used to produce parts. The material resource is then used to identify capabilities that printers have as well as allow users to define what material they would like their finished products to be made from.

Material can also be used in tracking stock usage and supply

get

List all of the materials in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the material's bureau.


color string

HEX Color of the material. Example: (#000000)


cost float

The cost of the material per cc.


description string

Description of the material.


manufacturer URI

The URI of the material's manufacturer.


name string

Name of the material.


post_processing_seconds integer

Post processing of the material in seconds.


third_party_fulfillment boolean

Post processing of the material in seconds.


Choices
  • True
  • False
Example: '"True|False"'
thumbnail object none available
Example: '{}'
type string

Type of the material.


Choices
  • support
  • base
Example: '"support|base"'
uri URI

The URI of the material.


Responses
Status CodeDescription
200

The request was successful

400

You cannot delete this material because there are stocks or orders associated with it. Delete all orders and stocks using this material first.

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The requested material name already exists.

403

You are not authorized to complete the request.

404

The requested material cannot be found.

post

Create a new material.

After a new material is created a X-Upload-Location header will be returned. Using this allows us to upload a thumbnail for the material that was created. Use the X-Upload-Location header to PUT file contents to that location.

Example:

curl -X PUT             -H 'Content-Type: image/png'             --data-binary '@PATH-TO-YOUR-PNG'             "<HEADER X-UPLOAD-LOCATION>"
Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the material's bureau.


Required
color string

HEX Color of the material. Example: (#000000)


Required
cost float

The cost of the material per cc.


Required
description string

Description of the material.


Required
manufacturer URI

The URI of the material's manufacturer.


Required
name string

Name of the material.


Required
post_processing_seconds integer

Post processing of the material in seconds.


Required
third_party_fulfillment boolean

Post processing of the material in seconds.


Required
Choices
  • True
  • False
Example: '"True|False"'
thumbnail object none available
Default: None
Example: '{}'
type string

Type of the material.


Required
Choices
  • support
  • base
Example: '"support|base"'
uri URI

The URI of the material.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

You cannot delete this material because there are stocks or orders associated with it. Delete all orders and stocks using this material first.

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The requested material name already exists.

403

You are not authorized to complete the request.

404

The requested material cannot be found.

A material resource represents some kind of product that can be used to create digitally manufactured goods. This includes thermoplastics, metal powders, foundry sand, etc. Any material that may be used to produce parts. The material resource is then used to identify capabilities that printers have as well as allow users to define what material they would like their finished products to be made from.

Material can also be used in tracking stock usage and supply

get

Get a single material by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the material's bureau.


color string

HEX Color of the material. Example: (#000000)


cost float

The cost of the material per cc.


description string

Description of the material.


manufacturer URI

The URI of the material's manufacturer.


name string

Name of the material.


post_processing_seconds integer

Post processing of the material in seconds.


third_party_fulfillment boolean

Post processing of the material in seconds.


Choices
  • True
  • False
Example: '"True|False"'
thumbnail object none available
Example: '{}'
type string

Type of the material.


Choices
  • support
  • base
Example: '"support|base"'
uri URI

The URI of the material.


Responses
Status CodeDescription
200

The request was successful

400

You cannot delete this material because there are stocks or orders associated with it. Delete all orders and stocks using this material first.

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The requested material name already exists.

403

You are not authorized to complete the request.

404

The requested material cannot be found.

A membership bureau record represents that a user belongs to the specific bureau in the record. This endpoint is used to make a user belong to a bureau group. When a user belongs to a specific bureau, he has the rights to view all the resources that fall under that bureau. Deleting this resource will remove the user from the bureau.

get

List all of the bureau memberships in the system.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


uri URI

The URI of the bureau.


user string

User associated to the membership.


Responses
Status CodeDescription
200

The request was successful

404

The requested membership is not found.

post

Create a new bureau membership.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


Required
uri URI

The URI of the bureau.


Default: None
user string

User associated to the membership.


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested membership is not found.

A membership bureau record represents that a user belongs to the specific bureau in the record. This endpoint is used to make a user belong to a bureau group. When a user belongs to a specific bureau, he has the rights to view all the resources that fall under that bureau. Deleting this resource will remove the user from the bureau.

get

Get a single bureau membership.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


uri URI

The URI of the bureau.


user string

User associated to the membership.


Responses
Status CodeDescription
200

The request was successful

404

The requested membership is not found.

A membership location record represents that a user belongs to the specific location in the record. This endpoint is used to make a user belong to a location group. When a user belongs to a specific location, he has the rights to view all the resources that fall under that location. Deleting this resource will remove the user from the location.

get

List all of the location memberships in the system.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the location.


uri URI

The URI of the location.


user string

User associated to the membership.


Responses
Status CodeDescription
200

The request was successful

404

The requested membership is not found.

post

Create a new location membership.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the location.


Required
uri URI

The URI of the location.


Default: None
user string

User associated to the membership.


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested membership is not found.

A membership location record represents that a user belongs to the specific location in the record. This endpoint is used to make a user belong to a location group. When a user belongs to a specific location, he has the rights to view all the resources that fall under that location. Deleting this resource will remove the user from the location.

get

Get a single location membership.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the location.


uri URI

The URI of the location.


user string

User associated to the membership.


Responses
Status CodeDescription
200

The request was successful

404

The requested membership is not found.

/order-comment/

get post

This endpoint is used for making comments on orders. Comments are free-form - different users may assign different meanings to the content of the comments, but over all the comment is merely a way for team members to communicate in an ongoing way about an order

get

List all of the comments in the system for your account.

Schema (application/json)
PropertyTypeDescription
content string

The comment.


created iso-8601 datetime

The date the comment was created.


order URI

The URI of the order that this comment is about.


public boolean

The type of the comment.


Choices
  • True
  • False
Example: '"True|False"'
uri URI

The URI of the comment.


user URL

The URI of the user who created the comment.


Responses
Status CodeDescription
200

The request was successful

404

The requested comment cannot be found.

post

Create a new comment.

Schema (application/json)
PropertyTypeDescription
content string

The comment.


Required
created iso-8601 datetime

The date the comment was created.


Default: None
order URI

The URI of the order that this comment is about.


Default: None
public boolean

The type of the comment.


Default: False
Choices
  • True
  • False
Example: '"True|False"'
uri URI

The URI of the comment.


Default: None
user URL

The URI of the user who created the comment.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested comment cannot be found.

This endpoint is used for making comments on orders. Comments are free-form - different users may assign different meanings to the content of the comments, but over all the comment is merely a way for team members to communicate in an ongoing way about an order

get

Get a single comment by UUID.

Schema (application/json)
PropertyTypeDescription
content string

The comment.


created iso-8601 datetime

The date the comment was created.


order URI

The URI of the order that this comment is about.


public boolean

The type of the comment.


Choices
  • True
  • False
Example: '"True|False"'
uri URI

The URI of the comment.


user URL

The URI of the user who created the comment.


Responses
Status CodeDescription
200

The request was successful

404

The requested comment cannot be found.

/order-document/

get post

Create a document for an order.

This endpoint is used for attaching a document to an order. Users can attach documents, such as drawings or images, that help describe and provide information pertaining to an order.

After a new order-document is created, a X-Upload-Location header will be returned. Use the X-Upload-location header to PUT file contents to that location.

get

List all order documents.

Schema (application/json)
PropertyTypeDescription
content string

The URL of the document if one has been uploaded.


name string

The name of the document.


order URI

The URI of the order for the document.


upload_location string

The upload URL of the document. This will be empty if a thumbnail has been uploaded.


uri URI

The URI of the order document.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested order document cannot be found.

post

Create a new order document.

Schema (application/json)
PropertyTypeDescription
content string

The URL of the document if one has been uploaded.


Default: None
name string

The name of the document.


Default: None
order URI

The URI of the order for the document.


Required
upload_location string

The upload URL of the document. This will be empty if a thumbnail has been uploaded.


Default: None
uri URI

The URI of the order document.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

403

You are not authorized to complete the request.

404

The requested order document cannot be found.

Create a document for an order.

This endpoint is used for attaching a document to an order. Users can attach documents, such as drawings or images, that help describe and provide information pertaining to an order.

After a new order-document is created, a X-Upload-Location header will be returned. Use the X-Upload-location header to PUT file contents to that location.

get

Get an order document by UUID.

Schema (application/json)
PropertyTypeDescription
content string

The URL of the document if one has been uploaded.


name string

The name of the document.


order URI

The URI of the order for the document.


upload_location string

The upload URL of the document. This will be empty if a thumbnail has been uploaded.


uri URI

The URI of the order document.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested order document cannot be found.

This is a utility API for getting all of the orders for a given location. You supply a location, it returns the orders

get

List all of the orders at a location in the system for your account.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the location.


orders array

List of the location's orders.


Example: '["..."]'
Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested stock cannot be found.

/order/

get post

An order is how a user tells the system they would like a particular bureau to build a particular part or parts. The order is mostly composed of line-item resources which should be created before creating the order. Each line item contains information on a particular model in a particular quantity to produce. The order then aggregates the line-items with metadata about the currency to quote the order in, total estimates of cost and time, shipping information to use to send the parts to the customer and overall status of the order.

The status of an order is normally calculated as the aggregate status of the line-items of the order. When an order has all line items printing, the status is printing. When all line items are complete, the order is complete.

Orders should normally be specified with the bureau, currency, line_items, name and shipping. Other fields are populated as the order moves through the system towards completion

get

List all of the order in the system for your account.

Schema (application/json)
PropertyTypeDescription
actual_amount float

Actual amount.


bureau URI

The URI of the bureau.


callback_method string

Callback method


callback_url string

Callback URL


channel_representative string

Channel Rep user URI for the order.


created iso-8601 datetime

The date the order was created.


currency string

The currency of the order.


Choices
  • AED
  • AFN
  • ALL
  • AMD
  • ANG
  • AOA
  • ARS
  • AUD
  • AWG
  • AZN
  • BAM
  • BBD
  • BDT
  • BGN
  • BHD
  • BIF
  • BMD
  • BND
  • BOB
  • BOV
  • BRL
  • BSD
  • BTN
  • BWP
  • BYR
  • BZD
  • CAD
  • CDF
  • CHE
  • CHF
  • CHW
  • CLF
  • CLP
  • CNY
  • COP
  • COU
  • CRC
  • CUP
  • CVE
  • CYP
  • CZK
  • DJF
  • DKK
  • DOP
  • DZD
  • EEK
  • EGP
  • ERN
  • ETB
  • EUR
  • FJD
  • FKP
  • GBP
  • GEL
  • GHS
  • GIP
  • GMD
  • GNF
  • GTQ
  • GYD
  • HKD
  • HNL
  • HRK
  • HTG
  • HUF
  • IDR
  • ILS
  • INR
  • IQD
  • IRR
  • ISK
  • JMD
  • JOD
  • JPY
  • KES
  • KGS
  • KHR
  • KMF
  • KPW
  • KRW
  • KWD
  • KYD
  • KZT
  • LAK
  • LBP
  • LKR
  • LRD
  • LSL
  • LTL
  • LVL
  • LYD
  • MAD
  • MDL
  • MGA
  • MKD
  • MMK
  • MNT
  • MOP
  • MRO
  • MTL
  • MUR
  • MVR
  • MWK
  • MXN
  • MXV
  • MYR
  • MZN
  • NAD
  • NGN
  • NIO
  • NOK
  • NPR
  • NZD
  • OMR
  • PAB
  • PEN
  • PGK
  • PHP
  • PKR
  • PLN
  • PYG
  • QAR
  • RON
  • RSD
  • RUB
  • RWF
  • SAR
  • SBD
  • SCR
  • SDG
  • SEK
  • SGD
  • SHP
  • SLL
  • SOS
  • SRD
  • STD
  • SVC
  • SYP
  • SZL
  • THB
  • TJS
  • TMM
  • TND
  • TOP
  • TRY
  • TTD
  • TWD
  • TZS
  • UAH
  • UGX
  • USD
  • USN
  • USS
  • UYI
  • UYU
  • UZS
  • VEF
  • VND
  • VUV
  • WST
  • XAF
  • XAG
  • XAU
  • XBA
  • XBB
  • XBC
  • XBD
  • XCD
  • XDR
  • XFO
  • XFU
  • XOF
  • XPD
  • XPF
  • XPT
  • XTS
  • XXX
  • YER
  • ZAR
  • ZMK
  • ZWD
Example: '"AED|AFN|ALL|AMD|ANG|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYR|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CYP|CZK|DJF|DKK|DOP|DZD|EEK|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LTL|LVL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRO|MTL|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLL|SOS|SRD|STD|SVC|SYP|SZL|THB|TJS|TMM|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|USS|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XDR|XFO|XFU|XOF|XPD|XPF|XPT|XTS|XXX|YER|ZAR|ZMK|ZWD"'
customer_email string

Customer email address.


customer_name string

Customer name for the order.


customer_po string

Customer PO which is a reference to Customer number.


due_date iso-8601 datetime

The due date for the order.


error string none available
estimates object none available
Example: '{"cost": {}, "materials": {}}'
external_id string

External ID for an order.


ip_sensitivity string

The intellectual property sensitivity.


line_items array

The uri of the line items for this order.


Example: '["..."]'
name string

Name of the order.


notes string

Notes for the order.


order_documents array none available
Example: '["..."]'
order_owner string

The URI of the order owner.


order_type string

Order type.


Choices
  • benchmark
  • commercial
  • r-d
  • sample-free
  • timestudy
Example: '"benchmark|commercial|r-d|sample-free|timestudy"'
quote_number string

A reference to Sales quotes


region string

Region of the order.


sales_representative string

Sales Rep user URI for the order.


sales_status string

Status of the sales for the order.


Choices
  • won
  • lost
  • outsourced
  • dead
  • pending
Example: '"won|lost|outsourced|dead|pending"'
shipping object none available
Example: '{}'
status string

Status of an order.


Choices
  • calculating_estimates
  • cancelled
  • confirmed
  • complete
  • error
  • new
  • pending
  • processing
  • post-processing
  • printed
  • printing
  • shipping
Example: '"calculating_estimates|cancelled|confirmed|complete|error|new|pending|processing|post-processing|printed|printing|shipping"'
uri URI

The URI of the order.


Responses
Status CodeDescription
200

The request was successful

400

invalid-payload: The value you provided for bureau does not appear to be a valid bureau

The quantity value is too low or too high

The model does not seem printable

An order with active prints cannot be deleted

Provided status transformation is not allowed

404

The requested order cannot be found.

post

Create a new order.

Schema (application/json)
PropertyTypeDescription
actual_amount float

Actual amount.


Default: None
bureau URI

The URI of the bureau.


Required
callback_method string

Callback method


Default: None
callback_url string

Callback URL


Default: None
channel_representative string

Channel Rep user URI for the order.


Default: None
created iso-8601 datetime

The date the order was created.


Default: None
currency string

The currency of the order.


Required
Choices
  • AED
  • AFN
  • ALL
  • AMD
  • ANG
  • AOA
  • ARS
  • AUD
  • AWG
  • AZN
  • BAM
  • BBD
  • BDT
  • BGN
  • BHD
  • BIF
  • BMD
  • BND
  • BOB
  • BOV
  • BRL
  • BSD
  • BTN
  • BWP
  • BYR
  • BZD
  • CAD
  • CDF
  • CHE
  • CHF
  • CHW
  • CLF
  • CLP
  • CNY
  • COP
  • COU
  • CRC
  • CUP
  • CVE
  • CYP
  • CZK
  • DJF
  • DKK
  • DOP
  • DZD
  • EEK
  • EGP
  • ERN
  • ETB
  • EUR
  • FJD
  • FKP
  • GBP
  • GEL
  • GHS
  • GIP
  • GMD
  • GNF
  • GTQ
  • GYD
  • HKD
  • HNL
  • HRK
  • HTG
  • HUF
  • IDR
  • ILS
  • INR
  • IQD
  • IRR
  • ISK
  • JMD
  • JOD
  • JPY
  • KES
  • KGS
  • KHR
  • KMF
  • KPW
  • KRW
  • KWD
  • KYD
  • KZT
  • LAK
  • LBP
  • LKR
  • LRD
  • LSL
  • LTL
  • LVL
  • LYD
  • MAD
  • MDL
  • MGA
  • MKD
  • MMK
  • MNT
  • MOP
  • MRO
  • MTL
  • MUR
  • MVR
  • MWK
  • MXN
  • MXV
  • MYR
  • MZN
  • NAD
  • NGN
  • NIO
  • NOK
  • NPR
  • NZD
  • OMR
  • PAB
  • PEN
  • PGK
  • PHP
  • PKR
  • PLN
  • PYG
  • QAR
  • RON
  • RSD
  • RUB
  • RWF
  • SAR
  • SBD
  • SCR
  • SDG
  • SEK
  • SGD
  • SHP
  • SLL
  • SOS
  • SRD
  • STD
  • SVC
  • SYP
  • SZL
  • THB
  • TJS
  • TMM
  • TND
  • TOP
  • TRY
  • TTD
  • TWD
  • TZS
  • UAH
  • UGX
  • USD
  • USN
  • USS
  • UYI
  • UYU
  • UZS
  • VEF
  • VND
  • VUV
  • WST
  • XAF
  • XAG
  • XAU
  • XBA
  • XBB
  • XBC
  • XBD
  • XCD
  • XDR
  • XFO
  • XFU
  • XOF
  • XPD
  • XPF
  • XPT
  • XTS
  • XXX
  • YER
  • ZAR
  • ZMK
  • ZWD
Example: '"AED|AFN|ALL|AMD|ANG|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYR|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CYP|CZK|DJF|DKK|DOP|DZD|EEK|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LTL|LVL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRO|MTL|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLL|SOS|SRD|STD|SVC|SYP|SZL|THB|TJS|TMM|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|USS|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XDR|XFO|XFU|XOF|XPD|XPF|XPT|XTS|XXX|YER|ZAR|ZMK|ZWD"'
customer_email string

Customer email address.


Default: None
customer_name string

Customer name for the order.


Default: None
customer_po string

Customer PO which is a reference to Customer number.


Default: None
due_date iso-8601 datetime

The due date for the order.


Default: None
error string none available
Default: None
estimates object none available
Default: None
Example: '{"cost": {}, "materials": {}}'
external_id string

External ID for an order.


Default: None
ip_sensitivity string

The intellectual property sensitivity.


Default: None
line_items array

The uri of the line items for this order.


Required
Example: '["..."]'
name string

Name of the order.


Required
notes string

Notes for the order.


Default: None
order_documents array none available
Default: None
Example: '["..."]'
order_owner string

The URI of the order owner.


Default: None
order_type string

Order type.


Default: None
Choices
  • benchmark
  • commercial
  • r-d
  • sample-free
  • timestudy
Example: '"benchmark|commercial|r-d|sample-free|timestudy"'
quote_number string

A reference to Sales quotes


Default: None
region string

Region of the order.


Default: None
sales_representative string

Sales Rep user URI for the order.


Default: None
sales_status string

Status of the sales for the order.


Default: None
Choices
  • won
  • lost
  • outsourced
  • dead
  • pending
Example: '"won|lost|outsourced|dead|pending"'
shipping object none available
Required
Example: '{}'
status string

Status of an order.


Default: None
Choices
  • calculating_estimates
  • cancelled
  • confirmed
  • complete
  • error
  • new
  • pending
  • processing
  • post-processing
  • printed
  • printing
  • shipping
Example: '"calculating_estimates|cancelled|confirmed|complete|error|new|pending|processing|post-processing|printed|printing|shipping"'
uri URI

The URI of the order.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

invalid-payload: The value you provided for bureau does not appear to be a valid bureau

The quantity value is too low or too high

The model does not seem printable

An order with active prints cannot be deleted

Provided status transformation is not allowed

404

The requested order cannot be found.

This is an internal API used by the system

post
No description provided
Schema (application/json)
PropertyTypeDescription
bureau string none available
Required
callback_method string none available
Required
callback_url URL none available
Required
currency string none available
Required
material string none available
Required
model string none available
Required
price float none available
Required
status string none available
Required
uri URL none available
Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

403

You are not authorized to complete the request.

404

The requested order cannot be found.

This is an internal API used for returning estimates data about an order

post
No description provided
Schema (application/json)
PropertyTypeDescription
error string none available
Default: None
slice_time_ms integer none available
Default: 0
slicing_uri URL none available
Required
status string none available
Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested order cannot be found.

An order is how a user tells the system they would like a particular bureau to build a particular part or parts. The order is mostly composed of line-item resources which should be created before creating the order. Each line item contains information on a particular model in a particular quantity to produce. The order then aggregates the line-items with metadata about the currency to quote the order in, total estimates of cost and time, shipping information to use to send the parts to the customer and overall status of the order.

The status of an order is normally calculated as the aggregate status of the line-items of the order. When an order has all line items printing, the status is printing. When all line items are complete, the order is complete.

Orders should normally be specified with the bureau, currency, line_items, name and shipping. Other fields are populated as the order moves through the system towards completion

get

Get a single order by UUID.

Schema (application/json)
PropertyTypeDescription
actual_amount float

Actual amount.


bureau URI

The URI of the bureau.


callback_method string

Callback method


callback_url string

Callback URL


channel_representative string

Channel Rep user URI for the order.


created iso-8601 datetime

The date the order was created.


currency string

The currency of the order.


Choices
  • AED
  • AFN
  • ALL
  • AMD
  • ANG
  • AOA
  • ARS
  • AUD
  • AWG
  • AZN
  • BAM
  • BBD
  • BDT
  • BGN
  • BHD
  • BIF
  • BMD
  • BND
  • BOB
  • BOV
  • BRL
  • BSD
  • BTN
  • BWP
  • BYR
  • BZD
  • CAD
  • CDF
  • CHE
  • CHF
  • CHW
  • CLF
  • CLP
  • CNY
  • COP
  • COU
  • CRC
  • CUP
  • CVE
  • CYP
  • CZK
  • DJF
  • DKK
  • DOP
  • DZD
  • EEK
  • EGP
  • ERN
  • ETB
  • EUR
  • FJD
  • FKP
  • GBP
  • GEL
  • GHS
  • GIP
  • GMD
  • GNF
  • GTQ
  • GYD
  • HKD
  • HNL
  • HRK
  • HTG
  • HUF
  • IDR
  • ILS
  • INR
  • IQD
  • IRR
  • ISK
  • JMD
  • JOD
  • JPY
  • KES
  • KGS
  • KHR
  • KMF
  • KPW
  • KRW
  • KWD
  • KYD
  • KZT
  • LAK
  • LBP
  • LKR
  • LRD
  • LSL
  • LTL
  • LVL
  • LYD
  • MAD
  • MDL
  • MGA
  • MKD
  • MMK
  • MNT
  • MOP
  • MRO
  • MTL
  • MUR
  • MVR
  • MWK
  • MXN
  • MXV
  • MYR
  • MZN
  • NAD
  • NGN
  • NIO
  • NOK
  • NPR
  • NZD
  • OMR
  • PAB
  • PEN
  • PGK
  • PHP
  • PKR
  • PLN
  • PYG
  • QAR
  • RON
  • RSD
  • RUB
  • RWF
  • SAR
  • SBD
  • SCR
  • SDG
  • SEK
  • SGD
  • SHP
  • SLL
  • SOS
  • SRD
  • STD
  • SVC
  • SYP
  • SZL
  • THB
  • TJS
  • TMM
  • TND
  • TOP
  • TRY
  • TTD
  • TWD
  • TZS
  • UAH
  • UGX
  • USD
  • USN
  • USS
  • UYI
  • UYU
  • UZS
  • VEF
  • VND
  • VUV
  • WST
  • XAF
  • XAG
  • XAU
  • XBA
  • XBB
  • XBC
  • XBD
  • XCD
  • XDR
  • XFO
  • XFU
  • XOF
  • XPD
  • XPF
  • XPT
  • XTS
  • XXX
  • YER
  • ZAR
  • ZMK
  • ZWD
Example: '"AED|AFN|ALL|AMD|ANG|AOA|ARS|AUD|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYR|BZD|CAD|CDF|CHE|CHF|CHW|CLF|CLP|CNY|COP|COU|CRC|CUP|CVE|CYP|CZK|DJF|DKK|DOP|DZD|EEK|EGP|ERN|ETB|EUR|FJD|FKP|GBP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|INR|IQD|IRR|ISK|JMD|JOD|JPY|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LTL|LVL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRO|MTL|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|NZD|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SEK|SGD|SHP|SLL|SOS|SRD|STD|SVC|SYP|SZL|THB|TJS|TMM|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USD|USN|USS|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XAG|XAU|XBA|XBB|XBC|XBD|XCD|XDR|XFO|XFU|XOF|XPD|XPF|XPT|XTS|XXX|YER|ZAR|ZMK|ZWD"'
customer_email string

Customer email address.


customer_name string

Customer name for the order.


customer_po string

Customer PO which is a reference to Customer number.


due_date iso-8601 datetime

The due date for the order.


error string none available
estimates object none available
Example: '{"cost": {}, "materials": {}}'
external_id string

External ID for an order.


ip_sensitivity string

The intellectual property sensitivity.


line_items array

The uri of the line items for this order.


Example: '["..."]'
name string

Name of the order.


notes string

Notes for the order.


order_documents array none available
Example: '["..."]'
order_owner string

The URI of the order owner.


order_type string

Order type.


Choices
  • benchmark
  • commercial
  • r-d
  • sample-free
  • timestudy
Example: '"benchmark|commercial|r-d|sample-free|timestudy"'
quote_number string

A reference to Sales quotes


region string

Region of the order.


sales_representative string

Sales Rep user URI for the order.


sales_status string

Status of the sales for the order.


Choices
  • won
  • lost
  • outsourced
  • dead
  • pending
Example: '"won|lost|outsourced|dead|pending"'
shipping object none available
Example: '{}'
status string

Status of an order.


Choices
  • calculating_estimates
  • cancelled
  • confirmed
  • complete
  • error
  • new
  • pending
  • processing
  • post-processing
  • printed
  • printing
  • shipping
Example: '"calculating_estimates|cancelled|confirmed|complete|error|new|pending|processing|post-processing|printed|printing|shipping"'
uri URI

The URI of the order.


Responses
Status CodeDescription
200

The request was successful

400

invalid-payload: The value you provided for bureau does not appear to be a valid bureau

The quantity value is too low or too high

The model does not seem printable

An order with active prints cannot be deleted

Provided status transformation is not allowed

404

The requested order cannot be found.

A permision bureau record represenst a right that is created for a user on the bureau. This right such as material.all will allow the user to edit, update, and delete the associated record type. In this case it is material. Creating a record here will grant the user access to perform the associated actions. Deleting will revoke the permission.

get

List all of the bureau permissions in the system.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


right string

Right for the permission.


Choices
  • currency_conversion.all
  • location.all
  • manufacturer.all
  • material.all
  • bureau.permission.all
  • post_processor_type.all
  • printer_type.all
  • service_provider.all
  • shipping.all
  • third_party.all
  • template.all
Example: '"currency_conversion.all|location.all|manufacturer.all|material.all|bureau.permission.all|post_processor_type.all|printer_type.all|service_provider.all|shipping.all|third_party.all|template.all"'
uri URI

The URI of the bureau.


user string

User associated to the permission.


Responses
Status CodeDescription
200

The request was successful

404

The requested permission is not found.

post

Create a new bureau permission.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


Required
right string

Right for the permission.


Required
Choices
  • currency_conversion.all
  • location.all
  • manufacturer.all
  • material.all
  • bureau.permission.all
  • post_processor_type.all
  • printer_type.all
  • service_provider.all
  • shipping.all
  • third_party.all
  • template.all
Example: '"currency_conversion.all|location.all|manufacturer.all|material.all|bureau.permission.all|post_processor_type.all|printer_type.all|service_provider.all|shipping.all|third_party.all|template.all"'
uri URI

The URI of the bureau.


Default: None
user string

User associated to the permission.


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested permission is not found.

A permision bureau record represenst a right that is created for a user on the bureau. This right such as material.all will allow the user to edit, update, and delete the associated record type. In this case it is material. Creating a record here will grant the user access to perform the associated actions. Deleting will revoke the permission.

get

Get a single bureau permission.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau.


right string

Right for the permission.


Choices
  • currency_conversion.all
  • location.all
  • manufacturer.all
  • material.all
  • bureau.permission.all
  • post_processor_type.all
  • printer_type.all
  • service_provider.all
  • shipping.all
  • third_party.all
  • template.all
Example: '"currency_conversion.all|location.all|manufacturer.all|material.all|bureau.permission.all|post_processor_type.all|printer_type.all|service_provider.all|shipping.all|third_party.all|template.all"'
uri URI

The URI of the bureau.


user string

User associated to the permission.


Responses
Status CodeDescription
200

The request was successful

404

The requested permission is not found.

A permision location record represenst a right that is created for a user on the location. This right such as material.all will allow the user to edit, update, and delete the associated record type. In this case it is material. Creating a record here will grant the user access to perform the associated actions. Deleting will revoke the permission.

get

List all of the location permissions in the system.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the location.


right string

Right for the permission.


Choices
  • location.permission.all
  • post_processor.all
  • printer.all
  • stock.all
Example: '"location.permission.all|post_processor.all|printer.all|stock.all"'
uri URI

The URI of the location.


user string

User associated to the permission.


Responses
Status CodeDescription
200

The request was successful

404

The requested permission is not found.

post

Create a new location permission.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the location.


Required
right string

Right for the permission.


Required
Choices
  • location.permission.all
  • post_processor.all
  • printer.all
  • stock.all
Example: '"location.permission.all|post_processor.all|printer.all|stock.all"'
uri URI

The URI of the location.


Default: None
user string

User associated to the permission.


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested permission is not found.

A permision location record represenst a right that is created for a user on the location. This right such as material.all will allow the user to edit, update, and delete the associated record type. In this case it is material. Creating a record here will grant the user access to perform the associated actions. Deleting will revoke the permission.

get

Get a single location permission.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the location.


right string

Right for the permission.


Choices
  • location.permission.all
  • post_processor.all
  • printer.all
  • stock.all
Example: '"location.permission.all|post_processor.all|printer.all|stock.all"'
uri URI

The URI of the location.


user string

User associated to the permission.


Responses
Status CodeDescription
200

The request was successful

404

The requested permission is not found.

This resource defines a type of post-processing a bureau can handle. Examples might include painting, caustic bath, sanding, milling or other processes that refine a part before final delivery to a customer.

After creating a post-processor type you'll want to create instances of post-processors that satisfy the type in particular locations via the post-processor API

get

List all of the post-processor-types in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

Bureau of the post-processor-type


cost float

The cost of the post processor per minute


description string

Description of the post-processor-type.


duration integer

The length of time it will take to complete post process in seconds.


manufacturer URI

Manufacturer of the post-processor-type


materials array

The URI of materials from the manufacturer.


Example: '["..."]'
name string

Name of the post-processor-type.


uri URI

The URI of the post-processor-type.


Responses
Status CodeDescription
200

The request was successful

400

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The requested post processor type name already exists.

The value you provided for materials does not appear to be a valid material

403

You are not authorized to complete the request.

404

The requested post-processor-type cannot be found.

post

Create a new post-processor-type.

Schema (application/json)
PropertyTypeDescription
bureau URI

Bureau of the post-processor-type


Required
cost float

The cost of the post processor per minute


Default: None
description string

Description of the post-processor-type.


Required
duration integer

The length of time it will take to complete post process in seconds.


Required
manufacturer URI

Manufacturer of the post-processor-type


Required
materials array

The URI of materials from the manufacturer.


Required
Example: '["..."]'
name string

Name of the post-processor-type.


Required
uri URI

The URI of the post-processor-type.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The requested post processor type name already exists.

The value you provided for materials does not appear to be a valid material

403

You are not authorized to complete the request.

404

The requested post-processor-type cannot be found.

This resource defines a type of post-processing a bureau can handle. Examples might include painting, caustic bath, sanding, milling or other processes that refine a part before final delivery to a customer.

After creating a post-processor type you'll want to create instances of post-processors that satisfy the type in particular locations via the post-processor API

get

Get a single post-processor-type.

Schema (application/json)
PropertyTypeDescription
bureau URI

Bureau of the post-processor-type


cost float

The cost of the post processor per minute


description string

Description of the post-processor-type.


duration integer

The length of time it will take to complete post process in seconds.


manufacturer URI

Manufacturer of the post-processor-type


materials array

The URI of materials from the manufacturer.


Example: '["..."]'
name string

Name of the post-processor-type.


uri URI

The URI of the post-processor-type.


Responses
Status CodeDescription
200

The request was successful

400

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The requested post processor type name already exists.

The value you provided for materials does not appear to be a valid material

403

You are not authorized to complete the request.

404

The requested post-processor-type cannot be found.

/post-processor/

get post

Post processor is an instance of a particular post-processor. This is normally set up shortly after a post-processor-type and a valid location is set up. A user who has a permission to add post-processor for a particular bureau will be able to create an instance of post processor.

A post-processor should match to a physical device that can perform post-processing of the provided type at the provided location. post-processors are used by the system to schedule time to perform post-processing, queue orders to be worked on and keep track of material usage and availability

get

List all of the post-processor in the system for your account.

Schema (application/json)
PropertyTypeDescription
duration integer

The length of time it will take to complete post process in seconds.


location URI

The URI of a valid location.


name string

The name of the post-processor.


post_processor_type URI

The URI of a valid post-processor-type.


queue array

Ordered list of run URIs quesed on the post processor.


Example: '["..."]'
uri URI

The URI of the post-processor.


Responses
Status CodeDescription
200

The request was successful

400

You cannot change the position of an already post processing job.

The requested post processor name already exists.

403

You are not authorized to complete the request.

404

The requested post-processor cannot be found.

post

Create a new post-processor.

Schema (application/json)
PropertyTypeDescription
duration integer

The length of time it will take to complete post process in seconds.


Required
location URI

The URI of a valid location.


Required
name string

The name of the post-processor.


Required
post_processor_type URI

The URI of a valid post-processor-type.


Required
queue array

Ordered list of run URIs quesed on the post processor.


Default: []
Example: '["..."]'
uri URI

The URI of the post-processor.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

You cannot change the position of an already post processing job.

The requested post processor name already exists.

403

You are not authorized to complete the request.

404

The requested post-processor cannot be found.

Post processor is an instance of a particular post-processor. This is normally set up shortly after a post-processor-type and a valid location is set up. A user who has a permission to add post-processor for a particular bureau will be able to create an instance of post processor.

A post-processor should match to a physical device that can perform post-processing of the provided type at the provided location. post-processors are used by the system to schedule time to perform post-processing, queue orders to be worked on and keep track of material usage and availability

get

Get a single post-processor by UUID.

Schema (application/json)
PropertyTypeDescription
duration integer

The length of time it will take to complete post process in seconds.


location URI

The URI of a valid location.


name string

The name of the post-processor.


post_processor_type URI

The URI of a valid post-processor-type.


queue array

Ordered list of run URIs quesed on the post processor.


Example: '["..."]'
uri URI

The URI of the post-processor.


Responses
Status CodeDescription
200

The request was successful

400

You cannot change the position of an already post processing job.

The requested post processor name already exists.

403

You are not authorized to complete the request.

404

The requested post-processor cannot be found.

/print/

get

A print resource represents a single print to be performed by a 3D printer. The print is tied to a line-item from an order which needs to be fulfilled. If a line-item has multiple copies requested then there will be a separate print for each of those copies.

get

List all of the print in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of print's bureau.


copy integer

Copy number in the quantity the print belongs to. If a customer requests 4 copies there will be 4 separate prints and each will have a different copy number from 1-4


line_item URI

The URI of print's line item.


name string

The autogenerated name of the print


order URI

The URI of print's order.


order_step_status string

Status of the order step.


Choices
  • complete
  • error
  • new
  • processing
Example: '"complete|error|new|processing"'
post_processor_run URI

The URI of print's post-processor run, if any. Prints are eventually collected together in a run to be manufactured by a specific post-processor. If this value is null then no post-processor has yet been selected for the print.


process_step URI

The URI of the process step this print is tied to.


process_step_position integer

Step position the print belongs to


run URI

The URI of print's run, if any. Prints are eventually collected together in a run to be manufactured by a specific printer. If this value is null then no printer has yet been selected for the print.


status string

Status of the print.


Choices
  • created
Example: '"created"'
uri URI

The URI of the print.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested print cannot be found.

A print resource represents a single print to be performed by a 3D printer. The print is tied to a line-item from an order which needs to be fulfilled. If a line-item has multiple copies requested then there will be a separate print for each of those copies.

get

Get a single print by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of print's bureau.


copy integer

Copy number in the quantity the print belongs to. If a customer requests 4 copies there will be 4 separate prints and each will have a different copy number from 1-4


line_item URI

The URI of print's line item.


name string

The autogenerated name of the print


order URI

The URI of print's order.


order_step_status string

Status of the order step.


Choices
  • complete
  • error
  • new
  • processing
Example: '"complete|error|new|processing"'
post_processor_run URI

The URI of print's post-processor run, if any. Prints are eventually collected together in a run to be manufactured by a specific post-processor. If this value is null then no post-processor has yet been selected for the print.


process_step URI

The URI of the process step this print is tied to.


process_step_position integer

Step position the print belongs to


run URI

The URI of print's run, if any. Prints are eventually collected together in a run to be manufactured by a specific printer. If this value is null then no printer has yet been selected for the print.


status string

Status of the print.


Choices
  • created
Example: '"created"'
uri URI

The URI of the print.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested print cannot be found.

/printer-type/

get post

A printer type defines a pattern to be used by printer resources. Usually a printer-type should correspond to the model of a printer the bureau owns and operates. build_volume information is used for capacity planning and to lay out models together to fill a build area for better efficiency. The materials property identifies which types of materials the printer can consume when building a part and is used to match orders up with printer capabilities for scheduling

get

List all of the printer-types in the system for your account.

Schema (application/json)
PropertyTypeDescription
build_volume object

Dimensions of the build volume in millimeters.


Example: '{}'
bureau URI

The bureau the printer belongs to


description string

Description of the printer-type.


manufacturer URI

Manufacturer of the printer


materials array

A list of material URIs that this printer can use. Both support and base materials should be included in this list


Example: '["..."]'
name string

Name of the printer-type, such as Fortus 250 or ProJet 660


type string

Technology used by the printer such as DLMS or FDM


uri URI

The URI of the printer-type.


Responses
Status CodeDescription
200

The request was successful

400

The requested printer type name already exists.

You cannot delete this printer_type because there are printers associated with it. Delete all printers of this type first.

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The value you provided for materials does not appear to be a valid material

403

You are not authorized to complete the request.

404

The requested manufacturer cannot be found.

post

Create a new printer-type.

Schema (application/json)
PropertyTypeDescription
build_volume object

Dimensions of the build volume in millimeters.


Required
Example: '{}'
bureau URI

The bureau the printer belongs to


Default: None
description string

Description of the printer-type.


Required
manufacturer URI

Manufacturer of the printer


Required
materials array

A list of material URIs that this printer can use. Both support and base materials should be included in this list


Required
Example: '["..."]'
name string

Name of the printer-type, such as Fortus 250 or ProJet 660


Required
type string

Technology used by the printer such as DLMS or FDM


Default: None
uri URI

The URI of the printer-type.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The requested printer type name already exists.

You cannot delete this printer_type because there are printers associated with it. Delete all printers of this type first.

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The value you provided for materials does not appear to be a valid material

403

You are not authorized to complete the request.

404

The requested manufacturer cannot be found.

A printer type defines a pattern to be used by printer resources. Usually a printer-type should correspond to the model of a printer the bureau owns and operates. build_volume information is used for capacity planning and to lay out models together to fill a build area for better efficiency. The materials property identifies which types of materials the printer can consume when building a part and is used to match orders up with printer capabilities for scheduling

get

Get a single printer-type by UUID.

Schema (application/json)
PropertyTypeDescription
build_volume object

Dimensions of the build volume in millimeters.


Example: '{}'
bureau URI

The bureau the printer belongs to


description string

Description of the printer-type.


manufacturer URI

Manufacturer of the printer


materials array

A list of material URIs that this printer can use. Both support and base materials should be included in this list


Example: '["..."]'
name string

Name of the printer-type, such as Fortus 250 or ProJet 660


type string

Technology used by the printer such as DLMS or FDM


uri URI

The URI of the printer-type.


Responses
Status CodeDescription
200

The request was successful

400

The requested printer type name already exists.

You cannot delete this printer_type because there are printers associated with it. Delete all printers of this type first.

There is a mismatch in the bureau and the bureau of manufacturer in the payload. Kindly make sure the manufacturer belongs to the same bureau.

The value you provided for materials does not appear to be a valid material

403

You are not authorized to complete the request.

404

The requested manufacturer cannot be found.

/printer/

get post

A printer is an instance of a printer-type in a particular location. It should correspond to a physical machine used for printing parts. Printers are used to queue and schedule work and get status information about prints to be performed to satisfy orders

get

List all of the printer in the system for your account.

Schema (application/json)
PropertyTypeDescription
description string

Description of printer


location URI

The URI of the printer's location.


modeler string

A URI from the Machine Analytics service for a modeler. This URI will be used to capture updates from Machine Analytics and apply the data to this printer


name string

Name of the printer.


printer_type URI

The URI of the printer type.


queue array

Ordered list of run URIs queued on the printer.


Example: '["..."]'
uri URI

The URI of the printer.


Responses
Status CodeDescription
200

The request was successful

400

You cannot change the position of an already printing job.

The requested printer name already exists.

403

You are not authorized to complete the request.

404

The requested printer cannot be found.

post

Create a new printer.

Schema (application/json)
PropertyTypeDescription
description string

Description of printer


Default: None
location URI

The URI of the printer's location.


Required
modeler string

A URI from the Machine Analytics service for a modeler. This URI will be used to capture updates from Machine Analytics and apply the data to this printer


Default: None
name string

Name of the printer.


Required
printer_type URI

The URI of the printer type.


Required
queue array

Ordered list of run URIs queued on the printer.


Default: []
Example: '["..."]'
uri URI

The URI of the printer.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

You cannot change the position of an already printing job.

The requested printer name already exists.

403

You are not authorized to complete the request.

404

The requested printer cannot be found.

A printer is an instance of a printer-type in a particular location. It should correspond to a physical machine used for printing parts. Printers are used to queue and schedule work and get status information about prints to be performed to satisfy orders

get

Get a single printer by UUID.

Schema (application/json)
PropertyTypeDescription
description string

Description of printer


location URI

The URI of the printer's location.


modeler string

A URI from the Machine Analytics service for a modeler. This URI will be used to capture updates from Machine Analytics and apply the data to this printer


name string

Name of the printer.


printer_type URI

The URI of the printer type.


queue array

Ordered list of run URIs queued on the printer.


Example: '["..."]'
uri URI

The URI of the printer.


Responses
Status CodeDescription
200

The request was successful

400

You cannot change the position of an already printing job.

The requested printer name already exists.

403

You are not authorized to complete the request.

404

The requested printer cannot be found.

/process-step/

get post

Process Step endpoint offers a way to add steps in a template that will be used to process the order. Steps must have either a printer-type, post-processor-type or shipping type that defines their behavior. Steps can also require a technician to provide uploaded data, notes, confirmation of success or other forms of input before the step is completed

get

List all of the process steps in your bureau

Schema (application/json)
PropertyTypeDescription
name string

The name of the process_step.


Example: '"ProcessStep-0.1"'
notes string

Does this step need notes from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
process_type_uri URL

The URI of the process type


step_position integer

Step position in template


Example: '"2"'
success string

Does this step need a success validation from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
template URI

The URI of the template for which we have the process_step value.


tracking_id string

Does this step need a tracking_id from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
upload string

Does this step need an upload from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
uri URI

The URI for Process Step resource.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested process_step name already exists.

Cannot delete process-step that belongs to a template.

403

You are not authorized to complete the request.

404

The requested process_step cannot be found.

post

Create a new process step resource.

Schema (application/json)
PropertyTypeDescription
name string

The name of the process_step.


Default: None
Example: '"ProcessStep-0.1"'
notes string

Does this step need notes from user?


Required
Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
process_type_uri URL

The URI of the process type


Required
step_position integer

Step position in template


Default: None
Example: '"2"'
success string

Does this step need a success validation from user?


Required
Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
template URI

The URI of the template for which we have the process_step value.


Default: None
tracking_id string

Does this step need a tracking_id from user?


Required
Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
upload string

Does this step need an upload from user?


Required
Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
uri URI

The URI for Process Step resource.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested process_step name already exists.

Cannot delete process-step that belongs to a template.

403

You are not authorized to complete the request.

404

The requested process_step cannot be found.

Process Step endpoint offers a way to add steps in a template that will be used to process the order. Steps must have either a printer-type, post-processor-type or shipping type that defines their behavior. Steps can also require a technician to provide uploaded data, notes, confirmation of success or other forms of input before the step is completed

get

Get an individual process step resource by UUID.

Schema (application/json)
PropertyTypeDescription
name string

The name of the process_step.


Example: '"ProcessStep-0.1"'
notes string

Does this step need notes from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
process_type_uri URL

The URI of the process type


step_position integer

Step position in template


Example: '"2"'
success string

Does this step need a success validation from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
template URI

The URI of the template for which we have the process_step value.


tracking_id string

Does this step need a tracking_id from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
upload string

Does this step need an upload from user?


Choices
  • optional
  • required
  • hidden
Example: '"Select: optional, required or hidden"'
uri URI

The URI for Process Step resource.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested process_step name already exists.

Cannot delete process-step that belongs to a template.

403

You are not authorized to complete the request.

404

The requested process_step cannot be found.

/role/

get post

Get and update a users role.

get

Get a list of all users for a bureau and their roles

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau to adjust the role for


emails array

The user's email address


Example: '["..."]'
location URI

The locations the user is assigned to for this role, or null if the role is not location-based


name string

The name of the user.


role string

The role for the particular user


Choices
  • manager
  • global-user
  • location-user
  • restricted
  • unknown
Example: '"manager|global-user|location-user|restricted|unknown"'
uri URI

The URI of the role


username string

The username of the user


Responses
Status CodeDescription
200

The request was successful

400

BadUser

403

You are not authorized to complete the request.

You are not authorized to complete the request.

404

The requested role cannot be found.

post

Create a new role for a user in a bureau

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau to adjust the role for


Required
emails array

The user's email address


Required
Example: '["..."]'
location URI

The locations the user is assigned to for this role, or null if the role is not location-based


Default: None
name string

The name of the user.


Required
role string

The role for the particular user


Required
Choices
  • manager
  • global-user
  • location-user
  • restricted
  • unknown
Example: '"manager|global-user|location-user|restricted|unknown"'
uri URI

The URI of the role


Required
username string

The username of the user


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

BadUser

403

You are not authorized to complete the request.

You are not authorized to complete the request.

404

The requested role cannot be found.

Get and update a users role.

get
No description provided
Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau to adjust the role for


emails array

The user's email address


Example: '["..."]'
location URI

The locations the user is assigned to for this role, or null if the role is not location-based


name string

The name of the user.


role string

The role for the particular user


Choices
  • manager
  • global-user
  • location-user
  • restricted
  • unknown
Example: '"manager|global-user|location-user|restricted|unknown"'
uri URI

The URI of the role


username string

The username of the user


Responses
Status CodeDescription
200

The request was successful

400

BadUser

403

You are not authorized to complete the request.

You are not authorized to complete the request.

404

The requested role cannot be found.

/run-document/

get post

Create a document for a run.

This endpoint is used for attaching a document to a run. Users can attach documents, such as drawings or images, that help describe and provide information pertaining to a run.

After a new run-document is created, a X-Upload-Location header will be returned. Use the X-Upload-location header to PUT file contents to that location.

get

List all run document.

Schema (application/json)
PropertyTypeDescription
content string

The URL of the document if one has been uploaded.


name string

The name of the document.


run URI

The URI of the run for the document.


upload_location string

The upload URL of the document. This will be empty if a thumbnail has been uploaded.


uri URI

The URI of the run document.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested run document cannot be found.

post

Create a new run document.

Schema (application/json)
PropertyTypeDescription
content string

The URL of the document if one has been uploaded.


Default: None
name string

The name of the document.


Default: None
run URI

The URI of the run for the document.


Required
upload_location string

The upload URL of the document. This will be empty if a thumbnail has been uploaded.


Default: None
uri URI

The URI of the run document.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

403

You are not authorized to complete the request.

404

The requested run document cannot be found.

Create a document for a run.

This endpoint is used for attaching a document to a run. Users can attach documents, such as drawings or images, that help describe and provide information pertaining to a run.

After a new run-document is created, a X-Upload-Location header will be returned. Use the X-Upload-location header to PUT file contents to that location.

get

Get a run document by UUID.

Schema (application/json)
PropertyTypeDescription
content string

The URL of the document if one has been uploaded.


name string

The name of the document.


run URI

The URI of the run for the document.


upload_location string

The upload URL of the document. This will be empty if a thumbnail has been uploaded.


uri URI

The URI of the run document.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested run document cannot be found.

/run-queue/ endpoint helps requeuing the run provided to the API and puts it in the start of the queue. The API will schedule the run and hence the prints as the next run to be processed.

post

Requeue runs and make this run read to be processed.

Schema (application/json)
PropertyTypeDescription
run URI

The URI of run's which is to be requeued..


Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested run cannot be found.

/run/

get post

A run corresponds to a single run of a printer or post-processor. A run must have one or more prints associated with it. The print identifies the data that was operated on. The system can aggregate multiple prints together for efficiency. A run can be created without a specific printer or post-processor to indicate work that should be done in the future. Eventually the run is assigned to a particular printer or post-processor that completes the run.

Run data can be automatically updated based on reports gathered by Echo. This gives the system a full control loop for data.

get

Get all of the runs the current user has access to

Schema (application/json)
PropertyTypeDescription
actuals object

The actual measured timing and usage data for this run


Example: '{"time": {}, "materials": {}}'
created iso-8601 datetime

The datetime the records was created


error string

The current error for the run, if any


estimates object

Estimated timing and resource usage data for this run


Example: '{"time": {}, "materials": {}, "queue_delay": {}}'
id string

The identifier for this run. This identifier will be generated when the run is created and should be the name used for the print so the sytem can track it


layout URL

The URI of run's layout.


location URI

The URI of run's location.


model URL

The URI of run's model.


notes string

Notes for a run


operation string

Operation type of the run.


Choices
  • printing
  • post-processing
  • shipping
Example: '"printing|post-processing|shipping"'
post_processor URI

The URI of run's post_processor.


post_processor_type URI

The URI of run's post processor type.


printer URI

The URI of run's printer.


printer_type URI

The URI of run's printer type.


prints array

The URI of prints in the order.


Example: '["..."]'
run_documents array none available
Example: '["..."]'
scheduled object

User input as datetime to schedule a run.


Example: '{}'
shipping URI

The URI of run's shipping type.


status string

Status of the run.


Choices
  • calculating
  • calculated
  • queued
  • in-progress
  • complete
  • error
Example: '"calculating|calculated|queued|in-progress|complete|error"'
success boolean

Success: True or False


tracking_id string

Tracking ID for shipping run.


upload string

Uploads for a run.


uri URI

The URI of the run.


Responses
Status CodeDescription
200

The request was successful

400

Run cannot consist of itar, and non-itar line items.

The system is busy printing. Please end the current process first.

The requested prints do not have their associated orders in either confirmed or printing state.

The requested prints do not have same process types belonging to process steps.

All the previous steps for the order should be completed before we can process these prints.

404

The requested run cannot be found.

409

The requested status transformation is not allowed.

post

Create a new run.

Schema (application/json)
PropertyTypeDescription
actuals object

The actual measured timing and usage data for this run


Default: None
Example: '{"time": {}, "materials": {}}'
created iso-8601 datetime

The datetime the records was created


Default: None
error string

The current error for the run, if any


Default: None
estimates object

Estimated timing and resource usage data for this run


Default: None
Example: '{"time": {}, "materials": {}, "queue_delay": {}}'
id string

The identifier for this run. This identifier will be generated when the run is created and should be the name used for the print so the sytem can track it


Default: None
layout URL

The URI of run's layout.


Default: None
location URI

The URI of run's location.


Default: None
model URL

The URI of run's model.


Default: None
notes string

Notes for a run


Default: None
operation string

Operation type of the run.


Default: None
Choices
  • printing
  • post-processing
  • shipping
Example: '"printing|post-processing|shipping"'
post_processor URI

The URI of run's post_processor.


Default: None
post_processor_type URI

The URI of run's post processor type.


Default: None
printer URI

The URI of run's printer.


Default: None
printer_type URI

The URI of run's printer type.


Default: None
prints array

The URI of prints in the order.


Required
Example: '["..."]'
run_documents array none available
Default: None
Example: '["..."]'
scheduled object

User input as datetime to schedule a run.


Default: None
Example: '{}'
shipping URI

The URI of run's shipping type.


Default: None
status string

Status of the run.


Default: None
Choices
  • calculating
  • calculated
  • queued
  • in-progress
  • complete
  • error
Example: '"calculating|calculated|queued|in-progress|complete|error"'
success boolean

Success: True or False


Default: None
tracking_id string

Tracking ID for shipping run.


Default: None
upload string

Uploads for a run.


Default: None
uri URI

The URI of the run.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

Run cannot consist of itar, and non-itar line items.

The system is busy printing. Please end the current process first.

The requested prints do not have their associated orders in either confirmed or printing state.

The requested prints do not have same process types belonging to process steps.

All the previous steps for the order should be completed before we can process these prints.

404

The requested run cannot be found.

409

The requested status transformation is not allowed.

And internal API for other services to report data about the run

post
No description provided
Schema (application/json)
PropertyTypeDescription
build_type string none available
Required
build_x_mm float none available
Required
build_y_mm float none available
Required
build_z_mm float none available
Required
callback_method string none available
Required
callback_url URL none available
Required
error string none available
Default: None
fill_percentage float none available
Required
spacing float none available
Required
status string none available
Required
uri URL none available
Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

403

You are not authorized to complete the request.

404

The requested run cannot be found.

Layout for the run does not exist.

An internal API for other services to report data on a run's model

post
No description provided
Schema (application/json)
PropertyTypeDescription
callback_method string none available
Required
callback_url URL none available
Required
merged_model URL none available
Required
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

404

The requested run cannot be found.

A run corresponds to a single run of a printer or post-processor. A run must have one or more prints associated with it. The print identifies the data that was operated on. The system can aggregate multiple prints together for efficiency. A run can be created without a specific printer or post-processor to indicate work that should be done in the future. Eventually the run is assigned to a particular printer or post-processor that completes the run.

Run data can be automatically updated based on reports gathered by Echo. This gives the system a full control loop for data.

get

Get a single run by UUID.

Schema (application/json)
PropertyTypeDescription
actuals object

The actual measured timing and usage data for this run


Example: '{"time": {}, "materials": {}}'
created iso-8601 datetime

The datetime the records was created


error string

The current error for the run, if any


estimates object

Estimated timing and resource usage data for this run


Example: '{"time": {}, "materials": {}, "queue_delay": {}}'
id string

The identifier for this run. This identifier will be generated when the run is created and should be the name used for the print so the sytem can track it


layout URL

The URI of run's layout.


location URI

The URI of run's location.


model URL

The URI of run's model.


notes string

Notes for a run


operation string

Operation type of the run.


Choices
  • printing
  • post-processing
  • shipping
Example: '"printing|post-processing|shipping"'
post_processor URI

The URI of run's post_processor.


post_processor_type URI

The URI of run's post processor type.


printer URI

The URI of run's printer.


printer_type URI

The URI of run's printer type.


prints array

The URI of prints in the order.


Example: '["..."]'
run_documents array none available
Example: '["..."]'
scheduled object

User input as datetime to schedule a run.


Example: '{}'
shipping URI

The URI of run's shipping type.


status string

Status of the run.


Choices
  • calculating
  • calculated
  • queued
  • in-progress
  • complete
  • error
Example: '"calculating|calculated|queued|in-progress|complete|error"'
success boolean

Success: True or False


tracking_id string

Tracking ID for shipping run.


upload string

Uploads for a run.


uri URI

The URI of the run.


Responses
Status CodeDescription
200

The request was successful

400

Run cannot consist of itar, and non-itar line items.

The system is busy printing. Please end the current process first.

The requested prints do not have their associated orders in either confirmed or printing state.

The requested prints do not have same process types belonging to process steps.

All the previous steps for the order should be completed before we can process these prints.

404

The requested run cannot be found.

409

The requested status transformation is not allowed.

ServiceProvider helps to store the 3rd party service provider information.

get

List all of the service-provider in the system for your account.

Schema (application/json)
PropertyTypeDescription
address string

Address of service-provider


bureau URI

The URI of the bureau for service-provider.


contact string

Contact name for service-provider


materials array

The URI of materials the service provider wants to work with.


Example: '["..."]'
name string

Name of the service-provider.


phone string

Phone number for service-provider.


uri URI

The URI of the service-provider.


Responses
Status CodeDescription
200

The request was successful

400

The requested service provider name already exists.

403

You are not authorized to complete the request.

404

The requested service-provider cannot be found.

post

Create a new service-provider.

Schema (application/json)
PropertyTypeDescription
address string

Address of service-provider


Required
bureau URI

The URI of the bureau for service-provider.


Required
contact string

Contact name for service-provider


Required
materials array

The URI of materials the service provider wants to work with.


Required
Example: '["..."]'
name string

Name of the service-provider.


Required
phone string

Phone number for service-provider.


Required
uri URI

The URI of the service-provider.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The requested service provider name already exists.

403

You are not authorized to complete the request.

404

The requested service-provider cannot be found.

ServiceProvider helps to store the 3rd party service provider information.

get

Get a single service-provider.

Schema (application/json)
PropertyTypeDescription
address string

Address of service-provider


bureau URI

The URI of the bureau for service-provider.


contact string

Contact name for service-provider


materials array

The URI of materials the service provider wants to work with.


Example: '["..."]'
name string

Name of the service-provider.


phone string

Phone number for service-provider.


uri URI

The URI of the service-provider.


Responses
Status CodeDescription
200

The request was successful

400

The requested service provider name already exists.

403

You are not authorized to complete the request.

404

The requested service-provider cannot be found.

/shipping/

get post

Shipping endpoint has all the available shipping resource for a bureau and region. The total cost for a shipping an order is then calculate using the unit cost for shipping with the currency conversion for the involved order currency.

get

List all of the shipping in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the shipping value.


cost float

The unit cost of shipping.


description string

The name of the shipping.


Example: '"Standard Shipping"'
name string

The description of the shipping.


Example: '"Standard fixed cost shipping"'
region string

Select a region from the list: ['africa', 'antarctica', 'asia', 'australia', 'europe', 'north-america', 'south-america']


Choices
  • africa
  • antarctica
  • asia
  • australia
  • europe
  • north-america
  • south-america
Example: '"africa|antarctica|asia|australia|europe|north-america|south-america"'
uri URI

The URI for shipping resource.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested shipping name for the region already exists.

403

You are not authorized to complete the request.

404

The requested shipping cannot be found.

post

Create a new shipping resource.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the shipping value.


Required
cost float

The unit cost of shipping.


Required
description string

The name of the shipping.


Required
Example: '"Standard Shipping"'
name string

The description of the shipping.


Required
Example: '"Standard fixed cost shipping"'
region string

Select a region from the list: ['africa', 'antarctica', 'asia', 'australia', 'europe', 'north-america', 'south-america']


Required
Choices
  • africa
  • antarctica
  • asia
  • australia
  • europe
  • north-america
  • south-america
Example: '"africa|antarctica|asia|australia|europe|north-america|south-america"'
uri URI

The URI for shipping resource.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested shipping name for the region already exists.

403

You are not authorized to complete the request.

404

The requested shipping cannot be found.

Shipping endpoint has all the available shipping resource for a bureau and region. The total cost for a shipping an order is then calculate using the unit cost for shipping with the currency conversion for the involved order currency.

get

Get an individual shipping resource by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the shipping value.


cost float

The unit cost of shipping.


description string

The name of the shipping.


Example: '"Standard Shipping"'
name string

The description of the shipping.


Example: '"Standard fixed cost shipping"'
region string

Select a region from the list: ['africa', 'antarctica', 'asia', 'australia', 'europe', 'north-america', 'south-america']


Choices
  • africa
  • antarctica
  • asia
  • australia
  • europe
  • north-america
  • south-america
Example: '"africa|antarctica|asia|australia|europe|north-america|south-america"'
uri URI

The URI for shipping resource.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested shipping name for the region already exists.

403

You are not authorized to complete the request.

404

The requested shipping cannot be found.

/stock/

get post

Stock works with the /material/ and /location/ endpoints to identify what materials are available on-hand for an organization. As orders are processed and prints are performed the stock will be consumed and should be replenished. By automatically tracking stock the ERP module makes it easier to avoid costly downtime due to out-of-stock issues and to produce reports on stock expiration, rotation and profitability

get

List all of the stocks in the system for your account.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the stock's location.


material URI

The URI of the stock's material.


modeler URL

The URI of the stock's modeler.


quantity float

The stock's quantity.


status string

Status of the stock.


Choices
  • in-use
  • available
  • exhausted
Example: '"in-use|available|exhausted"'
units string

Unit of the stock.


Choices
  • grams
  • cm3
Example: '"grams|cm3"'
uri URI

The URI of the stock.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested stock cannot be found.

post

Create a new stock.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the stock's location.


Required
material URI

The URI of the stock's material.


Required
modeler URL

The URI of the stock's modeler.


Default: None
quantity float

The stock's quantity.


Required
status string

Status of the stock.


Default: available
Choices
  • in-use
  • available
  • exhausted
Example: '"in-use|available|exhausted"'
units string

Unit of the stock.


Default: cm3
Choices
  • grams
  • cm3
Example: '"grams|cm3"'
uri URI

The URI of the stock.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

403

You are not authorized to complete the request.

404

The requested stock cannot be found.

Stock works with the /material/ and /location/ endpoints to identify what materials are available on-hand for an organization. As orders are processed and prints are performed the stock will be consumed and should be replenished. By automatically tracking stock the ERP module makes it easier to avoid costly downtime due to out-of-stock issues and to produce reports on stock expiration, rotation and profitability

get

Get a single stock by UUID.

Schema (application/json)
PropertyTypeDescription
location URI

The URI of the stock's location.


material URI

The URI of the stock's material.


modeler URL

The URI of the stock's modeler.


quantity float

The stock's quantity.


status string

Status of the stock.


Choices
  • in-use
  • available
  • exhausted
Example: '"in-use|available|exhausted"'
units string

Unit of the stock.


Choices
  • grams
  • cm3
Example: '"grams|cm3"'
uri URI

The URI of the stock.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested stock cannot be found.

/template/

get post

A template defines a process to be followed to manufacture a part. The template is just that, a template. Individual orders can be customized to follow a different process for just that order.

The template identifies the printer type to be used and any post-processing steps that should occur after a print. The template may also contain a shipping strategy to be used to ship the parts to a customer.

Templates are composed of some metadata and a sequence of process-steps that are identified by the process_steps property. Ordering of this property is important

get

List all of the template in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the template value.


description string

The description of the template.


Example: '"First version of template."'
name string

The name of the template.


Example: '"Template-0.1"'
process_steps array

The uri of the process steps for this template.


Example: '["..."]'
uri URI

The URI for template resource.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested template name already exists.

403

You are not authorized to complete the request.

404

The requested template cannot be found.

409

The requested template is attached to line items that are processing.

post

Create a new template resource.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the template value.


Required
description string

The description of the template.


Default: None
Example: '"First version of template."'
name string

The name of the template.


Required
Example: '"Template-0.1"'
process_steps array

The uri of the process steps for this template.


Default: None
Example: '["..."]'
uri URI

The URI for template resource.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested template name already exists.

403

You are not authorized to complete the request.

404

The requested template cannot be found.

409

The requested template is attached to line items that are processing.

A template defines a process to be followed to manufacture a part. The template is just that, a template. Individual orders can be customized to follow a different process for just that order.

The template identifies the printer type to be used and any post-processing steps that should occur after a print. The template may also contain a shipping strategy to be used to ship the parts to a customer.

Templates are composed of some metadata and a sequence of process-steps that are identified by the process_steps property. Ordering of this property is important

get

Get an individual template resource by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the bureau for which we have the template value.


description string

The description of the template.


Example: '"First version of template."'
name string

The name of the template.


Example: '"Template-0.1"'
process_steps array

The uri of the process steps for this template.


Example: '["..."]'
uri URI

The URI for template resource.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

The requested template name already exists.

403

You are not authorized to complete the request.

404

The requested template cannot be found.

409

The requested template is attached to line items that are processing.

/third-party/

get post

The third-party resource contains information about third-party bureau's that can be used to outsource work. All or part of an order can be handed over to third parties for fulfillment

get

List all of the third-party in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the third-party bureau.


description string

The description of the third-party.


name string

The name of the third-party.


uri URI

The URI of the third-party.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

403

You are not authorized to complete the request.

404

The requested third party cannot be found.

post

Create a new third-party.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the third-party bureau.


Required
description string

The description of the third-party.


Default: None
name string

The name of the third-party.


Required
uri URI

The URI of the third-party.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

400

The value of bureau appears to be an invalid bureau.

403

You are not authorized to complete the request.

404

The requested third party cannot be found.

The third-party resource contains information about third-party bureau's that can be used to outsource work. All or part of an order can be handed over to third parties for fulfillment

get

Get a single third-party by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The URI of the third-party bureau.


description string

The description of the third-party.


name string

The name of the third-party.


uri URI

The URI of the third-party.


Responses
Status CodeDescription
200

The request was successful

400

The value of bureau appears to be an invalid bureau.

403

You are not authorized to complete the request.

404

The requested third party cannot be found.

The traceability report api is for exporting the events that transpired during the creation of a given object as a printable document.

get

List all of the traceability reports in the system for your account.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau a report belongs to.


content URL

the download link for the document


created iso-8601 datetime

The date the report was created.


print URI

The Print to get a report on.


status string

Status of a report.


Choices
  • pending
  • processing
  • complete
  • error
Example: '"pending|processing|complete|error"'
uri URI

The URI of the report.


user string

The URI of the user making the report.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested report cannot be found.

post

Create a new traceability report.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau a report belongs to.


Default: None
content URL

the download link for the document


Default: None
created iso-8601 datetime

The date the report was created.


Default: None
print URI

The Print to get a report on.


Required
status string

Status of a report.


Default: None
Choices
  • pending
  • processing
  • complete
  • error
Example: '"pending|processing|complete|error"'
uri URI

The URI of the report.


Default: None
user string

The URI of the user making the report.


Default: None
* These properties are required when POSTing
Responses
Status CodeDescription
204

The request was successful

403

You are not authorized to complete the request.

404

The requested report cannot be found.

The traceability report api is for exporting the events that transpired during the creation of a given object as a printable document.

get

Get a single traceability report by UUID.

Schema (application/json)
PropertyTypeDescription
bureau URI

The bureau a report belongs to.


content URL

the download link for the document


created iso-8601 datetime

The date the report was created.


print URI

The Print to get a report on.


status string

Status of a report.


Choices
  • pending
  • processing
  • complete
  • error
Example: '"pending|processing|complete|error"'
uri URI

The URI of the report.


user string

The URI of the user making the report.


Responses
Status CodeDescription
200

The request was successful

403

You are not authorized to complete the request.

404

The requested report cannot be found.

The traveler api is for exporting the details of an Order along with the model associated with it as a printable document.

get
No description provided
Schema (application/json)
Responses
Status CodeDescription
200

The request was successful