DESCRIBE API Endpoint

Version 2.197 (Release Notes ↗)

Description

The DESCRIBE API endpoint programmatically generates natural language descriptions of image content from input images and video frames. It supports multiple languages and varying image sizes, and can be integrated using your preferred programming language. This endpoint is designed for developers, content creators, and marketing agencies requiring automated image descriptions.

HTTP Methods

GET, POST

HTTP Parameters

Required

Fields Type Description
img URL URL to the input image to generate a description for in the event of a GET request. If you want to upload an image directly from your app, then submit a multipart/form-data POST request instead. Refer to the POST Request Data section below.
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
lang String Default to english. Language to which you want to receive the image content description.
short Boolean If this optional parameter is set to true, then generate a quick and brief image description instead of a full accurate description. Default to False.

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 to directly upload your image from you app (see the REST API code samples or The PixLab Github Repository↗ for a working example). If you're using JSON, the media file must already be uploaded. Consider calling store to upload an image before invoking this endpoint.

HTTP Response

application/json

This endpoint always returns a JSON object containing image description data. Response fields include:

Fields Type Description
status Integer HTTP 200 indicates success. Any other code indicates failure.
description String AI-generated natural language description of the image's content (default to English).
error String Error description when status != 200.

Code Samples



import requests
import json

# Generate a natural language description of an image content

# Target Image: Change to any link or switch to POST if you want to upload your image directly, refer to the REST API code samples for more info.
img = 'https://pixlab.io/assets/images/nature31.jpg' 

key = 'PIXLAB_API_KEY' # Get your API key from https://console.pixlab.io/

req = requests.get('https://api.pixlab.io/describe',params={
  'img':img,
  'key':key,
  'lang':'english',
  'short':False
})
reply = req.json()
if reply['status'] != 200:
	print (reply['error'])
else:
  description = reply['description']
  print(f"Natural language content description: {description}")
← Return to API Endpoint Listing