PicsArt (Socialin) Classification API
The Classification API from PicsArt (Socialin) — 5 operation(s) for classification.
The Classification API from PicsArt (Socialin) — 5 operation(s) for classification.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/picsart-socialin-classification-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
version: '2.0'
title: Picsart Programmable Image Classification API
description: '[Official technical documentation portal](https://docs.picsart.io/)
[Developer Guidelines](https://picsart.io/terms)
'
servers:
- url: https://api.picsart.io/tools/1.0
description: Production
security:
- apiKey: []
tags:
- name: Classification
paths:
/multi-matting:
post:
summary: Image Segmentation
operationId: image-segmentation
description: 'Performs multi-matting segmentation on the input image, identifying and isolating specific classes like hair, clothes, or sky.
'
tags:
- Classification
requestBody:
content:
multipart/form-data:
schema:
allOf:
- $ref: '#/components/schemas/ImageParameters'
- $ref: '#/components/schemas/MultiMattingSegmentationParameters'
responses:
'200':
$ref: '#/components/responses/200'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'402':
$ref: '#/components/responses/402'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'413':
$ref: '#/components/responses/413'
'415':
$ref: '#/components/responses/415'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'431':
$ref: '#/components/responses/431'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
/tags:
post:
summary: Image Tagging
operationId: image-tagging
description: 'This tagging service analyzes the image and suggests hashtags that are relevant to the content.
'
tags:
- Classification
requestBody:
content:
multipart/form-data:
schema:
allOf:
- $ref: '#/components/schemas/ImageParameters'
responses:
'200':
$ref: '#/components/responses/200Tagging'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'402':
$ref: '#/components/responses/402'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'413':
$ref: '#/components/responses/413'
'415':
$ref: '#/components/responses/415'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'431':
$ref: '#/components/responses/431'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
/describe:
post:
summary: Describe Image
operationId: image-describer
description: 'The image *Describer* service helps generate a detailed text description for the provided image (image2text).
'
tags:
- Classification
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ImageParameters'
responses:
'200':
$ref: '#/components/responses/200ImageDescription'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'402':
$ref: '#/components/responses/402'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'413':
$ref: '#/components/responses/413'
'415':
$ref: '#/components/responses/415'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'431':
$ref: '#/components/responses/431'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
/cars/classify:
post:
summary: Classify the Car Image
operationId: image-cars-classifier
description: 'The car image *Classifier* service categorizes all provided images. The supported categories are exterior, interior, engine, undercarriage, other.
It is mandatory that the provided input image is a car image. If the image is not a car image, the service will not generate an error, and the result may not be relevant.
'
tags:
- Classification
requestBody:
content:
multipart/form-data:
schema:
allOf:
- $ref: '#/components/schemas/ImageParameters'
- $ref: '#/components/schemas/CarClassificationModels'
responses:
'200':
$ref: '#/components/responses/200CarClassification'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'402':
$ref: '#/components/responses/402'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'413':
$ref: '#/components/responses/413'
'415':
$ref: '#/components/responses/415'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'431':
$ref: '#/components/responses/431'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
/extract-colors:
post:
summary: Extract Image Colors
operationId: image-extract-colors
description: 'Extract the key colors from an image to understand its visual style and palette.
The service analyzes an image and returns up to five prominent colors, including dominant foreground and background tones.
'
tags:
- Classification
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ImageParameters'
responses:
'200':
$ref: '#/components/responses/200Colors'
'400':
$ref: '#/components/responses/400'
'401':
$ref: '#/components/responses/401'
'402':
$ref: '#/components/responses/402'
'403':
$ref: '#/components/responses/403'
'404':
$ref: '#/components/responses/404'
'405':
$ref: '#/components/responses/405'
'413':
$ref: '#/components/responses/413'
'415':
$ref: '#/components/responses/415'
'422':
$ref: '#/components/responses/422'
'429':
$ref: '#/components/responses/429'
'431':
$ref: '#/components/responses/431'
'500':
$ref: '#/components/responses/500'
'503':
$ref: '#/components/responses/503'
components:
schemas:
MultiMattingSegmentationParameters:
type: object
required:
- segmentation_class
properties:
segmentation_class:
type: string
enum:
- hair
- skin
- lips
- teeth
- eyes
- clothes
- glasses
- background
- foreground
- sky
description: "The type of segmentation to perform. Must be one of the following values:\n * hair\n * skin\n * lips\n * teeth\n * eyes\n * clothes\n * glasses\n * background\n * foreground\n * sky\n"
Error:
type: object
properties:
message:
type: string
detail:
type: string
required:
- detail
401_Error:
type: object
properties:
code:
type: integer
example: 401
message:
type: string
example: Unauthorized
detail:
type: string
required:
- detail
CarClassificationModels:
type: object
properties:
model:
type:
- string
- 'null'
enum:
- urn:air:openai:model:openai:gpt-5@1
- urn:air:openai:model:openai:gpt-5.1@1
- urn:air:openai:model:openai:gpt-5.1-chat@1
- urn:air:openai:model:openai:gpt-5.2@1
- urn:air:openai:model:openai:gpt-5-mini@1
- urn:air:openai:model:openai:gpt-4o@1
- urn:air:openai:model:openai:gpt-4o-mini@1
- urn:air:openai:model:openai:gpt-4-turbo@1
- urn:air:openai:model:openai:gpt-4.1@1
- urn:air:openai:model:openai:gpt-4.1-mini@1
- urn:air:openai:model:openai:gpt-o3@1
- urn:air:anthropic:model:anthropic:claude-sonnet-4-0@1
- urn:air:anthropic:model:anthropic:claude-opus-4-0@1
- urn:air:anthropic:model:anthropic:claude-3-7-sonnet-latest@1
- urn:air:anthropic:model:anthropic:claude-3-5-sonnet-latest@1
- urn:air:anthropic:model:anthropic:claude-sonnet-4-5@1
- urn:air:anthropic:model:anthropic:claude-sonnet-4-5-latest@1
- urn:air:anthropic:model:anthropic:claude-3-5-haiku-latest@1
- urn:air:anthropic:model:anthropic:claude-haiku-4-5@1
- urn:air:anthropic:model:anthropic:claude-sonnet-4-6@1
- urn:air:google:model:google:gemini-2.0-flash-001@1
- urn:air:google:model:google:gemini-2.0-flash-lite@1
- urn:air:google:model:google:gemini-2.5-pro@1
- urn:air:google:model:google:gemini-2.5-flash@1
- urn:air:google:model:google:gemini-3-pro-preview@1
default: urn:air:openai:model:openai:gpt-5.1-chat@1
description: 'Optionally choose a specific AI model to use for this request.
If not specified, a default model will be applied. Please note that the default model may change over time as Picsart continues to improve performance and accuracy. Any change to the default will be made only after thorough testing and validation to ensure it delivers better results.
If you require consistent behavior or wish to evaluate different models on your own, we recommend explicitly setting this parameter.
'
ImageParameters:
type: object
properties:
image:
description: Source image file (binary). (If this parameter is present, the other image source parameters must be empty.)
type: string
format: binary
image_url:
type: string
description: Source image URL. (If this parameter is present, the other image source parameters must be empty.)
maxLength: 2083
minLength: 1
format: uri
image_id:
type: string
deprecated: true
description: Deprecated. Source image ID of an image previously uploaded to Picsart or result image ID from a different API. (If this parameter is present, the other image source parameters must be empty.)
responses:
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'402':
description: Payment Required
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
200Colors:
description: Success.
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
type: string
minItems: 1
maxItems: 5
uniqueItems: true
description: The colors with highest usage in the image.
status:
type: string
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401_Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'405':
description: Method Not Allowed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
200Tagging:
description: Success.
content:
application/json:
schema:
type: object
properties:
data:
type: object
status:
type: string
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'503':
description: Service Unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'413':
description: Request Entity Too Large
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'415':
description: Unsupported Media Type
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'431':
description: Request Header Fields Too Large
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
200ImageDescription:
description: Success.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
description:
type: string
status:
type: string
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
200CarClassification:
description: Success.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
class:
type: string
enum:
- front
- rear
- left-side
- right-side
- 34-front-right
- 34-front-left
- 34-rear-right
- 34-rear-left
- top
- interior
- engine
- detail
vin:
type:
- string
- 'null'
odo:
type:
- string
- 'null'
status:
type: string
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Limit:
schema:
type: integer
description: The total number of requests that can be done within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Ratelimit-Reset-Time:
schema:
type: integer
description: The time when the used request count resets and the number of available calls gets equal to the total number.
X-Picsart-Credit-Available:
schema:
type: integer
description: The remaining number of the credits on the balance.
'200':
description: Success.
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
id:
type:
- string
- 'null'
url:
type: string
format: uri
status:
type: string
headers:
X-Picsart-Correlation-Id:
schema:
type: string
description: The id which will help for troubleshooting request chain in the system.
X-Picsart-Ratelimit-Available:
schema:
type: integer
description: The number of available calls within the timeframe. See the X-Picsart-Ratelimit-Reset-Time.
X-Picsart-Rate
# --- truncated at 32 KB (32 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/picsart-socialin/refs/heads/main/openapi/picsart-socialin-classification-api-openapi.yml