API Endpoint Access URL
https://api.pixlab.io/radialblur
Get Your API Key & Try RADIALBLUR Now ↗Description
Radial blur API endpoint blurs images for stunning visual effects in your projects. Perfect for developers and creators looking to enhance image quality with a radial blur effect. Radial blurs an image.
HTTP Methods
GET, POST
HTTP Parameters
Fields | Type | Description |
---|---|---|
img |
URL | Input image URL. If you want to upload your image directly from your app, then submit a multipart/form-data POST request. |
angle |
Float | Apply the effect along this angle (Max value set to 180 degree). |
key |
String | Your PixLab API Key ↗. You can also embed your key in the WWW-Authenticate: HTTP header and omit this parameter if you want to. |
Optional
Fields | Type | Description |
---|---|---|
blob |
Boolean | By default, this API endpoint return a JSON Object holding the link to the image output. But, if this parameter is set to true then the image binary contents is returned instead. |
channel |
Integer | Color channel constant. If this field is missing (Recommended), then all image channels will be affected (See below for the list of channels constant). |
POST Request Body
This section details the requirements for using a POST request instead of a simple GET request.
Allowed Content-Types:
multipart/form-data
application/json
Use multipart/form-data
if you want to upload your image directly (refer to the REST API code samples or The PixLab Github Repository↗ for a working example). If you are using JSON, then your image must be already uploaded somewhere. Call store if you want to upload an image before invoking this endpoint.
Channels Constant
We recommend that you always omit this parameter and let PixLab affect all image channels.
Fields | Value |
---|---|
CHANNEL_RED |
1 |
CHANNEL_GRAY |
1 |
CHANNEL_CYAN |
1 |
CHANNEL_GREEN |
2 |
CHANNEL_MAGENTA |
2 |
CHANNEL_BLUE |
4 |
CHANNEL_YELLOW |
4 |
CHANNEL_ALPHA |
8 |
CHANNEL_OPACITY |
8 |
CHANNEL_MATTE |
8 |
CHANNEL_BLACK |
32 |
CHANNEL_INDEX |
32 |
CHANNEL_ALL |
134217727 |
HTTP Response
The endpoint returns application/json
if the optional blob parameter is not set.
This API endpoint returns a JSON Object after each call only if the optional blob parameter is not set. Otherwise, the image binary contents are returned instead. The following are the JSON fields
returned in the response body:
Fields | Type | Description |
---|---|---|
status |
Integer | Status code 200 indicates success, any other code indicates failure. |
link |
URL | Link to the image output which is usually stored on the pixlab.xyz storage server unless you set your own S3 keys (refer to your dashboard ↗ on how to do that). |
id |
String | Unique image ID. |
error |
String | Error message if status != 200. |
Code Samples
import requests
def apply_radial_blur(image_url: str, angle: int, api_key: str) -> str:
"""Apply radial blur to an image using PixLab API.
Args:
image_url: URL of the image to process
angle: Blur angle in degrees
api_key: PixLab API key
Returns:
URL of the processed image
Raises:
requests.exceptions.RequestException: If API request fails
ValueError: If API returns an error status
"""
params = {
'img': image_url,
'angle': angle,
'key': api_key
}
try:
response = requests.get(
'https://api.pixlab.io/radialblur',
params=params,
timeout=10
)
response.raise_for_status()
data = response.json()
if data['status'] != 200:
raise ValueError(data.get('error', 'Unknown API error'))
return data['link']
except requests.exceptions.RequestException as e:
raise requests.exceptions.RequestException(f"API request failed: {e}")
except json.JSONDecodeError:
raise ValueError("Invalid API response format")
if __name__ == "__main__":
try:
blurred_image_url = apply_radial_blur(
image_url='http://www.drodd.com/images15/nature31.jpg',
angle=45,
api_key='PIXLAB_API_KEY'
)
print(f"Link to the blurred picture: {blurred_image_url}")
except Exception as e:
print(f"Error: {e}")
fetch('https://api.pixlab.io/radialblur?img=http://www.drodd.com/images15/nature31.jpg&angle=45&key=PIXLAB_API_KEY')
.then(response => response.json())
.then(reply => {
if (reply.status !== 200) {
console.log(reply.error);
} else {
console.log("Link to the Blurred picture: " + reply.link);
}
})
.catch(error => console.error('Error:', error));
<?php
$params = [
'img' => 'http://www.drodd.com/images15/nature31.jpg',
'angle' => 45,
'key' => 'PIXLAB_API_KEY'
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.pixlab.io/radialblur?' . http_build_query($params));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
if (curl_errno($ch)) {
die('Curl error: ' . curl_error($ch));
}
curl_close($ch);
$reply = json_decode($response, true);
if ($reply['status'] != 200) {
die($reply['error']);
}
echo "Link to the Blurred picture: " . $reply['link'];
require 'net/http'
require 'json'
uri = URI('https://api.pixlab.io/radialblur')
params = { img: 'http://www.drodd.com/images15/nature31.jpg', angle: 45, key: 'PIXLAB_API_KEY' }
uri.query = URI.encode_www_form(params)
response = Net::HTTP.get_response(uri)
reply = JSON.parse(response.body)
if reply['status'] != 200
puts reply['error']
else
puts "Link to the Blurred picture: #{reply['link']}"
end