Product and Inventory APIs (V1)
Below are the headers required to trigger Fenix’s Product and Inventory API
Authentication API
Resource Name | Authentication: Authenticate external system against the Fenix Inbound data pipeline. |
URL | /login |
Method | POST |
Headers |
|
Response Body | {
"id": "",
"firstName": "fenixname",
"lastName": "Dev",
"phone": null,
"emailId": "fenixname",
"type": "business_user",
"status": "ACTIVE",
"organizationId": "",
"authToken": "MWI2MjcwMTMwhZjQzZDJkMmNmNTI",
"x-identity": "dd77ab3404b93ecebnbhbhbdc04c87fda804c"
} |
Â
Header Name | Description |
---|
Header Name | Description |
---|---|
store_name | Name of the retailer’s store (Shopify, BigCommerce, Enterprise, etc…) which configured in the Fenix System to enable fenix post purchase experience. Note: Fenix Team provides it as part of intial Inbound Integration discussion. |
x-api-key | Note: Fenix Team provides it as part of intial Inbound Integration discussion. And, it gets rotated every 6 months. |
authToken | To authenticate the external system(_3PLs, Enterprise, etc…) which triggers the Fenix Inbound APIs Note1: To get the authToken, external systems must trigger Authentication API using user_name and password provided by the Fenix Team. Collect authToken from API response payload, then use it in further order & fulfillment APIs. Note2: External systems must refresh the authToken every 4 hours (UTC) as it get expired every 4 hours in the Fenix. |
x-identity | To authorise the external system (_3PLs, Enterprise, etc…) to pump above mentioned retailer’s (Shopify, BigCommerce, Enterprise, etc…) orders and fulfillments into the Fenix system. Note: It available as part of the Authention API response payload. And, it gets rotated every 3 months. |
content-type | Request Payload(order & fulfillment) format. Note: Fenix supported type application/json |
username & password | These are used to get authToken & x-identity from Authentication API. Note: These are belongs to external systems (_3PLs, Enterprise, etc…) which pumps retailer’s (Shopify, BigCommerce, Enterprise, etc…) order & fulfillment data into the Fenix. Note: Fenix Team provides them as part of intial Inbound Integration discussion. |
Product Create/Update API
Resource Name | Rest Endpoint to send the prodcut data information Fenix |
Resource URL | /api/v1/external/products |
Method | POST |
Headers |
|
Request Payload | { |
Response Payload | NA |
Response Status | 201 - Success 400 – Failure 401 - Un-Authentication |
Product API Request Payload Data Model:
Attribute Name | Data Type | Description |
id | String | A unique identifier in the entire data model which represent the product. |
webId(*) | String | sku name |
vendorName | String | The name of the product's vendor. |
productId(*) | String | The product id |
productName (*) | String | The name of the product |
dimension.swidth (*) | Integer | product width |
dimensions.girth (*) | Integer | product girth |
dimensions.length (*) | Integer | product length |
dimensions.height(*) | Integer | product height |
weight.weight (*) | Integer | product weight |
categoryId | String | categoryId of product |
categoryName | String | categoryName of product |
weight.weightUnits | String | weight units (default: LBS) |
dimensions.dimensionUnits | String | dimension units |
giftItem | Boolean | is gift item |
leadTime | Integer | product have any lead time |
Inventory Create/Update API
Resource Name | Rest Endpoint to send the prodcut data information Fenix |
Resource URL | /api/v1/external/inventory |
Method | POST |
Headers |
|
Request Payload | { |
Response Payload | NA |
Response Status | 201 - Success 400 – Failure 401 - Un-Authentication |
Inventory API Request Payload Data Model:
Attribute Name | Data Type | Description |
id | String | A unique identifier in the entire data model which represent the product. |
webId(*) | String | sku name |
quantity | String | number of skus |
threshold(*) | Integer | sku have any threshold |
locationId (*) | String | sku have in which location |
allocatedQuantity (*) | Integer | how many skus allocated |
Â