{"openapi": "3.1.0", "info": {"title": "Convertara File Conversion API", "version": "1.0.0", "description": "Create asynchronous conversion jobs using only the formats currently available on Convertara."}, "servers": [{"url": "https://api.convertara.online/v1"}], "security": [{"BearerAuth": []}], "components": {"securitySchemes": {"BearerAuth": {"type": "http", "scheme": "bearer"}}, "schemas": {"Error": {"type": "object", "properties": {"error": {"type": "string"}}}, "Job": {"type": "object", "properties": {"id": {"type": "string", "format": "uuid"}, "state": {"type": "string", "enum": ["queued", "processing", "succeeded", "failed"]}, "source_format": {"type": "string"}, "target_format": {"type": "string"}, "credits_charged": {"type": "integer"}, "error_code": {"type": "string"}}}}}, "paths": {"/formats": {"get": {"security": [], "summary": "List supported conversion formats", "responses": {"200": {"description": "Current converters and their available targets."}}}}, "/jobs": {"post": {"summary": "Create a conversion job", "parameters": [{"in": "header", "name": "Idempotency-Key", "schema": {"type": "string", "maxLength": 128}}], "requestBody": {"required": true, "content": {"multipart/form-data": {"schema": {"type": "object", "required": ["file", "target"], "properties": {"file": {"type": "string", "format": "binary"}, "target": {"type": "string"}, "webhook_url": {"type": "string", "format": "uri"}, "webhook_secret": {"type": "string"}}}}}}, "responses": {"202": {"description": "Job queued."}, "401": {"description": "Invalid or missing API key."}, "422": {"description": "Unsupported format or invalid request."}, "429": {"description": "Rate, concurrency, or credit limit exceeded."}}}}, "/jobs/{job_id}": {"get": {"summary": "Get job status", "parameters": [{"in": "path", "name": "job_id", "required": true, "schema": {"type": "string", "format": "uuid"}}], "responses": {"200": {"description": "Job status and metadata."}, "404": {"description": "Job not found or expired."}}}}, "/jobs/{job_id}/result": {"get": {"summary": "Download the converted result", "parameters": [{"in": "path", "name": "job_id", "required": true, "schema": {"type": "string", "format": "uuid"}}], "responses": {"200": {"description": "Converted file."}, "409": {"description": "Job is not complete."}, "404": {"description": "Job not found or expired."}}}}, "/account/usage": {"get": {"summary": "Read API plan and credit usage", "responses": {"200": {"description": "Current period credit usage."}}}}}}