Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
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.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/pictify-io:pictify-io-bindings-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Pictify Bindings API
version: 1.0.0
description: 'Generate images, GIFs, and PDFs from HTML templates programmatically.
## Authentication
All API requests require a Bearer token in the Authorization header:
```
Authorization: Bearer pk_live_your_api_key
```
## Rate Limits
- Free: 60 requests/minute
- Pro: 300 requests/minute
- Business: 1,000 requests/minute
Rate limit headers are included in all responses.'
contact:
email: support@pictify.io
url: https://pictify.io
license:
name: MIT
servers:
- url: https://api.pictify.io
description: Production
security:
- bearerAuth: []
tags:
- name: Bindings
description: Data binding for auto-rendering
paths:
/bindings:
get:
operationId: listBindings
summary: List bindings
tags:
- Bindings
parameters:
- name: templateId
in: query
schema:
type: string
- name: status
in: query
schema:
type: string
enum:
- active
- paused
- error
- name: page
in: query
schema:
type: integer
default: 1
- name: limit
in: query
schema:
type: integer
default: 20
responses:
'200':
description: List of bindings
content:
application/json:
schema:
type: object
properties:
bindings:
type: array
items:
$ref: '#/components/schemas/Binding'
pagination:
$ref: '#/components/schemas/Pagination'
post:
operationId: createBinding
summary: Create a binding
tags:
- Bindings
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- templateId
- dataSource
- mapping
properties:
templateId:
type: string
name:
type: string
dataSource:
type: object
required:
- type
properties:
type:
type: string
enum:
- http
- webhook
- static
url:
type: string
format: uri
method:
type: string
enum:
- GET
- POST
headers:
type: object
additionalProperties:
type: string
credentials:
type: object
properties:
type:
type: string
enum:
- api_key
- bearer_token
- basic_auth
- custom_header
value:
type: string
mapping:
type: object
additionalProperties:
type: string
defaults:
type: object
refreshPolicy:
type: object
properties:
type:
type: string
enum:
- ttl
- etag
- webhook
- manual
ttlSeconds:
type: integer
onError:
type: string
enum:
- serve_stale
- serve_error
- serve_default
outputConfig:
type: object
properties:
format:
type: string
enum:
- png
- jpeg
- webp
- pdf
quality:
type: integer
responses:
'201':
description: Binding created
content:
application/json:
schema:
type: object
properties:
binding:
$ref: '#/components/schemas/Binding'
/bindings/{uid}:
get:
operationId: getBinding
summary: Get binding
tags:
- Bindings
parameters:
- name: uid
in: path
required: true
schema:
type: string
responses:
'200':
description: Binding details
content:
application/json:
schema:
type: object
properties:
binding:
$ref: '#/components/schemas/Binding'
put:
operationId: updateBinding
summary: Update binding
tags:
- Bindings
parameters:
- name: uid
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
dataSource:
type: object
mapping:
type: object
defaults:
type: object
refreshPolicy:
type: object
outputConfig:
type: object
status:
type: string
enum:
- active
- paused
responses:
'200':
description: Binding updated
delete:
operationId: deleteBinding
summary: Delete binding
tags:
- Bindings
parameters:
- name: uid
in: path
required: true
schema:
type: string
responses:
'200':
description: Binding deleted
components:
schemas:
Pagination:
type: object
properties:
page:
type: integer
limit:
type: integer
total:
type: integer
totalPages:
type: integer
hasNext:
type: boolean
hasPrev:
type: boolean
Binding:
type: object
properties:
uid:
type: string
name:
type: string
templateId:
type: string
dataSource:
type: object
properties:
type:
type: string
enum:
- http
- webhook
- static
url:
type: string
format: uri
method:
type: string
enum:
- GET
- POST
mapping:
type: object
additionalProperties:
type: string
defaults:
type: object
additionalProperties: true
refreshPolicy:
type: object
properties:
type:
type: string
enum:
- ttl
- etag
- webhook
- manual
ttlSeconds:
type: integer
onError:
type: string
enum:
- serve_stale
- serve_error
- serve_default
status:
type: string
enum:
- active
- paused
- error
renderUrl:
type: string
format: uri
webhookUrl:
type: string
format: uri
createdAt:
type: string
format: date-time
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: API key obtained from the Pictify dashboard