Getting started
Endpoint https://api.moducore.cloud/api/v1/
The Moducore API is organized around REST. Our API has predictable resource-oriented URLs, accepts form-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication and verbs.
In order to use this API you must first have generated a pair of access keys from
Moducore — Core > Administration > API
All requests to Moducore must include your api_key
and api_secret
Connection Test
# cURL example
curl --location --request POST 'https://api.moducore.cloud/api/v1/connection/' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-raw '{
"api_key": "YOUR_API_KEY",
"api_secret": "YOUR_API_SECRET"
}'
To test your API connection and access to Moducore, you need to make a POST call to the following end-point:
https://api.moducore.cloud/api/v1/connection/
Response:
{
query:{
offset: 0,
limit: 50
}
response: [{
code: 200,
message: "OK - Everything worked as expected. Authenticated as {{BUSINESS_NAME}}"
},
]
}
QUERY PARAMETERS
Field | Type | Description |
---|---|---|
api_key | String | Your API Access Key. |
api_secret | String | Your API Access Secret. |
Response Codes
The Moducore API uses the following response codes:
Response Code | Message |
---|---|
200 | OK — Moducore API Call Success. |
201 | OK — Missing required parameters. |
400 | Bad Request — the request was unacceptable, often due to a required parameter. |
401 | Unauthorized — No valid api_key or api_secret . |
402 | Request Failed — The parameters were valid but the request failed.. |
403 | Forbidden — The api_key key doesn't have permissions to perform the request. |
404 | Not Found — The requested resource doesn't exist. |
409 | Conflict The request conflicts with another request (perhaps due to using the same idempotent key). |
429 | Too Many Requests Too many requests hit the API too quickly. We recommend an exponential backoff of your requests. |
500, 502, 503, 504 | Server error(s). |
Purchase Orders — Statuses
This endpoint will display Recent Purchase Orders that have been Issued, or are Complete.
Purchase Order Status References
Field | Type | Status | Description |
---|---|---|---|
po_status | String | Draft | Has not been put into workflow |
po_status | String | Pending Approval | Has been submitted for approval |
po_status | String | Approved | Has been approved |
po_status | String | Issued | Has been sent to vendor and reservations occured |
po_status | String | Complete | All receiving matches original order |
Purchase Order Receiving Status References
Field | Type | Status | Description |
---|---|---|---|
po_receiving_status | String | Not Received | No receiving or receipts exist |
po_receiving_status | String | Partial Received | 1 or more receipts exist and have been closed but order is not received in full |
po_receiving_status | String | Backorder | Receiving delayed by vendor |
po_receiving_status | String | Complete | All receiving matches original order |
Purchase Orders — Recent
This endpoint will display Recent Purchase Orders that have been Issued, or are Complete.
Endpoint
/get/procurement/purchase-orders/recent/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "Acme Modular Mfg. LLC"
},
"data": [
{
"vendor": "cc5858db4a2e661ee9c08564c3c617",
"vendor_number": "VEN-00017",
"vendor_number_ud": "0",
"po": "435633287960df5",
"po_number": "PO-21-00031",
"po_status": "Issued",
"po_receiving_status": "Not Received",
"po_order_date": "2021-04-10",
"po_due_date": "2021-04-10",
"po_value": "0.00000",
"created": {
"user": "32d9647e5339da4aade752016ebab4",
"user_name": "Bill Oliver",
"date": "2021-04-10",
"stamp": "1618086298"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
po_value | String | Value of all active lines on order |
Purchase Orders — Pending Approval
This endpoint will display Purchase Orders that are Pending Approval.
Endpoint
/get/procurement/purchase-orders/pending/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "Acme Modular Mfg. LLC"
},
"data": [
{
"vendor": "cc5858db4a2e661ee9c08564c3c617",
"vendor_number": "VEN-00017",
"vendor_number_ud": "0",
"po": "435633287960df5",
"po_number": "PO-21-00031",
"po_status": "Pending Approval",
"po_receiving_status": "Not Received",
"po_order_date": "2021-04-10",
"po_due_date": "2021-04-10",
"po_value": "0.00000",
"created": {
"user": "32d9647e5339da4aade752016ebab4",
"user_name": "Bill Oliver",
"date": "2021-04-10",
"stamp": "1618086298"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
po_value | String | Value of all active lines on order |
Purchase Orders — Approved
This endpoint will display Purchase Orders that are Approved.
Endpoint
/get/procurement/purchase-orders/approved/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "Acme Modular Mfg. LLC"
},
"data": [
{
"vendor": "cc5858db4a2e661ee9c08564c3c617",
"vendor_number": "VEN-00017",
"vendor_number_ud": "0",
"po": "435633287960df5",
"po_number": "PO-21-00031",
"po_status": "Approved",
"po_receiving_status": "Not Received",
"po_order_date": "2021-04-10",
"po_due_date": "2021-04-10",
"po_value": "0.00000",
"created": {
"user": "32d9647e5339da4aade752016ebab4",
"user_name": "Bill Oliver",
"date": "2021-04-10",
"stamp": "1618086298"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
po_value | String | Value of all active lines on order |
Purchase Orders — Issued
This endpoint will display Purchase Orders that are Issued.
Endpoint
/get/procurement/purchase-orders/issued/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "Acme Modular Mfg. LLC"
},
"data": [
{
"vendor": "cc5858db4a2e661ee9c08564c3c617",
"vendor_number": "VEN-00017",
"vendor_number_ud": "0",
"po": "435633287960df5",
"po_number": "PO-21-00031",
"po_status": "Issued",
"po_receiving_status": "Not Received",
"po_order_date": "2021-04-10",
"po_due_date": "2021-04-10",
"po_value": "0.00000",
"created": {
"user": "32d9647e5339da4aade752016ebab4",
"user_name": "Bill Oliver",
"date": "2021-04-10",
"stamp": "1618086298"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
po_value | String | Value of all active lines on order |
Purchase Orders — Complete
This endpoint will display Purchase Orders that are Complete.
Endpoint
/get/procurement/purchase-orders/complete/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "Acme Modular Mfg. LLC"
},
"data": [
{
"vendor": "cc5858db4a2e661ee9c08564c3c617",
"vendor_number": "VEN-00017",
"vendor_number_ud": "0",
"po": "435633287960df5",
"po_number": "PO-21-00031",
"po_status": "Complete",
"po_receiving_status": "Not Received",
"po_order_date": "2021-04-10",
"po_due_date": "2021-04-10",
"po_value": "0.00000",
"created": {
"user": "32d9647e5339da4aade752016ebab4",
"user_name": "Bill Oliver",
"date": "2021-04-10",
"stamp": "1618086298"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
po_value | String | Value of all active lines on order |
Purchase Orders — by Lines - Recent
This endpoint will display Recent Purchase Orders that have been Issued, or are Complete.
Endpoint
/get/procurement/purchase-orders/lines/recent/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "*DNU* Demo Company"
},
"data": [
{
"vendor": "6da785f0e971e08",
"vendor_number": "VEN-00030",
"vendor_number_ud": "0",
"po": "f47e5928d838366f88a3805b723473",
"po_number": "PO-20-00306",
"po_status": "Approved",
"po_receiving_status": "Not Received",
"po_order_date": "2021-02-08",
"po_due_date": "2021-02-08",
"line_number": "1",
"line_status": "Active",
"item": "1e891f3e50e9f884deec336166efc5",
"item_number": "ITEM-01598",
"item_number_ud": "",
"uom_name": "EACH",
"uom_iso_short": "EA",
"item_desc_long": "SILICONE, MULTISEAL TRANSLUCENT 300ML",
"po_std_quantity": "3.00000",
"po_received": "0.00000",
"item_buy_price": "3.54000",
"created": {
"user": "39ba9a4e4261e664d8ac2cb54ea043",
"user_name": "Bill Oliver",
"date": "2020-11-30",
"stamp": "1606753720"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
line_number | Integer | Purchase Order line number |
item | String | Item global identifier |
item_number | String | Moducore generated identifier |
item_number_ud | String | User provided identifier |
item_desc_long | String | Long descriptor for Inventory Item |
uom_name | String | Standard Unit of Measure Name |
uom_iso_short | String | ISO Standard Abbreviation |
po_std_quantity | Decimal | Purchase Order Standard Quantity |
po_received | Decimal | Standard Quantity Received to Date |
item_buy_price | Decimal | Per Unit Buy Price |
Purchase Orders — by Lines — Pending Approval
This endpoint will display Purchase Orders that are Pending Approval.
Endpoint
/get/procurement/purchase-orders/lines/pending/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "*DNU* Demo Company"
},
"data": [
{
"vendor": "6da785f0e971e08",
"vendor_number": "VEN-00030",
"vendor_number_ud": "0",
"po": "f47e5928d838366f88a3805b723473",
"po_number": "PO-20-00306",
"po_status": "Approved",
"po_receiving_status": "Not Received",
"po_order_date": "2021-02-08",
"po_due_date": "2021-02-08",
"line_number": "1",
"line_status": "Active",
"item": "1e891f3e50e9f884deec336166efc5",
"item_number": "ITEM-01598",
"item_number_ud": "",
"uom_name": "EACH",
"uom_iso_short": "EA",
"item_desc_long": "SILICONE, MULTISEAL TRANSLUCENT 300ML",
"po_std_quantity": "3.00000",
"po_received": "0.00000",
"item_buy_price": "3.54000",
"created": {
"user": "39ba9a4e4261e664d8ac2cb54ea043",
"user_name": "Bill Oliver",
"date": "2020-11-30",
"stamp": "1606753720"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
line_number | Integer | Purchase Order line number |
item | String | Item global identifier |
item_number | String | Moducore generated identifier |
item_number_ud | String | User provided identifier |
item_desc_long | String | Long descriptor for Inventory Item |
uom_name | String | Standard Unit of Measure Name |
uom_iso_short | String | ISO Standard Abbreviation |
po_std_quantity | Decimal | Purchase Order Standard Quantity |
po_received | Decimal | Standard Quantity Received to Date |
item_buy_price | Decimal | Per Unit Buy Price |
Purchase Orders — by Lines — Approved
This endpoint will display Purchase Orders that are Approved.
Endpoint
/get/procurement/purchase-orders/lines/approved/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "*DNU* Demo Company"
},
"data": [
{
"vendor": "6da785f0e971e08",
"vendor_number": "VEN-00030",
"vendor_number_ud": "0",
"po": "f47e5928d838366f88a3805b723473",
"po_number": "PO-20-00306",
"po_status": "Approved",
"po_receiving_status": "Not Received",
"po_order_date": "2021-02-08",
"po_due_date": "2021-02-08",
"line_number": "1",
"line_status": "Active",
"item": "1e891f3e50e9f884deec336166efc5",
"item_number": "ITEM-01598",
"item_number_ud": "",
"uom_name": "EACH",
"uom_iso_short": "EA",
"item_desc_long": "SILICONE, MULTISEAL TRANSLUCENT 300ML",
"po_std_quantity": "3.00000",
"po_received": "0.00000",
"item_buy_price": "3.54000",
"created": {
"user": "39ba9a4e4261e664d8ac2cb54ea043",
"user_name": "Bill Oliver",
"date": "2020-11-30",
"stamp": "1606753720"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
line_number | Integer | Purchase Order line number |
item | String | Item global identifier |
item_number | String | Moducore generated identifier |
item_number_ud | String | User provided identifier |
item_desc_long | String | Long descriptor for Inventory Item |
uom_name | String | Standard Unit of Measure Name |
uom_iso_short | String | ISO Standard Abbreviation |
po_std_quantity | Decimal | Purchase Order Standard Quantity |
po_received | Decimal | Standard Quantity Received to Date |
item_buy_price | Decimal | Per Unit Buy Price |
Purchase Orders — by Lines — Issued
This endpoint will display Purchase Orders that are Issued.
Endpoint
/get/procurement/purchase-orders/lines/issued/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "*DNU* Demo Company"
},
"data": [
{
"vendor": "6da785f0e971e08",
"vendor_number": "VEN-00030",
"vendor_number_ud": "0",
"po": "f47e5928d838366f88a3805b723473",
"po_number": "PO-20-00306",
"po_status": "Approved",
"po_receiving_status": "Not Received",
"po_order_date": "2021-02-08",
"po_due_date": "2021-02-08",
"line_number": "1",
"line_status": "Active",
"item": "1e891f3e50e9f884deec336166efc5",
"item_number": "ITEM-01598",
"item_number_ud": "",
"uom_name": "EACH",
"uom_iso_short": "EA",
"item_desc_long": "SILICONE, MULTISEAL TRANSLUCENT 300ML",
"po_std_quantity": "3.00000",
"po_received": "0.00000",
"item_buy_price": "3.54000",
"created": {
"user": "39ba9a4e4261e664d8ac2cb54ea043",
"user_name": "Bill Oliver",
"date": "2020-11-30",
"stamp": "1606753720"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
line_number | Integer | Purchase Order line number |
item | String | Item global identifier |
item_number | String | Moducore generated identifier |
item_number_ud | String | User provided identifier |
item_desc_long | String | Long descriptor for Inventory Item |
uom_name | String | Standard Unit of Measure Name |
uom_iso_short | String | ISO Standard Abbreviation |
po_std_quantity | Decimal | Purchase Order Standard Quantity |
po_received | Decimal | Standard Quantity Received to Date |
item_buy_price | Decimal | Per Unit Buy Price |
Purchase Orders — by Lines — Complete
This endpoint will display Purchase Orders that are Complete.
Endpoint
/get/procurement/purchase-orders/lines/complete/
Response:
{
"response": {
"code": "200",
"message": "OK - Moducore API Call Success.",
"business_name": "*DNU* Demo Company"
},
"data": [
{
"vendor": "6da785f0e971e08",
"vendor_number": "VEN-00030",
"vendor_number_ud": "0",
"po": "f47e5928d838366f88a3805b723473",
"po_number": "PO-20-00306",
"po_status": "Approved",
"po_receiving_status": "Not Received",
"po_order_date": "2021-02-08",
"po_due_date": "2021-02-08",
"line_number": "1",
"line_status": "Active",
"item": "1e891f3e50e9f884deec336166efc5",
"item_number": "ITEM-01598",
"item_number_ud": "",
"uom_name": "EACH",
"uom_iso_short": "EA",
"item_desc_long": "SILICONE, MULTISEAL TRANSLUCENT 300ML",
"po_std_quantity": "3.00000",
"po_received": "0.00000",
"item_buy_price": "3.54000",
"created": {
"user": "39ba9a4e4261e664d8ac2cb54ea043",
"user_name": "Bill Oliver",
"date": "2020-11-30",
"stamp": "1606753720"
}
},
]
}
Response Data
Field | Type | Description |
---|---|---|
vendor | String | Vendor global identifier |
vendor_number | String | Moducore generated identifier |
vendor_number_ud | String | User provided identifier |
po | String | Purchase order global identifier |
po_number | String | Purchase order number |
po_status | String | Current purchase order status for order |
po_receiving_status | String | Current receiving status for order |
po_order_date | String | Date order was sent to vendor |
po_due_date | String | Date order is required by |
line_number | Integer | Purchase Order line number |
item | String | Item global identifier |
item_number | String | Moducore generated identifier |
item_number_ud | String | User provided identifier |
item_desc_long | String | Long descriptor for Inventory Item |
uom_name | String | Standard Unit of Measure Name |
uom_iso_short | String | ISO Standard Abbreviation |
po_std_quantity | Decimal | Purchase Order Standard Quantity |
po_received | Decimal | Standard Quantity Received to Date |
item_buy_price | Decimal | Per Unit Buy Price |