API

  • Connecting Upgates via API

Attention! Connection via user API is a extra charge service. Exceptions are partner API connections through add-ons labeled "Verified," which are free of charge.

What is the Upgates API

An API is an application programming interface used to pass data between Upgates and other applications in a formalized way. Upgates offers a public API that allows anyone to submit content to or receive content from the service.

A large number of offered add-ons are controlled and continuously connected through the API interface. A big advantage of this technology is the constant updating of data, which can be synchronized in two or more places at the same time.

Thanks to the API, you can work with data in the system (insert, update, read, delete) in real time and connect, for example, your accountant, ERP, or other system with Upgates. So when you update, for example, the inventory value of a warehouse in Upgates, the application creates an API request to change the status in another system.


User vs. Partner API

The API is divided into two parts: User and Partner.

User API

It serves Upgates clients to connect their own tool, or a 3rd party that is not currently part of the Upgates partner program and does not have its own verified add-on.
This part of the API is paid according to the current price list. If you wish to use the free API, it is necessary to rework the 3rd party / your tool into a Partner api and a verified add-on.

API Limits (Limits)

User API is subject to set limits. Each Upgates client has an e-shop in a certain tariff according to the current price list. Each tariff has its own API limit, which limits the number of calls to the given API. Once the limit is reached the API will not work for some time. You can find a list of these limits in our APIary documentation.

What to do if the limits are not enough for you?

If the basic limits in the API are not enough for you and you need more, we recommend that you first check whether your API connection could be optimized.
Best Practices for using the API, we clearly listed in our APIary documentation. If you don't know how to optimize your API and want to know what to improve in your connection, don't hesitate to contact our technical support through the ticketing system in your administrations.

If you have optimized the API on your side, but your e-shop is so large that, despite the optimization, you reach basic limits. You can increase the given limits.
You can do the increase in your administration in the Add-ons / API - Restrictions and prices section.
Here in the Request Limits section, you can use "+" and "-" to set the number of packages that will raise the given limit. Subsequently, once you have set the number of packages, confirm your selection with the Save button.

If you are exceeding the limit and do not know how much you should set within the given limit of requests, you can use the Set recommended limit button in the message that alerts you to exceeding the limit. The system will automatically set the recommended limit so that you have enough space to operate through your user API.
The maximum number of packages is 60, which corresponds to 60,000 requests per day. 99% of all e-shops should fit within this limit.

If you have additional questions, you can take a look at the most frequently solved situations with the API in our article.


Partner API

It is intended for agencies that want to offer their add-on to Upgates clients. Partner APIs are not covered by the paid portion of the API.
Clients using a connection via a verified agentruy add-on have a free API connection.
If you are an agency and are interested in a verified plugin, you can learn more about it in our developer section.

How to recognize a verified add-on in the administration?

Viewing a verified add-on in Administration

View a verified add-on in the Marketplace


Limiting the number of requests

The number of requests is compiled from the basic limit according to the selected tariff from the business model (price list). and an individual limit that each client can determine (purchase) himself.

 

So how does it work?

  • Each limit is made up of hourly and daily number of requests.
  • Once the hourly limit is exceeded, it is drawn from the additional daily limit.
  • As soon as the hourly and daily limits are exceeded, you always have to wait until the beginning of the next hour with further requests, when the number of requests per hour is reset.
  • Your developer is informed about the current status of the number of requests in individual limits (per day and hour) in the API communication response. As soon as the limits are exceeded, the API communication will not work and the API will return a message to your developer, notifying him that the limit has been exceeded.

* An hour is the interval starting from the first second to the last second of a given hour.
** A day is an interval starting from the first second to the last second of a given day.

Number of base limit requests:

TariffHourly limitDaily limitTotal
Bronze10100340
Silver15300660
Gold506001800
Platinum10015003900
Exclusive10015003900 (+ individual expansion options)

Number of individual limit requests:

This individual limit is made up of separate "packages", which are made up of 1000 requests. These 1000 requests are split between a daily and an hourly limit.

25 requests per hour and 400 per day.

Total of 600 (25 requests x 24 hours) + 400 daily = 1000

The maximum number of packages that can be purchased is 60. This corresponds to 60,000 requests per day. If you need an even higher limit, please contact technical support.


The most common errors in API connection

The limits of individual versions are set with a very sufficient margin. In 99% of cases, there is no need to approach this limit at all.

Below are some of the most common errors:

  1. Regular and repeated queries instead of using Webhooks.
    If there are no changes in the e-shop, it is useless to repeatedly ask what changes have occurred in the e-shop. Webhooks from Upgates send a notification via the API that a certain section (products, categories, etc.) has been created, edited or deleted. Only then can a query be made about the given changes.
    Thus, for example, instead of 24 queries per day to see if there is a new product, not a single query may be made because no products were created that day.
    In addition, Webhooks indicate in their report which specific products, categories, etc. have changed. This means that it is possible to download, for example, only one product and it is not necessary to download all of them.
  2. Downloading large amounts of data
    We understand that using Webhooks (see point 1 above) can be more expensive. However, there are ways to reduce the load and the number of records that both parties have to work with. If you want to query for new orders / products, for example, always use the parameter "last_update_time_from" or similar. Such a parameter in your query can affect the number of results that Upgates has to go through and you, in turn, have to process on your side. For example, instead of downloading all orders and then checking which ones are new, simply use this parameter and download records only from a certain date. For example, the last 2 hours. Thus, instead of downloading orders for 5 years of your e-shop history, only the new ones can be downloaded.
  3. Downloading one record at a time
    Each section has the option to download lists in a so-called paginated manner. A page always contains a certain number of records. So instead of 100 queries for 100 products, you can send only 2 queries for 2 pages containing 100 products.
  4. API Status Query
    It is not necessary to send the API Status query (/status) before each query. If the API is not active, the query you sent will not go through and the API will return an error. So you just need to work with such messages and adapt the data sending accordingly.
  5. Ignoring error messages
    Each query to the Upgates page also returns a response. Error messages and other important information appear in this section. If this response contains, for example, a message that the request limit has been reached, the solution should not be to repeatedly send the query and find out when it will pass. It is necessary to pause the communication and wait for the time interval to elapse.
  6. Remaining number of requests
    Each API query returns the currently set hourly/daily limit in the response, including the number of remaining requests per hour/day. You can work with this information and adapt your communication accordingly so that you don't run out of time.
  7. Data updates
    If you update a part of your e-shop, it is not necessary to send it after certain records. For example, if you edit 10 products on your site, it is not necessary to send them as 10 requests to Upgates via the API. You can combine them into one. So instead of 10 requests, you only have one.

 


Documentation

See the publicly available documentation for specific API options.

Upgates API complies with REST principles.It is possible to connect to API Upgates using unique access. This is a security measure so that your data cannot be accessed by an unauthorized person.

 

 

The addon enables connection to the following services: