Image Tools provides a JSON API for quick image manipulation, letting you free to spend your energy on other less mundane tasks.
Presently, the API supports the following actions:
* Transformation back and forth of standard images into Data URLs
* Watermarking
* Creation of thumbnails
* EXIF editing
On the pipeline, we have the following:
* Cropping
* Applying custom filters
The supported file types are `JPEG` and `PNG`, but in the future we might add more.
All actions are done using [Data URLs](https://developer.mozilla.org/en-US/docs/web/http/basics_of_http/data_urls) provided by the user, but we offer the `transform/` endpoints if you need to turn your images to this format.
Receives an image and returns it as a Data URL string.
Object | Description |
---|---|
Request Body |
[Required] File Binary |
{"data_url":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAADS8AAA0vCAYAAADZZL9rAAAACXBIWXMAAC4jAAAuIwF4pT92AAAE7mlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLyc+CiAgICAgICAgPHJkZjpSREYgeG1sbnM6cmRmPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjJz4KCiAgICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9JycKICAgICAgICB4bWxuczpkYz0naHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8nPgogICAgICAgIDxkYzp0aXRsZT4KICAgICAgICA8cmRmOkFsdD4KICAgICAgICA8cmRmOmxpIHhtbDpsYW5nPSd4LWRlZmF1bHQnPkdlbmVyYWwgLSA5NDwvcmRmOmxpPgogICAgICAgIDwvcmRmOkFsdD4KICAgICAgICA8L2RjOnRpdGxlPgogICAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgoKICAgICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0nJwogICAgICAgIHhtbG5zOkF0dHJpYj0naHR0cDovL25zLmF0dHJpYnV0aW9uLmNvbS9hZHMvMS4wLyc+CiAgICAgICAgPEF0dHJpYjpBZHM+CiAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSdSZXNvdXJjZSc+CiAgICAgICAgPEF0dHJpYjpDcmVhdGVkPjIwMjQtMDUtMjI8L0F0dHJpYjpDcmVhdGVkPgogICAgICAgIDxBdHRyaWI6RXh0SWQ+ZTAyNjIwYzAtZTllMS00OTkzLWE1MTgtYjQwMWE5YjAxMTMxPC9BdHRyaWI6RXh0SWQ+CiAgICAgICAgPEF0dHJpYjpGYklkPjUyNTI2NTkxNDE3OTU4MDwvQXR0cmliOkZiSWQ+CiAgICAgICAgPEF0dHJpYjpUb3VjaFR5cGU+MjwvQXR0cmliOlRvdWNoVHlwZT4KICAgICAgICA8L3JkZjpsaT4KICAgICA.."}
curl --location 'https://zylalabs.com/api/3861/image+tools+api/4541/transform+image+into+data+url' \
--header 'Content-Type: application/json' \
--form 'image=@"FILE_PATH"'
This endpoint takes 2 images, the original image that will be watermarked and the smaller image that will be used as a watermark.
The user can also set some properties, such as the `opacity` of the watermark (value between 0 and 100), and the mode of the watermark.
The mode can be either `fill` (a single instance of the watermark that covers the whole image) or `repeat` (the watermark will be repeated until it covers the whole image).
{
"result": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4QAWRXhpZgAATU0AKgAAAAgAAAAAAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyM..."}
curl --location --request POST 'https://zylalabs.com/api/3861/image+tools+api/4542/watermark+using+other+image' --header 'Authorization: Bearer YOUR_API_KEY'
Replaces the whole EXIF metadata, with new key-value pairs.
{
"result": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4QAsRXhpZgAATU0AKgAAAAgAAQEPAAIAAAAJAAAAGgAAAABTb210aGluZwAA/9sAQwAIBgYHBgUIBwcHCQkICgwUDQwLCwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3K..."}
curl --location --request PUT 'https://zylalabs.com/api/3861/image+tools+api/4543/replace+the+images+exif+metadata' --header 'Authorization: Bearer YOUR_API_KEY'
Replaces or adds extra EXIF metadata to the image.
{
"result": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4QAsRXhpZgAATU0AKgAAAAgAAQEPAAIAAAAKAAAAGgAAAABTb21ldGhpbmcA/9sAQwAIBgYHBgUIBwcHCQkICg..."}
curl --location --request PATCH 'https://zylalabs.com/api/3861/image+tools+api/4544/edit+existing+exif+metadata' --header 'Authorization: Bearer YOUR_API_KEY'
Removes all EXIF metadata present in the provided image.
{
"result": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy..."}
curl --location --request DELETE 'https://zylalabs.com/api/3861/image+tools+api/4545/remove+exif+metadata+from+the+image' --header 'Authorization: Bearer YOUR_API_KEY'
Creates a thumbnail preserving the aspect ratio. Maximum dimensions must be provided.
{
"result": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/4QAWRXhpZgAATU0AKgAAAAgAAAAAAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIsIxwcKDcpLDAx..."}
curl --location --request POST 'https://zylalabs.com/api/3861/image+tools+api/4550/create+thumbnail+of+the+image' --header 'Authorization: Bearer YOUR_API_KEY'
After signing up, every developer is assigned a personal API access key, a unique combination of letters and digits provided to access to our API endpoint. To authenticate with the Image Tools API REST API, simply include your bearer token in the Authorization header.
Header | Description |
---|---|
Authorization
|
[Required] Should be Bearer access_key . See "Your API Access Key" above when you are subscribed. |
No long term commitments. One click upgrade/downgrade or cancellation. No questions asked.
Presently, we support "PNG" and "JPEG". Support for more formats is planned depending on the needs of our customers.
We use Data URLs so we can provide a clear and easy to use JSON API. Data URLs can be used directly by your application, since they are widely supported. If that is not the case, we also offer the "/transform/" endpoints, that allow you to convert back and forth images into data URLs.
Sure. We have more features in the pipeline, but we are always willing to listen to our customers and prioritize differently.
In this early release we restricted the API to a certain volume of traffic, but soon we will review the limits of our plans.
We plan to add endpoints for image cropping and to apply filters on the images.
Zyla API Hub is, in other words, an API MarketPlace. An all-in-one solution for your developing needs. You will be accessing our extended list of APIs with only your user. Also, you won't need to worry about storing API keys, only one API key for all our products is needed.
Prices are listed in USD. We accept all major debit and credit cards. Our payment system uses the latest security technology and is powered by Stripe, one of the worldβs most reliable payment companies. If you have any trouble with paying by card, just contact us at [email protected]
Sometimes depending on the bank's fraud protection settings, a bank will decline the validation charge we make when we attempt to be sure a card is valid. We recommend first contacting your bank to see if they are blocking our charges. If more help is needed, please contact [email protected] and our team will investigate further
Prices are based on a recurring monthly subscription depending on the plan selected β plus overage fees applied when a developer exceeds a planβs quota limits. In this example, you'll see the base plan amount as well as a quota limit of API requests. Be sure to notice the overage fee because you will be charged for each additional request.
Zyla API Hub works on a recurring monthly subscription system. Your billing cycle will start the day you purchase one of the paid plans, and it will renew the same day of the next month. So be aware to cancel your subscription beforehand if you want to avoid future charges.
Just go to the pricing page of that API and select the plan that you want to upgrade to. You will only be charged the full amount of that plan, but you will be enjoying the features that the plan offers right away.
Yes, absolutely. If you want to cancel your plan, simply go to your account and cancel on the Billing page. Upgrades, downgrades, and cancellations are immediate.
You can contact us through our chat channel to receive immediate assistance. We are always online from 9 am to 6 pm (GMT+1). If you reach us after that time, we will be in contact when we are back. Also you can contact us via email to [email protected]
Service Level:
100%
Response Time:
1,554ms
Service Level:
93%
Response Time:
2,885ms
Service Level:
100%
Response Time:
2,705ms
Service Level:
100%
Response Time:
0ms
Service Level:
100%
Response Time:
0ms
Service Level:
100%
Response Time:
0ms
Service Level:
100%
Response Time:
774ms
Service Level:
100%
Response Time:
4,757ms
Service Level:
100%
Response Time:
690ms
Service Level:
100%
Response Time:
688ms
Service Level:
100%
Response Time:
0ms
Service Level:
100%
Response Time:
588ms
Service Level:
100%
Response Time:
1,493ms
Service Level:
100%
Response Time:
3,731ms
Service Level:
100%
Response Time:
0ms
Service Level:
93%
Response Time:
6,714ms
Service Level:
100%
Response Time:
0ms