Fulfiller API
Below you'll find documentation for the four API endpoints, complete with sample requests and responses. You'll need to install the app from the "App Store". Once you click to install that app, you'll be provided an API Token that can be used to authenticate your API requests (if you need a new token, just uninstall and reinstall the app and a new token will be generated). Please note that you'll first need to install the Product SKUs app.
If you do a GET on the /variations endpoint, you'll see that by default all SKUs will be LRV#{variation_id}. You can also go into the product editor for every product and click the gear icon to the right of every variation and assign a SKU (https://cl.ly/0z0b3a0Z2T1y) that matches your warehouse. Once that's done, the order and variation API endpoints will begin using your own SKUs.
Fulfiller API Authentication
Append provided API Token to requests as the token
query parameter. An API
Token is provided when going to the App Store and installing "Fulfiller API".
Inventory Management
Get Current Inventory Levels
Method: GET
URL: https://#{store_subdomain}.limitedrun.com/v1/integrations/fulfiller/variations.json?token=#{api_token}
Example Response:
{
"status": {
"response_code": 200,
"message": "OK"
},
"variations": [
{
"sku": "LRV500379",
"name": "CD + Digital Download",
"price": 12,
"inventory": 424
},...
]
}
Update Remaining Inventory
Method: PUT
URL: https://#{store_subdomain}.limitedrun.com/v1/integrations/fulfiller/variations/#{variation_sku}.json?token=#{api_token}
Example Request:
{
"inventory": 414
}
Example Response (When Successfully Updated):
{
"status": {
"response_code": 200,
"message": "OK"
}
}
Example Response (When variation_sku Not Found):
{
"status": {
"response_code": 404,
"message": "Not Found"
}
}
Example Response:
{
"status": {
"response_code": 422,
"message": "Unprocessable Entity: A valid inventory is required."
}
}
Order Management
Get Unshipped Orders
By default, making a request to this endpoint will only return orders that have not yet been previously returned. Make a request here and receive three new orders back and then immediately make the same request, and zero orders will be returned.
If necessary, you can append the unshipped=true
query parameter and all
unshipped orders will be returned.
Method: Get
URL (Unseen Orders): https://#{store_subdomain}.limitedrun.com/v1/integrations/fulfiller/orders.json?token=#{api_token}
URL (All Unshipped Orders): https://#{store_subdomain}.limitedrun.com/v1/integrations/fulfiller/orders.json?token=#{api_token}&unshipped=true
Example Response:
{
"status": {
"response_code": 200,
"message": "OK"
},
"orders": [
{
"id": "160915001927359-8ba2ac",
"created_at": "2016-09-15 00:19:27",
"currency_code": "USD",
"subtotal": 12,
"shipping": 2,
"discount": false,
"discount_summary": null,
"discount_amount": 0,
"tax": 0,
"total": 14,
"customer_email": "jsmith@gmail.com",
"customer_first_name": "Jane",
"customer_last_name": "Smith",
"shipping_method": "USPS Media Mail",
"shipping_address_first_name": "Jane",
"shipping_address_last_name": "Smith",
"shipping_address_street_address_1": "996 Manhattan Ave",
"shipping_address_street_address_2": "",
"shipping_address_city": "Brooklyn",
"shipping_address_state": "New York",
"shipping_address_postal_code": "11222",
"shipping_address_country": "US",
"billing_address_first_name": null,
"billing_address_last_name": null,
"billing_address_street_address_1": null,
"billing_address_street_address_2": null,
"billing_address_city": null,
"billing_address_state": null,
"billing_address_postal_code": null,
"billing_address_country": null,
"order_notes": "",
"order_items": [
{
"sku": "LRV500379",
"name": "Monster... With Eyes of a Boy - Album - CD + Digital Download",
"quantity": 1,
"subtotal": 12,
"tax": 0,
"total": 12
}
]
},...
]
}
Mark Order as Shipped
Note that the shipping_notification
parameter indicates whether we
should deliver an order update email with the included shipping details
to the customer. If this parameter is not included, it defaults to true.
Method: PUT
URL: https://#{store_subdomain}.limitedrun.com/v1/integrations/fulfiller/orders/#{order_id}.json?token=#{api_token}
Example Request:
{
"shipping_method": "USPS Media Mail",
"shipping_tracking_number": "9400111899563218528813"
"shipping_notification": true
}
Example Response (When Successfully Updated):
{
"status": {
"response_code": 200,
"message": "OK"
}
}
Example Response (When order_id Not Found):
{
"status": {
"response_code": 404,
"message": "Not Found"
}
}