EditClips.online Tools API
Discover available processing tools
Discover available processing tools
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/editclips-online:editclips-online-tools-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a 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: 3.2.0
info:
title: Editclips Online Tools API
version: '1.0'
contact:
name: EditClips
url: https://editclips.online
description: 'Operations tagged Tools across 2 of this provider''s published API definitions: editclips-online-openapi.yaml, openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://editclips.online/api/v1
description: Production
security:
- BearerAuth: []
tags:
- name: Tools
description: Discover available processing tools
paths:
/tools:
get:
operationId: listTools
summary: List all tools
description: Returns every processing tool available on EditClips with inputs, options, and output format.
tags:
- Tools
responses:
'200':
description: Tool list
content:
application/json:
schema:
type: object
required:
- tools
properties:
tools:
type: array
items:
$ref: '#/components/schemas/Tool'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
servers:
- url: https://editclips.online/api/v1
description: Production
/tools/{slug}:
get:
operationId: getTool
summary: Get a single tool
description: Returns details for one tool by its slug.
tags:
- Tools
parameters:
- name: slug
in: path
required: true
schema:
type: string
example: convert-video
responses:
'200':
description: Tool details
content:
application/json:
schema:
$ref: '#/components/schemas/Tool'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
description: Tool not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error: Tool not found
'429':
$ref: '#/components/responses/RateLimited'
servers:
- url: https://editclips.online/api/v1
description: Production
components:
schemas:
Tool:
type: object
required:
- slug
- name
- description
- category
- serverOnly
- inputs
- options
- output
properties:
slug:
type: string
description: Unique identifier. Pass as `tool` when creating a job.
example: convert-video
name:
type: string
example: Convert to MP4
description:
type: string
example: Convert any video file to MP4 format
category:
type: string
enum:
- video
- audio
- effects
serverOnly:
type: boolean
description: If true, the tool requires server-side processing (e.g. AI subtitle extraction)
inputs:
type: array
items:
$ref: '#/components/schemas/ToolInput'
options:
type: array
items:
$ref: '#/components/schemas/ToolOption'
output:
type: object
required:
- type
- mimeType
- defaultName
properties:
type:
type: string
enum:
- video
- audio
- image
- subtitle
- zip
mimeType:
type: string
example: video/mp4
defaultName:
type: string
example: converted
ToolOption:
type: object
required:
- key
- type
- label
- default
properties:
key:
type: string
example: format
type:
type: string
enum:
- format-select
- number
- text
- toggle
- select
label:
type: string
example: Format
default:
description: Default value for this option
oneOf:
- type: string
- type: number
- type: boolean
description:
type: string
nullable: true
options:
type: array
nullable: true
description: Available choices (for select and format-select types)
items:
type: object
required:
- value
- label
properties:
value:
type: string
label:
type: string
group:
type: string
nullable: true
description:
type: string
nullable: true
speed:
type: integer
nullable: true
quality:
type: integer
nullable: true
min:
type: number
nullable: true
description: Minimum value (for number type)
max:
type: number
nullable: true
description: Maximum value (for number type)
step:
type: number
nullable: true
description: Step increment (for number type)
Error:
type: object
required:
- error
properties:
error:
type: string
code:
type: string
enum:
- plan_required
- insufficient_credits
description: Machine-readable reason (on 402 and plan 403 responses)
required:
type: integer
nullable: true
description: Credits required (on 402 responses; null when a plan is what's missing)
balance:
type: integer
description: Current balance (on 402 responses)
why:
type: string
enum:
- daily-limit
- too-long
- too-large
description: With plan_required on a finished job — why a free account can't download it
plan:
type: string
description: The account's plan (on plan_required 403 responses)
pricing:
type: string
format: uri
description: Where to get a plan or credits
tools:
type: string
description: Hint for discovering tools (on unknown tool errors)
ToolInput:
type: object
required:
- label
- accept
- maxSize
properties:
label:
type: string
example: Video file
accept:
type: object
description: 'MIME type accept map (e.g. `{"video/*": []}`)'
additionalProperties:
type: array
items:
type: string
maxSize:
type: integer
description: Maximum file size in bytes
example: 5368709120
responses:
RateLimited:
description: Rate limit exceeded (per key — 100 requests/minute on Lite, 200 on Pro, 600 on Business)
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error: Rate limit exceeded
Unauthorized:
description: Invalid or missing API key
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
example:
error: Invalid API key
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: 'API key with `ec_live_` prefix. Create keys under [Dashboard → Developer](https://editclips.online/dashboard/developer) (paid plans).
'
x-refined-from:
- editclips-online-openapi.yaml
- openapi.yaml