Open documentation ↗Overview
# Endpoint Structure All URLs are in the format: ```text https://api.jumpseller.com/v1/path.json?login=XXXXXX&authtoken=storetoken ``` The path is prefixed by the API version and the URL takes as parameters the login (your store specific API login) and your authentication token. <br/><br/> *** # Version The current version of the API is **v1**. If we change the API in backward-incompatible ways, we'll increase the version number and maintain stable support for the old urls. <br/><br/> *** # Authentication The API uses a token-based authentication with a combination of a login key and an auth token. **Both parameters can be found on the left sidebar of the Account section, accessed from the main menu of your Admin Panel**. The auth token of the user can be reset on the same page.  The auth token is a **32 characters** string. If you are developing a Jumpseller App, the authentication should be done using [OAuth-2](/support/oauth-2). Please read the article [Build an App](/support/apps) for more information. <br/><br/> *** # Curl Examples To request all the products at your store, you would append the products index path to the base url to create an URL with the format: ```text https://api.jumpseller.com/v1/products.json?login=XXXXXX&authtoken=XXXXX ``` In curl, you can invoque that URL with: ```text curl -X GET "https://api.jumpseller.com/v1/products.json?login=XXXXXX&authtoken=XXXXX" ``` To create a product, you will include the JSON data and specify the MIME Type: ```text curl -X POST -d '{ "product" : {"name": "My new Product!", "price": 100} }' "https://api.jumpseller.com/v1/products.json?login=XXXXXX&authtoken=XXXXX" -H "Content-Type:application/json" ``` and to update the product identified with 123: ```text curl -X PUT -d '{ "product" : {"name": "My updated Product!", "price": 99} }' "https://api.jumpseller.com/v1/products/123.json?login=XXXXXX&authtoken=XXXXX" -H "Content-Type:application/json" ``` or delete it: ```text curl -X DELETE "https://api.jumpseller.com/v1/products/123.json?login=XXXXXX&authtoken=XXXXX" -H "Content-Type:application/json" ``` <br/><br/> *** # PHP Examples Create a new Product (POST method) ```php $url = 'https://api.jumpseller.com/v1/products.json?login=XXXXX&authtoken=XXXXX; $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); //post method curl_setopt($ch, CURLOPT_POSTFIELDS, '{ "product" : {"name": "My updated Product!", "price": 99} }'); $result = curl_exec($ch); print_r($result); curl_close($ch); ``` <br/><br/> *** # Plain JSON only. No XML. * We only support JSON for data serialization. * Our node format has no root element. * We use snake_case to describe attribute keys (like "created_at"). * All empty value are replaced with **null** strings. * All API URLs end in .json to indicate that they accept and return JSON. * POST and PUT methods require you to explicitly state the MIME type of your request's body content as **"application/json"**. <br/><br/> *** # Rate Limit You can perform a maximum of: + 240 (two hundred forty) requests per minute and + 8 (eight) requests per second If you exceed this limit, you'll get a 403 Forbidden (Rate Limit Exceeded) response for subsequent requests. The rate limits apply by IP address and by store. This means that multiple requests on different stores are not counted towards the same rate limit. This limits are necessary to ensure resources are correctly used. Your application should be aware of this limits and retry any unsuccessful request, check the following Ruby stub: ```ruby tries = 0; max_tries = 3; begin HTTParty.send(method, uri) # perform an API call. sleep 0.5 tries += 1 rescue unless tries >= max_tries sleep 1.0 # wait the necessary time before retrying the call again. retry end end ``` Finally, you can review the Response Headers of each request: ```
Jumpseller API is a shopping API from jumpseller.com. It needs no API key. It is served over HTTPS. Its OpenAPI description documents 142 endpoints.
At a glance
- Authentication
- No auth
- HTTPS
- Yes
- CORS
- Unknown
- Category
- Shopping
- Base URL
https://api.jumpseller.com/v1- Version
- 1.0.0
- Endpoints
- 142
- OpenAPI
- Specification ↗
- Spec updated
- 2021-08-23
Make a first request
Replace the placeholders; the documentation says exactly where credentials go.
curl -X GET "https://api.jumpseller.com/v1/categories.json" \
-H "Accept: application/json"const response = await fetch("https://api.jumpseller.com/v1/categories.json", {
method: "GET",
headers: {
"Accept": "application/json",
},
});
const data = await response.json();
console.log(data);import requests
response = requests.request(
"GET",
"https://api.jumpseller.com/v1/categories.json",
headers={
"Accept": "application/json",
},
timeout=30,
)
print(response.json())Endpoints
| Method | Path | What it does |
|---|---|---|
| GET | /categories.json | Retrieve all Categories. |
| POST | /categories.json | Create a new Category. |
| GET | /categories/count.json | Count all Categories. |
| GET | /categories/{id}.json | Retrieve a single Category. |
| PUT | /categories/{id}.json | Modify an existing Category. |
| DELETE | /categories/{id}.json | Delete an existing Category. |
| GET | /checkout_custom_fields.json | Retrieve all Checkout Custom Fields. |
| POST | /checkout_custom_fields.json | Create a new CheckoutCustomField. |
| GET | /checkout_custom_fields/{id}.json | Retrieve a single CheckoutCustomField. |
| PUT | /checkout_custom_fields/{id}.json | Update a CheckoutCustomField. |
| DELETE | /checkout_custom_fields/{id}.json | Delete an existing CheckoutCustomField. |
| GET | /countries.json | Retrieve all Countries. |
| GET | /countries/{country_code}.json | Retrieve a single Country information. |
| GET | /countries/{country_code}/regions.json | Retrieve all Regions from a single Country. |
| GET | /countries/{country_code}/regions/{region_code}.json | Retrieve a single Region information object. |
| GET | /custom_fields.json | Retrieve all Store's Custom Fields. |
| POST | /custom_fields.json | Create a new Custom Field. |
| GET | /custom_fields/{id}.json | Retrieve a single CustomField. |
| PUT | /custom_fields/{id}.json | Update a CustomField. |
| DELETE | /custom_fields/{id}.json | Delete an existing CustomField. |
| GET | /custom_fields/{id}/select_options.json | Retrieve all Store's Custom Fields. |
| POST | /custom_fields/{id}/select_options.json | Create a new Custom Field Select Option. |
| GET | /custom_fields/{id}/select_options/{custom_field_select_option_id}.json | Retrieve a single SelectOption from a CustomField. |
| PUT | /custom_fields/{id}/select_options/{custom_field_select_option_id}.json | Update a SelectOption from a CustomField. |
| DELETE | /custom_fields/{id}/select_options/{custom_field_select_option_id}.json | Delete an existing CustomFieldSelectOption. |
| GET | /customer_categories.json | Retrieve all Customer Categories. |
| POST | /customer_categories.json | Create a new CustomerCategory. |
| GET | /customer_categories/{id}.json | Retrieve a single CustomerCategory. |
| PUT | /customer_categories/{id}.json | Update a CustomerCategory. |
| DELETE | /customer_categories/{id}.json | Delete an existing CustomerCategory. |
| GET | /customer_categories/{id}/customers.json | Retrieves the customers in a CustomerCategory. |
| POST | /customer_categories/{id}/customers.json | Adds Customers to a CustomerCategory. |
| DELETE | /customer_categories/{id}/customers.json | Delete Customers from an existing CustomerCategory. |
| GET | /customers.json | Retrieve all Customers. |
| POST | /customers.json | Create a new Customer. |
| GET | /customers/count.json | Count all Customers. |
| GET | /customers/email/{email}.json | Retrieve a single Customer by email. |
| GET | /customers/{id}.json | Retrieve a single Customer by id. |
| PUT | /customers/{id}.json | Update a new Customer. |
| DELETE | /customers/{id}.json | Delete an existing Customer. |
| GET | /customers/{id}/fields | Retrieves the Customer Additional Field of a Customer. |
| POST | /customers/{id}/fields | Adds Customer Additional Fields to a Customer. |
| GET | /customers/{id}/fields/{field_id} | Retrieve a single Customer Additional Field. |
| PUT | /customers/{id}/fields/{field_id} | Update a Customer Additional Field. |
| DELETE | /customers/{id}/fields/{field_id} | Delete a Customer Additional Field. |
| GET | /fulfillments.json | Retrieve all Fulfillments. |
| GET | /fulfillments/count.json | Count all Fulfillments. |
| GET | /fulfillments/{id}.json | Retrieve a single Fulfillment. |
| GET | /hooks.json | Retrieve all Hooks. |
| POST | /hooks.json | Create a new Hook. |
| GET | /hooks/{id}.json | Retrieve a single Hook. |
| PUT | /hooks/{id}.json | Update a Hook. |
| DELETE | /hooks/{id}.json | Delete an existing Hook. |
| GET | /jsapps.json | Retrieve all the Store's JSApps. |
| POST | /jsapps.json | Create a Store JSApp. |
| GET | /jsapps/{code}.json | Retrieve a JSApp. |
| DELETE | /jsapps/{code}.json | Delete an existing JSApp. |
| GET | /order/{id}/fulfillments.json | Retrieve the Fulfillments associated with the Order. |
| GET | /orders.json | Retrieve all Orders. |
| POST | /orders.json | Create a new Order. |
| GET | /orders/after/{id}.json | Retrieve orders filtered by Order Id. |
| GET | /orders/count.json | Count all Orders. |
| GET | /orders/status/{status}.json | Retrieve orders filtered by status. |
| GET | /orders/{id}.json | Retrieve a single Order. |
| PUT | /orders/{id}.json | Modify an existing Order. |
| GET | /orders/{id}/history.json | Retrieve all Order History. |
| POST | /orders/{id}/history.json | Create a new Order History Entry. |
| GET | /pages.json | Retrieve all Pages. |
| POST | /pages.json | Create a new Page. |
| GET | /pages/count.json | Count all Pages. |
| GET | /pages/{id}.json | Retrieve a single Page by id. |
| PUT | /pages/{id}.json | Update a Page. |
| DELETE | /pages/{id}.json | Delete an existing Page. |
| GET | /partners/stores.json | Retrieve statistics. |
| GET | /payment_methods.json | Retrieve all Store's Payment Methods. |
| GET | /payment_methods/{id}.json | Retrieve a single Payment Method. |
| GET | /products.json | Retrieve all Products. |
| POST | /products.json | Create a new Product. |
| GET | /products/after/{id}.json | Retrieves Products after the given id. |
| GET | /products/category/{category_id}.json | Retrieve Products filtered by category. |
| GET | /products/category/{category_id}/count.json | Count Products filtered by category. |
| GET | /products/count.json | Count all Products. |
| GET | /products/search.json | Retrieve a Product List from a query. |
| GET | /products/status/{status}.json | Retrieve Products filtered by status. |
| GET | /products/status/{status}/count.json | Count Products filtered by status. |
| GET | /products/{id}.json | Retrieve a single Product. |
| PUT | /products/{id}.json | Modify an existing Product. |
| DELETE | /products/{id}.json | Delete an existing Product. |
| GET | /products/{id}/attachments.json | Retrieve all Product Attachments. |
| POST | /products/{id}/attachments.json | Create a new Product Attachment. |
| GET | /products/{id}/attachments/count.json | Count all Product Attachments. |
| GET | /products/{id}/attachments/{attachment_id}.json | Retrieve a single Product Attachment. |
| DELETE | /products/{id}/attachments/{attachment_id}.json | Delete a Product Attachment. |
| GET | /products/{id}/digital_products.json | Retrieve all Product DigitalProducts. |
| POST | /products/{id}/digital_products.json | Create a new Product DigitalProduct. |
| GET | /products/{id}/digital_products/count.json | Count all Product DigitalProducts. |
| GET | /products/{id}/digital_products/{digital_product_id}.json | Retrieve a single Product DigitalProduct. |
| DELETE | /products/{id}/digital_products/{digital_product_id}.json | Delete a Product DigitalProduct. |
| GET | /products/{id}/fields.json | Retrieve all Product Custom Fields |
| POST | /products/{id}/fields.json | Add an existing Custom Field to a Product. |
Showing the first 100 of 142 endpoints; the full list is in the documentation.
Questions
Does the Jumpseller API API need an API key?
No. The Jumpseller API API can be called without an API key or sign-up, which makes it handy for prototypes and front-end demos.
Does the Jumpseller API API support HTTPS?
Yes, the Jumpseller API API is served over HTTPS.
How many endpoints does the Jumpseller API API have?
Its OpenAPI description lists 142 endpoints in version 1.0.0. The first 100 are shown on this page.
What are alternatives to the Jumpseller API API?
Other Shopping APIs include Etsy, eBay, Flipkart Marketplace, Inventory Management, Intel Product Catalogue Service.
Similar shopping APIs
Compare alternatives →Etsy
ShoppingManage shop and interact with listings
eBay
ShoppingSell and Buy on eBay
Flipkart Marketplace
ShoppingProduct listing management, Order Fulfilment in the Flipkart Marketplace
Inventory Management
ShoppingMaintaining up-to-date inventory for your items on Walmart.com ensures a great experience for your customers and greater sales opportunities for you.
Intel Product Catalogue Service
ShoppingThis is the documentation for PIM Micro services. In order to use this tool you need to have Basic Auth credentials and a client id. If you dont have one, please make sure to request one by sending an email to the PIM MS team: [[email protected]](mailto:[email protected]?subject=PIMServices)
Item API
ShoppingPlease make sure you use the correct version of the APIs for your use case. To find out the appropriate version, go to the API Docs drop down on the menu.
Listed from APIs.guru (CC0).