ERC ERP Integration APIs

  • Catalog
  • SO
  • PO
  • BOM
  • Storage Units
  • Users

Catalog

METHOD: GET URL: /{tenant}/api/v1/manufacturing/catalogs?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body Retrieve all catalogs GET https://app.senitron.net/democ10/api/v1/manufacturing/catalogs.json?key=en9328udcn9uewfn98ewut9f8rne8tjur4eimfdkvhciudghfiudhgfdj
METHOD: GET URL: /{tenant}/api/v1/manufacturing/catalogs/(id)?key={api_key} ID: Single of item number from the catalog items RESPONSE: 200 -> OK 404 -> Error, reason included in the response body Retrieve information of catalog for item/s GET https://app.senitron.net/democ10/api/v1/manufacturing/catalogs/000001.json?key=en9328udcn9uewfn98ewut9f8rne8tjur4eimfdkvhciudghfiudhgfdj
METHOD: POST URL: /{tenant}/api/v1/manufacturing/catalogs?key={api_key} BODY: JSON Object containing the catalog details RESPONSE: 200 -> OK 404 -> Error, reason included in the response body POST https://app.senitron.net/democ10/api/v1/manufacturing/catalogs?key=en9328udcn9uewfn98ewut9f8rne8tjur4eimfdkvhciudghfiudhgfdj

BODY
{
    "type": "Regular",
    "alu": "0001",
    "price": "12",
    "style": "New Style",
    "upc": "123",
    "description": "Description of Catalog",
    "colour": "Red",
    "cloud_picture_url": "image url",
    "total_qty": "4",
    "extra": "Extra information",
    "categories": {
        "name": "Parent Category",
        "children": [
             {
     		"name": "Child Category",
        	"children": []
    		}
        ]
    }
}
METHOD: PUT/PATCH URL: /{tenant}/api/v1/manufacturing/catalogs/(id)?key={api_key} BODY: JSON Object containing the catalog details RESPONSE: 200 -> OK 404 -> Error, reason included in the response body PUT/PATCH https://app.senitron.net/democ10/api/v1/manufacturing/catalogs/000001.json?key=en9328udcn9uewfn98ewut9f8rne8tjur4eimfdkvhciudghfiudhgfdj

BODY
{
    "type": "Regular",
    "alu": "0001",
    "price": "12",
    "style": "New Style",
    "upc": "123",
    "description": "Description of Catalog",
    "colour": "Red",
    "cloud_picture_url": "image url",
    "total_qty": "4",
    "extra": "Extra information",
    "categories": {
        "name": "Parent Category",
        "children": [
             {
     		"name": "Child Category",
        	"children": []
    		}
]
    }
}
Response
{
     “message”: “ok”
}

METHOD: DELETE

URL: /{tenant}/api/v1/manufacturing/catalogs?api_key={api_key}&alu={alu}&permanent={false}
alu: catalog item ALU value
permanent: If this param is present and value is true, API deletes item physically and remove it from database, else the item will delete logically

RESPONSE:
200 -> OK
404 -> Error, reason included in the response body

DELETE
https://app.senitron.net/democ10/api/v1/manufacturing/catalogs?api_key=xxxxx&alu=100000&permanent=false
Response
{
     “message”: “ok”
}

SO (Sale Orders)

METHOD: GET URL: /{tenant}/{store_code}/api/v1/external_shipment?key={api_key} RESPONSE: 200 -> OK

[
   {
       "id": 1,
       "type_id": "SO",
       "shipping_id": "106710",
       "customer_id": "PRUNESCO",
       "customer_name": "PRUNESCO SA",
       "shipment_price": "0.0",
       "expected_receipt_date": "2019-06-20T00:00:00.000Z",
       "expected_qty": 20,
       "send_api_time": "2019-06-20T14:00:00.000Z",
       "created_at": "2019-08-16T14:31:56.973Z",
       "updated_at": "2019-08-16T14:31:56.973Z",
       "status": "Pending"
   }
]
METHOD: POST URL: /{tenant}/{store_code}/api/v1/external_shipment?key={api_key} BODY: JSON Object containing the external shipment details RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
  	"type_id": "SO",
  	"shipping_id": "106710",
  	"customer_id": "PRUNESCO",
  	"customer_name": "PRUNESCO SA",
  	"shipment_price": 0.0,
  	"expected_receipt_date": "2019-06-20",
  	"expected_qty": 20,
  	"send_api_time": "2019-06-20 14:00",
  	"Items": [
       	{
             	"shipping_id": "106710",
             	"item_number": "PR-30010",
             	"item_description": "Pitted Prunes 30/40",
             	"storage_unit": "case",
             	"unit_weight": 25,
             	"measure_unit": "lbs",
             	"measure_unit_cost": 0.0,
             	"shipment_price": 0.0,
             	"expected_qty": 20,
             	"expected_receipt_date": "2019-06-20"
       	},
       	{
             	"shipping_id": "106710",
             	"item_number": "PR-30010",
             	"item_description": "Pitted Prunes 30/40",
             	"storage_unit": "case",
             	"unit_weight": 25,
             	"measure_unit": "lbs",
             	"measure_unit_cost": 0.0,
  	       "shipment_price": 0.0,
             	"expected_qty": 20,
             	"expected_receipt_date": "2019-06-20"
       	}
  	]
}
METHOD: PATCH URL: /{tenant}/{store_code}/api/v1/external_shipment?key={api_key} BODY: JSON Object containing the external shipment details RESPONSE: 200 -> OK 404 -> Error, reason included in the response body BODY { "type_id": "SO", "shipping_id": "106710", "customer_id": "PRUNESCO", "customer_name": "PRUNESCO SA", "shipment_price": 0.0, "expected_receipt_date": "2019-06-20", "expected_qty": 20, "send_api_time": "2019-06-20 14:00", "Items": [ { "shipping_id": "106710", "item_number": "PR-30010", "item_description": "Pitted Prunes 30/40", "storage_unit": "case", "unit_weight": 25, "measure_unit": "lbs", "measure_unit_cost": 0.0, "shipment_price": 0.0, "expected_qty": 20, "expected_receipt_date": "2019-06-20" }, { "shipping_id": "106710", "item_number": "PR-30010", "item_description": "Pitted Prunes 30/40", "storage_unit": "case", "unit_weight": 25, "measure_unit": "lbs", "measure_unit_cost": 0.0, "shipment_price": 0.0, "expected_qty": 20, "expected_receipt_date": "2019-06-20" } ] } Response { “message”: “ok” }
METHOD: DELETE URL: /{tenant}/{store_code}/api/v1/external_shipment?key={api_key}&shipping_id={shipping_id} ID: Single of item number from the external shipment items RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

Response
{
     “message”: “ok”
}

PO (Purchase Orders)

METHOD: POST URL: /{client_code}/api/v1/manufacturing/external_receive_api?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "type_id": "PO",
    "receiving_id": "106710",
    "vendor_id": "PRUNESCO",
    "vendor_name": "PRUNESCO SA",
    "receive_price": 0.0,
    "expected_receipt_date": "2019-06-20",
    "expected_qty": 20,
    "send_api_time": "2019-06-20 14:00",
    "locked": false,
    "Items": [
        {
            "receiving_id": "106710",
            "item_number": "PR-30010",
            "item_description": "Pitted Prunes 30/40",
            "storage_unit": "case",
            "unit_weight": 25,
            "measure_unit": "lbs",
            "measure_unit_cost": 0.0,
            "receive_price": 0.0,
            "line_uofm_code": "CS1",
            "expected_qty": 20,
            "expected_receipt_date": "2019-06-20"
        },
        {
            "receiving_id": "106710",
            "item_number": "PR-30010",
            "item_description": "Pitted Prunes 30/40",
            "storage_unit": "case",
            "unit_weight": 25,
            "measure_unit": "lbs",
            "measure_unit_cost": 0.0,
            "receive_price": 0.0,
            "line_uofm_code": "CS1",
            "expected_qty": 20,
            "expected_receipt_date": "2019-06-20"
    }]
}

Response { "message": "ok" }

 
METHOD: PUT / PATCH URL: /{client_code}/api/v1/manufacturing/external_receive_api?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "type_id": "PO",
    "receiving_id": "106710",
    "vendor_id": "PRUNESCO",
    "vendor_name": "PRUNESCO SA",
    "receive_price": 0.0,
    "expected_receipt_date": "2019-06-20",
    "expected_qty": 20,
    "send_api_time": "2019-06-20 14:00",
    "locked": false,
    "Items": [
        {
            "receiving_id": "106710",
            "item_number": "PR-30010",
            "item_description": "Pitted Prunes 30/40",
            "storage_unit": "case",
            "unit_weight": 25,
            "measure_unit": "lbs",
            "measure_unit_cost": 0.0,
            "receive_price": 0.0,
            "line_uofm_code": "CS1",
            "expected_qty": 20,
            "expected_receipt_date": "2019-06-20"
        },
        {
            "receiving_id": "106710",
            "item_number": "PR-30010",
            "item_description": "Pitted Prunes 30/40",
            "storage_unit": "case",
            "unit_weight": 25,
            "measure_unit": "lbs",
            "measure_unit_cost": 0.0,
            "receive_price": 0.0,
            "line_uofm_code": "CS1",
            "expected_qty": 20,
            "expected_receipt_date": "2019-06-20"
    }]
}

Response { "message": "ok" }

 
METHOD: DELETE URL: /{client_code}/api/v1/manufacturing/external_receive_api?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "receiving_id": 106710
}

Response { "message": "ok" }

BOM (Bill of Materials)

URL: /{client_code}/api/v1/bom_data?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body
METHOD: POST URL: /{client_code}/api/v1/bom_data?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "assembly_bom": false,
    "type": 0,
    "child_item_id": 3988238,
    "description": "ALMONDS RAW NPS 20/22 50LBS",
    "disable": false,
    "id": 982,
    "installed_in_item_no": "",
    "installed_in_line_no": 0,
    "item_id": 3988237,
    "lead_time_offset": "",
    "line_no": "10000",
    "position": "",
    "position_2": "",
    "position_3": "",
    "quantity_per": "1.0",
    "resource_usage_type": 0,
    "unit_of_measure_code": "LB",
    "variant_code": ""
}
Response
{
    "message": "ok"
}
METHOD: PUT / PATCH URL: /{client_code}/api/v1/bom_data?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "assembly_bom": false,
    "type": 0,
    "child_item_id": 3988238,
    "description": "ALMONDS RAW NPS 20/22 50LBS",
    "disable": false,
    "id": 982,
    "installed_in_item_no": "",
    "installed_in_line_no": 0,
    "item_id": 3988237,
    "lead_time_offset": "",
    "line_no": "10000",
    "position": "",
    "position_2": "",
    "position_3": "",
    "quantity_per": "1.0",
    "resource_usage_type": 0,
    "unit_of_measure_code": "LB",
    "variant_code": ""
}
Response
{
    "message": "ok"
}
METHOD: DELETE URL: /{client_code}/api/v1/bom_data?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "item_id": 3988237,
    "line_no": "10000"
}
Response
{
    "message": "ok"
}

Storage Units

METHOD: GET URL: /{tenant}/api/v1/manufacturing/integration/storage-units?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body Retrieve all Storage Units GET https://app.senitron.net/democ10/api/v1/manufacturing/integration/storage-units?key=en9328udcn9uewfn98ewut9f8rne8tjur4eimfdkvhciudghfiudhgfdj
METHOD: POST URL: /{client_code}/api/v1/manufacturing/integration/storage-units?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "item_number": "AL-1000",
    "name": "CS1"
    "measure_unit": "500.00000"
}
Response
{
    "message": "ok"
}
METHOD: PUT / PATCH URL: /{client_code}/api/v1/manufacturing/integration/storage-units?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "item_number": "AL-1000",
    "name": "CS1"
    "measure_unit": "500.00000"
}

Response { "message": "ok" }

METHOD: DELETE URL: /{client_code}/api/v1/manufacturing/integration/storage-units/{id}?key={api_key} ID: Storage Unit ID RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "item_number": "AL-1000",
    "name": "CS1"
}
Response
{
    "message": "ok"
}

Users

URL: /{client_code}/api/v1/manufacturing/integration/users?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

Response
{
    "id":                               34,
    "client_id:                         93,
    "username":                         "John Doe",
    "full_name":                        "John Doe Jr.",
    "posting_date_allowed_range_start": "2020-05-01",
    "posting_date_allowed_range_end":   "2020-05-31",
    "created_at":                       "2019-10-10T10:37:34.932-07:00",
    "updated_at":                       "2019-10-10T10:37:34.932-07:00"
}
METHOD: POST URL: /{client_code}/api/v1/manufacturing/integration/users?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "username": "John Doe",
    "full_name": "John Doe Jr.",
    "email": "john.doe@test.com", // OPTIONAL
    "posting_date_allowed_range_start": "2020-05-01",
    "posting_date_allowed_range_end": "2020-05-31"
}

Response { "message": "ok" }

METHOD: PUT / PATCH URL: /{client_code}/api/v1/manufacturing/integration/users?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "username":                         "John Doe",
    "full_name":                        "John Doe Jr.",
    "email":                            "john.doe@test.com",  // OPTIONAL
    "posting_date_allowed_range_start": "2020-05-01",
    "posting_date_allowed_range_end":   "2020-05-31"
}

Response { "message": "ok" }

METHOD: DELETE URL: /{client_code}/api/v1/manufacturing/integration/users?key={api_key} RESPONSE: 200 -> OK 404 -> Error, reason included in the response body

BODY
{
    "email": "john.doe@test.com"
}

Response { "message": "ok" }