Files
SnapOtter/apps/api/src/openapi.hi.yaml
T
SnapOtterandGitHub 44d8109486 fix: enforce settings authority boundaries (#618)
Close generic settings authorization bypasses and enforce per-setting authority, validation, redaction, transactional config import, and route-local write rate limiting.
2026-07-22 20:15:38 +08:00

21811 lines
756 KiB
YAML

openapi: 3.1.0
info:
title: SnapOtter API
version: 2.0.0
description: |
SnapOtter के लिए REST API, एक सेल्फ-होस्टेड फ़ाइल-प्रोसेसिंग इन्फ़्रास्ट्रक्चर जिसमें image, video, audio, PDF और दस्तावेज़ों के लिए 200+ टूल हैं।
## प्रमाणीकरण
अधिकांश एंडपॉइंट को दो में से किसी एक तरीके से प्रमाणीकरण की आवश्यकता होती है:
1. **सेशन कुकी** - उपयोगकर्ता नाम और पासवर्ड के साथ `POST /api/auth/login` को कॉल करें। प्रतिक्रिया में एक `token` फ़ील्ड शामिल होती है। बाद के अनुरोधों में इसे `Authorization: Bearer <token>` के रूप में पास करें।
2. **API कुंजी** - सेटिंग्स UI या `POST /api/v1/api-keys` के माध्यम से एक कुंजी जनरेट करें। कुंजियों में `si_` उपसर्ग लगा होता है। इसे `Authorization: Bearer si_...` के रूप में पास करें।
ताला आइकन से चिह्नित एंडपॉइंट को प्रमाणीकरण की आवश्यकता होती है। केवल व्यवस्थापक वाले एंडपॉइंट उनके विवरण में नोट किए गए हैं।
license:
name: AGPL-3.0
url: https://github.com/snapotter-hq/snapotter/blob/main/LICENSE
servers:
- url: /
description: Current instance
tags:
- name: Tools
description: image, video, audio, PDF, और files में फैले फ़ाइल प्रोसेसिंग tools। प्रत्येक एक multipart file upload स्वीकार करता है और एक download URL लौटाता है।
- name: Batch
description: एक ही request में एक tool के जरिए कई फ़ाइलें प्रोसेस करें।
- name: Pipelines
description: 'कई tools को पुन: प्रयोज्य workflows में चेन करें।'
- name: Files
description: प्रोसेस की गई फ़ाइलें upload, download, और प्रबंधित करें।
- name: Auth
description: Login, logout, session प्रबंधन, और user प्रशासन।
- name: API Keys
description: प्रोग्रामेटिक एक्सेस के लिए API keys बनाएं और प्रबंधित करें।
- name: Settings
description: सिस्टम-व्यापी configuration (writes के लिए केवल admin)।
- name: Teams
description: users को teams में व्यवस्थित करें।
- name: Roles
description: बारीक permissions के साथ कस्टम role प्रबंधन।
- name: Audit
description: प्रशासनिक कार्रवाइयों को ट्रैक करने के लिए audit log।
- name: Analytics
description: Analytics configuration और user सहमति।
- name: Features
description: AI feature bundle इंस्टॉलेशन और प्रबंधन।
- name: Admin
description: प्रशासनिक स्वास्थ्य निदान।
- name: System
description: स्वास्थ्य जाँच, configuration, और job प्रगति।
- name: Enterprise
description: License-आधारित enterprise प्रशासन, अनुपालन, SCIM, और integration APIs।
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: Session token from login or API key (prefixed with si_)
responses:
RateLimited:
description: Too many requests. The client has exceeded the rate limit.
headers:
Retry-After:
schema:
type: integer
description: Seconds until the rate limit window resets
X-RateLimit-Limit:
schema:
type: integer
description: Maximum requests per time window
X-RateLimit-Remaining:
schema:
type: integer
description: Remaining requests in current window
content:
application/json:
schema:
type: object
properties:
error:
type: string
example: Rate limit exceeded
schemas:
Error:
type: object
required:
- error
properties:
error:
type: string
example: Invalid image format
details:
type: string
description: Additional error details (e.g. Zod validation errors)
ToolResponse:
type: object
properties:
jobId:
type: string
description: Unique job identifier
downloadUrl:
type: string
description: URL to download the processed image
example: /api/v1/download/abc123/output.png
originalSize:
type: integer
description: Original file size in bytes
processedSize:
type: integer
description: Processed file size in bytes
previewUrl:
type: string
description: URL to a WebP preview (present when output is not browser-previewable, e.g. TIFF, HEIF)
savedFileId:
type: string
description: ID of the auto-saved file in the library (present when fileId was provided in the request)
UnauthorizedError:
type: object
properties:
statusCode:
type: integer
example: 401
error:
type: string
example: Unauthorized
message:
type: string
example: Authentication required
ForbiddenError:
type: object
properties:
statusCode:
type: integer
example: 403
error:
type: string
example: Forbidden
message:
type: string
example: Insufficient permissions
ConflictError:
type: object
properties:
statusCode:
type: integer
example: 409
error:
type: string
example: Conflict
message:
type: string
example: Resource already exists
FeatureNotInstalledError:
type: object
properties:
error:
type: string
example: Feature not installed
code:
type: string
enum:
- FEATURE_NOT_INSTALLED
- FEATURE_INCOMPATIBLE
example: FEATURE_NOT_INSTALLED
feature:
type: string
description: Feature bundle identifier
featureName:
type: string
description: Human-readable feature name
estimatedSize:
type: string
description: Estimated download size
requestedQuality:
type: string
enum:
- fast
- balanced
- best
description: OCR tier that could not be honored; Fast is reported when Korean is explicitly requested with Fast or the legacy Tesseract alias
compatibilityReason:
type: string
description: Machine-readable runtime compatibility reason, when available
guidance:
type: string
description: Actionable recovery guidance, when available
HealthResponse:
type: object
properties:
status:
type: string
enum:
- healthy
- unhealthy
version:
type: string
AdminHealthResponse:
type: object
properties:
status:
type: string
enum:
- healthy
- degraded
version:
type: string
uptime:
type: string
storage:
type: object
properties:
mode:
type: string
available:
type: string
database:
type: string
enum:
- ok
- error
queue:
type: object
properties:
active:
type: integer
pending:
type: integer
ai:
type: object
properties:
gpu:
type: boolean
security:
- bearerAuth: []
paths:
/api/v1/health:
get:
operationId: healthCheck
tags:
- System
summary: स्वास्थ्य जाँच
description: सर्वर स्वास्थ्य स्थिति लौटाता है। Docker HEALTHCHECK द्वारा उपयोग किया जाता है। सार्वजनिक endpoint।
security: []
responses:
'200':
description: Server health
content:
application/json:
schema:
$ref: '#/components/schemas/HealthResponse'
'503':
description: Database unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/HealthResponse'
/api/v1/tools/image/resize:
post:
operationId: resizeImage
tags:
- Tools
summary: इमेज रीसाइज़
description: एक image का आकार विशिष्ट आयामों में या प्रतिशत के अनुसार बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `width` (number, optional) - Target width in pixels
- `height` (number, optional) - Target height in pixels
- `fit` (string, default "contain") - One of: contain, cover, fill, inside, outside
- `withoutEnlargement` (boolean, default false) - Prevent upscaling
- `percentage` (number, optional) - Scale by percentage instead of fixed dimensions
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/content-aware-resize:
post:
operationId: contentAwareResize
tags:
- Tools
summary: कंटेंट-अवेयर रीसाइज़
description: महत्वपूर्ण विशेषताओं को संरक्षित करते हुए बुद्धिमानी से कंटेंट हटाने या जोड़ने के लिए seam carving का उपयोग करके एक image का आकार बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `width` (number, optional) - Target width in pixels
- `height` (number, optional) - Target height in pixels
- `protectFaces` (boolean, default false) - Detect and protect faces from distortion
- `blurRadius` (number 0-20, default 4) - Blur radius for energy map
- `sobelThreshold` (number 1-20, default 2) - Edge detection threshold
- `square` (boolean, default false) - Crop to square aspect ratio
At least one of `width`, `height`, or `square` must be provided.
responses:
'200':
description: Processed image
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
width:
type: integer
height:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/crop:
post:
operationId: cropImage
tags:
- Tools
summary: इमेज क्रॉप
description: एक image को किसी विशिष्ट क्षेत्र तक क्रॉप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `left` (number, required) - Left offset in pixels (min 0)
- `top` (number, required) - Top offset in pixels (min 0)
- `width` (number, required) - Width of crop region in pixels
- `height` (number, required) - Height of crop region in pixels
- `unit` (string, optional) - One of: px, percent
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/rotate:
post:
operationId: rotateImage
tags:
- Tools
summary: इमेज रोटेट और फ्लिप
description: एक image को कोण के अनुसार घुमाएं या क्षैतिज/लंबवत फ़्लिप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `angle` (number, default 0) - Rotation angle in degrees
- `horizontal` (boolean, default false) - Flip horizontally
- `vertical` (boolean, default false) - Flip vertically
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/convert:
post:
operationId: convertFormat
tags:
- Tools
summary: इमेज कन्वर्ट
description: एक image को किसी भिन्न format में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `format` (string, required) - One of: jpg, png, webp, avif, tiff, gif, heic, heif, jxl, bmp, ico, jp2, qoi, psd
- `quality` (number 1-100, optional) - Output quality
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/compress:
post:
operationId: compressImage
tags:
- Tools
summary: इमेज कंप्रेस
description: गुणवत्ता स्तर या लक्ष्य आकार के अनुसार image फ़ाइल आकार कम करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "quality") - One of: quality, targetSize
- `quality` (number 1-100, optional) - Compression quality level
- `targetSizeKb` (number, optional) - Target file size in kilobytes
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/strip-metadata:
post:
operationId: stripMetadata
tags:
- Tools
summary: इमेज मेटाडेटा हटाएं
description: एक image से EXIF, GPS, ICC, या XMP metadata हटाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `stripExif` (boolean, default false) - Remove EXIF data
- `stripGps` (boolean, default false) - Remove GPS data
- `stripIcc` (boolean, default false) - Remove ICC profile
- `stripXmp` (boolean, default false) - Remove XMP data
- `stripAll` (boolean, default true) - Remove all metadata
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/border:
post:
operationId: addBorder
tags:
- Tools
summary: बॉर्डर और फ़्रेम
description: एक image में बॉर्डर, गोल कोने, पैडिंग, या छाया जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `borderWidth` (number 0-2000, default 10) - Border thickness in pixels
- `borderColor` (hex string, default "#000000") - Border color
- `padding` (number 0-200, default 0) - Inner padding in pixels
- `paddingColor` (hex string, default "#FFFFFF") - Padding fill color
- `cornerRadius` (number 0-2000, default 0) - Corner rounding radius
- `shadow` (boolean, default false) - Enable drop shadow
- `shadowBlur` (number 1-200, default 15) - Drop shadow blur radius
- `shadowOffsetX` (number -50 to 50, default 0) - Shadow horizontal offset
- `shadowOffsetY` (number -50 to 50, default 5) - Shadow vertical offset
- `shadowColor` (hex string, default "#000000") - Drop shadow color
- `shadowOpacity` (number 0-100, default 40) - Shadow opacity percentage
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/beautify:
post:
operationId: beautifyScreenshot
tags:
- Tools
summary: स्क्रीनशॉट सुशोभित करें
description: |
स्क्रीनशॉट में ग्रेडिएंट बैकग्राउंड, डिवाइस फ़्रेम, छायाएं, वॉटरमार्क, और सोशल
मीडिया साइज़िंग जोड़ें। solid, linear-gradient, radial-gradient,
image, और transparent बैकग्राउंड का समर्थन करता है। macOS, Windows, browser, iPhone,
MacBook, और iPad डिवाइस फ़्रेम शामिल हैं। Twitter, LinkedIn,
Instagram, Facebook, और Product Hunt के लिए सोशल मीडिया प्रीसेट।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Screenshot or image file to beautify
backgroundImage:
type: string
format: binary
description: Optional image for image backgrounds (used when backgroundType is "image")
settings:
type: string
description: |
JSON string with options:
- `backgroundType` (string, default "linear-gradient") -- One of: solid, linear-gradient, radial-gradient, image, transparent
- `backgroundColor` (hex string, default "#667eea") -- Background color (for solid backgrounds)
- `gradientStops` (array, default [{color:"#667eea",position:0},{color:"#764ba2",position:100}]) -- Array of {color, position} objects for gradient backgrounds
- `gradientAngle` (number 0-360, default 135) -- Gradient angle in degrees
- `padding` (number 0-256, default 64) -- Space between screenshot and canvas edge in pixels
- `borderRadius` (number 0-64, default 12) -- Corner rounding radius for the screenshot
- `shadowPreset` (string, default "subtle") -- One of: none, subtle, medium, dramatic, custom
- `shadowBlur` (number 0-100, default 20) -- Shadow blur radius (used with custom shadow preset)
- `shadowOffsetX` (number -50 to 50, default 0) -- Shadow horizontal offset
- `shadowOffsetY` (number -50 to 50, default 10) -- Shadow vertical offset
- `shadowColor` (hex string, default "#000000") -- Shadow color
- `shadowOpacity` (number 0-100, default 30) -- Shadow opacity percentage
- `frame` (string, default "none") -- One of: none, macos-light, macos-dark, windows-light, windows-dark, browser-light, browser-dark, iphone, iphone-dark, macbook, macbook-dark, ipad, ipad-dark
- `frameTitle` (string, optional) -- Title text shown in window title bars
- `socialPreset` (string, default "none") -- One of: none, twitter, linkedin, instagram-square, instagram-story, facebook, producthunt
- `watermarkText` (string, optional) -- Watermark text to overlay
- `watermarkPosition` (string, default "bottom-right") -- One of: top-left, top-right, bottom-left, bottom-right, center
- `watermarkOpacity` (number 0-100, default 50) -- Watermark opacity percentage
- `outputFormat` (string, default "png") -- One of: png, jpeg, webp
responses:
'200':
description: Beautified image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/adjust-colors:
post:
operationId: adjustColors
tags:
- Tools
summary: रंग समायोजन
description: |
समेकित रंग समायोजन tool। एक ही पास में चमक, कंट्रास्ट, एक्सपोज़र, संतृप्ति, तापमान, टिंट, ह्यू, तीक्ष्णता, रंग चैनल, और प्रभावों को समायोजित करता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `brightness` (number -100 to 100, default 0) - Brightness adjustment
- `contrast` (number -100 to 100, default 0) - Contrast adjustment
- `exposure` (number -100 to 100, default 0) - Exposure adjustment (gamma)
- `saturation` (number -100 to 100, default 0) - Color saturation
- `temperature` (number -100 to 100, default 0) - Color temperature (cool to warm)
- `tint` (number -100 to 100, default 0) - Tint shift (green to magenta)
- `hue` (number -180 to 180, default 0) - Hue rotation in degrees
- `sharpness` (number 0 to 100, default 0) - Sharpness enhancement
- `red` (number 0-200, default 100) - Red channel multiplier
- `green` (number 0-200, default 100) - Green channel multiplier
- `blue` (number 0-200, default 100) - Blue channel multiplier
- `effect` (string, default "none") - One of: none, grayscale, sepia, invert
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/sharpening:
post:
operationId: sharpenImage
tags:
- Tools
summary: इमेज शार्पन
description: वैकल्पिक शोर कमी के साथ adaptive, unsharp mask, या high-pass विधियों का उपयोग करके एक image को तीक्ष्ण करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `method` (string, default "adaptive") - One of: adaptive, unsharp-mask, high-pass
- `sigma` (number 0.5-10, default 1.0) - Gaussian sigma (adaptive)
- `m1` (number 0-10, default 1.0) - Flat area sharpening (adaptive)
- `m2` (number 0-20, default 3.0) - Jagged area sharpening (adaptive)
- `x1` (number 0-10, default 2.0) - Flat/jagged threshold (adaptive)
- `y2` (number 0-50, default 12) - Maximum brightening (adaptive)
- `y3` (number 0-50, default 20) - Maximum darkening (adaptive)
- `amount` (number 0-1000, default 100) - Sharpen amount (unsharp-mask)
- `radius` (number 0.1-5, default 1.0) - Blur radius (unsharp-mask)
- `threshold` (number 0-255, default 0) - Luminance threshold (unsharp-mask)
- `strength` (number 0-100, default 50) - Blend strength (high-pass)
- `kernelSize` (integer, default 3) - One of: 3, 5 (high-pass)
- `denoise` (string, default "off") - One of: off, light, medium, strong
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/optimize-for-web:
post:
operationId: optimizeForWeb
tags:
- Tools
summary: वेब के लिए अनुकूलित करें
description: आधुनिक formats में बदलकर, गुणवत्ता समायोजित करके, और वैकल्पिक रूप से आकार बदलकर वेब डिलीवरी के लिए एक image को अनुकूलित करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `format` (string, default "webp") - One of: webp, jpeg, avif, png, jxl
- `quality` (number 1-100, default 80) - Output quality
- `maxWidth` (number, optional) - Maximum width in pixels
- `maxHeight` (number, optional) - Maximum height in pixels
- `progressive` (boolean, default true) - Enable progressive encoding
- `stripMetadata` (boolean, default true) - Remove metadata
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/optimize-for-web/preview:
post:
operationId: optimizeForWebPreview
tags:
- Tools
summary: वेब के लिए अनुकूलित करें (preview)
description: |
लाइव पैरामीटर ट्यूनिंग के लिए हल्का preview endpoint।
अनुकूलित image binary सीधे लौटाता है (JSON नहीं)। आकार जानकारी
response headers में होती है। कोई workspace नहीं बनाता या परिणाम स्थायी नहीं करता।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to preview
settings:
type: string
description: Same settings as the main optimize-for-web endpoint
responses:
'200':
description: Optimized image binary
headers:
X-Original-Size:
schema:
type: string
description: Original file size in bytes
X-Processed-Size:
schema:
type: string
description: Processed file size in bytes
X-Output-Filename:
schema:
type: string
description: Suggested output filename
content:
image/*:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/image-enhancement:
post:
operationId: enhanceImage
tags:
- Tools
summary: image संवर्द्धन
description: |
AI-संचालित स्वचालित image संवर्द्धन। image का विश्लेषण करता है और चयनित
दृश्य मोड के आधार पर एक्सपोज़र, कंट्रास्ट, व्हाइट बैलेंस, संतृप्ति, तीक्ष्णता,
और शोर के लिए सुधार लागू करता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "auto") - One of: auto, portrait, landscape, low-light, food, document
- `intensity` (number 0-100, default 50) - Overall enhancement intensity
- `corrections` (object, optional) - Toggle individual corrections:
- `exposure` (boolean, default true)
- `contrast` (boolean, default true)
- `whiteBalance` (boolean, default true)
- `saturation` (boolean, default true)
- `sharpness` (boolean, default true)
- `denoise` (boolean, default true)
- `deepEnhance` (boolean, default false) - Use AI noise removal for deeper enhancement (requires noise-removal feature)
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/image-enhancement/analyze:
post:
operationId: analyzeImageEnhancement
tags:
- Tools
summary: संवर्द्धन के लिए image विश्लेषण करें
description: |
एक image का विश्लेषण करें और सुझाए गए सुधार लागू किए बिना लौटाएं।
यह पूर्वावलोकन के लिए उपयोगी है कि कौन से संवर्द्धन किए जाएंगे।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to analyze
responses:
'200':
description: Image analysis with suggested corrections
content:
application/json:
schema:
type: object
properties:
corrections:
type: object
description: Suggested correction values
metrics:
type: object
description: Image quality metrics
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: Analysis failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/noise-removal:
post:
operationId: removeNoise
tags:
- Tools
summary: शोर हटाना
description: |
Python sidecar का उपयोग करके AI-संचालित शोर हटाना। त्वरित preview से
अधिकतम गुणवत्ता तक कई गुणवत्ता स्तरों का समर्थन करता है। इसके लिए
noise-removal feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `tier` (string, default "balanced") - One of: quick, balanced, quality, maximum
- `strength` (number, default 50) - Denoising strength
- `detailPreservation` (number, default 50) - Detail preservation level
- `colorNoise` (number, default 30) - Color noise reduction
- `format` (string, default "original") - One of: original, png, jpeg, webp, avif, jxl
- `quality` (number, default 90) - Output quality (1-100)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/red-eye-removal:
post:
operationId: removeRedEye
tags:
- Tools
summary: रेड-आई हटाना
description: |
AI-संचालित रेड-आई डिटेक्शन और हटाना। चेहरों का पता लगाता है और तस्वीरों में
रेड-आई आर्टिफ़ैक्ट्स को ठीक करता है। इसके लिए red-eye-removal feature
bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `sensitivity` (number 0-100, default 50) - Detection sensitivity
- `strength` (number 0-100, default 70) - Correction strength
- `format` (string, optional) - Output format
- `quality` (number 1-100, default 90) - Output quality
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/restore-photo:
post:
operationId: restorePhoto
tags:
- Tools
summary: फ़ोटो पुनर्स्थापना
description: |
AI-संचालित फ़ोटो पुनर्स्थापना pipeline। खरोंचों की मरम्मत करता है, चेहरों को बेहतर बनाता है,
शोर कम करता है, और वैकल्पिक रूप से पुरानी या क्षतिग्रस्त तस्वीरों को रंगीन करता है। इसके लिए
photo-restoration feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `scratchRemoval` (boolean, default true) - Enable scratch repair
- `faceEnhancement` (boolean, default true) - Enhance detected faces
- `fidelity` (number 0-1, default 0.7) - Face enhancement fidelity
- `denoise` (boolean, default true) - Enable denoising
- `denoiseStrength` (number 0-100, default 25) - Denoising strength
- `colorize` (boolean, default false) - Colorize grayscale photos
- `colorizeStrength` (number 0-100, default 85) - Colorization strength
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/passport-photo/analyze:
post:
operationId: analyzePassportPhoto
tags:
- Tools
summary: पासपोर्ट फ़ोटो - विश्लेषण
description: |
पासपोर्ट फ़ोटो जनरेशन का चरण 1। चेहरे के लैंडमार्क का पता लगाता है और
बैकग्राउंड हटाता है। generate चरण में उपयोग के लिए client को लैंडमार्क डेटा और
एक base64-एन्कोडेड preview लौटाता है। इसके लिए passport-photo
feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Photo with a clear, front-facing face
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Face analysis and background removal result
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
description: Job ID to pass to the generate endpoint
filename:
type: string
preview:
type: string
description: Base64-encoded PNG preview of the background-removed image
previewWidth:
type: integer
previewHeight:
type: integer
landmarks:
type: object
description: Normalized face landmark coordinates (0-1)
properties:
leftEye:
type: object
properties:
x:
type: number
'y':
type: number
rightEye:
type: object
properties:
x:
type: number
'y':
type: number
eyeCenter:
type: object
properties:
x:
type: number
'y':
type: number
chin:
type: object
properties:
x:
type: number
'y':
type: number
forehead:
type: object
properties:
x:
type: number
'y':
type: number
crown:
type: object
properties:
x:
type: number
'y':
type: number
nose:
type: object
properties:
x:
type: number
'y':
type: number
faceCenterX:
type: number
imageWidth:
type: integer
imageHeight:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: No face detected or analysis failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/passport-photo/generate:
post:
operationId: generatePassportPhoto
tags:
- Tools
summary: पासपोर्ट फ़ोटो - जनरेट करें
description: |
पासपोर्ट फ़ोटो जनरेशन का चरण 2। फ़ोटो को निर्दिष्ट
देश/दस्तावेज़ विनिर्देश के अनुसार क्रॉप, आकार बदलने, और टाइल करने के लिए analyze चरण से jobId और लैंडमार्क का उपयोग करता है। तेज़ response (कोई AI पुन: रन नहीं)।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- jobId
- filename
- countryCode
- landmarks
- imageWidth
- imageHeight
properties:
jobId:
type: string
description: Job ID from the analyze phase
filename:
type: string
description: Original filename from analyze phase
countryCode:
type: string
description: ISO country code for passport specification
documentType:
type: string
default: passport
description: Document type (passport, visa, etc.)
bgColor:
type: string
default: '#FFFFFF'
description: Background color (hex)
printLayout:
type: string
default: none
description: Print sheet layout (none, 4x6, A4, letter)
maxFileSizeKb:
type: number
default: 0
description: Max file size in KB (0 = no limit)
dpi:
type: number
minimum: 72
maximum: 1200
default: 300
description: Output DPI
customWidthMm:
type: number
description: Custom photo width in mm (overrides country spec)
customHeightMm:
type: number
description: Custom photo height in mm (overrides country spec)
zoom:
type: number
minimum: 0.5
maximum: 3
default: 1
description: Zoom level (>1 = tighter crop)
adjustX:
type: number
default: 0
description: Horizontal position adjustment
adjustY:
type: number
default: 0
description: Vertical position adjustment
landmarks:
type: object
description: Face landmarks from analyze phase
imageWidth:
type: integer
description: Original image width from analyze phase
imageHeight:
type: integer
description: Original image height from analyze phase
responses:
'200':
description: Generated passport photo
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
downloadUrl:
type: string
dimensions:
type: object
properties:
widthMm:
type: number
heightMm:
type: number
widthPx:
type: integer
heightPx:
type: integer
dpi:
type: integer
spec:
type: object
properties:
country:
type: string
countryCode:
type: string
documentType:
type: string
documentLabel:
type: string
printDownloadUrl:
type: string
description: URL for print sheet download (if printLayout was specified)
'400':
description: Invalid settings or unknown country code
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Generation failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/colorize:
post:
operationId: colorizeImage
tags:
- Tools
summary: रंगीन करें
description: |
AI-संचालित फ़ोटो रंगीनीकरण। OpenCV DNN fallback के साथ DDColor का उपयोग करके
ब्लैक-एंड-व्हाइट या ग्रेस्केल तस्वीरों को पूर्ण रंग में बदलता है। इसके लिए
colorize feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Grayscale or B&W image file
settings:
type: string
description: |
JSON string with options:
- `intensity` (number 0-1, default 1.0) - Colorization intensity
- `model` (string, default "auto") - One of: auto, ddcolor, opencv
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/enhance-faces:
post:
operationId: enhanceFaces
tags:
- Tools
summary: चेहरा संवर्द्धन
description: |
GFPGAN या CodeFormer का उपयोग करके AI-संचालित चेहरा संवर्द्धन। image में चेहरों
का पता लगाता है और चेहरे के विवरण, त्वचा की बनावट, और स्पष्टता को बेहतर बनाता है।
इसके लिए enhance-faces feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file containing faces
settings:
type: string
description: |
JSON string with options:
- `model` (string, default "auto") - One of: auto, gfpgan, codeformer
- `strength` (number 0-1, default 0.8) - Enhancement strength
- `onlyCenterFace` (boolean, default false) - Only enhance the center face
- `sensitivity` (number 0-1, default 0.5) - Face detection sensitivity
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/image-to-base64:
post:
operationId: imageToBase64
tags:
- Tools
summary: Image to Base64
description: |
एक या अधिक images को data URIs के साथ Base64-एन्कोडेड strings में बदलें।
वैकल्पिक format रूपांतरण और आकार बदलने का समर्थन करता है। प्रत्येक फ़ाइल के लिए raw
Base64 string और उपयोग-के-लिए-तैयार data URI दोनों लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: One or more image files to convert
settings:
type: string
description: |
JSON string with options:
- `outputFormat` (string, default "original") - One of: original, jpeg, png, webp, avif, jxl
- `quality` (integer 1-100, default 80) - Output quality for lossy formats
- `maxWidth` (integer, default 0) - Max width in pixels (0 = no limit)
- `maxHeight` (integer, default 0) - Max height in pixels (0 = no limit)
responses:
'200':
description: Base64-encoded results
content:
application/json:
schema:
type: object
properties:
results:
type: array
items:
type: object
properties:
filename:
type: string
mimeType:
type: string
width:
type: integer
height:
type: integer
originalSize:
type: integer
description: Original file size in bytes
encodedSize:
type: integer
description: Base64 string size in bytes
overheadPercent:
type: number
description: Size overhead of Base64 encoding
base64:
type: string
description: Raw Base64-encoded image data
dataUri:
type: string
description: Complete data URI (data:mime;base64,...)
errors:
type: array
items:
type: object
properties:
filename:
type: string
error:
type: string
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/watermark-text:
post:
operationId: addTextWatermark
tags:
- Tools
summary: टेक्स्ट वॉटरमार्क
description: एक image में टेक्स्ट वॉटरमार्क जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `text` (string 1-500, required) - Watermark text
- `fontSize` (number 8-1000, default 48) - Font size in pixels
- `color` (hex string, default "#000000") - Text color
- `opacity` (number 0-100, default 50) - Opacity percentage
- `position` (string, default "center") - One of: center, top-left, top-right, bottom-left, bottom-right, tiled
- `rotation` (number -360 to 360, default 0) - Text rotation angle
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/text-overlay:
post:
operationId: addTextOverlay
tags:
- Tools
summary: टेक्स्ट ओवरले
description: वैकल्पिक बैकग्राउंड बॉक्स के साथ स्टाइल किया गया टेक्स्ट ओवरले जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `text` (string 1-500, required) - Overlay text
- `fontSize` (number 8-200, default 48) - Font size in pixels
- `color` (hex string, default "#FFFFFF") - Text color
- `position` (string, default "bottom") - One of: top, center, bottom
- `backgroundBox` (boolean, default false) - Show background box behind text
- `backgroundColor` (hex string, default "#000000") - Background box color
- `shadow` (boolean, default true) - Add text shadow
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/replace-color:
post:
operationId: replaceColor
tags:
- Tools
summary: रंग बदलें
description: एक image में किसी विशिष्ट रंग को अन्य रंग या पारदर्शिता से बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `sourceColor` (hex string, default "#FF0000") - Color to replace
- `targetColor` (hex string, default "#00FF00") - Replacement color
- `makeTransparent` (boolean, default false) - Make matched pixels transparent instead
- `tolerance` (number 0-255, default 30) - Color matching tolerance
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/color-blindness:
post:
operationId: simulateColorBlindness
tags:
- Tools
summary: वर्णांधता सिमुलेशन
description: सिमुलेट करें कि विभिन्न प्रकार की रंग दृष्टि कमी वाले लोगों को एक image कैसी दिखती है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `simulationType` (enum, default "deuteranomaly") -- Type of color vision deficiency to simulate. One of: protanopia, deuteranopia, tritanopia, protanomaly, deuteranomaly, tritanomaly, achromatopsia, blueConeMonochromacy
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/gif-tools:
post:
operationId: processGif
tags:
- Tools
summary: GIF tools
description: एनिमेटेड GIFs का आकार बदलें, अनुकूलित करें, गति समायोजित करें, उलटें, फ़्रेम निकालें, या घुमाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF file to process
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "resize") - One of: resize, optimize, speed, reverse, extract, rotate
- `width` (number 1-16384, optional) - Target width in pixels (resize mode)
- `height` (number 1-16384, optional) - Target height in pixels (resize mode)
- `percentage` (number 1-500, optional) - Scale by percentage (resize mode)
- `colors` (number 2-256, default 256) - Color palette size (optimize mode)
- `dither` (number 0-1, default 1.0) - Dither amount (optimize mode)
- `effort` (number 1-10, default 7) - Compression effort (optimize mode)
- `speedFactor` (number 0.1-10, default 1.0) - Speed multiplier (speed mode)
- `extractMode` (string, default "single") - One of: single, range, all (extract mode)
- `frameNumber` (number, default 0) - Frame index to extract (extract/single mode)
- `frameStart` (number, default 0) - Start frame index (extract/range mode)
- `frameEnd` (number, optional) - End frame index (extract/range mode)
- `extractFormat` (string, default "png") - One of: png, webp (extract mode)
- `angle` (number, optional) - Rotation angle, one of: 90, 180, 270 (rotate mode)
- `flipH` (boolean, default false) - Flip horizontally (rotate mode)
- `flipV` (boolean, default false) - Flip vertically (rotate mode)
- `loop` (number 0-100, default 0) - Loop count, 0 = infinite
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/gif-tools/info:
post:
operationId: getGifInfo
tags:
- Tools
summary: GIF जानकारी
description: आयाम, फ़्रेम संख्या, विलंब, और अवधि सहित एक एनिमेटेड GIF के बारे में metadata प्राप्त करें।
security: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF file to inspect
responses:
'200':
description: GIF metadata
content:
application/json:
schema:
type: object
properties:
width:
type: integer
height:
type: integer
pages:
type: integer
description: Number of frames
delay:
type: array
items:
type: integer
description: Per-frame delay in milliseconds
loop:
type: integer
description: Loop count (0 = infinite)
fileSize:
type: integer
duration:
type: integer
description: Total duration in milliseconds
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/smart-crop:
post:
operationId: smartCrop
tags:
- Tools
summary: स्मार्ट क्रॉप
description: तीन मोड के साथ स्मार्ट क्रॉप - विषय फ़ोकस, चेहरा फ़ोकस, या ऑटो ट्रिम।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "subject") - One of: subject, face, trim, attention (alias for subject), content (alias for trim)
- `strategy` (string, default "attention") - One of: attention, entropy (subject mode)
- `width` (integer, optional) - Target width in pixels
- `height` (integer, optional) - Target height in pixels
- `padding` (integer 0-50, default 0) - Padding percentage around focus area
- `facePreset` (string, default "head-shoulders") - One of: closeup, head-shoulders, upper-body, half-body (face mode)
- `sensitivity` (number 0-1, default 0.5) - Face detection sensitivity (face mode)
- `threshold` (integer 0-255, default 30) - Trim tolerance (trim mode)
- `padToSquare` (boolean, default false) - Pad to square after trimming (trim mode)
- `padColor` (string, default "#ffffff") - Hex color for padding (trim mode)
- `targetSize` (integer, optional) - Target size for padded output (trim mode)
- `quality` (integer 1-100, optional) - Output quality
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/vectorize:
post:
operationId: vectorizeImage
tags:
- Tools
summary: Image to SVG
description: potrace (B&W) या VTracer (color) का उपयोग करके एक रास्टर image को SVG वेक्टर format में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `colorMode` (string, default "bw") - One of: bw, color
- `threshold` (number 0-255, default 128) - B&W binarization threshold
- `colorPrecision` (number 1-16, default 6) - Color bits per channel
- `layerDifference` (number 1-128, default 6) - Color gradient step
- `filterSpeckle` (number 1-256, default 4) - Noise filter size
- `pathMode` (string, default "spline") - One of: none, polygon, spline
- `cornerThreshold` (number 0-180, default 60) - Corner detection angle
- `invert` (boolean, default false) - Invert colors before tracing
responses:
'200':
description: Processed image (downloadUrl points to .svg file)
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/svg-to-raster:
post:
operationId: svgToRaster
tags:
- Tools
summary: SVG to raster
description: कस्टम स्केल और DPI पर एक SVG फ़ाइल को रास्टर image format में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: SVG file to convert
settings:
type: string
description: |
JSON string with options:
- `width` (number 1-65536, optional) - Output width in pixels
- `height` (number 1-65536, optional) - Output height in pixels
- `dpi` (number 36-2400, default 300) - Render density for SVG rasterization
- `quality` (number 1-100, default 90) - Output quality for lossy formats
- `backgroundColor` (hex string, default "#00000000") - Background color
- `outputFormat` (string, default "png") - One of: png, jpg, webp, avif, tiff, gif, heif, jxl
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/svg-to-raster/batch:
post:
operationId: svgToRasterBatch
tags:
- Tools
summary: SVG to raster (batch)
description: कई SVG फ़ाइलों को रास्टर images में बदलें। एक ZIP archive लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: SVG files to convert
settings:
type: string
description: Same settings as single-file endpoint
clientJobId:
type: string
description: Optional client-generated job ID for progress tracking
responses:
'200':
description: ZIP archive containing processed images
content:
application/zip:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: All files failed processing
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/image-to-pdf:
post:
operationId: imageToPdf
tags:
- Tools
summary: Image to PDF
description: एक या अधिक images को एक PDF दस्तावेज़ में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: One or more image files to include in the PDF
settings:
type: string
description: |
JSON string with options:
- `pageSize` (string, default "A4") - One of: A4, Letter, A3, A5
- `orientation` (string, default "portrait") - One of: portrait, landscape
- `margin` (number 0-500, default 20) - Page margin in points
- `targetSize` (object, optional) - Target output file size
- `value` (number, required) - Positive number (decimals allowed)
- `unit` (string, required) - One of: KB, MB
Minimum effective target is 50KB. When set, images are compressed as JPEG with quality auto-tuned to meet the target.
- `collate` (boolean, default true) - When true, all images go into one PDF. When false, each image becomes a separate PDF and the result is a ZIP.
responses:
'200':
description: Generated PDF (downloadUrl points to .pdf file)
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
pages:
type: integer
description: Number of images/pages in the PDF
compression:
type: object
description: Present only when targetSize was specified
properties:
targetRequested:
type: integer
description: Target size in bytes
targetMet:
type: boolean
description: Whether the target was achieved
jpegQuality:
type: integer
description: Final JPEG quality used (10-95)
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/pdf/pdf-to-image:
post:
operationId: pdfToImage
tags:
- Tools
summary: PDF to image
description: PDF पृष्ठों को images में बदलें। अलग-अलग पृष्ठ downloads और सभी पृष्ठों का एक ZIP लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to convert
settings:
type: string
description: |
JSON string with options:
- `format` (string, default "png") - Output format: png, jpg, webp, avif, tiff, gif, heic, heif, jxl
- `dpi` (number 36-2400, default 150) - Resolution in dots per inch
- `quality` (number 1-100, default 85) - Output quality
- `colorMode` (string, default "color") - One of: color, grayscale, bw
- `pages` (string, default "all") - Page selection, e.g. "all", "1-3", "1,3,5"
responses:
'200':
description: Converted pages
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
pageCount:
type: integer
description: Total pages in the PDF
selectedPages:
type: array
items:
type: integer
format:
type: string
pages:
type: array
items:
type: object
properties:
page:
type: integer
downloadUrl:
type: string
size:
type: integer
zipUrl:
type: string
description: URL to download all pages as ZIP
zipSize:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/pdf-to-image/info:
post:
operationId: getPdfInfo
tags:
- Tools
summary: PDF पृष्ठ संख्या
description: एक PDF फ़ाइल में पृष्ठों की संख्या प्राप्त करें।
security: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to inspect
responses:
'200':
description: PDF info
content:
application/json:
schema:
type: object
properties:
pageCount:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/pdf/pdf-to-image/preview:
post:
operationId: previewPdfPages
tags:
- Tools
summary: PDF पृष्ठ थंबनेल
description: एक PDF में प्रत्येक पृष्ठ के लिए थंबनेल preview जनरेट करें (अधिकतम 200 पृष्ठ, JPEG 300px चौड़ा)।
security: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to preview
responses:
'200':
description: Page thumbnails
content:
application/json:
schema:
type: object
properties:
pageCount:
type: integer
thumbnails:
type: array
items:
type: object
properties:
page:
type: integer
dataUrl:
type: string
description: Base64-encoded JPEG data URL
width:
type: integer
height:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/split:
post:
operationId: splitImage
tags:
- Tools
summary: इमेज स्प्लिट
description: एक image को टाइलों के ग्रिड में विभाजित करें। एक ZIP फ़ाइल लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to split
settings:
type: string
description: |
JSON string with options:
- `columns` (number 1-100, default 3) - Number of columns
- `rows` (number 1-100, default 3) - Number of rows
- `tileWidth` (number, min 10, optional) - Fixed tile width in pixels
- `tileHeight` (number, min 10, optional) - Fixed tile height in pixels
- `outputFormat` (string, default "original") - One of: original, png, jpg, webp, avif, jxl
- `quality` (number 1-100, default 90) - Output quality
responses:
'200':
description: ZIP archive with results
content:
application/zip:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/bulk-rename:
post:
operationId: bulkRename
tags:
- Tools
summary: बल्क नाम बदलें
description: एक पैटर्न टेम्पलेट का उपयोग करके कई images का नाम बदलें। {{index}}, {{padded}}, और {{original}} टोकन का समर्थन करता है। एक ZIP फ़ाइल लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Multiple image files to rename
settings:
type: string
description: |
JSON string with options:
- `pattern` (string 1-1000, default "image-{{index}}") - Naming pattern template
- `startIndex` (number, default 1) - Starting index number
responses:
'200':
description: ZIP archive with results
content:
application/zip:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/favicon:
post:
operationId: generateFavicon
tags:
- Tools
summary: Favicon जनरेटर
description: एक image से एक पूर्ण favicon सेट (16px से 512px PNGs, ICO, और manifest.json) जनरेट करें। एक ZIP फ़ाइल लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to use as favicon source
responses:
'200':
description: ZIP archive with results
content:
application/zip:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/watermark-image:
post:
operationId: addImageWatermark
tags:
- Tools
summary: image वॉटरमार्क
description: एक image वॉटरमार्क ओवरले जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
- watermark
properties:
file:
type: string
format: binary
description: Main image file
watermark:
type: string
format: binary
description: Watermark overlay image
settings:
type: string
description: |
JSON string with options:
- `position` (string, default "bottom-right") - One of: center, top-left, top-right, bottom-left, bottom-right
- `opacity` (number 0-100, default 50) - Watermark opacity percentage
- `scale` (number 1-100, default 25) - Watermark size as percentage of base image
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/compose:
post:
operationId: composeImages
tags:
- Tools
summary: image कंपोज़िशन
description: blend modes के साथ एक बेस image पर एक ओवरले image कंपोज़िट करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
- overlay
properties:
file:
type: string
format: binary
description: Base image file
overlay:
type: string
format: binary
description: Overlay image file
settings:
type: string
description: |
JSON string with options:
- `x` (number, default 0) - Horizontal offset of overlay
- `y` (number, default 0) - Vertical offset of overlay
- `opacity` (number 0-100, default 100) - Overlay opacity percentage
- `blendMode` (string, default "over") - One of: over, multiply, screen, overlay, darken, lighten, hard-light, soft-light, difference, exclusion
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/meme-generator:
post:
operationId: generateMeme
tags:
- Tools
summary: मीम जनरेटर
description: |
टेम्पलेट या कस्टम images का उपयोग करके मीम बनाएं। दो मोड का समर्थन करता है: (1) टेम्पलेट मोड - `templateId` और `textBoxes` के साथ JSON body भेजें। (2) कस्टम image मोड - `file` और `settings` के साथ multipart भेजें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
format: binary
description: Custom image file (optional if using templateId)
settings:
type: string
description: |
JSON string with options:
- `templateId` (string, optional) - ID of a meme template from /api/v1/meme-templates
- `textLayout` (string, default "top-bottom") - One of: top-bottom, top-only, bottom-only, center, side-by-side
- `textBoxes` (array of {id, text}) - Text content for each position
- `fontFamily` (string, default "anton") - One of: anton, arial-black, comic-sans, montserrat, bebas-neue, permanent-marker, roboto
- `fontSize` (number 8-200, optional) - Font size in pixels
- `textColor` (hex string, default "#ffffff") - Text color
- `strokeColor` (hex string, default "#000000") - Text outline color
- `textAlign` (string, default "center") - One of: left, center, right
- `allCaps` (boolean, default true) - Convert text to uppercase
application/json:
schema:
type: object
description: Template mode - send templateId and textBoxes as JSON body
properties:
templateId:
type: string
description: ID of a meme template
textBoxes:
type: array
items:
type: object
properties:
id:
type: string
text:
type: string
responses:
'200':
description: Processed meme image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or template not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/meme-templates:
get:
operationId: listMemeTemplates
tags:
- Tools
summary: मीम टेम्पलेट सूचीबद्ध करें
description: टेक्स्ट बॉक्स स्थितियों सहित उपलब्ध मीम टेम्पलेट का पूर्ण manifest लौटाता है।
security:
- bearerAuth: []
responses:
'200':
description: Meme template manifest
content:
application/json:
schema:
type: object
properties:
templates:
type: array
items:
type: object
properties:
id:
type: string
filename:
type: string
width:
type: integer
height:
type: integer
textBoxes:
type: array
items:
type: object
properties:
id:
type: string
x:
type: number
'y':
type: number
width:
type: number
height:
type: number
defaultText:
type: string
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/meme-templates/full/{filename}:
get:
operationId: getMemeTemplateImage
tags:
- Tools
summary: मीम टेम्पलेट image प्राप्त करें
description: एक पूर्ण-आकार मीम टेम्पलेट image सर्व करें।
security:
- bearerAuth: []
parameters:
- name: filename
in: path
required: true
schema:
type: string
description: Template image filename
responses:
'200':
description: Template image
content:
image/*:
schema:
type: string
format: binary
'400':
description: Invalid filename
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Template not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/meme-templates/thumbs/{filename}:
get:
operationId: getMemeTemplateThumbnail
tags:
- Tools
summary: मीम टेम्पलेट थंबनेल प्राप्त करें
description: एक मीम टेम्पलेट का थंबनेल सर्व करें।
security:
- bearerAuth: []
parameters:
- name: filename
in: path
required: true
schema:
type: string
description: Template thumbnail filename
responses:
'200':
description: Thumbnail image
content:
image/*:
schema:
type: string
format: binary
'400':
description: Invalid filename
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Thumbnail not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/meme-templates/fonts/{filename}:
get:
operationId: getMemeTemplateFont
tags:
- Tools
summary: मीम टेम्पलेट फ़ॉन्ट प्राप्त करें
description: मीम जनरेटर द्वारा उपयोग की जाने वाली एक फ़ॉन्ट फ़ाइल सर्व करें।
security:
- bearerAuth: []
parameters:
- name: filename
in: path
required: true
schema:
type: string
description: Font filename (e.g. anton.ttf)
responses:
'200':
description: Font file
content:
font/ttf:
schema:
type: string
format: binary
'400':
description: Invalid filename
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'404':
description: Font not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/compare:
post:
operationId: compareImages
tags:
- Tools
summary: image तुलना
description: दो images की तुलना करें और एक विज़ुअल अंतर रिपोर्ट जनरेट करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file1
- file2
properties:
file1:
type: string
format: binary
description: First image to compare
file2:
type: string
format: binary
description: Second image to compare
responses:
'200':
description: Comparison result
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
similarity:
type: number
description: Similarity percentage (0-100)
dimensions:
type: object
properties:
width:
type: integer
height:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/erase-object:
post:
operationId: eraseObject
tags:
- Tools
summary: ऑब्जेक्ट इरेज़र
description: एक mask का उपयोग करके एक image से ऑब्जेक्ट मिटाएं। mask में सफेद क्षेत्र मिटाने वाले क्षेत्रों को इंगित करते हैं। LaMa inpainting का उपयोग करता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- image
- mask
properties:
image:
type: string
format: binary
description: Source image file
mask:
type: string
format: binary
description: Mask image (white areas will be erased)
format:
type: string
enum:
- auto
- png
- jpg
- jpeg
- webp
- tiff
- gif
- avif
- heic
- heif
- jxl
default: auto
description: Output format
quality:
type: integer
minimum: 1
maximum: 100
default: 95
description: Output quality
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/ai-canvas-expand:
post:
operationId: aiCanvasExpand
tags:
- Tools
summary: AI कैनवास विस्तार (प्रायोगिक)
description: |
AI outpainting का उपयोग करके एक image कैनवास का विस्तार करें। मूल के साथ
सहजता से मिश्रित होने वाली नई सामग्री जनरेट करके किसी भी दिशा में image का
विस्तार करता है। LaMa-आधारित outpainting का उपयोग करता है। इसके लिए ai-canvas-expand
feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to expand
settings:
type: string
description: |
JSON string with options:
- `extendTop` (integer >= 0, default 0) - Pixels to extend upward
- `extendRight` (integer >= 0, default 0) - Pixels to extend rightward
- `extendBottom` (integer >= 0, default 0) - Pixels to extend downward
- `extendLeft` (integer >= 0, default 0) - Pixels to extend leftward
- `tier` (string, default "balanced") - One of: fast, balanced, high
- `format` (string, default "auto") - One of: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl
- `quality` (integer 1-100, default 95) - Output quality
At least one extend direction must be greater than 0.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input (or no extend direction > 0)
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/collage:
post:
operationId: createCollage
tags:
- Tools
summary: कोलाज और ग्रिड
description: कई images को एक ग्रिड कोलाज में संयोजित करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Multiple image files to combine
settings:
type: string
description: |
JSON string with options:
- `templateId` (string, required) - Template ID defining the grid layout
- `cells` (array, optional) - Per-cell configuration overrides
- `gap` (number 0-500, default 8) - Gap between images in pixels
- `cornerRadius` (number 0-500, default 0) - Corner rounding radius
- `backgroundColor` (string, default "#FFFFFF") - Background fill color
- `aspectRatio` (string, default "free") - Aspect ratio constraint
- `outputFormat` (string, default "png") - One of: png, jpeg, webp, avif, jxl
- `quality` (number 1-100, default 90) - Output quality
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/stitch:
post:
operationId: stitchImages
tags:
- Tools
summary: इमेज जोड़ें
description: कई images को क्षैतिज, लंबवत, या ग्रिड लेआउट में जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more image files to stitch together
settings:
type: string
description: |
JSON string with options:
- `direction` (string, default "horizontal") - One of: horizontal, vertical, grid
- `gridColumns` (integer 2-100, default 2) - Columns when direction is grid
- `resizeMode` (string, default "fit") - One of: fit, original, stretch, crop
- `alignment` (string, default "center") - One of: start, center, end
- `gap` (number 0-1000, default 0) - Gap between images in pixels
- `border` (number 0-500, default 0) - Border width in pixels
- `cornerRadius` (number 0-500, default 0) - Corner radius in pixels
- `backgroundColor` (hex string, default "#FFFFFF") - Hex color for background and gap fill
- `format` (string, default "png") - One of: png, jpeg, webp, avif, jxl
- `quality` (number 1-100, default 90) - Output quality
responses:
'200':
description: Stitched image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/remove-gif-background:
post:
operationId: removeGifBackground
tags:
- Tools
summary: किसी एनिमेटेड छवि से पृष्ठभूमि हटाएँ
description: AI (rembg) का उपयोग करके एनिमेटेड GIF, WebP, या APNG फ्रेम से पृष्ठभूमि हटाएं। स्थानीय स्तर पर चलता है.
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Animated image file (GIF, animated WebP, or APNG)
settings:
type: string
description: |
JSON string with options:
- `model` (string, optional) - AI model name
- `outputFormat` (string, optional) - One of: webp, apng, gif
- `backgroundType` (string, optional) - One of: transparent, color, gradient, blur, image
- `backgroundColor` (string, optional) - Hex color for the color background
- `gradientColor1` (string, optional) - First gradient color
- `gradientColor2` (string, optional) - Second gradient color
- `gradientAngle` (number, optional) - Gradient angle in degrees
- `blurIntensity` (number 0-100, optional) - Blur strength for the blur background
- `shadowEnabled` (boolean, optional) - Enable drop shadow
- `shadowOpacity` (number 0-100, optional) - Shadow opacity
- `edgeRefine` (number 0-3, optional) - Edge refinement level
- `decontaminate` (boolean, optional) - Remove background color spill
backgroundImage:
type: string
format: binary
description: Background image, required when backgroundType is "image"
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input (not animated, over the frame cap, or bad settings)
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/remove-background:
post:
operationId: removeBackground
tags:
- Tools
summary: बैकग्राउंड हटाएं
description: AI (rembg) का उपयोग करके एक image से बैकग्राउंड हटाएं। स्थानीय रूप से चलता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `model` (string, optional) - AI model name
- `backgroundType` (string, optional) - One of: transparent, color, gradient, blur, image
- `backgroundColor` (string, optional) - Hex color to replace removed background with
- `gradientColor1` (string, optional) - First gradient color
- `gradientColor2` (string, optional) - Second gradient color
- `gradientAngle` (number, optional) - Gradient angle in degrees
- `blurEnabled` (boolean, optional) - Enable background blur effect
- `blurIntensity` (number 0-100, optional) - Blur strength
- `shadowEnabled` (boolean, optional) - Enable drop shadow
- `shadowOpacity` (number 0-100, optional) - Shadow opacity
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/remove-background/effects:
post:
operationId: applyBackgroundEffects
tags:
- Tools
summary: बैकग्राउंड प्रभाव लागू करें
description: |
पहले से प्रोसेस किए गए remove-background परिणाम पर बैकग्राउंड प्रतिस्थापन या प्रभाव लागू करें। इसके लिए पूर्व POST /api/v1/tools/image/remove-background कॉल से एक jobId आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- settings
properties:
backgroundImage:
type: string
format: binary
description: Custom background image (required when backgroundType is "image")
settings:
type: string
description: |
JSON string with options:
- `jobId` (string, required) - Job ID from the initial remove-background call
- `filename` (string, required) - Original filename
- `backgroundType` (string) - One of: transparent, color, gradient, blur, image
- `backgroundColor` (string) - Hex color for solid background
- `gradientColor1` (string) - First gradient color
- `gradientColor2` (string) - Second gradient color
- `gradientAngle` (number) - Gradient angle in degrees
- `blurEnabled` (boolean) - Enable background blur effect
- `blurIntensity` (number 0-100) - Blur strength
- `shadowEnabled` (boolean) - Enable drop shadow
- `shadowOpacity` (number 0-100) - Shadow opacity
responses:
'200':
description: Image with applied effects
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
downloadUrl:
type: string
processedSize:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/transparency-fixer:
post:
operationId: fixTransparency
tags:
- Tools
summary: नकली पारदर्शिता ठीक करें
description: |
"नकली पारदर्शी" PNGs को ठीक करें जिनमें पिछले बैकग्राउंड हटाने से फ़्रिंजिंग, हेलो, या
अर्ध-पारदर्शी आर्टिफ़ैक्ट होते हैं। कॉन्फ़िगर करने योग्य डिफ़्रिंज
प्रोसेसिंग के साथ एक स्वच्छ alpha channel बनाने के लिए BiRefNet HR-matting
(2048x2048) का उपयोग करता है। OOM पर birefnet-general, फिर u2net पर fallback करता है। इसके लिए
background-removal feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG image with fake or damaged transparency
settings:
type: string
description: |
JSON string with options:
- `defringe` (number 0-100, default 30) - Edge defringe strength to remove color contamination
- `outputFormat` (string, default "png") - One of: png, webp
- `removeWatermark` (boolean, default false) - Apply median filter to reduce watermark artifacts before matting
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/upscale:
post:
operationId: upscaleImage
tags:
- Tools
summary: image अपस्केलिंग
description: AI (Real-ESRGAN) का उपयोग करके एक image को अपस्केल करें। स्थानीय रूप से चलता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to upscale
settings:
type: string
description: |
JSON string with options:
- `scale` (number, default 2) - Upscale factor
- `model` (string, default "auto") - AI model name
- `faceEnhance` (boolean, default false) - Enable face enhancement
- `denoise` (number, default 0) - Denoise strength
- `format` (string, default "auto") - Output format (auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl)
- `quality` (number, default 95) - Output quality (1-100)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/blur-faces:
post:
operationId: blurFaces
tags:
- Tools
summary: चेहरे और संवेदनशील जानकारी ब्लर करें
description: गोपनीयता के लिए एक image में चेहरों का पता लगाएं और धुंधला करें। OpenCV का उपयोग करता है। स्थानीय रूप से चलता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `blurRadius` (number 1-100, default 30) - Blur strength radius
- `sensitivity` (number 0-1, default 0.5) - Face detection sensitivity
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/ocr:
post:
operationId: extractText
tags:
- Tools
summary: OCR / टेक्स्ट निष्कर्षण
description: |-
किसी छवि से स्थानीय रूप से टेक्स्ट निकालें. अंतर्निर्मितFastस्तरीय उपयोगTesseract.BalancedऔरBestवैकल्पिक हस्ताक्षरित का उपयोग करेंRapidOCRरनटाइम
पिन के साथPP-OCRओएनएनएक्स मॉडल। स्पष्ट स्तर के अनुरोध कभी भी चुपचाप नहीं होते
दूसरे स्तर पर डाउनग्रेड करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
maxLength: 536870912
description: Image file to extract text from
settings:
type: string
description: |
JSON string with options:
- `quality` (string, optional) - One of: fast, balanced, best. When both quality and engine are omitted, uses the best available tier in this order: best, balanced, fast. Korean never selects fast; it uses best, then balanced, or returns an accurate-runtime install/compatibility error
- `language` (string, default "auto") - One of: auto, en, de, fr, es, zh, ja, ko. Korean is unsupported by fast and the legacy tesseract alias
- `enhance` (boolean, optional) - Improve local contrast. Fast applies it directly; accurate tiers retain the variant only when calibrated scoring improves the result. Defaults to true for Best and false for Fast/Balanced
- `engine` (string, deprecated) - Compatibility alias: tesseract maps to fast; the legacy paddleocr value maps to balanced but does not load PaddlePaddle
clientJobId:
type: string
responses:
'202':
description: Accepted after validation and enqueueing. Track progress via SSE at /api/v1/jobs/{jobId}/progress; processing failures arrive in the terminal failed event.
content:
application/json:
schema:
type: object
required:
- jobId
- async
properties:
jobId:
type: string
progressJobId:
type: string
artifactJobId:
type: string
async:
type: boolean
const: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'413':
description: Encoded OCR input exceeds the hard 512 MiB safety limit
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Requested Balanced/Best runtime is not installed or is incompatible
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
'503':
description: OCR could not be queued
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/info:
post:
operationId: getImageInfo
tags:
- Tools
summary: image जानकारी
description: आयाम, format, रंग स्थान, और EXIF डेटा सहित एक image के बारे में विस्तृत metadata प्राप्त करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to inspect
responses:
'200':
description: Image metadata
content:
application/json:
schema:
type: object
properties:
width:
type: integer
height:
type: integer
filename:
type: string
format:
type: string
colorSpace:
type: string
channels:
type: integer
bitDepth:
type: string
density:
type:
- integer
- 'null'
hasAlpha:
type: boolean
fileSize:
type: integer
hasExif:
type: boolean
isProgressive:
type: boolean
orientation:
type:
- integer
- 'null'
hasProfile:
type: boolean
hasIcc:
type: boolean
hasXmp:
type: boolean
pages:
type: integer
histogram:
type: array
items:
type: object
properties:
channel:
type: string
min:
type: number
max:
type: number
mean:
type: number
stdev:
type: number
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/color-palette:
post:
operationId: extractColorPalette
tags:
- Tools
summary: रंग पैलेट
description: एक image से प्रमुख रंग निकालें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to analyze
responses:
'200':
description: Dominant colors
content:
application/json:
schema:
type: object
properties:
filename:
type: string
colors:
type: array
items:
type: string
description: Hex color strings
count:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/barcode-read:
post:
operationId: readBarcode
tags:
- Tools
summary: बारकोड रीडर
description: एक image से QR codes और बारकोड पढ़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file containing barcode or QR code
settings:
type: string
description: |
JSON string with options:
- `tryHarder` (boolean, default true) - Enable more aggressive barcode detection
responses:
'200':
description: Decoded barcode data
content:
application/json:
schema:
type: object
properties:
filename:
type: string
barcodes:
type: array
items:
type: object
properties:
type:
type: string
text:
type: string
position:
type: object
properties:
topLeft:
type: object
properties:
x:
type: number
'y':
type: number
topRight:
type: object
properties:
x:
type: number
'y':
type: number
bottomLeft:
type: object
properties:
x:
type: number
'y':
type: number
bottomRight:
type: object
properties:
x:
type: number
'y':
type: number
annotatedUrl:
type:
- string
- 'null'
previewUrl:
type:
- string
- 'null'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/find-duplicates:
post:
operationId: findDuplicates
tags:
- Tools
summary: डुप्लिकेट खोजें
description: perceptual hashing का उपयोग करके एक सेट में डुप्लिकेट images खोजें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Multiple image files to check for duplicates
settings:
type: string
description: |
JSON string with options:
- `threshold` (number 0-20, default 8) - Hamming distance threshold for duplicate detection
responses:
'200':
description: Duplicate groups
content:
application/json:
schema:
type: object
properties:
totalImages:
type: integer
duplicateGroups:
type: array
items:
type: object
properties:
groupId:
type: integer
files:
type: array
items:
type: object
properties:
filename:
type: string
similarity:
type: number
width:
type: integer
height:
type: integer
fileSize:
type: integer
format:
type: string
isBest:
type: boolean
thumbnail:
type:
- string
- 'null'
uniqueImages:
type: integer
spaceSaveable:
type: integer
skippedFiles:
type: array
description: Files that could not be processed (present only when non-empty)
items:
type: object
properties:
filename:
type: string
reason:
type: string
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/qr-generate:
post:
operationId: generateQrCode
tags:
- Tools
summary: QR code जनरेटर
description: टेक्स्ट से एक QR code image जनरेट करें। यह tool एक JSON body स्वीकार करता है, multipart नहीं।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- text
properties:
text:
type: string
maxLength: 2000
description: Text to encode in the QR code
size:
type: integer
minimum: 100
maximum: 10000
default: 400
description: Image size in pixels
errorCorrection:
type: string
enum:
- L
- M
- Q
- H
default: M
foreground:
type: string
default: '#000000'
description: Foreground color (hex)
background:
type: string
default: '#FFFFFF'
description: Background color (hex)
responses:
'200':
description: Generated QR code
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/html-to-image:
post:
operationId: captureWebpage
tags:
- Tools
summary: वेबपेज को image के रूप में कैप्चर करें
description: एक वेबपेज को उच्च-गुणवत्ता स्क्रीनशॉट image के रूप में कैप्चर करें। एक URL और कैप्चर विकल्पों के साथ एक JSON body स्वीकार करता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- url
properties:
url:
type: string
format: uri
description: URL to capture (http/https only)
format:
type: string
enum:
- jpg
- png
- webp
default: png
quality:
type: integer
minimum: 1
maximum: 100
default: 90
fullPage:
type: boolean
default: false
devicePreset:
type: string
enum:
- desktop
- tablet
- mobile
- custom
default: desktop
viewportWidth:
type: integer
minimum: 320
maximum: 3840
default: 1280
viewportHeight:
type: integer
minimum: 320
maximum: 2160
default: 720
responses:
'200':
description: Screenshot captured successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid URL or parameters
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'503':
description: Browser service unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'504':
description: Page load timeout
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/strip-metadata/inspect:
post:
operationId: inspectMetadata
tags:
- Tools
summary: metadata निरीक्षण करें
description: एक image में सभी metadata (EXIF, GPS, ICC, XMP) को हटाए बिना देखें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to inspect
responses:
'200':
description: Image metadata
content:
application/json:
schema:
type: object
properties:
filename:
type: string
fileSize:
type: integer
exif:
type: object
description: EXIF metadata
exifError:
type: string
description: Present when EXIF parsing fails
gps:
type: object
description: GPS metadata
icc:
type: object
description: ICC profile metadata
xmp:
type: object
description: XMP metadata
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Failed to read image metadata
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/edit-metadata:
post:
operationId: editMetadata
tags:
- Tools
summary: इमेज मेटाडेटा संपादित करें
description: ExifTool का उपयोग करके एक image में EXIF, IPTC, GPS, और अन्य metadata fields संपादित करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `title` (string) - Image title
- `author` (string) - Author name
- `artist` (string) - Artist or author name
- `copyright` (string) - Copyright notice
- `imageDescription` (string) - Image description
- `software` (string) - Software used
- `dateTime` (string) - Date/time string
- `dateTimeOriginal` (string) - Original capture date/time
- `clearGps` (boolean, default false) - Remove all GPS data
- `fieldsToRemove` (string[]) - Specific metadata fields to remove
- `gpsLatitude` (number -90 to 90) - GPS latitude
- `gpsLongitude` (number -180 to 180) - GPS longitude
- `gpsAltitude` (number) - GPS altitude in meters
- `keywords` (string[]) - Keywords or tags
- `keywordsMode` (string, default "add") - One of: add, set
- `dateShift` (string) - Shift dates by offset, e.g. "+2:00" or "-1:30"
- `setAllDates` (string) - Set all date fields to this value
- `iptcTitle` (string) - IPTC title
- `iptcHeadline` (string) - IPTC headline
- `iptcCity` (string) - IPTC city
- `iptcState` (string) - IPTC state or province
- `iptcCountry` (string) - IPTC country
responses:
'200':
description: Image with updated metadata
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/edit-metadata/inspect:
post:
operationId: inspectMetadataExifTool
tags:
- Tools
summary: metadata निरीक्षण करें (ExifTool)
description: ExifTool का उपयोग करके एक image से सभी metadata पढ़ें। सभी एम्बेडेड EXIF, IPTC, XMP, और GPS fields लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to inspect
responses:
'200':
description: Full metadata object (keys vary by image)
content:
application/json:
schema:
type: object
additionalProperties: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Failed to read image metadata
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/{section}/{toolId}/batch:
post:
operationId: batchProcess
tags:
- Batch
summary: images बैच प्रोसेस करें
description: |
एक ही tool के जरिए कई images भेजें। एक ZIP फ़ाइल लौटाता है। response में प्रगति ट्रैकिंग के लिए एक X-Job-Id header शामिल होता है।
security:
- bearerAuth: []
parameters:
- name: section
in: path
required: true
schema:
type: string
description: Tool section slug (image, video, audio, pdf, files)
- name: toolId
in: path
required: true
schema:
type: string
description: Tool identifier (e.g. resize, crop)
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Image files to process (one or more)
settings:
type: string
description: JSON string of tool settings applied to all images
responses:
'200':
description: ZIP archive of processed images
headers:
X-Job-Id:
schema:
type: string
description: Job identifier for progress tracking
content:
application/zip:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/pipeline/execute:
post:
operationId: executePipeline
tags:
- Pipelines
summary: एक pipeline निष्पादित करें
description: एक image को tools की श्रृंखला के जरिए चलाएं। pipeline परिभाषा `pipeline` multipart field में एक JSON string के रूप में भेजी जाती है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
- pipeline
properties:
file:
type: string
format: binary
description: Image file to process
pipeline:
type: string
description: 'JSON string: { "steps": [{ "toolId": "resize", "settings": {...} }, ...] }'
responses:
'200':
description: Pipeline result
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
downloadUrl:
type: string
originalSize:
type: integer
processedSize:
type: integer
stepsCompleted:
type: integer
steps:
type: array
items:
type: object
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/pipeline/save:
post:
operationId: savePipeline
tags:
- Pipelines
summary: एक pipeline सहेजें
description: 'बाद के निष्पादन के लिए एक नामित pipeline परिभाषा को उसके tool चरणों के साथ स्थायी करें। पुन: प्रयोज्य workflows को सहेजने के लिए इसका उपयोग करें।'
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
- steps
properties:
name:
type: string
description:
type: string
description: Optional human-readable description of the pipeline
steps:
type: array
items:
type: object
properties:
toolId:
type: string
settings:
type: object
responses:
'201':
description: Pipeline saved
content:
application/json:
schema:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
description: Human-readable description of the pipeline
steps:
type: array
items:
type: object
createdAt:
type: string
format: date-time
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/pipeline/list:
get:
operationId: listPipelines
tags:
- Pipelines
summary: सहेजे गए pipelines सूचीबद्ध करें
description: वर्तमान user के लिए सभी सहेजी गई pipeline परिभाषाएं पुनर्प्राप्त करें। प्रत्येक के लिए नाम, चरण, और निर्माण तिथि लौटाता है।
security:
- bearerAuth: []
responses:
'200':
description: List of pipelines
content:
application/json:
schema:
type: object
properties:
pipelines:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
description: Human-readable description of the pipeline
steps:
type: array
items:
type: object
createdAt:
type: string
format: date-time
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/pipeline/{id}:
delete:
operationId: deletePipeline
tags:
- Pipelines
summary: एक pipeline हटाएं
description: एक सहेजे गए pipeline को उसके ID से स्थायी रूप से हटाएं। केवल pipeline स्वामी या एक admin इसे हटा सकता है।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Pipeline UUID
schema:
type: string
responses:
'200':
description: Pipeline deleted
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Not authorized to delete this pipeline
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'404':
description: Pipeline not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/pipeline/tools:
get:
operationId: listPipelineTools
tags:
- Pipelines
summary: pipeline-संगत tools सूचीबद्ध करें
description: सभी tool IDs लौटाता है जिन्हें pipeline चरणों के रूप में उपयोग किया जा सकता है।
security: []
responses:
'200':
description: Tool IDs
content:
application/json:
schema:
type: object
properties:
toolIds:
type: array
items:
type: string
/api/v1/pipeline/batch:
post:
operationId: batchPipeline
tags:
- Pipelines
summary: कई फ़ाइलों पर pipeline चलाएं
description: कई images में एक pipeline निष्पादित करें। सभी प्रोसेस किए गए परिणामों के साथ एक ZIP फ़ाइल लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
- pipeline
properties:
file:
type: array
items:
type: string
format: binary
description: Image files to process
pipeline:
type: string
description: |
JSON string with pipeline definition:
- `steps` (array, required, 1-20 items) - Pipeline steps
- `steps[].toolId` (string, required) - Tool ID for this step
- `steps[].settings` (object, optional) - Tool-specific settings
clientJobId:
type: string
description: Optional client-provided job ID for progress tracking via SSE
responses:
'200':
description: ZIP file with processed images
headers:
X-Job-Id:
schema:
type: string
description: Job ID for progress tracking
X-File-Results:
schema:
type: string
description: Percent-encoded JSON mapping of input index to output filename (decode with decodeURIComponent before JSON.parse)
content:
application/zip:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/upload:
post:
operationId: uploadImage
tags:
- Files
summary: एक image upload करें
description: tool endpoints द्वारा बाद की प्रोसेसिंग के लिए एक raw image फ़ाइल upload करें। एक jobId और फ़ाइल metadata लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
responses:
'200':
description: Upload result
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
files:
type: array
items:
type: object
properties:
name:
type: string
size:
type: integer
format:
type: string
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/download/{jobId}/{filename}:
get:
operationId: downloadProcessedImage
tags:
- Files
summary: एक प्रोसेस की गई image download करें
description: एक प्रोसेस की गई image को उसके job ID और filename से download करें। यह tool responses से downloadUrl में लौटाया गया URL है।
security: []
parameters:
- name: jobId
in: path
required: true
description: Job identifier from a tool processing response
schema:
type: string
- name: filename
in: path
required: true
description: Output filename from the processing response
schema:
type: string
responses:
'200':
description: Image binary
content:
image/*:
schema:
type: string
format: binary
'404':
description: File not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/preview:
post:
operationId: generatePreview
tags:
- Files
summary: image preview जनरेट करें
description: किसी भी image (HEIC/HEIF सहित) को एक WebP preview में बदलें, जो 1200x1200 पिक्सेल के भीतर फ़िट करने के लिए आकार बदला गया हो।
security: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to preview
responses:
'200':
description: WebP preview image
content:
image/webp:
schema:
type: string
format: binary
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/files:
get:
operationId: listFiles
tags:
- Files
summary: सहेजी गई फ़ाइलें सूचीबद्ध करें
description: प्रत्येक फ़ाइल का नवीनतम संस्करण लौटाता है (प्रति संस्करण श्रृंखला एक)। पेजिनेशन और खोज का समर्थन करता है।
security:
- bearerAuth: []
parameters:
- name: limit
in: query
description: Maximum number of files to return (default 50)
schema:
type: integer
default: 50
- name: offset
in: query
description: Number of files to skip for pagination (default 0)
schema:
type: integer
default: 0
- name: search
in: query
description: Filter files by original filename (substring match)
schema:
type: string
responses:
'200':
description: List of saved files
content:
application/json:
schema:
type: object
properties:
files:
type: array
items:
type: object
properties:
id:
type: string
filename:
type: string
size:
type: integer
contentType:
type: string
createdAt:
type: string
format: date-time
total:
type: integer
description: Total number of matching files (for pagination)
limit:
type: integer
description: Applied limit value
offset:
type: integer
description: Applied offset value
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
delete:
operationId: bulkDeleteFiles
tags:
- Files
summary: सहेजी गई फ़ाइलें बल्क हटाएं
description: फ़ाइलें और उनकी संपूर्ण संस्करण श्रृंखलाएं हटाएं। गैर-admin users केवल अपनी फ़ाइलें हटा सकते हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- ids
properties:
ids:
type: array
items:
type: string
description: File IDs to delete (deletes entire version chain for each)
responses:
'200':
description: Deletion result
content:
application/json:
schema:
type: object
properties:
deleted:
type: integer
description: Total number of records deleted across all version chains
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/files/upload:
post:
operationId: saveFileToLibrary
tags:
- Files
summary: लाइब्रेरी में फ़ाइल सहेजें
description: स्थायी भंडारण और संस्करण ट्रैकिंग के लिए एक या अधिक image फ़ाइलें सीधे फ़ाइल लाइब्रेरी में upload करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
responses:
'201':
description: Files uploaded
content:
application/json:
schema:
type: object
properties:
files:
type: array
items:
type: object
description: Full file object with all metadata
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/files/save-result:
post:
operationId: saveProcessingResult
tags:
- Files
summary: एक प्रोसेसिंग परिणाम लाइब्रेरी में सहेजें
description: एक tool प्रोसेसिंग परिणाम को मौजूदा फ़ाइल के नए संस्करण के रूप में सहेजें। एक संस्करण श्रृंखला बनाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
- parentId
properties:
file:
type: string
format: binary
description: The processed image file
parentId:
type: string
description: ID of the parent file in the version chain
toolId:
type: string
description: Tool that produced this result
responses:
'201':
description: File saved
content:
application/json:
schema:
type: object
properties:
file:
type: object
description: Full file object with all metadata
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: Parent file not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/files/{id}:
get:
operationId: getFile
tags:
- Files
summary: फ़ाइल metadata और संस्करण इतिहास प्राप्त करें
description: एक सहेजी गई फ़ाइल के लिए metadata और पूर्ण संस्करण इतिहास पुनर्प्राप्त करें। download करने से पहले फ़ाइल विवरण का निरीक्षण करने के लिए इसका उपयोग करें।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Saved file UUID
schema:
type: string
responses:
'200':
description: File metadata with version history
content:
application/json:
schema:
type: object
properties:
file:
type: object
properties:
id:
type: string
originalName:
type: string
mimeType:
type: string
size:
type: integer
width:
type: integer
height:
type: integer
version:
type: integer
parentId:
type:
- string
- 'null'
toolChain:
type: array
items:
type: string
createdAt:
type: string
format: date-time
versions:
type: array
items:
type: object
description: Full version chain of this file
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: File not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/files/{id}/download:
get:
operationId: downloadSavedFile
tags:
- Files
summary: एक सहेजी गई फ़ाइल download करें
description: लाइब्रेरी से एक सहेजी गई फ़ाइल की binary सामग्री को उसके ID से download करें।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Saved file UUID
schema:
type: string
responses:
'200':
description: Image binary
content:
image/*:
schema:
type: string
format: binary
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: File not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/files/{id}/thumbnail:
get:
operationId: getFileThumbnail
tags:
- Files
summary: फ़ाइल थंबनेल प्राप्त करें
description: एक सहेजी गई फ़ाइल का 300px JPEG थंबनेल पुनर्प्राप्त करें। गैलरी दृश्यों और फ़ाइल ब्राउज़र के लिए उपयोगी।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Saved file UUID
schema:
type: string
responses:
'200':
description: 300px JPEG thumbnail
content:
image/jpeg:
schema:
type: string
format: binary
'404':
description: File not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: Thumbnail generation failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/fetch-urls:
post:
operationId: fetchImageUrls
tags:
- Files
summary: URLs से images प्राप्त करें
description: |
बाहरी URLs से एक या अधिक images प्राप्त करें। प्रत्येक URL को SSRF
हमलों के विरुद्ध validate किया जाता है, आकार-सीमित किया जाता है, और एक वैध image के रूप में सत्यापित किया जाता है। प्रत्येक
सफलतापूर्वक प्राप्त की गई image के लिए download URLs लौटाता है। प्रति घंटे 200 requests तक सीमित।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- urls
properties:
urls:
type: array
items:
type: string
format: uri
minItems: 1
maxItems: 50
description: URLs of images to fetch (1-50)
responses:
'200':
description: Fetch results for each URL
content:
application/json:
schema:
type: object
properties:
results:
type: array
items:
type: object
properties:
success:
type: boolean
url:
type: string
filename:
type: string
contentType:
type: string
size:
type: integer
width:
type: integer
height:
type: integer
downloadUrl:
type: string
previewUrl:
type:
- string
- 'null'
error:
type: string
description: Present only when success is false
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/config/locale:
get:
operationId: getLocaleConfig
tags:
- System
summary: डिफ़ॉल्ट locale प्राप्त करें
description: डिफ़ॉल्ट locale सेटिंग लौटाता है। सार्वजनिक endpoint।
security: []
responses:
'200':
description: Default locale
content:
application/json:
schema:
type: object
properties:
defaultLocale:
type: string
example: en
/api/auth/login:
post:
operationId: login
tags:
- Auth
summary: लॉग इन करें
description: username और password के साथ authenticate करें। बाद के API requests के लिए एक bearer token लौटाता है।
security: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- username
- password
properties:
username:
type: string
password:
type: string
format: password
responses:
'200':
description: Login successful
content:
application/json:
schema:
type: object
properties:
token:
type: string
user:
type: object
properties:
id:
type: string
username:
type: string
role:
type: string
mustChangePassword:
type: boolean
permissions:
type: array
items:
type: string
teamName:
type: string
expiresAt:
type: string
format: date-time
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Invalid credentials
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/auth/logout:
post:
operationId: logout
tags:
- Auth
summary: लॉग आउट करें
description: वर्तमान session token को अमान्य करें। logout के बाद token का आगे के requests के लिए उपयोग नहीं किया जा सकता।
security:
- bearerAuth: []
responses:
'200':
description: Logged out
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/auth/session:
get:
operationId: getSession
tags:
- Auth
summary: वर्तमान session प्राप्त करें
description: user प्रोफ़ाइल, role, और permissions सहित वर्तमान session विवरण पुनर्प्राप्त करें। authenticate न होने पर null user लौटाता है।
security: []
responses:
'200':
description: Session info
content:
application/json:
schema:
type: object
properties:
user:
type: object
properties:
id:
type: string
username:
type: string
role:
type: string
mustChangePassword:
type: boolean
permissions:
type: array
items:
type: string
expiresAt:
type:
- string
- 'null'
format: date-time
/api/auth/change-password:
post:
operationId: changePassword
tags:
- Auth
summary: password बदलें
description: authenticate किए गए user का password बदलें। सत्यापन के लिए वर्तमान password आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- currentPassword
- newPassword
properties:
currentPassword:
type: string
format: password
newPassword:
type: string
format: password
responses:
'200':
description: Password changed
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/auth/users:
get:
operationId: listUsers
tags:
- Auth
summary: users सूचीबद्ध करें
description: users:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: List of users
content:
application/json:
schema:
type: object
properties:
users:
type: array
items:
type: object
properties:
id:
type: string
username:
type: string
role:
type: string
team:
type: string
createdAt:
type: string
format: date-time
maxUsers:
type: integer
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
/api/auth/register:
post:
operationId: createUser
tags:
- Auth
summary: user बनाएं
description: |
Requires users:manage permission. The assigned role must be within the actor's effective role authority, including hierarchy, permissions, tool access, and any API-key scope.
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- username
- password
properties:
username:
type: string
password:
type: string
format: password
role:
type: string
description: Built-in role (admin, editor, user) or custom role name
default: user
team:
type: string
default: Default
responses:
'201':
description: User created
content:
application/json:
schema:
type: object
properties:
id:
type: string
username:
type: string
role:
type: string
team:
type: string
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'409':
description: Username already exists
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictError'
/api/auth/users/{id}:
put:
operationId: updateUser
tags:
- Auth
summary: user अपडेट करें
description: |
Requires users:manage permission and authority over the target's current role. Any newly assigned role must also be within the actor's effective hierarchy, permissions, tool access, and API-key scope.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: User UUID
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
role:
type: string
description: Built-in role (admin, editor, user) or custom role name
team:
type: string
responses:
'200':
description: User updated
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
delete:
operationId: deleteUser
tags:
- Auth
summary: user हटाएं
description: |
Requires users:manage permission and authority over the target's current role, including hierarchy, permissions, tool access, and any API-key scope. Self-deletion is not allowed.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: User UUID
schema:
type: string
responses:
'200':
description: User deleted
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
/api/auth/users/{id}/reset-password:
post:
operationId: resetUserPassword
tags:
- Auth
summary: user password रीसेट करें
description: |
Reset a local user's password. Requires users:manage permission and authority over the target's current role, including hierarchy, permissions, tool access, and any API-key scope.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: User UUID
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- newPassword
properties:
newPassword:
type: string
format: password
responses:
'200':
description: Password reset
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
/api/v1/api-keys:
post:
operationId: createApiKey
tags:
- API Keys
summary: एक API key बनाएं
description: |
एक नई API key जनरेट करें। पूर्ण key (si_ के आगे लगे साथ) केवल एक बार लौटाई जाती है। Keys scrypt hashing का उपयोग करके संग्रहीत की जाती हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
maxLength: 100
default: Default API Key
permissions:
type: array
items:
type: string
description: Scoped permissions for this key
expiresAt:
type: string
format: date-time
description: Optional expiration date
responses:
'201':
description: API key created
content:
application/json:
schema:
type: object
properties:
id:
type: string
key:
type: string
description: Full key (only shown once)
name:
type: string
permissions:
type:
- array
- 'null'
items:
type: string
expiresAt:
type:
- string
- 'null'
format: date-time
createdAt:
type: string
format: date-time
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
get:
operationId: listApiKeys
tags:
- API Keys
summary: API keys सूचीबद्ध करें
description: key metadata लौटाता है लेकिन पूर्ण key नहीं।
security:
- bearerAuth: []
responses:
'200':
description: List of API keys
content:
application/json:
schema:
type: object
properties:
apiKeys:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
permissions:
type:
- array
- 'null'
items:
type: string
createdAt:
type: string
format: date-time
lastUsedAt:
type:
- string
- 'null'
format: date-time
expiresAt:
type:
- string
- 'null'
format: date-time
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/api-keys/{id}:
delete:
operationId: deleteApiKey
tags:
- API Keys
summary: एक API key हटाएं
description: एक API key को स्थायी रूप से रद्द करें और हटाएं। हटाने के बाद key का authentication के लिए उपयोग नहीं किया जा सकता।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: API key UUID
schema:
type: string
responses:
'200':
description: API key deleted
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/settings:
get:
operationId: getSettings
tags:
- Settings
summary: सभी settings प्राप्त करें
description: कॉलर की प्रभावी अनुमतियों द्वारा अधिकृत सिस्टम सेटिंग्स प्राप्त करें। `settings:read` आवश्यक है; सुरक्षा, अनुपालन और पूर्ण-एडमिन सेटिंग्स को अलग-अलग फ़िल्टर किया जाता है।
security:
- bearerAuth: []
responses:
'200':
description: All settings wrapped in a settings object
content:
application/json:
schema:
type: object
properties:
settings:
type: object
additionalProperties:
type: string
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
put:
operationId: updateSettings
tags:
- Settings
summary: settings अपडेट करें
description: मान्य और लिखने योग्य सेटिंग कीज़ वाला एक फ़्लैट JSON ऑब्जेक्ट स्वीकार करता है। `settings:write` आवश्यक है; सुरक्षा और अनुपालन कीज़ के लिए उनकी संबंधित प्रभावी अनुमति भी आवश्यक है, गोपनीय मानों के लिए पूर्ण-एडमिन अधिकार आवश्यक हैं, और समर्पित या सर्वर-प्रबंधित कीज़ केवल पढ़ने योग्य हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
additionalProperties:
type: string
responses:
'200':
description: Settings updated
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
updatedCount:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Admin access required
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
/api/v1/settings/{key}:
get:
operationId: getSetting
tags:
- Settings
summary: एकल setting प्राप्त करें
description: की द्वारा एक मान्य सेटिंग प्राप्त करें। जब कॉलर के पास `settings:read` और उस की का अतिरिक्त अधिकार दोनों हों, तब मान और अंतिम-अपडेट टाइमस्टैम्प लौटाता है।
security:
- bearerAuth: []
parameters:
- name: key
in: path
required: true
description: Setting key name
schema:
type: string
responses:
'200':
description: Setting value
content:
application/json:
schema:
type: object
properties:
key:
type: string
value:
type: string
updatedAt:
type: string
format: date-time
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'404':
description: Setting not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/teams:
get:
operationId: listTeams
tags:
- Teams
summary: teams सूचीबद्ध करें
description: teams:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: List of teams
content:
application/json:
schema:
type: object
properties:
teams:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
memberCount:
type: integer
createdAt:
type: string
format: date-time
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
post:
operationId: createTeam
tags:
- Teams
summary: एक team बनाएं
description: teams:manage permission आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
properties:
name:
type: string
responses:
'201':
description: Team created
content:
application/json:
schema:
type: object
properties:
id:
type: string
name:
type: string
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'409':
description: Team name already exists
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictError'
/api/v1/teams/{id}:
put:
operationId: updateTeam
tags:
- Teams
summary: एक team का नाम बदलें
description: teams:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Team UUID
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
properties:
name:
type: string
responses:
'200':
description: Team updated
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'404':
description: Team not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'409':
description: Team name already exists
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictError'
delete:
operationId: deleteTeam
tags:
- Teams
summary: एक team हटाएं
description: teams:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Team UUID
schema:
type: string
responses:
'200':
description: Team deleted
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'404':
description: Team not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/config/auth:
get:
operationId: getAuthConfig
tags:
- System
summary: Auth configuration
description: जाँचें कि इस instance पर authentication सक्षम है या नहीं। login फ़्लो निर्धारित करने के लिए frontend द्वारा उपयोग किया जाने वाला सार्वजनिक endpoint।
security: []
responses:
'200':
description: Auth config
content:
application/json:
schema:
type: object
properties:
authEnabled:
type: boolean
/api/v1/jobs/{jobId}/progress:
get:
operationId: getJobProgress
tags:
- System
summary: Job प्रगति (SSE)
description: लंबे समय तक चलने वाले कार्यों को ट्रैक करने के लिए Server-Sent Events स्ट्रीम। यह एकल-फ़ाइल, बैच और हार्टबीट फ़्रेम भेजती है और अंतिम कार्य इवेंट के तुरंत बाद बंद हो जाती है।
security: []
parameters:
- name: jobId
in: path
required: true
description: Job UUID from a tool processing or installation response
schema:
type: string
responses:
'200':
description: |
SSE stream of job progress frames. Single-file frames use `phase`, `percent`, optional `stage`, and terminal `result` or `error` fields. Batch frames use `status`, file counters, and `errors`. Heartbeat frames keep idle connections alive.
content:
text/event-stream:
schema:
oneOf:
- title: Single-file progress frame
type: object
required:
- jobId
- type
- phase
- percent
properties:
jobId:
type: string
type:
type: string
const: single
phase:
type: string
enum:
- processing
- complete
- failed
stage:
type: string
percent:
type: number
minimum: 0
maximum: 100
error:
type: string
description: Present on terminal failed frames
result:
type: object
additionalProperties: true
description: Present on terminal complete frames; contains the tool result
- title: Batch progress frame
type: object
required:
- jobId
- type
- status
- totalFiles
- completedFiles
- failedFiles
- errors
properties:
jobId:
type: string
type:
type: string
const: batch
status:
type: string
enum:
- processing
- completed
- failed
totalFiles:
type: integer
minimum: 0
completedFiles:
type: integer
minimum: 0
failedFiles:
type: integer
minimum: 0
currentFile:
type: string
errors:
type: array
items:
type: object
required:
- filename
- error
properties:
filename:
type: string
error:
type: string
- title: Heartbeat frame
type: object
required:
- type
properties:
type:
type: string
const: heartbeat
/api/v1/admin/health:
get:
operationId: adminHealthCheck
tags:
- Admin
summary: Admin स्वास्थ्य जाँच
description: |
database स्थिति, storage मोड, queue
स्थिति, और GPU उपलब्धता सहित पूर्ण सिस्टम निदान। system:health permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Detailed system health
content:
application/json:
schema:
$ref: '#/components/schemas/AdminHealthResponse'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
/api/v1/config/analytics:
get:
operationId: getAnalyticsConfig
tags:
- Analytics
summary: analytics configuration प्राप्त करें
description: |
प्रभावी analytics प्रदाता configuration लौटाता है। Analytics केवल
तब सक्षम होता है जब compile-time bake और instance
analyticsEnabled setting दोनों इसे अनुमति देते हैं। जब अक्षम हो, तो keys, DSN, और
instanceId रिक्त होते हैं। सार्वजनिक endpoint।
security: []
responses:
'200':
description: Analytics configuration
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: |
Effective analytics state. True only when both the
compile-time bake and the instance analyticsEnabled
setting are on. When false, the keys, DSN, and instanceId
are blank.
posthogApiKey:
type: string
posthogHost:
type: string
sentryDsn:
type: string
sentryDsnWeb:
type: string
posthogSampleRate:
type: number
instanceId:
type: string
/api/v1/features:
get:
operationId: listFeatures
tags:
- Features
summary: feature bundles सूचीबद्ध करें
description: |
सभी उपलब्ध AI feature bundles और उनकी इंस्टॉलेशन स्थिति लौटाता है।
गैर-Docker वातावरण में, सभी bundles इंस्टॉल के रूप में दिखते हैं।
security:
- bearerAuth: []
responses:
'200':
description: Feature bundle list
content:
application/json:
schema:
type: object
properties:
bundles:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
description: Human-readable description of the feature bundle
status:
type: string
enum:
- installed
- not_installed
- installing
- queued
- error
installedVersion:
type:
- string
- 'null'
estimatedSize:
type: string
downloadBytes:
type:
- integer
- 'null'
description: Compressed archive size for this host's architecture, when the manifest records it. Null in native (non-Docker) mode or when unmeasured.
installedBytes:
type:
- integer
- 'null'
description: Extracted on-disk size for this host's architecture, when the manifest records it.
compatibility:
type: string
enum:
- compatible
- incompatible
- invalid
description: OCR runtime compatibility; omitted for legacy bundles
compatibilityReason:
type:
- string
- 'null'
description: OCR runtime compatibility reason; omitted for legacy bundles
selectedTarget:
type:
- string
- 'null'
description: Selected OCR runtime target, such as linux-amd64-cpu-py312
missingDownloadBytes:
type:
- integer
- 'null'
description: Remaining OCR runtime download size for this host
requiredMemoryBytes:
type:
- integer
- 'null'
description: Minimum effective memory required by the selected OCR runtime; null for legacy bundles
effectiveMemoryBytes:
type:
- integer
- 'null'
description: Effective memory available to OCR (the configured container cgroup limit, otherwise host memory); null for legacy bundles
healthyGeneration:
type:
- string
- 'null'
description: Active immutable OCR generation identifier
availableQualities:
type: array
description: OCR quality tiers currently available on this host
items:
type: string
enum:
- fast
- balanced
- best
enablesTools:
type: array
items:
type: string
progress:
type:
- object
- 'null'
properties:
percent:
type: number
stage:
type: string
error:
type:
- string
- 'null'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/admin/features/{bundleId}/install:
post:
operationId: installFeature
tags:
- Features
summary: एक feature bundle इंस्टॉल करें
description: |-
एआई फीचर बंडल का एसिंक इंस्टालेशन प्रारंभ करें। डाउनलोड मॉडल और
Python sidecar को कॉन्फ़िगर करता है। प्रगति ट्रैकिंग के लिए jobId लौटाता है
SSE समापन बिंदु के माध्यम से। features:manage अनुमति की आवश्यकता है.
bundleId=ocr के लिए, इंस्टॉलेशन आधिकारिक Linux amd64 और arm64 कंटेनरों में समर्थित है।
यह इस होस्ट के लिए चयनित लक्ष्य को डाउनलोड करता है, रिलीज़ को सत्यापित करता है
सूचकांक के Ed25519 हस्ताक्षर और artifact/मॉडल डाइजेस्ट, धुआं-परीक्षण a
चरणबद्ध अपरिवर्तनीय पीढ़ी, और परमाणु रूप से इसे सक्रिय करती है। OCR
रनटाइम CPU का उपयोग करता है, भले ही कंटेनर में NVIDIA GPU एक्सेस हो। द
सटीक रनटाइम के लिए कम से कम 4 GiB प्रभावी मेमोरी की आवश्यकता होती है
कॉन्फ़िगर कंटेनर cgroup सीमा, अन्यथा होस्ट मेमोरी)। उसके नीचे के सिस्टम पर हस्ताक्षर किए गए
न्यूनतम संगतता को डाउनलोड करने से पहले अस्वीकार कर दिया जाता है
compatibilityReason=insufficient-memory. Fast Tesseract OCR नहीं है
इस आवश्यकता के अधीन.
इंस्टॉल क्रमबद्ध सर्वर-साइड होते हैं: एक अनुरोध किया जाता है जबकि दूसरा
इंस्टॉल चल रहा है अस्वीकृत होने के बजाय कतारबद्ध (queued=true) है, और
रनिंग इंस्टाल समाप्त होने पर स्वचालित रूप से प्रारंभ हो जाता है। एक दोहराव
उसी इन-फ़्लाइट बंडल के लिए अनुरोध काट लिया जाता है और वही वापस कर दिया जाता है
jobId.
security:
- bearerAuth: []
parameters:
- name: bundleId
in: path
required: true
description: Feature bundle identifier
schema:
type: string
responses:
'202':
description: Installation started or queued
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
description: Job ID for tracking installation progress via SSE
queued:
type: boolean
description: True when the install was queued behind another running install instead of starting immediately.
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'404':
description: Unknown bundle ID
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'409':
description: Bundle already installed or OCR runtime unsupported on this host
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictError'
'503':
description: OCR runtime trust key is not configured in this image
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/admin/features/{bundleId}/uninstall:
post:
operationId: uninstallFeature
tags:
- Features
summary: एक feature bundle अनइंस्टॉल करें
description: |
एक AI feature bundle अनइंस्टॉल करें और उसकी model फ़ाइलें हटाएं (जब तक किसी अन्य
इंस्टॉल किए गए bundle के साथ साझा न हों)। features:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: bundleId
in: path
required: true
description: Feature bundle identifier
schema:
type: string
responses:
'200':
description: Bundle uninstalled
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'404':
description: Unknown bundle ID
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'409':
description: Bundle is not installed
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictError'
/api/v1/admin/features/disk-usage:
get:
operationId: getFeatureDiskUsage
tags:
- Features
summary: AI model डिस्क उपयोग
description: |
AI model फ़ाइलों द्वारा उपयोग की गई कुल डिस्क स्थान लौटाता है।
features:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Disk usage
content:
application/json:
schema:
type: object
properties:
totalBytes:
type: integer
description: Total bytes used by AI model files
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
/api/v1/audit-log:
get:
operationId: queryAuditLog
tags:
- Audit
summary: audit log क्वेरी करें
description: |
प्रशासनिक कार्रवाइयों का पेजिनेटेड audit log। कार्रवाई
प्रकार और तिथि सीमा के अनुसार फ़िल्टरिंग का समर्थन करता है। audit:read permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: page
in: query
description: Page number (default 1)
schema:
type: integer
minimum: 1
default: 1
- name: limit
in: query
description: Results per page (1-100, default 50)
schema:
type: integer
minimum: 1
maximum: 100
default: 50
- name: action
in: query
description: Filter by action type
schema:
type: string
- name: from
in: query
description: Filter entries after this ISO 8601 date
schema:
type: string
format: date-time
- name: to
in: query
description: Filter entries before this ISO 8601 date
schema:
type: string
format: date-time
responses:
'200':
description: Paginated audit log entries
content:
application/json:
schema:
type: object
properties:
entries:
type: array
items:
type: object
properties:
id:
type: string
actorId:
type:
- string
- 'null'
actorUsername:
type: string
action:
type: string
targetType:
type:
- string
- 'null'
targetId:
type:
- string
- 'null'
details:
type:
- object
- 'null'
ipAddress:
type:
- string
- 'null'
requestId:
type:
- string
- 'null'
createdAt:
type: string
format: date-time
total:
type: integer
description: Total matching entries
page:
type: integer
limit:
type: integer
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
/api/v1/roles:
get:
operationId: listRoles
tags:
- Roles
summary: roles सूचीबद्ध करें
description: |
सभी roles (बिल्ट-इन और कस्टम) को उनके permissions और user
संख्याओं के साथ सूचीबद्ध करें। audit:read permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Role list
content:
application/json:
schema:
type: object
properties:
roles:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
description: Human-readable description of the role
permissions:
type: array
items:
type: string
isBuiltin:
type: boolean
userCount:
type: integer
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
post:
operationId: createRole
tags:
- Roles
summary: एक कस्टम role बनाएं
description: |
Create a new custom role with specified permissions. Role names must be
2-30 characters, lowercase alphanumeric with hyphens and underscores.
Requires security:manage permission. The new role's permissions and tool
access must be contained by the actor's effective authority.
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
- permissions
properties:
name:
type: string
minLength: 2
maxLength: 30
pattern: ^[a-z0-9_-]+$
description: Lowercase role name
description:
type: string
description: Human-readable description
permissions:
type: array
items:
type: string
description: |
Permission strings. Valid values: tools:use, files:own, files:all,
apikeys:own, apikeys:all, pipelines:own, pipelines:all,
settings:read, settings:write, users:manage, teams:manage,
features:manage, system:health, audit:read, compliance:manage,
webhooks:manage, security:manage
responses:
'201':
description: Role created
content:
application/json:
schema:
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
description: Human-readable description of the role
permissions:
type: array
items:
type: string
isBuiltin:
type: boolean
'400':
description: Validation error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'409':
description: Role name already exists
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictError'
/api/v1/roles/{id}:
put:
operationId: updateRole
tags:
- Roles
summary: एक कस्टम role अपडेट करें
description: |
Update name, description, or permissions of a custom role. Built-in
roles cannot be modified. Requires security:manage permission and
authority over the current role; the resulting permissions and tool
access must remain contained by the actor's effective authority.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Role UUID
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
minLength: 2
maxLength: 30
description:
type: string
description: Updated description for the role
permissions:
type: array
items:
type: string
responses:
'200':
description: Role updated
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'400':
description: Validation error or cannot modify built-in role
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'404':
description: Role not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'409':
description: Role name already exists
content:
application/json:
schema:
$ref: '#/components/schemas/ConflictError'
delete:
operationId: deleteRole
tags:
- Roles
summary: एक कस्टम role हटाएं
description: |
Delete a custom role. Users assigned to this role are reassigned to the
default "user" role. Built-in roles cannot be deleted. Requires
security:manage permission, authority over the current role, and
authority to assign the fallback role.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
description: Role UUID
schema:
type: string
responses:
'200':
description: Role deleted
content:
application/json:
schema:
type: object
properties:
ok:
type: boolean
'400':
description: Cannot delete built-in role
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'403':
description: Insufficient permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenError'
'404':
description: Role not found
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/convert-video:
post:
operationId: convertVideo
tags:
- Tools
summary: Convert Video
description: MP4, MOV, WebM, AVI, और MKV के बीच videos बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `format` (string, default "mp4") - One of: mp4, mov, webm, avi, mkv
- `quality` (string, default "balanced") - One of: high, balanced, small
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/compress-video:
post:
operationId: compressVideo
tags:
- Tools
summary: Compress Video
description: गुणवत्ता नियंत्रण के साथ video फ़ाइल आकार सिकोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `quality` (string, default "balanced") - One of: light, balanced, strong
- `resolution` (string, default "original") - One of: original, 1080p, 720p, 480p
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/trim-video:
post:
operationId: trimVideo
tags:
- Tools
summary: Trim Video
description: एक video से एक क्लिप काटें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `startS` (number >= 0, default 0) - Start time in seconds
- `endS` (number, required) - End time in seconds (must be after startS)
- `precise` (boolean, default false) - Re-encode for frame-accurate cuts instead of keyframe seek
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/mute-video:
post:
operationId: muteVideo
tags:
- Tools
summary: Mute Video
description: एक video से audio ट्रैक हटाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/video-to-gif:
post:
operationId: videoToGif
tags:
- Tools
summary: Video to GIF
description: एक video क्लिप को एक एनिमेटेड GIF में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `fps` (integer 1-30, default 12) - Output frame rate
- `width` (integer 64-1280, default 480) - Output width in pixels
- `startS` (number >= 0, default 0) - Start time in seconds
- `durationS` (number 0-60, default 5) - Duration in seconds
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/resize-video:
post:
operationId: resizeVideo
tags:
- Tools
summary: Resize Video
description: एक video को नए रिज़ॉल्यूशन या प्रीसेट आकार में स्केल करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `width` (integer 16-7680, optional) - Target width in pixels
- `height` (integer 16-4320, optional) - Target height in pixels
- `preset` (string, default "custom") - One of: custom, 2160p, 1440p, 1080p, 720p, 480p, 360p. When "custom", at least width or height is required
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/crop-video:
post:
operationId: cropVideo
tags:
- Tools
summary: Crop Video
description: एक video से एक क्षेत्र क्रॉप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `width` (integer >= 16, required) - Crop region width in pixels
- `height` (integer >= 16, required) - Crop region height in pixels
- `x` (integer >= 0, default 0) - Horizontal offset from top-left
- `y` (integer >= 0, default 0) - Vertical offset from top-left
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/rotate-video:
post:
operationId: rotateVideo
tags:
- Tools
summary: Rotate Video
description: एक video घुमाएं या फ़्लिप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `transform` (string, required) - One of: cw90, ccw90, 180, hflip, vflip
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/change-fps:
post:
operationId: changeFps
tags:
- Tools
summary: Change FPS
description: एक video की फ़्रेम दर बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `fps` (number 1-120, default 30) - Target frame rate
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/video-color:
post:
operationId: videoColor
tags:
- Tools
summary: Video Color
description: चमक, कंट्रास्ट, संतृप्ति, और गामा समायोजित करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `brightness` (number -1 to 1, default 0) - Brightness adjustment
- `contrast` (number 0-4, default 1) - Contrast multiplier
- `saturation` (number 0-3, default 1) - Saturation multiplier
- `gamma` (number 0.1-10, default 1) - Gamma correction
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/video-speed:
post:
operationId: videoSpeed
tags:
- Tools
summary: Video Speed
description: एक video की गति बढ़ाएं या घटाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `factor` (number 0.25-4, default 2) - Speed multiplier (2 = double speed, 0.5 = half speed)
- `keepPitch` (boolean, default true) - Preserve audio pitch when changing speed
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/reverse-video:
post:
operationId: reverseVideo
tags:
- Tools
summary: Reverse Video
description: एक video क्लिप को पीछे की ओर चलाएं। 5 मिनट तक की क्लिप तक सीमित।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/video-loudnorm:
post:
operationId: videoLoudnorm
tags:
- Tools
summary: वीडियो ऑडियो नॉर्मलाइज़
description: video audio वॉल्यूम को प्रसारण मानक (EBU R128) में सामान्य करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/aspect-pad:
post:
operationId: aspectPad
tags:
- Tools
summary: Aspect Pad
description: एक लक्ष्य आस्पेक्ट अनुपात में फ़िट करने के लिए ठोस-रंग बार जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `target` (string, default "9:16") - One of: 16:9, 9:16, 1:1, 4:3, 3:4
- `color` (string, default "#000000") - Hex color for padding bars (e.g. "#000000")
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/blur-pad:
post:
operationId: blurPad
tags:
- Tools
summary: Blur Pad
description: बार को video की एक धुंधली प्रति से भरें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `target` (string, default "16:9") - One of: 16:9, 9:16, 1:1, 4:3, 3:4
- `blur` (number 2-50, default 20) - Gaussian blur sigma for the background
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/watermark-video:
post:
operationId: watermarkVideo
tags:
- Tools
summary: Watermark Video
description: video फ़्रेम पर एक टेक्स्ट वॉटरमार्क बर्न करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `text` (string, required) - Watermark text (1-200 characters)
- `position` (string, default "br") - One of: tl, tc, tr, l, c, r, bl, bc, br
- `fontSize` (integer 8-120, default 36) - Font size in pixels
- `opacity` (number 0.05-1, default 0.5) - Watermark opacity
- `color` (string, default "#ffffff") - Hex color for the text (e.g. "#ffffff")
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/stabilize-video:
post:
operationId: stabilizeVideo
tags:
- Tools
summary: Stabilize Video
description: दो-पास स्थिरीकरण के साथ कैमरा शेक कम करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `smoothing` (integer 5-60, default 15) - Smoothing window size in frames
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/gif-to-video:
post:
operationId: gifToVideo
tags:
- Tools
summary: GIF to Video
description: एक एनिमेटेड GIF को एक MP4, WebM, या MOV video में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF file to convert
settings:
type: string
description: |
JSON string with options:
- `format` (string, default "mp4") - One of: mp4, webm, mov
responses:
'200':
description: Converted video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/video-to-webp:
post:
operationId: videoToWebp
tags:
- Tools
summary: Video to WebP
description: एक video क्लिप को एक एनिमेटेड WebP image में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `fps` (integer 1-30, default 12) - Output frame rate
- `width` (integer 16-1920, default 480) - Output width in pixels
- `quality` (integer 1-100, default 75) - WebP compression quality
- `loop` (boolean, default true) - Loop the animation
responses:
'200':
description: Converted animated WebP
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/video-to-frames:
post:
operationId: videoToFrames
tags:
- Tools
summary: Video to Frames
description: एक video से फ़्रेम को images के ZIP के रूप में निकालें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "all") - One of: all, nth, timestamps
- `n` (integer 2-1000, default 10) - Extract every Nth frame (used when mode is "nth")
- `timestamps` (string, default "") - Comma-separated timestamps in seconds (required when mode is "timestamps")
- `format` (string, default "png") - One of: png, jpg
responses:
'200':
description: ZIP archive containing extracted frames
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/merge-videos:
post:
operationId: mergeVideos
tags:
- Tools
summary: Merge Videos
description: |
कई video क्लिप को एक MP4 फ़ाइल में जोड़ें। सभी inputs को
पहले video के रिज़ॉल्यूशन और 30 fps में सामान्य किया जाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more video files to merge (up to 10)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/replace-audio:
post:
operationId: replaceAudio
tags:
- Tools
summary: Replace Audio
description: एक video के audio ट्रैक को किसी अन्य फ़ाइल से स्वैप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: A video file followed by an audio file (exactly 2 files)
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/burn-subtitles:
post:
operationId: burnSubtitles
tags:
- Tools
summary: Burn Subtitles
description: video फ़्रेम पर subtitles को स्थायी रूप से रेंडर करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: A video file followed by a subtitle file (.srt, .vtt, .ass)
settings:
type: string
description: |
JSON string with options:
- `fontSize` (integer 8-72, default 24) - Subtitle font size in pixels
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/embed-subtitles:
post:
operationId: embedSubtitles
tags:
- Tools
summary: Embed Subtitles
description: video container में एक subtitle ट्रैक mux करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: A video file followed by a subtitle file (.srt, .vtt, .ass)
settings:
type: string
description: |
JSON string with options:
- `language` (string, default "eng") - ISO 639-2/B language code (3 lowercase letters, e.g. "eng", "fra", "deu")
responses:
'200':
description: Processed video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/extract-subtitles:
post:
operationId: extractSubtitles
tags:
- Tools
summary: Extract Subtitles
description: एक video से subtitle ट्रैक को एक SRT फ़ाइल के रूप में निकालें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file with an embedded subtitle track
responses:
'200':
description: Extracted subtitle file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/images-to-video:
post:
operationId: imagesToVideo
tags:
- Tools
summary: Images to Video
description: images के एक सेट को एक स्लाइडशो video में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more image files (up to 60)
settings:
type: string
description: |
JSON string with options:
- `secondsPerImage` (number 0.5-10, default 2) - Display duration per image in seconds
- `resolution` (string, default "720p") - One of: 1080p, 720p, square
- `fps` (integer 10-60, default 30) - Output frame rate
responses:
'200':
description: Generated slideshow video
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/video-metadata:
post:
operationId: videoMetadata
tags:
- Tools
summary: Clean Video Metadata
description: एक video से metadata हटाएं और जो मिला उसकी रिपोर्ट करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to process
responses:
'200':
description: Processed video with metadata report
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/video/auto-subtitles:
post:
operationId: autoSubtitles
tags:
- Tools
summary: Auto Subtitles
description: |
faster-whisper का उपयोग करके video audio ट्रैक से AI-संचालित subtitle जनरेशन।
ऑटो-डिटेक्शन और 10 स्पष्ट भाषाओं का समर्थन करता है।
इसके लिए transcription feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to transcribe
settings:
type: string
description: |
JSON string with options:
- `language` (string, default "auto") - One of: auto, en, de, fr, es, zh, ja, ko, id, th, vi
- `format` (string, default "srt") - One of: srt, vtt
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/video/extract-audio:
post:
operationId: extractAudio
tags:
- Tools
summary: Extract Audio
description: एक video से audio ट्रैक निकालें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Video file to extract audio from
settings:
type: string
description: |
JSON string with options:
- `format` (string, default "mp3") - One of: mp3, wav, m4a, ogg
responses:
'200':
description: Extracted audio file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/convert-audio:
post:
operationId: convertAudio
tags:
- Tools
summary: Convert Audio
description: MP3, WAV, OGG, और अधिक के बीच audio बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `format` (string, default "mp3") - One of: mp3, wav, ogg, flac, m4a
- `bitrateKbps` (integer 32-320, default 192) - Output bitrate in kbps
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/trim-audio:
post:
operationId: trimAudio
tags:
- Tools
summary: Trim Audio
description: एक audio फ़ाइल से एक सेक्शन काटें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `startS` (number, min 0, default 0) - Start time in seconds
- `endS` (number, required) - End time in seconds (must be after start)
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/volume-adjust:
post:
operationId: volumeAdjust
tags:
- Tools
summary: वॉल्यूम समायोजन
description: एक निश्चित गेन द्वारा audio वॉल्यूम बढ़ाएं या घटाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `gainDb` (number -30 to 30, default 3) - Volume adjustment in decibels
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/normalize-audio:
post:
operationId: normalizeAudio
tags:
- Tools
summary: Normalize Audio
description: प्रसारण मानक स्तरों (EBU R128, -16 LUFS) पर लाउडनेस को समान करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/fade-audio:
post:
operationId: fadeAudio
tags:
- Tools
summary: Fade Audio
description: audio में fade-in और fade-out प्रभाव जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `fadeInS` (number 0-30, default 1) - Fade-in duration in seconds
- `fadeOutS` (number 0-30, default 1) - Fade-out duration in seconds
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/reverse-audio:
post:
operationId: reverseAudio
tags:
- Tools
summary: Reverse Audio
description: audio को पीछे की ओर चलाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/audio-speed:
post:
operationId: audioSpeed
tags:
- Tools
summary: Audio Speed
description: audio प्लेबैक की गति बढ़ाएं या घटाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `factor` (number 0.25-4, default 1.5) - Speed multiplier (0.25 = quarter speed, 4 = quadruple speed)
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/pitch-shift:
post:
operationId: pitchShift
tags:
- Tools
summary: Pitch Shift
description: गति बदले बिना सेमीटोन द्वारा पिच बढ़ाएं या घटाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `semitones` (integer -12 to 12, default 3) - Semitones to shift (must be nonzero)
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/audio-channels:
post:
operationId: audioChannels
tags:
- Tools
summary: Audio Channels
description: मोनो, स्टीरियो के बीच बदलें, या बाएं और दाएं चैनल स्वैप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `mode` (string, required) - One of: stereo-to-mono, mono-to-stereo, swap
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/silence-removal:
post:
operationId: removeSilence
tags:
- Tools
summary: Silence Removal
description: audio से मौन सेक्शन हटाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `thresholdDb` (number -80 to -20, default -50) - Silence threshold in dB
- `minSilenceS` (number 0.1-5, default 0.5) - Minimum silence duration in seconds to remove
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/noise-reduction:
post:
operationId: reduceNoise
tags:
- Tools
summary: Noise Reduction
description: FFT-आधारित denoising के साथ बैकग्राउंड शोर कम करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `strength` (string, default "medium") - One of: light, medium, strong
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/merge-audio:
post:
operationId: mergeAudio
tags:
- Tools
summary: Merge Audio
description: कई audio फ़ाइलों को एक क्रमिक ट्रैक में संयोजित करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more audio files to merge (max 10)
settings:
type: string
description: |
JSON string with options:
- `format` (string, default "mp3") - One of: mp3, wav, flac, m4a
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/split-audio:
post:
operationId: splitAudio
tags:
- Tools
summary: Split Audio
description: |
audio को समय, समान भागों, या मौन डिटेक्शन के अनुसार विभाजित करें। सेगमेंट के एक ZIP archive की ओर
इशारा करने वाले downloadUrl के साथ एक ToolResponse लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to split
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "time") - One of: time, parts, silence
- `segmentS` (number 1-3600, default 60) - Segment length in seconds (mode=time)
- `parts` (integer 2-20, default 2) - Number of equal parts (mode=parts)
- `thresholdDb` (number -80 to -20, default -40) - Silence threshold in dB (mode=silence)
- `minSilenceS` (number 0.1-10, default 0.3) - Minimum silence gap in seconds (mode=silence)
responses:
'200':
description: Processed audio (downloadUrl points to a ZIP archive)
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/ringtone-maker:
post:
operationId: ringtoneMaker
tags:
- Tools
summary: Ringtone Maker
description: किसी भी audio फ़ाइल से एक रिंगटोन क्लिप (.m4r) बनाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `startS` (number, min 0, default 0) - Start time in seconds
- `durationS` (number 1-30, default 30) - Clip duration in seconds
responses:
'200':
description: Processed audio
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/waveform-image:
post:
operationId: waveformImage
tags:
- Tools
summary: Waveform Image
description: एक audio फ़ाइल से एक वेवफ़ॉर्म विज़ुअलाइज़ेशन को PNG image के रूप में जनरेट करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `width` (integer 256-3840, default 1024) - Image width in pixels
- `height` (integer 64-1080, default 256) - Image height in pixels
- `color` (string, default "#4f46e5") - Waveform hex color (e.g. "#4f46e5")
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/audio-metadata:
post:
operationId: audioMetadata
tags:
- Tools
summary: Audio Metadata
description: |
audio टैग (ID3) देखें, संपादित करें, या हटाएं। response में मानक ToolResponse fields के साथ
container, durationS, bitrateKbps, और tags के साथ एक
`metadata` object शामिल होता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to process
settings:
type: string
description: |
JSON string with options:
- `strip` (boolean, default false) - Remove all existing metadata
- `title` (string, optional, max 500) - Set the title tag
- `artist` (string, optional, max 500) - Set the artist tag
- `album` (string, optional, max 500) - Set the album tag
responses:
'200':
description: Processed audio with metadata
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/audio/transcribe-audio:
post:
operationId: transcribeAudio
tags:
- Tools
summary: Transcribe Audio
description: |
faster-whisper का उपयोग करके AI-संचालित स्पीच-टू-टेक्स्ट ट्रांसक्रिप्शन।
सादा टेक्स्ट, SRT, या VTT subtitle formats आउटपुट करता है। इसके लिए transcription
feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Audio file to transcribe
settings:
type: string
description: |
JSON string with options:
- `language` (string, default "auto") - One of: auto, en, de, fr, es, zh, ja, ko, id, th, vi
- `outputFormat` (string, default "txt") - One of: txt, srt, vtt
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/pdf/merge-pdf:
post:
operationId: mergePdf
tags:
- Tools
summary: Merge PDFs
description: कई PDFs को एक में संयोजित करें। कम से कम दो फ़ाइलें आवश्यक हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more PDF files to merge (max 20)
responses:
'200':
description: Merged PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/split-pdf:
post:
operationId: splitPdf
tags:
- Tools
summary: Split PDF
description: |
पृष्ठ निकालें या भागों में विभाजित करें। "range" मोड में चयनित पृष्ठों के साथ एक
एकल PDF लौटाता है। "every" मोड में N पृष्ठों के हिस्सों में विभाजित करता है
और भागों वाला एक ZIP archive लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to split
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "range") - One of: range, every
- `range` (string, optional) - Page range in qpdf syntax, e.g. "1-5,8,10-z" (required when mode is "range")
- `everyN` (integer 1-500, optional) - Split into chunks of N pages (required when mode is "every")
responses:
'200':
description: Split PDF or ZIP archive of parts
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/compress-pdf:
post:
operationId: compressPdf
tags:
- Tools
summary: Compress PDF
description: |
एम्बेडेड images को डाउनसैंपल करके PDF फ़ाइल आकार सिकोड़ें। "quality" मोड में
एक 1-100 स्लाइडर image DPI नियंत्रित करता है। "targetSize" मोड में एक binary search
सबसे उच्च DPI ढूँढता है जो लक्ष्य में फ़िट हो। यदि संपीड़न फ़ाइल को बड़ा कर देगा,
तो मूल bytes अपरिवर्तित लौटाए जाते हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to compress
settings:
type: string
description: |
JSON string with options:
- `mode` (string, default "quality") - One of: quality, targetSize
- `quality` (integer 1-100, optional) - Compression quality (higher = less compression). Used in quality mode
- `targetSizeKb` (number, optional) - Target file size in kilobytes. Used in targetSize mode
responses:
'200':
description: Compressed PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/rotate-pdf:
post:
operationId: rotatePdf
tags:
- Tools
summary: Rotate PDF
description: एक PDF में पृष्ठों को 90, 180, या 270 डिग्री घुमाएं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process
settings:
type: string
description: |
JSON string with options:
- `angle` (integer, default 90) - One of: 90, 180, 270
- `range` (string, default "1-z") - Page range in qpdf syntax, e.g. "1-5,8" ("1-z" = all pages)
responses:
'200':
description: Rotated PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/extract-pages:
post:
operationId: extractPages
tags:
- Tools
summary: पृष्ठ निकालें
description: चयनित पृष्ठों को एक नई PDF में खींचें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to extract from
settings:
type: string
description: |
JSON string with options:
- `range` (string, required) - Page range in qpdf syntax, e.g. "1-5,8,10-z"
responses:
'200':
description: Extracted pages as a new PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/remove-pages:
post:
operationId: removePages
tags:
- Tools
summary: पृष्ठ हटाएं
description: एक PDF से विशिष्ट पृष्ठ हटाएं। हर पृष्ठ नहीं हटा सकते।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process
settings:
type: string
description: |
JSON string with options:
- `pages` (string, required) - Page range to remove in qpdf syntax, e.g. "3,5-7"
responses:
'200':
description: PDF with pages removed
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/organize-pdf:
post:
operationId: organizePdf
tags:
- Tools
summary: Organize PDF
description: 'एक स्पष्ट पृष्ठ क्रम के साथ पृष्ठों को पुन: क्रमबद्ध करें।'
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to reorganize
settings:
type: string
description: |
JSON string with options:
- `order` (string, required) - Desired page order in qpdf syntax, e.g. "3,1,2,5-z"
responses:
'200':
description: Reorganized PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/protect-pdf:
post:
operationId: protectPdf
tags:
- Tools
summary: Protect PDF
description: AES-256 एन्क्रिप्शन के साथ password सुरक्षा जोड़ें। Passwords audit logs से हटा दिए जाते हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to protect
settings:
type: string
description: |
JSON string with options:
- `userPassword` (string 1-256 chars, required) - Password required to open the PDF
- `ownerPassword` (string 1-256 chars, optional) - Owner password for permissions; defaults to userPassword if omitted
responses:
'200':
description: Encrypted PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/unlock-pdf:
post:
operationId: unlockPdf
tags:
- Tools
summary: Unlock PDF
description: एक PDF से password सुरक्षा हटाएं। सही password प्रदान किया जाना चाहिए। Passwords audit logs से हटा दिए जाते हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Password-protected PDF file
settings:
type: string
description: |
JSON string with options:
- `password` (string 1-256 chars, required) - Password to decrypt the PDF
responses:
'200':
description: Decrypted PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/repair-pdf:
post:
operationId: repairPdf
tags:
- Tools
summary: Repair PDF
description: एक क्षतिग्रस्त या दूषित PDF की मरम्मत का प्रयास करें। विकृत फ़ाइलों की अनुमति देने के लिए input पर संरचनात्मक validation छोड़ दिया जाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Damaged PDF file to repair
responses:
'200':
description: Repaired PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/linearize-pdf:
post:
operationId: linearizePdf
tags:
- Tools
summary: Web-optimize PDF
description: तेज़ वेब देखने के लिए एक PDF को linearize करें (प्रोग्रेसिव डाउनलोड)।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to linearize
responses:
'200':
description: Linearized PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/grayscale-pdf:
post:
operationId: grayscalePdf
tags:
- Tools
summary: Grayscale PDF
description: एक PDF में सभी रंगों को ग्रेस्केल में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to convert
responses:
'200':
description: Grayscale PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/pdfa-convert:
post:
operationId: pdfaConvert
tags:
- Tools
summary: PDF/A कन्वर्टर
description: दीर्घकालिक संरक्षण के लिए एक PDF को archival PDF/A-2 format में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to convert
responses:
'200':
description: PDF/A-2 compliant file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/crop-pdf:
post:
operationId: cropPdf
tags:
- Tools
summary: Crop PDF
description: एक समान मार्जिन के साथ सभी पृष्ठ क्रॉप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to crop
settings:
type: string
description: |
JSON string with options:
- `margin` (number 0-2000, default 20) - Uniform crop margin in points
responses:
'200':
description: Cropped PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/nup-pdf:
post:
operationId: nupPdf
tags:
- Tools
summary: प्रति शीट पेज (N-up)
description: प्रति शीट कई पृष्ठ व्यवस्थित करें (उदा. 2-up, 4-up)।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process
settings:
type: string
description: |
JSON string with options:
- `perSheet` (integer, default 2) - One of: 2, 3, 4, 8, 9, 12, 16
responses:
'200':
description: N-up PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/booklet-pdf:
post:
operationId: bookletPdf
tags:
- Tools
summary: Booklet PDF
description: पृष्ठों को एक बुकलेट में मोड़ने के लिए व्यवस्थित करें (डुप्लेक्स प्रिंटिंग के लिए impose करें)।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process
settings:
type: string
description: |
JSON string with options:
- `perSheet` (integer, default 2) - One of: 2, 4, 6, 8
responses:
'200':
description: Booklet-imposed PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/watermark-pdf:
post:
operationId: watermarkPdf
tags:
- Tools
summary: Watermark PDF
description: एक PDF के हर पृष्ठ पर एक टेक्स्ट वॉटरमार्क जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to watermark
settings:
type: string
description: |
JSON string with options:
- `text` (string 1-200 chars, required) - Watermark text
- `position` (string, default "c") - One of: tl, tc, tr, l, c, r, bl, bc, br
- `fontSize` (integer 6-72, default 48) - Font size in points
- `opacity` (number 0.05-1, default 0.3) - Watermark opacity
- `rotation` (number -180 to 180, default 45) - Rotation angle in degrees
responses:
'200':
description: Watermarked PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/pdf-page-numbers:
post:
operationId: pdfPageNumbers
tags:
- Tools
summary: PDF पृष्ठ संख्या
description: एक PDF के हर पृष्ठ पर पृष्ठ संख्याएं ("Page N of M") जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process
settings:
type: string
description: |
JSON string with options:
- `position` (string, default "bc") - One of: bl, bc, br, tl, tc, tr
- `fontSize` (integer 6-24, default 10) - Font size in points
responses:
'200':
description: PDF with page numbers
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/convert-document:
post:
operationId: convertDocument
tags:
- Tools
summary: दस्तावेज़ बदलें
description: Word, OpenDocument, RTF, और सादा टेक्स्ट formats के बीच बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Document file to convert (.docx, .doc, .odt, .rtf, .txt)
settings:
type: string
description: |
JSON string with options:
- `format` (string, required) - One of: docx, odt, rtf, txt
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/convert-presentation:
post:
operationId: convertPresentation
tags:
- Tools
summary: प्रस्तुति बदलें
description: PowerPoint और OpenDocument प्रस्तुति formats के बीच बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Presentation file to convert (.pptx, .ppt, .odp)
settings:
type: string
description: |
JSON string with options:
- `format` (string, required) - One of: pptx, odp
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/convert-spreadsheet:
post:
operationId: convertSpreadsheet
tags:
- Tools
summary: स्प्रेडशीट बदलें
description: Excel, OpenDocument, और CSV formats के बीच बदलें। मल्टी-शीट workbooks पहली शीट को CSV में निर्यात करते हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Spreadsheet file to convert (.xlsx, .xls, .ods, .csv)
settings:
type: string
description: |
JSON string with options:
- `format` (string, required) - One of: xlsx, ods, csv
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/excel-to-pdf:
post:
operationId: excelToPdf
tags:
- Tools
summary: Excel to PDF
description: स्प्रेडशीट को PDF में बदलें। चौड़ी शीट कई पृष्ठों में पेजिनेट हो सकती हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Spreadsheet file to convert (.xlsx, .xls, .ods, .csv)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/word-to-pdf:
post:
operationId: wordToPdf
tags:
- Tools
summary: Word to PDF
description: Word दस्तावेज़ों को PDF में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Word document to convert (.docx, .doc, .odt, .rtf, .txt)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/powerpoint-to-pdf:
post:
operationId: powerpointToPdf
tags:
- Tools
summary: PowerPoint to PDF
description: प्रस्तुतियों को PDF में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Presentation file to convert (.pptx, .ppt, .odp)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/html-to-pdf:
post:
operationId: htmlToPdf
tags:
- Tools
summary: HTML to PDF
description: एक HTML फ़ाइल को PDF में बदलें। गोपनीयता के लिए रिमोट संसाधन अक्षम हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: HTML file to convert (.html, .htm)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/markdown-to-docx:
post:
operationId: markdownToDocx
tags:
- Tools
summary: Markdown to Word
description: एक Markdown फ़ाइल को एक Word दस्तावेज़ (DOCX) में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Markdown file to convert (.md, .markdown)
responses:
'200':
description: Processed document
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/markdown-to-html:
post:
operationId: markdownToHtml
tags:
- Tools
summary: Markdown to HTML
description: एक Markdown फ़ाइल को एक स्टैंडअलोन HTML पृष्ठ में बदलें। स्रोत में रिमोट images आउटपुट में यथावत रहती हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Markdown file to convert (.md, .markdown)
responses:
'200':
description: Processed document
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/markdown-to-pdf:
post:
operationId: markdownToPdf
tags:
- Tools
summary: Markdown to PDF
description: एक Markdown फ़ाइल को एक स्टाइल किए गए PDF में बदलें। गोपनीयता के लिए रिमोट संसाधन अक्षम हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Markdown file to convert (.md, .markdown)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/epub-convert:
post:
operationId: epubConvert
tags:
- Tools
summary: EPUB से कन्वर्ट
description: एक EPUB को PDF, DOCX, HTML, या Markdown में बदलें। पुस्तक के भीतर रिमोट संसाधन प्राप्त नहीं किए जाते।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: EPUB file to convert (.epub)
settings:
type: string
description: |
JSON string with options:
- `format` (string, required) - One of: pdf, docx, html, md
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/to-epub:
post:
operationId: toEpub
tags:
- Tools
summary: Convert to EPUB
description: Word, Markdown, HTML, या सादा टेक्स्ट फ़ाइलों को EPUB में बदलें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Document file to convert (.docx, .md, .html, .txt)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/flatten-pdf:
post:
operationId: flattenPdf
tags:
- Tools
summary: Flatten PDF
description: forms और annotations को पृष्ठ सामग्री में बेक करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process (.pdf)
responses:
'200':
description: Processed PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/redact-pdf:
post:
operationId: redactPdf
tags:
- Tools
summary: Redact PDF
description: टेक्स्ट घटनाओं को स्थायी रूप से हटाएं (सत्यापित सच्चा redaction)।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process (.pdf)
settings:
type: string
description: |
JSON string with options:
- `terms` (string[], required) - Text strings to redact (1-50 terms, each up to 200 characters)
- `caseSensitive` (boolean, default false) - Whether matching is case-sensitive
responses:
'200':
description: Processed PDF
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
found:
type: integer
description: Number of redacted occurrences found
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/pdf-to-text:
post:
operationId: pdfToText
tags:
- Tools
summary: PDF to text
description: एक PDF से सादा टेक्स्ट निकालें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process (.pdf)
responses:
'200':
description: Extracted text file
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
chars:
type: integer
description: Number of characters extracted
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/pdf-to-word:
post:
operationId: pdfToWord
tags:
- Tools
summary: PDF to Word
description: टेक्स्ट-आधारित PDFs के लिए सर्वश्रेष्ठ; स्कैन किए गए पृष्ठों को OCR की आवश्यकता होती है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to convert (.pdf)
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/pdf-metadata:
post:
operationId: pdfMetadata
tags:
- Tools
summary: PDF metadata
description: PDF दस्तावेज़ metadata पढ़ें और लिखें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF file to process (.pdf)
settings:
type: string
description: |
JSON string with options:
- `title` (string, optional, max 500) - Document title
- `author` (string, optional, max 500) - Document author
- `subject` (string, optional, max 500) - Document subject
- `keywords` (string, optional, max 500) - Document keywords
responses:
'200':
description: Processed PDF with updated metadata
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
metadata:
type: object
description: The resulting PDF metadata fields
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/pdf/ocr-pdf:
post:
operationId: ocrPdf
tags:
- Tools
summary: PDF OCR
description: |-
स्कैन किए गए PDF दस्तावेज़ों से पेज दर पेज टेक्स्ट निकालें। Fast का उपयोग करता है
अंतर्निहित Tesseract रनटाइम। Balanced और Best हस्ताक्षरित वैकल्पिक का उपयोग करें
पिन किए गए PP-OCR ONNX मॉडल के साथ RapidOCR रनटाइम। स्पष्ट स्तरीय अनुरोध
कभी भी चुपचाप डाउनग्रेड न करें। एक अनुरोध अधिकतम 50 पृष्ठों का चयन कर सकता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
maxLength: 536870912
description: PDF file to process (.pdf)
settings:
type: string
description: |
JSON string with options:
- `quality` (string, optional) - One of: fast, balanced, best. When both quality and engine are omitted, uses the best available tier in this order: best, balanced, fast. Korean never selects fast; it uses best, then balanced, or returns an accurate-runtime install/compatibility error
- `language` (string, default "auto") - One of: auto, en, de, fr, es, zh, ja, ko. Korean is unsupported by fast and the legacy tesseract alias
- `pages` (string, default "all") - Page selection, e.g. "all", "1-3", "1,3,5"
- `enhance` (boolean, optional) - Improve local contrast. Fast applies it directly; accurate tiers retain the variant only when calibrated scoring improves the result. Defaults to true for Best and false for Fast/Balanced
- `engine` (string, deprecated) - Compatibility alias: tesseract maps to fast; the legacy paddleocr value maps to balanced but does not load PaddlePaddle
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
required:
- jobId
- async
properties:
jobId:
type: string
progressJobId:
type: string
artifactJobId:
type: string
async:
type: boolean
const: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'413':
description: Encoded PDF exceeds the hard 512 MiB safety limit
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Requested Balanced/Best runtime is not installed or is incompatible
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
'503':
description: PDF OCR could not be queued
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/files/chart-maker:
post:
operationId: chartMaker
tags:
- Tools
summary: Chart Maker
description: CSV या JSON डेटा से बार, लाइन, या पाई चार्ट बनाएं। एक PNG image लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: CSV or JSON data file
settings:
type: string
description: |
JSON string with options:
- `kind` (string, default "bar") - One of: bar, line, pie
- `title` (string, optional) - Chart title (max 120 characters)
- `width` (integer 320-2048, default 960) - Chart width in pixels
- `height` (integer 240-1536, default 540) - Chart height in pixels
responses:
'200':
description: Generated chart image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/csv-excel:
post:
operationId: csvExcel
tags:
- Tools
summary: CSV to Excel
description: CSV और Excel (XLSX) के बीच, दोनों दिशाओं में बदलें। XLSX पाने के लिए एक CSV या TSV फ़ाइल upload करें, या CSV पाने के लिए एक XLSX फ़ाइल upload करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: CSV, TSV, or XLSX file to convert
settings:
type: string
description: |
JSON string with options:
- `sheet` (integer, min 1, default 1) - Worksheet number to export when converting from XLSX
responses:
'200':
description: Converted file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/csv-json:
post:
operationId: csvJson
tags:
- Tools
summary: CSV to JSON
description: CSV और JSON के बीच, दोनों दिशाओं में बदलें। JSON पाने के लिए एक CSV या TSV फ़ाइल upload करें, या CSV पाने के लिए objects का एक JSON array upload करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: CSV, TSV, or JSON file to convert
settings:
type: string
description: |
JSON string with options:
- `pretty` (boolean, default true) - Pretty-print JSON output with indentation
responses:
'200':
description: Converted file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/json-xml:
post:
operationId: jsonXml
tags:
- Tools
summary: JSON to XML
description: JSON और XML के बीच, दोनों दिशाओं में बदलें। XML पाने के लिए एक JSON फ़ाइल upload करें, या JSON पाने के लिए एक XML फ़ाइल upload करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JSON or XML file to convert
settings:
type: string
description: |
JSON string with options:
- `pretty` (boolean, default true) - Pretty-print output with indentation
responses:
'200':
description: Converted file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/split-csv:
post:
operationId: splitCsv
tags:
- Tools
summary: Split CSV
description: एक CSV फ़ाइल को row संख्या के अनुसार छोटी फ़ाइलों में विभाजित करें। भागों वाला एक ZIP archive लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: CSV or TSV file to split
settings:
type: string
description: |
JSON string with options:
- `rowsPerFile` (integer 1-1000000, default 1000) - Number of data rows per output file
- `keepHeader` (boolean, default true) - Repeat the header row in each output file
responses:
'200':
description: ZIP archive containing split CSV parts
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/merge-csvs:
post:
operationId: mergeCsvs
tags:
- Tools
summary: Merge CSVs
description: मेल खाते columns वाली कई CSV या TSV फ़ाइलों को एक मर्ज की गई फ़ाइल में संयोजित करें। सभी फ़ाइलों में समान column हेडर होने चाहिए।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more CSV or TSV files to merge (2-20 files)
responses:
'200':
description: Merged CSV file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/yaml-json:
post:
operationId: yamlJson
tags:
- Tools
summary: YAML / JSON कन्वर्ट
description: YAML और JSON के बीच, दोनों दिशाओं में बदलें। JSON पाने के लिए एक YAML फ़ाइल upload करें, या YAML पाने के लिए एक JSON फ़ाइल upload करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: YAML (.yaml, .yml) or JSON file to convert
responses:
'200':
description: Converted file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/xml-to-csv:
post:
operationId: xmlToCsv
tags:
- Tools
summary: XML to CSV
description: एक XML फ़ाइल से दोहराए जाने वाले elements को एक CSV तालिका में निकालें। XML ट्री में objects के पहले array को स्वचालित रूप से ढूँढता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: XML file to convert
responses:
'200':
description: Extracted CSV file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/create-zip:
post:
operationId: createZip
tags:
- Tools
summary: Create ZIP
description: कई फ़ाइलों को एक ही ZIP archive में बंडल करें। डुप्लिकेट filenames स्वचालित रूप से deduplicate किए जाते हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more files to bundle (2-50 files, any type)
responses:
'200':
description: ZIP archive
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/files/extract-zip:
post:
operationId: extractZip
tags:
- Tools
summary: Extract ZIP
description: बम सुरक्षा के साथ एक ZIP archive से फ़ाइलें सुरक्षित रूप से निकालें। एकल-फ़ाइल archives फ़ाइल सीधे लौटाते हैं; मल्टी-फ़ाइल archives एक फ़्लैट ZIP लौटाते हैं।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: ZIP archive to extract
responses:
'200':
description: Extracted file or repackaged ZIP archive
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/background-replace:
post:
operationId: backgroundReplace
tags:
- Tools
summary: बैकग्राउंड बदलें
description: |
AI-संचालित बैकग्राउंड प्रतिस्थापन। विषय का बैकग्राउंड हटाता है
और इसे एक ठोस रंग या ग्रेडिएंट पर कंपोज़िट करता है। इसके लिए
background-removal feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `backgroundType` (string, default "color") - One of: color, gradient
- `color` (string, default "#ffffff") - Background hex color (when backgroundType is color)
- `gradientColor1` (string, optional) - First gradient hex color
- `gradientColor2` (string, optional) - Second gradient hex color
- `gradientAngle` (integer 0-360, default 180) - Gradient angle in degrees
- `feather` (integer 0-20, default 0) - Edge feathering radius
- `format` (string, default "png") - One of: png, webp
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/blur-background:
post:
operationId: blurBackground
tags:
- Tools
summary: बैकग्राउंड धुंधला करें
description: |
AI-संचालित बैकग्राउंड धुंधलापन। बैकग्राउंड हटाता है,
मूल को धुंधला करता है, और तीक्ष्ण विषय को शीर्ष पर कंपोज़िट करता है। इसके लिए
background-removal feature bundle इंस्टॉल होना आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `intensity` (integer 1-100, default 50) - Blur intensity
- `feather` (integer 0-20, default 0) - Edge feathering radius
- `format` (string, default "png") - One of: png, webp
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/image/barcode-generate:
post:
operationId: generateBarcode
tags:
- Tools
summary: बारकोड जनरेटर
description: टेक्स्ट से एक बारकोड image जनरेट करें। यह tool एक JSON body स्वीकार करता है, multipart नहीं।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- text
properties:
text:
type: string
minLength: 1
maxLength: 256
description: Text to encode in the barcode
type:
type: string
enum:
- code128
- ean13
- upca
- code39
- itf14
- datamatrix
default: code128
description: Barcode format
scale:
type: integer
minimum: 1
maximum: 8
default: 3
description: Image scale factor
includeText:
type: boolean
default: true
description: Whether to render the text below the barcode
responses:
'200':
description: Generated barcode
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/circle-crop:
post:
operationId: circleCrop
tags:
- Tools
summary: सर्कल क्रॉप
description: एक image को पारदर्शी कोनों, वैकल्पिक बॉर्डर, और समायोज्य ज़ूम/ऑफ़सेट के साथ एक केंद्रित सर्कल में क्रॉप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `zoom` (number 1-5, default 1) - Zoom factor (>=1 crops tighter)
- `offsetX` (number 0-1, default 0.5) - Horizontal center position
- `offsetY` (number 0-1, default 0.5) - Vertical center position
- `borderWidth` (integer 0-200, default 0) - Border width in pixels
- `borderColor` (string, default "#ffffff") - Border hex color
- `background` (string, default "transparent") - "transparent" or a hex color for corners
- `outputSize` (integer 16-4096, optional) - Final square dimension in pixels
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/rounded-crop:
post:
operationId: roundedCrop
tags:
- Tools
summary: Rounded crop
description: Crop an image to a rounded square or squircle with transparent corners, optional border, and adjustable zoom/offset.
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `shape` (string, default "rounded-square") - "rounded-square" or "squircle"
- `cornerRadius` (number 0-50, default 25) - Corner radius as a percent of the shorter side (rounded-square only)
- `zoom` (number 1-5, default 1) - Zoom factor (>=1 crops tighter)
- `offsetX` (number 0-1, default 0.5) - Horizontal center position
- `offsetY` (number 0-1, default 0.5) - Vertical center position
- `borderWidth` (integer 0-200, default 0) - Border width in pixels
- `borderColor` (string, default "#ffffff") - Border hex color
- `background` (string, default "transparent") - "transparent" or a hex color for corners
- `outputSize` (integer 16-4096, optional) - Final square dimension in pixels
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/duotone:
post:
operationId: duotone
tags:
- Tools
summary: Duotone
description: कस्टम शैडो और हाइलाइट रंगों के साथ एक दो-रंग duotone प्रभाव लागू करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `shadow` (string, default "#1e3a8a") - Shadow hex color
- `highlight` (string, default "#fbbf24") - Highlight hex color
- `intensity` (integer 0-100, default 100) - Effect intensity (0 = original, 100 = full duotone)
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/image-pad:
post:
operationId: imagePad
tags:
- Tools
summary: image पैड
description: एक image को एक ठोस रंग, पारदर्शी, या धुंधले बैकग्राउंड के साथ एक लक्ष्य आस्पेक्ट अनुपात में पैड करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `target` (string, default "1:1") - One of: 16:9, 9:16, 1:1, 4:3, 3:4, custom
- `ratioW` (integer 1-100, default 1) - Custom ratio width (when target is custom)
- `ratioH` (integer 1-100, default 1) - Custom ratio height (when target is custom)
- `background` (string, default "color") - One of: color, transparent, blur
- `color` (string, default "#ffffff") - Background hex color (when background is color)
- `padding` (integer 0-50, default 0) - Extra padding as percentage of canvas
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/pixelate:
post:
operationId: pixelate
tags:
- Tools
summary: Pixelate
description: पूरी image या किसी विशिष्ट आयताकार क्षेत्र पर एक पिक्सेलेशन प्रभाव लागू करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `blockSize` (integer 2-128, default 12) - Pixel block size
- `region` (object, optional) - Restrict pixelation to a rectangle:
- `left` (integer >= 0) - Left offset in pixels
- `top` (integer >= 0) - Top offset in pixels
- `width` (integer >= 1) - Region width in pixels
- `height` (integer >= 1) - Region height in pixels
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/vignette:
post:
operationId: vignette
tags:
- Tools
summary: Vignette
description: समायोज्य ताकत, रंग, त्रिज्या, कोमलता, गोलाई, और केंद्र स्थिति के साथ एक vignette प्रभाव जोड़ें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `strength` (number 0.1-1, default 0.5) - Vignette opacity
- `color` (string, default "#000000") - Vignette hex color
- `radius` (integer 0-100, default 70) - Outer radius as percentage of half-diagonal
- `softness` (integer 0-100, default 50) - Feather softness (higher = more gradual)
- `roundness` (integer 0-100, default 100) - 100 = circle, 0 = ellipse matching image aspect ratio
- `centerX` (integer 0-100, default 50) - Horizontal center position as percentage
- `centerY` (integer 0-100, default 50) - Vertical center position as percentage
responses:
'200':
description: Processed image
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/gif-webp:
post:
operationId: gifWebp
tags:
- Tools
summary: GIF/WebP कन्वर्टर
description: एनिमेटेड GIF को WebP में और इसके विपरीत बदलें, सभी फ़्रेम संरक्षित करते हुए। केवल .gif और .webp inputs स्वीकार करता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF or WebP file to convert
settings:
type: string
description: |
JSON string with options:
- `quality` (integer 1-100, default 80) - Output quality for WebP encoding
- `lossless` (boolean, default false) - Use lossless WebP compression
- `resizePercent` (integer 10-100, default 100) - Scale the output by percentage
responses:
'200':
description: Converted animation
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/histogram:
post:
operationId: histogram
tags:
- Tools
summary: Histogram
description: |
एक image से एक RGB histogram चार्ट जनरेट करें। response JSON में
एक PNG histogram image के साथ per-channel आंकड़े और raw 256-bin histogram डेटा
लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to analyze
settings:
type: string
description: |
JSON string with options:
- `scale` (string, default "linear") - One of: linear, log
responses:
'200':
description: Histogram image and channel statistics
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
bins:
type: object
description: Raw 256-bin histogram arrays per channel
properties:
r:
type: array
items:
type: integer
g:
type: array
items:
type: integer
b:
type: array
items:
type: integer
lum:
type: array
items:
type: integer
stats:
type: object
description: Per-channel statistics
properties:
r:
type: object
properties:
mean:
type: integer
median:
type: integer
stdev:
type: number
g:
type: object
properties:
mean:
type: integer
median:
type: integer
stdev:
type: number
b:
type: object
properties:
mean:
type: integer
median:
type: integer
stdev:
type: number
lum:
type: object
properties:
mean:
type: integer
median:
type: integer
stdev:
type: number
mean:
type: object
description: Backward-compatible mean values
properties:
r:
type: integer
g:
type: integer
b:
type: integer
max:
type: object
description: Backward-compatible max bin values
properties:
r:
type: integer
g:
type: integer
b:
type: integer
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/lqip-placeholder:
post:
operationId: lqipPlaceholder
tags:
- Tools
summary: LQIP प्लेसहोल्डर
description: |
एक छोटा निम्न-गुणवत्ता image प्लेसहोल्डर जनरेट करें। response JSON में एक छोटी image
फ़ाइल के साथ एक base64 data URI, उपयोग-के-लिए-तैयार HTML img टैग, और CSS
बैकग्राउंड स्निपेट लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Image file to process
settings:
type: string
description: |
JSON string with options:
- `width` (integer 4-64, default 16) - Target width in pixels
- `blur` (number 0-20, default 2) - Blur radius (for blur strategy)
- `strategy` (string, default "blur") - One of: blur, pixelate, solid
- `format` (string, default "webp") - One of: webp, png, jpeg
- `quality` (integer 1-100, default 50) - Output quality
responses:
'200':
description: LQIP placeholder image and data URI
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
dataUri:
type: string
description: Complete data URI (data:mime;base64,...)
width:
type: integer
description: Placeholder width in pixels
height:
type: integer
description: Placeholder height in pixels
bytes:
type: integer
description: Placeholder file size in bytes
strategy:
type: string
description: Strategy used (blur, pixelate, or solid)
html:
type: string
description: Ready-to-use HTML img tag
css:
type: string
description: Ready-to-use CSS background-image snippet
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/sprite-sheet:
post:
operationId: spriteSheet
tags:
- Tools
summary: Sprite sheet
description: |
कई images को एक ही sprite sheet ग्रिड में संयोजित करें। 2 से 64 images
स्वीकार करता है। प्रत्येक image को पहली image के आयामों से मेल खाने के लिए आकार बदला जाता है। sprite sheet image के साथ frame निर्देशांक
metadata लौटाता है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: Two or more image files to combine (max 64)
settings:
type: string
description: |
JSON string with options:
- `columns` (integer 1-16, default 4) - Number of columns in the grid
- `padding` (integer 0-64, default 0) - Padding between cells in pixels
- `background` (string, default "#ffffff") - Background hex color
- `format` (string, default "png") - One of: png, webp, jpeg
- `quality` (integer 1-100, default 90) - Output quality
responses:
'200':
description: Sprite sheet image with frame metadata
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ToolResponse'
- type: object
properties:
frames:
type: array
description: Per-frame coordinates in the sprite sheet
items:
type: object
properties:
index:
type: integer
left:
type: integer
top:
type: integer
width:
type: integer
height:
type: integer
cols:
type: integer
description: Number of columns
rows:
type: integer
description: Number of rows
cellWidth:
type: integer
description: Cell width in pixels
cellHeight:
type: integer
description: Cell height in pixels
canvasWidth:
type: integer
description: Total canvas width in pixels
canvasHeight:
type: integer
description: Total canvas height in pixels
'400':
description: Invalid input
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
/api/v1/tools/image/passport-photo:
post:
operationId: passportPhotoTool
tags:
- Tools
summary: Passport Photo
description: |
दो-चरण पासपोर्ट फ़ोटो फ़्लो के लिए मार्गदर्शन endpoint। एक image का विश्लेषण करने के लिए
`/api/v1/tools/image/passport-photo/analyze` का उपयोग करें,
फिर अंतिम पासपोर्ट फ़ोटो बनाने के लिए `/api/v1/tools/image/passport-photo/generate` का उपयोग करें। जब आवश्यक feature bundles इंस्टॉल हों तो यह बेस route एक 400 मार्गदर्शन त्रुटि लौटाता है, या जब वे गायब हों तो 501।
security:
- bearerAuth: []
responses:
'400':
description: Use the analyze or generate endpoint
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'501':
description: Feature not installed
content:
application/json:
schema:
$ref: '#/components/schemas/FeatureNotInstalledError'
/api/v1/tools/pdf/sign-pdf:
post:
operationId: signPdfTool
tags:
- Tools
summary: Sign PDF
description: सामान्यीकृत पृष्ठ प्लेसमेंट का उपयोग करके एक या अधिक signature PNG images को एक PDF पर स्टैंप करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
- placements
- sig0
properties:
file:
type: string
format: binary
description: PDF file to sign
sig0:
type: string
format: binary
description: First signature image. Additional signatures use sig1, sig2, and so on.
placements:
type: string
description: JSON array of placement objects with sig, page, x, y, w, and h. Coordinates are page fractions with top-left origin.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
fileId:
type: string
description: Optional file library ID to save the signed result as a new version
responses:
'200':
description: Signed PDF
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-png:
post:
operationId: jpgToPngTool
tags:
- Tools
summary: JPG to PNG
description: |
JPG को PNG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JPG to PNG input file (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to PNG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-jpg:
post:
operationId: pngToJpgTool
tags:
- Tools
summary: PNG to JPG
description: |
PNG को JPG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG to JPG input file (.png)
settings:
type: string
description: |
Dedicated PNG to JPG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-webp:
post:
operationId: jpgToWebpTool
tags:
- Tools
summary: JPG to WebP
description: |
JPG को WebP में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JPG to WebP input file (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to WebP converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-webp:
post:
operationId: pngToWebpTool
tags:
- Tools
summary: PNG to WebP
description: |
PNG को WebP में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG to WebP input file (.png)
settings:
type: string
description: |
Dedicated PNG to WebP converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/webp-to-jpg:
post:
operationId: webpToJpgTool
tags:
- Tools
summary: WebP to JPG
description: |
WebP को JPG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WebP to JPG input file (.webp)
settings:
type: string
description: |
Dedicated WebP to JPG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/webp-to-png:
post:
operationId: webpToPngTool
tags:
- Tools
summary: WebP to PNG
description: |
WebP को PNG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WebP to PNG input file (.webp)
settings:
type: string
description: |
Dedicated WebP to PNG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-avif:
post:
operationId: jpgToAvifTool
tags:
- Tools
summary: JPG to AVIF
description: |
JPG को AVIF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JPG to AVIF input file (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to AVIF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-avif:
post:
operationId: pngToAvifTool
tags:
- Tools
summary: PNG to AVIF
description: |
PNG को AVIF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG to AVIF input file (.png)
settings:
type: string
description: |
Dedicated PNG to AVIF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/webp-to-avif:
post:
operationId: webpToAvifTool
tags:
- Tools
summary: WebP to AVIF
description: |
WebP को AVIF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WebP to AVIF input file (.webp)
settings:
type: string
description: |
Dedicated WebP to AVIF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/heic-to-jpg:
post:
operationId: heicToJpgTool
tags:
- Tools
summary: HEIC to JPG
description: |
HEIC को JPG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: HEIC to JPG input file (.heic, .heif)
settings:
type: string
description: |
Dedicated HEIC to JPG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/heic-to-png:
post:
operationId: heicToPngTool
tags:
- Tools
summary: HEIC to PNG
description: |
HEIC को PNG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: HEIC to PNG input file (.heic, .heif)
settings:
type: string
description: |
Dedicated HEIC to PNG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/heic-to-avif:
post:
operationId: heicToAvifTool
tags:
- Tools
summary: HEIC to AVIF
description: |
HEIC को AVIF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: HEIC to AVIF input file (.heic, .heif)
settings:
type: string
description: |
Dedicated HEIC to AVIF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-gif:
post:
operationId: jpgToGifTool
tags:
- Tools
summary: JPG to GIF
description: |
JPG को GIF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JPG to GIF input file (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to GIF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-gif:
post:
operationId: pngToGifTool
tags:
- Tools
summary: PNG to GIF
description: |
PNG को GIF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG to GIF input file (.png)
settings:
type: string
description: |
Dedicated PNG to GIF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/gif-to-jpg:
post:
operationId: gifToJpgTool
tags:
- Tools
summary: GIF to JPG
description: |
GIF को JPG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF to JPG input file (.gif)
settings:
type: string
description: |
Dedicated GIF to JPG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/gif-to-png:
post:
operationId: gifToPngTool
tags:
- Tools
summary: GIF to PNG
description: |
GIF को PNG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF to PNG input file (.gif)
settings:
type: string
description: |
Dedicated GIF to PNG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/webp-to-gif:
post:
operationId: webpToGifTool
tags:
- Tools
summary: WebP to GIF
description: |
WebP को GIF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WebP to GIF input file (.webp)
settings:
type: string
description: |
Dedicated WebP to GIF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-tiff:
post:
operationId: jpgToTiffTool
tags:
- Tools
summary: JPG to TIFF
description: |
JPG को TIFF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JPG to TIFF input file (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to TIFF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-tiff:
post:
operationId: pngToTiffTool
tags:
- Tools
summary: PNG to TIFF
description: |
PNG को TIFF में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG to TIFF input file (.png)
settings:
type: string
description: |
Dedicated PNG to TIFF converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/tiff-to-jpg:
post:
operationId: tiffToJpgTool
tags:
- Tools
summary: TIFF to JPG
description: |
TIFF को JPG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: TIFF to JPG input file (.tiff, .tif)
settings:
type: string
description: |
Dedicated TIFF to JPG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/tiff-to-png:
post:
operationId: tiffToPngTool
tags:
- Tools
summary: TIFF to PNG
description: |
TIFF को PNG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: TIFF to PNG input file (.tiff, .tif)
settings:
type: string
description: |
Dedicated TIFF to PNG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/psd-to-jpg:
post:
operationId: psdToJpgTool
tags:
- Tools
summary: PSD to JPG
description: |
PSD को JPG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PSD to JPG input file (.psd)
settings:
type: string
description: |
Dedicated PSD to JPG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/psd-to-png:
post:
operationId: psdToPngTool
tags:
- Tools
summary: PSD to PNG
description: |
PSD को PNG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PSD to PNG input file (.psd)
settings:
type: string
description: |
Dedicated PSD to PNG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-eps:
post:
operationId: pngToEpsTool
tags:
- Tools
summary: PNG to EPS
description: |
PNG को EPS में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG to EPS input file (.png)
settings:
type: string
description: |
Dedicated PNG to EPS converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-eps:
post:
operationId: jpgToEpsTool
tags:
- Tools
summary: JPG to EPS
description: |
JPG को EPS में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JPG to EPS input file (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to EPS converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/eps-to-png:
post:
operationId: epsToPngTool
tags:
- Tools
summary: EPS to PNG
description: |
EPS को PNG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: EPS to PNG input file (.eps)
settings:
type: string
description: |
Dedicated EPS to PNG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/eps-to-jpg:
post:
operationId: epsToJpgTool
tags:
- Tools
summary: EPS to JPG
description: |
EPS को JPG में बदलें
यह `convert` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: EPS to JPG input file (.eps)
settings:
type: string
description: |
Dedicated EPS to JPG converter using the convert pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-svg:
post:
operationId: pngToSvgTool
tags:
- Tools
summary: PNG to SVG
description: |
PNG को SVG में बदलें
यह `vectorize` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PNG to SVG input file (.png)
settings:
type: string
description: |
Dedicated PNG to SVG converter using the vectorize pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-svg:
post:
operationId: jpgToSvgTool
tags:
- Tools
summary: JPG to SVG
description: |
JPG को SVG में बदलें
यह `vectorize` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: JPG to SVG input file (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to SVG converter using the vectorize pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/tiff-to-svg:
post:
operationId: tiffToSvgTool
tags:
- Tools
summary: TIFF to SVG
description: |
TIFF को SVG में बदलें
यह `vectorize` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: TIFF to SVG input file (.tiff, .tif)
settings:
type: string
description: |
Dedicated TIFF to SVG converter using the vectorize pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/psd-to-svg:
post:
operationId: psdToSvgTool
tags:
- Tools
summary: PSD to SVG
description: |
PSD को SVG में बदलें
यह `vectorize` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PSD to SVG input file (.psd)
settings:
type: string
description: |
Dedicated PSD to SVG converter using the vectorize pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/eps-to-svg:
post:
operationId: epsToSvgTool
tags:
- Tools
summary: EPS to SVG
description: |
EPS को SVG में बदलें
यह `vectorize` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: EPS to SVG input file (.eps)
settings:
type: string
description: |
Dedicated EPS to SVG converter using the vectorize pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/svg-to-png:
post:
operationId: svgToPngTool
tags:
- Tools
summary: SVG to PNG
description: |
SVG को PNG में बदलें
यह `svg-to-raster` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: SVG to PNG input file (.svg, .svgz)
settings:
type: string
description: |
Dedicated SVG to PNG converter using the svg-to-raster pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/svg-to-jpg:
post:
operationId: svgToJpgTool
tags:
- Tools
summary: SVG to JPG
description: |
SVG को JPG में बदलें
यह `svg-to-raster` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: SVG to JPG input file (.svg, .svgz)
settings:
type: string
description: |
Dedicated SVG to JPG converter using the svg-to-raster pipeline.
Optional settings: quality (number 1-100). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/jpg-to-pdf:
post:
operationId: jpgToPdfTool
tags:
- Tools
summary: JPG to PDF
description: |
JPG को PDF में बदलें
यह `image-to-pdf` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: JPG to PDF input files (.jpg, .jpeg)
settings:
type: string
description: |
Dedicated JPG to PDF converter using the image-to-pdf pipeline.
Optional settings: pageSize (A4, Letter, A3, A5), orientation (portrait or landscape), margin, targetSize, and collate.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/png-to-pdf:
post:
operationId: pngToPdfTool
tags:
- Tools
summary: PNG to PDF
description: |
PNG को PDF में बदलें
यह `image-to-pdf` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: PNG to PDF input files (.png)
settings:
type: string
description: |
Dedicated PNG to PDF converter using the image-to-pdf pipeline.
Optional settings: pageSize (A4, Letter, A3, A5), orientation (portrait or landscape), margin, targetSize, and collate.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/heic-to-pdf:
post:
operationId: heicToPdfTool
tags:
- Tools
summary: HEIC to PDF
description: |
HEIC को PDF में बदलें
यह `image-to-pdf` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: HEIC to PDF input files (.heic, .heif)
settings:
type: string
description: |
Dedicated HEIC to PDF converter using the image-to-pdf pipeline.
Optional settings: pageSize (A4, Letter, A3, A5), orientation (portrait or landscape), margin, targetSize, and collate.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/tiff-to-pdf:
post:
operationId: tiffToPdfTool
tags:
- Tools
summary: TIFF to PDF
description: |
TIFF को PDF में बदलें
यह `image-to-pdf` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: TIFF to PDF input files (.tiff, .tif)
settings:
type: string
description: |
Dedicated TIFF to PDF converter using the image-to-pdf pipeline.
Optional settings: pageSize (A4, Letter, A3, A5), orientation (portrait or landscape), margin, targetSize, and collate.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/webp-to-pdf:
post:
operationId: webpToPdfTool
tags:
- Tools
summary: WebP to PDF
description: |
WebP को PDF में बदलें
यह `image-to-pdf` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: WebP to PDF input files (.webp)
settings:
type: string
description: |
Dedicated WebP to PDF converter using the image-to-pdf pipeline.
Optional settings: pageSize (A4, Letter, A3, A5), orientation (portrait or landscape), margin, targetSize, and collate.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/gif-to-pdf:
post:
operationId: gifToPdfTool
tags:
- Tools
summary: GIF to PDF
description: |
GIF को PDF में बदलें
यह `image-to-pdf` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: GIF to PDF input files (.gif)
settings:
type: string
description: |
Dedicated GIF to PDF converter using the image-to-pdf pipeline.
Optional settings: pageSize (A4, Letter, A3, A5), orientation (portrait or landscape), margin, targetSize, and collate.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/image/eps-to-pdf:
post:
operationId: epsToPdfTool
tags:
- Tools
summary: EPS to PDF
description: |
EPS को PDF में बदलें
यह `image-to-pdf` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: array
items:
type: string
format: binary
description: EPS to PDF input files (.eps)
settings:
type: string
description: |
Dedicated EPS to PDF converter using the image-to-pdf pipeline.
Optional settings: pageSize (A4, Letter, A3, A5), orientation (portrait or landscape), margin, targetSize, and collate.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/pdf/pdf-to-jpg:
post:
operationId: pdfToJpgTool
tags:
- Tools
summary: PDF to JPG
description: |
PDF को JPG में बदलें
यह `pdf-to-image` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF to JPG input file (.pdf)
settings:
type: string
description: |
Dedicated PDF to JPG converter using the pdf-to-image pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/pdf/pdf-to-png:
post:
operationId: pdfToPngTool
tags:
- Tools
summary: PDF to PNG
description: |
PDF को PNG में बदलें
यह `pdf-to-image` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF to PNG input file (.pdf)
settings:
type: string
description: |
Dedicated PDF to PNG converter using the pdf-to-image pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/pdf/pdf-to-tiff:
post:
operationId: pdfToTiffTool
tags:
- Tools
summary: PDF to TIFF
description: |
PDF को TIFF में बदलें
यह `pdf-to-image` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: PDF to TIFF input file (.pdf)
settings:
type: string
description: |
Dedicated PDF to TIFF converter using the pdf-to-image pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mov-to-mp4:
post:
operationId: movToMp4Tool
tags:
- Tools
summary: MOV to MP4
description: |
MOV को MP4 में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MOV to MP4 input file (.mov)
settings:
type: string
description: |
Dedicated MOV to MP4 converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/webm-to-mp4:
post:
operationId: webmToMp4Tool
tags:
- Tools
summary: WEBM to MP4
description: |
WEBM को MP4 में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WEBM to MP4 input file (.webm)
settings:
type: string
description: |
Dedicated WEBM to MP4 converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mkv-to-mp4:
post:
operationId: mkvToMp4Tool
tags:
- Tools
summary: MKV to MP4
description: |
MKV को MP4 में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MKV to MP4 input file (.mkv)
settings:
type: string
description: |
Dedicated MKV to MP4 converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/avi-to-mp4:
post:
operationId: aviToMp4Tool
tags:
- Tools
summary: AVI to MP4
description: |
AVI को MP4 में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AVI to MP4 input file (.avi)
settings:
type: string
description: |
Dedicated AVI to MP4 converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mp4-to-mov:
post:
operationId: mp4ToMovTool
tags:
- Tools
summary: MP4 to MOV
description: |
MP4 को MOV में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP4 to MOV input file (.mp4)
settings:
type: string
description: |
Dedicated MP4 to MOV converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mp4-to-webm:
post:
operationId: mp4ToWebmTool
tags:
- Tools
summary: MP4 to WEBM
description: |
MP4 को WEBM में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP4 to WEBM input file (.mp4)
settings:
type: string
description: |
Dedicated MP4 to WEBM converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/webm-to-mov:
post:
operationId: webmToMovTool
tags:
- Tools
summary: WEBM to MOV
description: |
WEBM को MOV में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WEBM to MOV input file (.webm)
settings:
type: string
description: |
Dedicated WEBM to MOV converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mkv-to-mov:
post:
operationId: mkvToMovTool
tags:
- Tools
summary: MKV to MOV
description: |
MKV को MOV में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MKV to MOV input file (.mkv)
settings:
type: string
description: |
Dedicated MKV to MOV converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/avi-to-mov:
post:
operationId: aviToMovTool
tags:
- Tools
summary: AVI to MOV
description: |
AVI को MOV में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AVI to MOV input file (.avi)
settings:
type: string
description: |
Dedicated AVI to MOV converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mp4-to-avi:
post:
operationId: mp4ToAviTool
tags:
- Tools
summary: MP4 to AVI
description: |
MP4 को AVI में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP4 to AVI input file (.mp4)
settings:
type: string
description: |
Dedicated MP4 to AVI converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mov-to-avi:
post:
operationId: movToAviTool
tags:
- Tools
summary: MOV to AVI
description: |
MOV को AVI में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MOV to AVI input file (.mov)
settings:
type: string
description: |
Dedicated MOV to AVI converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mkv-to-avi:
post:
operationId: mkvToAviTool
tags:
- Tools
summary: MKV to AVI
description: |
MKV को AVI में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MKV to AVI input file (.mkv)
settings:
type: string
description: |
Dedicated MKV to AVI converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/avi-to-mkv:
post:
operationId: aviToMkvTool
tags:
- Tools
summary: AVI to MKV
description: |
AVI को MKV में बदलें
यह `convert-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AVI to MKV input file (.avi)
settings:
type: string
description: |
Dedicated AVI to MKV converter using the convert-video pipeline.
Optional settings: quality (high, balanced, small). The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mp4-to-gif:
post:
operationId: mp4ToGifTool
tags:
- Tools
summary: MP4 to GIF
description: |
MP4 को GIF में बदलें
यह `video-to-gif` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP4 to GIF input file (.mp4)
settings:
type: string
description: |
Dedicated MP4 to GIF converter using the video-to-gif pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mov-to-gif:
post:
operationId: movToGifTool
tags:
- Tools
summary: MOV to GIF
description: |
MOV को GIF में बदलें
यह `video-to-gif` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MOV to GIF input file (.mov)
settings:
type: string
description: |
Dedicated MOV to GIF converter using the video-to-gif pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mkv-to-gif:
post:
operationId: mkvToGifTool
tags:
- Tools
summary: MKV to GIF
description: |
MKV को GIF में बदलें
यह `video-to-gif` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MKV to GIF input file (.mkv)
settings:
type: string
description: |
Dedicated MKV to GIF converter using the video-to-gif pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/avi-to-gif:
post:
operationId: aviToGifTool
tags:
- Tools
summary: AVI to GIF
description: |
AVI को GIF में बदलें
यह `video-to-gif` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AVI to GIF input file (.avi)
settings:
type: string
description: |
Dedicated AVI to GIF converter using the video-to-gif pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/gif-to-mp4:
post:
operationId: gifToMp4Tool
tags:
- Tools
summary: GIF to MP4
description: |
GIF को MP4 में बदलें
यह `gif-to-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF to MP4 input file (.gif)
settings:
type: string
description: |
Dedicated GIF to MP4 converter using the gif-to-video pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/gif-to-webm:
post:
operationId: gifToWebmTool
tags:
- Tools
summary: GIF to WEBM
description: |
GIF को WEBM में बदलें
यह `gif-to-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF to WEBM input file (.gif)
settings:
type: string
description: |
Dedicated GIF to WEBM converter using the gif-to-video pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/gif-to-mov:
post:
operationId: gifToMovTool
tags:
- Tools
summary: GIF to MOV
description: |
GIF को MOV में बदलें
यह `gif-to-video` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: GIF to MOV input file (.gif)
settings:
type: string
description: |
Dedicated GIF to MOV converter using the gif-to-video pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mp4-to-mp3:
post:
operationId: mp4ToMp3Tool
tags:
- Tools
summary: MP4 to MP3
description: |
MP4 को MP3 में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP4 to MP3 input file (.mp4)
settings:
type: string
description: |
Dedicated MP4 to MP3 converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mov-to-mp3:
post:
operationId: movToMp3Tool
tags:
- Tools
summary: MOV to MP3
description: |
MOV को MP3 में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MOV to MP3 input file (.mov)
settings:
type: string
description: |
Dedicated MOV to MP3 converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mkv-to-mp3:
post:
operationId: mkvToMp3Tool
tags:
- Tools
summary: MKV to MP3
description: |
MKV को MP3 में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MKV to MP3 input file (.mkv)
settings:
type: string
description: |
Dedicated MKV to MP3 converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/webm-to-mp3:
post:
operationId: webmToMp3Tool
tags:
- Tools
summary: WEBM to MP3
description: |
WEBM को MP3 में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WEBM to MP3 input file (.webm)
settings:
type: string
description: |
Dedicated WEBM to MP3 converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/avi-to-mp3:
post:
operationId: aviToMp3Tool
tags:
- Tools
summary: AVI to MP3
description: |
AVI को MP3 में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AVI to MP3 input file (.avi)
settings:
type: string
description: |
Dedicated AVI to MP3 converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mp4-to-wav:
post:
operationId: mp4ToWavTool
tags:
- Tools
summary: MP4 to WAV
description: |
MP4 को WAV में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP4 to WAV input file (.mp4)
settings:
type: string
description: |
Dedicated MP4 to WAV converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mov-to-wav:
post:
operationId: movToWavTool
tags:
- Tools
summary: MOV to WAV
description: |
MOV को WAV में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MOV to WAV input file (.mov)
settings:
type: string
description: |
Dedicated MOV to WAV converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/video/mp4-to-ogg:
post:
operationId: mp4ToOggTool
tags:
- Tools
summary: MP4 to OGG
description: |
MP4 को OGG में बदलें
यह `extract-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP4 to OGG input file (.mp4)
settings:
type: string
description: |
Dedicated MP4 to OGG converter using the extract-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/m4a-to-mp3:
post:
operationId: m4aToMp3Tool
tags:
- Tools
summary: M4A to MP3
description: |
M4A को MP3 में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: M4A to MP3 input file (.m4a)
settings:
type: string
description: |
Dedicated M4A to MP3 converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/m4a-to-wav:
post:
operationId: m4aToWavTool
tags:
- Tools
summary: M4A to WAV
description: |
M4A को WAV में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: M4A to WAV input file (.m4a)
settings:
type: string
description: |
Dedicated M4A to WAV converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/aac-to-mp3:
post:
operationId: aacToMp3Tool
tags:
- Tools
summary: AAC to MP3
description: |
AAC को MP3 में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AAC to MP3 input file (.aac)
settings:
type: string
description: |
Dedicated AAC to MP3 converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/aac-to-wav:
post:
operationId: aacToWavTool
tags:
- Tools
summary: AAC to WAV
description: |
AAC को WAV में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AAC to WAV input file (.aac)
settings:
type: string
description: |
Dedicated AAC to WAV converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/aac-to-flac:
post:
operationId: aacToFlacTool
tags:
- Tools
summary: AAC to FLAC
description: |
AAC को FLAC में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: AAC to FLAC input file (.aac)
settings:
type: string
description: |
Dedicated AAC to FLAC converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/ogg-to-mp3:
post:
operationId: oggToMp3Tool
tags:
- Tools
summary: OGG to MP3
description: |
OGG को MP3 में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: OGG to MP3 input file (.ogg)
settings:
type: string
description: |
Dedicated OGG to MP3 converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/ogg-to-wav:
post:
operationId: oggToWavTool
tags:
- Tools
summary: OGG to WAV
description: |
OGG को WAV में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: OGG to WAV input file (.ogg)
settings:
type: string
description: |
Dedicated OGG to WAV converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/wav-to-mp3:
post:
operationId: wavToMp3Tool
tags:
- Tools
summary: WAV to MP3
description: |
WAV को MP3 में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: WAV to MP3 input file (.wav)
settings:
type: string
description: |
Dedicated WAV to MP3 converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/mp3-to-wav:
post:
operationId: mp3ToWavTool
tags:
- Tools
summary: MP3 to WAV
description: |
MP3 को WAV में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: MP3 to WAV input file (.mp3)
settings:
type: string
description: |
Dedicated MP3 to WAV converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/audio/flac-to-mp3:
post:
operationId: flacToMp3Tool
tags:
- Tools
summary: FLAC to MP3
description: |
FLAC को MP3 में बदलें
यह `convert-audio` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: FLAC to MP3 input file (.flac)
settings:
type: string
description: |
Dedicated FLAC to MP3 converter using the convert-audio pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'200':
description: Processed file
content:
application/json:
schema:
$ref: '#/components/schemas/ToolResponse'
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/tools/files/excel-to-csv:
post:
operationId: excelToCsvTool
tags:
- Tools
summary: Excel to CSV
description: |
Excel को CSV में बदलें
यह `convert-spreadsheet` द्वारा समर्थित एक समर्पित conversion preset endpoint है।
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
description: Excel to CSV input file (.xlsx, .xls)
settings:
type: string
description: |
Dedicated Excel to CSV converter using the convert-spreadsheet pipeline.
The output format is locked by the endpoint.
clientJobId:
type: string
description: Client-provided job ID for SSE progress tracking
responses:
'202':
description: Accepted for async processing. Track progress via SSE at /api/v1/jobs/{jobId}/progress.
content:
application/json:
schema:
type: object
properties:
jobId:
type: string
async:
type: boolean
example: true
'400':
description: Invalid input or settings
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Authentication required
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedError'
'422':
description: Processing failed
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/api/v1/readyz:
get:
operationId: readinessCheck
tags:
- System
summary: तैयारी जाँच
description: PostgreSQL, Redis, स्थानीय डिस्क स्थान, और कॉन्फ़िगर होने पर S3 पहुँच योग्यता की जाँच करता है। लोड बैलेंसर और ऑर्केस्ट्रेटर के लिए सार्वजनिक endpoint।
security: []
responses:
'200':
description: Instance is ready to receive traffic
'503':
description: Instance is not ready to receive traffic
/api/v1/jobs/{jobId}/cancel:
post:
operationId: cancelJob
tags:
- System
summary: job रद्द करें
description: एक queued या चल रहे job के लिए रद्दीकरण का अनुरोध करें।
security:
- bearerAuth: []
parameters:
- name: jobId
in: path
required: true
schema:
type: string
responses:
'200':
description: Cancellation request result
'401':
description: Authentication required
/api/v1/preferences:
get:
operationId: getPreferences
tags:
- Settings
summary: user प्राथमिकताएं प्राप्त करें
description: वर्तमान user का per-user प्राथमिकता मानचित्र लौटाएं।
security:
- bearerAuth: []
responses:
'200':
description: Preference map
'401':
description: Authentication required
put:
operationId: updatePreferences
tags:
- Settings
summary: user प्राथमिकताएं अपडेट करें
description: वर्तमान user के लिए एक या अधिक प्राथमिकताएं upsert करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
responses:
'200':
description: Preferences updated
'400':
description: Invalid preferences body
'401':
description: Authentication required
/api/auth/mfa/enroll:
post:
operationId: enrollMfa
tags:
- Auth
summary: MFA नामांकन शुरू करें
description: वर्तमान user के लिए TOTP MFA नामांकन शुरू करें। इसके लिए enterprise MFA feature आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Enrollment URI and recovery codes
'401':
description: Authentication required
'403':
description: MFA feature not licensed
'409':
description: MFA enrollment already enabled or pending
/api/auth/mfa/verify:
post:
operationId: verifyMfaEnrollment
tags:
- Auth
summary: MFA नामांकन सत्यापित करें
description: एक TOTP code के साथ लंबित MFA नामांकन की पुष्टि करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- code
properties:
code:
type: string
responses:
'200':
description: MFA enabled
'400':
description: No pending enrollment or invalid body
'401':
description: Invalid TOTP code
/api/auth/mfa/complete:
post:
operationId: completeMfaLogin
tags:
- Auth
summary: MFA login पूर्ण करें
description: एक TOTP या recovery code के साथ एक लंबित login चुनौती पूर्ण करें।
security: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- mfaToken
- code
properties:
mfaToken:
type: string
code:
type: string
responses:
'200':
description: Session token and user profile
'400':
description: Invalid request body
'401':
description: Invalid or expired MFA challenge
/api/auth/mfa/disable:
post:
operationId: disableMfa
tags:
- Auth
summary: MFA अक्षम करें
description: एक TOTP code सत्यापित करने के बाद वर्तमान user के लिए MFA अक्षम करें।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- code
properties:
code:
type: string
responses:
'200':
description: MFA disabled
'400':
description: MFA is not enabled or body is invalid
'401':
description: Authentication required or invalid code
/api/auth/users/{id}/mfa/reset:
post:
operationId: resetUserMfa
tags:
- Auth
summary: user MFA रीसेट करें
description: |
Reset a user's MFA enrollment. Requires users:manage permission and authority over the target's current role, including hierarchy, permissions, tool access, and any API-key scope.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: MFA reset
'401':
description: Authentication required
'403':
description: Insufficient permissions
'404':
description: User not found
/api/auth/oidc/login:
get:
operationId: oidcLogin
tags:
- Auth
summary: OIDC login शुरू करें
description: कॉन्फ़िगर किए गए OpenID Connect प्रदाता पर रीडायरेक्ट करें।
security: []
responses:
'302':
description: Redirect to identity provider
'500':
description: OIDC provider discovery failed
/api/auth/oidc/callback:
get:
operationId: oidcCallback
tags:
- Auth
summary: OIDC callback
description: OIDC authorization code फ़्लो पूर्ण करें और एक session बनाएं।
security: []
responses:
'302':
description: Redirect to the application
/api/auth/saml/metadata:
get:
operationId: samlMetadata
tags:
- Auth
summary: SAML metadata
description: SAML service provider metadata XML लौटाएं।
security: []
responses:
'200':
description: SAML metadata XML
/api/auth/saml/login:
get:
operationId: samlLogin
tags:
- Auth
summary: SAML login शुरू करें
description: कॉन्फ़िगर किए गए SAML identity provider पर रीडायरेक्ट करें।
security: []
responses:
'302':
description: Redirect to identity provider
/api/auth/saml/callback:
post:
operationId: samlCallback
tags:
- Auth
summary: SAML callback
description: SAML login के लिए assertion consumer service endpoint।
security: []
responses:
'302':
description: Redirect to the application
/api/v1/files/{id}/preview:
get:
operationId: getFilePreview
tags:
- Files
summary: फ़ाइल preview
description: एक सहेजी गई PDF, office दस्तावेज़, video, या audio फ़ाइल के लिए एक browser-संगत preview स्ट्रीम या जनरेट करें।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: Preview binary
'400':
description: Preview not supported
'401':
description: Authentication required
'404':
description: File not found
'422':
description: Could not generate preview
/api/v1/preview/generate:
post:
operationId: generatePreview
tags:
- Files
summary: upload preview जनरेट करें
description: एक upload की गई मीडिया फ़ाइल के लिए एक ऑन-डिमांड MP4 या MP3 preview जनरेट करें।
security: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
required:
- file
properties:
file:
type: string
format: binary
responses:
'200':
description: Preview binary
'400':
description: Unsupported file type or missing file
'422':
description: Could not generate preview
/api/v1/admin/log-level:
get:
operationId: getLogLevel
tags:
- Admin
summary: log स्तर प्राप्त करें
description: वर्तमान runtime log स्तर पढ़ें। settings:write permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Current log level
'403':
description: Insufficient permissions
post:
operationId: setLogLevel
tags:
- Admin
summary: log स्तर सेट करें
description: runtime log स्तर बदलें। settings:write permission आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- level
properties:
level:
type: string
enum:
- fatal
- error
- warn
- info
- debug
- trace
- silent
responses:
'200':
description: New log level
'400':
description: Invalid log level
'403':
description: Insufficient permissions
/api/v1/metrics:
get:
operationId: getMetrics
tags:
- Admin
summary: Prometheus metrics
description: Prometheus metrics लौटाएं। system:health permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Prometheus text format
'403':
description: Insufficient permissions
/api/v1/admin/support-bundle:
get:
operationId: getSupportBundle
tags:
- Admin
summary: Support bundle
description: एक redacted diagnostic support bundle ZIP download करें। system:health permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Support bundle ZIP
'403':
description: Insufficient permissions
/api/v1/admin/usage:
get:
operationId: getAdminUsage
tags:
- Admin
summary: उपयोग डैशबोर्ड डेटा
description: स्थानीय उपयोग डैशबोर्ड डेटा लौटाएं। audit:read permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: days
in: query
required: false
schema:
type: string
responses:
'200':
description: Usage dashboard data
'400':
description: Invalid query parameters
'403':
description: Insufficient permissions
/api/v1/admin/backup-status:
get:
operationId: getBackupStatus
tags:
- Admin
summary: बैकअप स्थिति
description: अंतिम बैकअप metadata और ताज़गी लौटाएं। system:health permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Backup status
'403':
description: Insufficient permissions
post:
operationId: setBackupStatus
tags:
- Admin
summary: बैकअप स्थिति रिकॉर्ड करें
description: एक पूर्ण बैकअप रिकॉर्ड करें। system:health permission आवश्यक है।
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- type
properties:
type:
type: string
sizeBytes:
type: integer
notes:
type: string
responses:
'200':
description: Backup status recorded
'400':
description: Invalid backup status
'403':
description: Insufficient permissions
/api/v1/admin/features/import:
post:
operationId: importFeatureBundle
tags:
- Features
summary: feature bundle आयात करें
description: |-
एक लीगेसी AI बंडल संग्रह आयात करें, या एक ऑफ़लाइन सटीक OCR आयात करें
इसके हस्ताक्षरित सूचकांक और मिलान प्लेटफ़ॉर्म संग्रह का उपयोग करके रिलीज़ करें। OCR
आयात समान हस्ताक्षर, हैश, अनुकूलता, निष्कर्षण करता है,
और smoke-test सटीक सहित ऑनलाइन इंस्टॉलेशन की जांच करता है
रनटाइम की 4 GiB प्रभावी-मेमोरी न्यूनतम। Fast Tesseract OCR नहीं है
इस आवश्यकता के अधीन. features:manage अनुमति की आवश्यकता है.
security:
- bearerAuth: []
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
oneOf:
- required:
- file
- required:
- index
- archive
properties:
file:
type: string
format: binary
description: One legacy AI bundle archive; mutually exclusive with index/archive
index:
type: string
format: binary
description: Signed ocr-runtime-index.json from the SnapOtter release
archive:
type: string
format: binary
description: OCR runtime archive for the current Linux amd64 or arm64 target; must follow index
responses:
'200':
description: Bundle verified, imported, and activated
'400':
description: Invalid archive
'403':
description: Insufficient permissions
'409':
description: Import lock is held
'507':
description: Insufficient storage for the authenticated archive and expanded runtime
/api/v1/enterprise/scim/token:
post:
operationId: createScimToken
tags:
- Enterprise
summary: SCIM token बनाएं
description: |
Generate a global SCIM bearer token. Requires the enterprise SCIM feature and full effective built-in administrator authority; custom roles and API keys missing any administrator permission do not qualify. Legacy unversioned tokens are invalid and must be reissued as v2 tokens.
security:
- bearerAuth: []
responses:
'201':
description: SCIM token created
'403':
description: SCIM feature not licensed or insufficient permissions
delete:
operationId: revokeScimToken
tags:
- Enterprise
summary: SCIM token रद्द करें
description: |
Revoke the global SCIM bearer token. Requires the enterprise SCIM feature and full effective built-in administrator authority; custom roles and API keys missing any administrator permission do not qualify.
security:
- bearerAuth: []
responses:
'204':
description: SCIM token revoked
'403':
description: SCIM feature not licensed or insufficient permissions
/api/v1/scim/v2/ServiceProviderConfig:
get:
operationId: getScimServiceProviderConfig
tags:
- Enterprise
summary: SCIM service provider config
description: सार्वजनिक SCIM डिस्कवरी endpoint।
security: []
responses:
'200':
description: SCIM service provider capabilities
/api/v1/scim/v2/Schemas:
get:
operationId: getScimSchemas
tags:
- Enterprise
summary: SCIM schemas
description: सार्वजनिक SCIM schema डिस्कवरी endpoint।
security: []
responses:
'200':
description: SCIM schemas
/api/v1/scim/v2/ResourceTypes:
get:
operationId: getScimResourceTypes
tags:
- Enterprise
summary: SCIM resource types
description: सार्वजनिक SCIM resource type डिस्कवरी endpoint।
security: []
responses:
'200':
description: SCIM resource types
/api/v1/scim/v2/Users:
get:
operationId: listScimUsers
tags:
- Enterprise
summary: SCIM users सूचीबद्ध करें
description: SCIM users सूचीबद्ध करें। SCIM bearer token आवश्यक है।
responses:
'200':
description: SCIM user list
post:
operationId: createScimUser
tags:
- Enterprise
summary: SCIM user बनाएं
description: एक SCIM user बनाएं। SCIM bearer token आवश्यक है।
responses:
'201':
description: SCIM user created
/api/v1/scim/v2/Users/{id}:
get:
operationId: getScimUser
tags:
- Enterprise
summary: SCIM user प्राप्त करें
description: ID द्वारा एक SCIM user प्राप्त करें। SCIM bearer token आवश्यक है।
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: SCIM user
put:
operationId: updateScimUser
tags:
- Enterprise
summary: SCIM user अपडेट करें
description: ID द्वारा एक SCIM user को प्रतिस्थापित करें। SCIM bearer token आवश्यक है।
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: SCIM user updated
delete:
operationId: deleteScimUser
tags:
- Enterprise
summary: SCIM user हटाएं
description: ID द्वारा एक SCIM user को सॉफ़्ट निष्क्रिय करें। SCIM bearer token आवश्यक है।
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: SCIM user deactivated
/api/v1/scim/v2/Groups:
get:
operationId: listScimGroups
tags:
- Enterprise
summary: SCIM groups सूचीबद्ध करें
description: SCIM groups सूचीबद्ध करें। SCIM bearer token आवश्यक है।
responses:
'200':
description: SCIM group list
post:
operationId: createScimGroup
tags:
- Enterprise
summary: SCIM group बनाएं
description: एक SCIM group बनाएं। SCIM bearer token आवश्यक है।
responses:
'201':
description: SCIM group created
/api/v1/scim/v2/Groups/{id}:
get:
operationId: getScimGroup
tags:
- Enterprise
summary: SCIM group प्राप्त करें
description: ID द्वारा एक SCIM group प्राप्त करें। SCIM bearer token आवश्यक है।
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: SCIM group
put:
operationId: updateScimGroup
tags:
- Enterprise
summary: SCIM group अपडेट करें
description: ID द्वारा एक SCIM group को प्रतिस्थापित करें। SCIM bearer token आवश्यक है।
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: SCIM group updated
delete:
operationId: deleteScimGroup
tags:
- Enterprise
summary: SCIM group हटाएं
description: ID द्वारा एक SCIM group हटाएं। SCIM bearer token आवश्यक है।
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'204':
description: SCIM group deleted
/api/v1/enterprise/audit/export:
get:
operationId: exportAuditLog
tags:
- Enterprise
summary: audit log निर्यात करें
description: audit entries को JSON या CSV के रूप में निर्यात करें। audit:read permission और enterprise audit export feature आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Audit export
'400':
description: Invalid query parameters
'403':
description: Feature not licensed or insufficient permissions
/api/v1/enterprise/config/export:
get:
operationId: exportEnterpriseConfig
tags:
- Enterprise
summary: configuration निर्यात करें
description: |
संशोधित इंस्टेंस कॉन्फ़िगरेशन, कस्टम भूमिकाएँ और टीमें निर्यात करें। पूर्ण प्रभावी अंतर्निहित एडमिन अधिकार आवश्यक है; कस्टम भूमिकाएँ योग्य नहीं हैं और वे API कुंजियाँ भी योग्य नहीं हैं जिनमें एडमिन की कोई अनुमति अनुपलब्ध है।
security:
- bearerAuth: []
responses:
'200':
description: Configuration export
'403':
description: Feature not licensed or insufficient permissions
/api/v1/enterprise/config/import:
post:
operationId: importEnterpriseConfig
tags:
- Enterprise
summary: configuration आयात करें
description: |
इंस्टेंस कॉन्फ़िगरेशन, कस्टम भूमिकाएँ और टीमें आयात करें। पूर्ण प्रभावी अंतर्निहित एडमिन अधिकार आवश्यक है; कस्टम भूमिकाएँ योग्य नहीं हैं और वे API कुंजियाँ भी योग्य नहीं हैं जिनमें एडमिन की कोई अनुमति अनुपलब्ध है।
security:
- bearerAuth: []
responses:
'200':
description: Import result
'400':
description: Invalid import payload
'403':
description: Feature not licensed or insufficient permissions
/api/v1/enterprise/ip-allowlist:
get:
operationId: getIpAllowlist
tags:
- Enterprise
summary: IP allowlist प्राप्त करें
description: enterprise IP allowlist पढ़ें। security:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: IP allowlist
'403':
description: Feature not licensed or insufficient permissions
put:
operationId: updateIpAllowlist
tags:
- Enterprise
summary: IP allowlist अपडेट करें
description: सेल्फ-लॉकआउट रोकथाम के साथ CIDR allowlist entries अपडेट करें। security:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: IP allowlist updated
'400':
description: Invalid CIDR entries
'403':
description: Feature not licensed or insufficient permissions
/api/v1/enterprise/legal-hold:
get:
operationId: listLegalHolds
tags:
- Enterprise
summary: legal holds सूचीबद्ध करें
description: legal hold के अंतर्गत users और teams सूचीबद्ध करें। compliance:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Legal holds
'403':
description: Feature not licensed or insufficient permissions
put:
operationId: updateLegalHold
tags:
- Enterprise
summary: legal hold अपडेट करें
description: एक user या team पर एक legal hold लागू करें या जारी करें। compliance:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Legal hold updated
'400':
description: Invalid request body
'403':
description: Feature not licensed or insufficient permissions
/api/v1/enterprise/siem/config:
get:
operationId: getSiemConfig
tags:
- Enterprise
summary: SIEM config प्राप्त करें
description: SIEM forwarding configuration पढ़ें। webhooks:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: SIEM config
'403':
description: Feature not licensed or insufficient permissions
put:
operationId: updateSiemConfig
tags:
- Enterprise
summary: SIEM config अपडेट करें
description: SIEM forwarding configuration अपडेट करें। webhooks:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: SIEM config updated
'400':
description: Invalid SIEM config
'403':
description: Feature not licensed or insufficient permissions
/api/v1/enterprise/webhooks:
get:
operationId: listWebhooks
tags:
- Enterprise
summary: webhooks सूचीबद्ध करें
description: webhook destinations सूचीबद्ध करें। webhooks:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Webhook destinations
'403':
description: Feature not licensed or insufficient permissions
post:
operationId: createWebhook
tags:
- Enterprise
summary: webhook बनाएं
description: एक webhook destination बनाएं। webhooks:manage permission आवश्यक है।
security:
- bearerAuth: []
responses:
'201':
description: Webhook created
'400':
description: Invalid webhook destination
'403':
description: Feature not licensed or insufficient permissions
/api/v1/enterprise/webhooks/{index}:
put:
operationId: updateWebhook
tags:
- Enterprise
summary: webhook अपडेट करें
description: index द्वारा एक webhook destination अपडेट करें। webhooks:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: index
in: path
required: true
schema:
type: string
responses:
'200':
description: Webhook updated
'400':
description: Invalid index or destination
'404':
description: Webhook not found
delete:
operationId: deleteWebhook
tags:
- Enterprise
summary: webhook हटाएं
description: index द्वारा एक webhook destination हटाएं। webhooks:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: index
in: path
required: true
schema:
type: string
responses:
'200':
description: Webhook deleted
'400':
description: Invalid index
'404':
description: Webhook not found
/api/v1/enterprise/webhooks/{index}/test:
post:
operationId: testWebhook
tags:
- Enterprise
summary: webhook परीक्षण करें
description: एक webhook destination पर एक परीक्षण payload भेजें। webhooks:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: index
in: path
required: true
schema:
type: string
responses:
'200':
description: Test result
'400':
description: Invalid index
'404':
description: Webhook not found
/api/v1/enterprise/users/{id}/export:
post:
operationId: startGdprUserExport
tags:
- Enterprise
summary: GDPR निर्यात शुरू करें
description: एक GDPR user data निर्यात job शुरू करें। compliance:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'202':
description: Export job started
'403':
description: Feature not licensed or insufficient permissions
'404':
description: User not found
/api/v1/enterprise/users/{id}/export/{jobId}:
get:
operationId: getGdprUserExport
tags:
- Enterprise
summary: GDPR निर्यात स्थिति प्राप्त करें
description: एक GDPR user निर्यात job के लिए स्थिति और download URL पढ़ें। compliance:manage permission आवश्यक है।
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
- name: jobId
in: path
required: true
schema:
type: string
responses:
'200':
description: Export status
'404':
description: Export job not found
/api/v1/enterprise/users/{id}/purge:
delete:
operationId: purgeEnterpriseUser
tags:
- Enterprise
summary: user data पर्ज करें
description: |
Permanently purge a user's data after explicit confirmation. Requires compliance:manage permission and authority over the target's current role, including hierarchy, permissions, tool access, and any API-key scope.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: User purged
'400':
description: Confirmation required
'403':
description: Feature not licensed, insufficient permission, or target role beyond actor authority
'409':
description: User or team is under legal hold
/api/v1/enterprise/teams/{id}/purge:
delete:
operationId: purgeEnterpriseTeam
tags:
- Enterprise
summary: team data पर्ज करें
description: |
Permanently purge a team's data after explicit confirmation. Requires compliance:manage permission and authority over every member's current role, including hierarchy, permissions, tool access, and any API-key scope. A team containing the actor cannot be purged.
security:
- bearerAuth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: Team purged
'400':
description: Confirmation required
'403':
description: Feature not licensed, insufficient permission, or a member role beyond actor authority
'409':
description: Team is under legal hold
/api/v1/admin/version:
get:
operationId: getAdminVersion
tags:
- Admin
summary: संस्करण metadata
description: app संस्करण, build तिथि, Node संस्करण, और schema संस्करण पढ़ें। system:health permission और enterprise upgrade management feature आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Version metadata
'403':
description: Feature not licensed or insufficient permissions
/api/v1/admin/migrations/pending:
get:
operationId: getPendingMigrations
tags:
- Admin
summary: Migration स्थिति
description: पैकेज्ड migrations की लागू किए गए migrations से तुलना करें। system:health permission और enterprise upgrade management feature आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Migration status
'403':
description: Feature not licensed or insufficient permissions
/api/v1/admin/upgrade-check:
get:
operationId: getUpgradeCheck
tags:
- Admin
summary: Upgrade तैयारी
description: upgrade तैयारी जाँच चलाएं। system:health permission और enterprise upgrade management feature आवश्यक है।
security:
- bearerAuth: []
responses:
'200':
description: Upgrade readiness result
'403':
description: Feature not licensed or insufficient permissions
/llms.txt:
get:
operationId: getLlmsTxt
tags:
- System
summary: LLM सारांश
description: OpenAPI spec से जनरेट किया गया LLM-अनुकूल सादा-टेक्स्ट API सारांश।
security: []
responses:
'200':
description: Plain-text LLM summary
content:
text/plain:
schema:
type: string
/llms-full.txt:
get:
operationId: getLlmsFullTxt
tags:
- System
summary: पूर्ण LLM API डॉक्स
description: OpenAPI spec से जनरेट किया गया संपूर्ण सादा-टेक्स्ट API दस्तावेज़ीकरण।
security: []
responses:
'200':
description: Full plain-text API docs
content:
text/plain:
schema:
type: string
/api/v1/openapi.yaml:
get:
operationId: getOpenApiYaml
tags:
- System
summary: OpenAPI YAML
description: इस SnapOtter instance के लिए मशीन-पठनीय OpenAPI 3.1 विनिर्देश।
security: []
responses:
'200':
description: OpenAPI YAML document
content:
text/yaml:
schema:
type: string
/api/v1/tools/popular:
get:
operationId: getPopularTools
tags:
- Tools
summary: लोकप्रिय tools
description: 12 तक लोकप्रिय tool IDs लौटाएं, जब उपयोग डेटा विरल हो तो एक क्यूरेटेड डिफ़ॉल्ट सूची पर fallback करते हुए।
security: []
responses:
'200':
description: Popular tool IDs
content:
application/json:
schema:
type: object
properties:
tools:
type: array
items:
type: string
x-i18n:
locale: hi
generator: scripts/i18n/adapters/api-spec.mjs
entries:
info.description:
sourceHash: 0a7d56a602a9
provenance: machine
outputHash: 7932bff8e4ea
tags.Tools.description:
sourceHash: 9c71553d06df
provenance: machine
outputHash: be95104f8946
tags.Batch.description:
sourceHash: f9c99eda7653
provenance: machine
outputHash: d3d84a4d9068
tags.Pipelines.description:
sourceHash: 18d60931b26d
provenance: machine
outputHash: f695ced037c9
tags.Files.description:
sourceHash: c3b0e1590a61
provenance: machine
outputHash: e64314f7a579
tags.Auth.description:
sourceHash: 23f6a0fcf611
provenance: machine
outputHash: 2622d1ba57ba
tags.API Keys.description:
sourceHash: fb725a6a642a
provenance: machine
outputHash: 637265888a73
tags.Settings.description:
sourceHash: 25788b024fe2
provenance: machine
outputHash: a9c3bcb6e6a4
tags.Teams.description:
sourceHash: 750d92c8bb9f
provenance: machine
outputHash: eae0cbe0ad33
tags.Roles.description:
sourceHash: d031f589a884
provenance: machine
outputHash: c44a26d88b41
tags.Audit.description:
sourceHash: ed43b35a8636
provenance: machine
outputHash: 47a5ff499f07
tags.Analytics.description:
sourceHash: 36832a1b1df0
provenance: machine
outputHash: dbedffdf05d6
tags.Features.description:
sourceHash: a6cdd16968b5
provenance: machine
outputHash: 599e71acb44e
tags.Admin.description:
sourceHash: c19c4b4f68c4
provenance: machine
outputHash: f24bb8e3f484
tags.System.description:
sourceHash: 91561bc11296
provenance: machine
outputHash: 138133c8d0e7
tags.Enterprise.description:
sourceHash: 91b6b46b0dd1
provenance: machine
outputHash: 24e596d13d7d
paths./api/v1/health.get.summary:
sourceHash: 14290e1d0681
provenance: machine
outputHash: 4d34a47031a4
paths./api/v1/health.get.description:
sourceHash: 784e94eaa9df
provenance: machine
outputHash: b9d7303fa9d4
paths./api/v1/tools/image/resize.post.summary:
sourceHash: 6cc5dc48975b
provenance: machine
outputHash: 59d0c70a999b
paths./api/v1/tools/image/resize.post.description:
sourceHash: 3dd014df5258
provenance: machine
outputHash: 750b0c929322
paths./api/v1/tools/image/content-aware-resize.post.summary:
sourceHash: 7f86a6451d78
provenance: machine
outputHash: 794d60b869fc
paths./api/v1/tools/image/content-aware-resize.post.description:
sourceHash: fe6de26388f5
provenance: machine
outputHash: 36bea81a59ed
paths./api/v1/tools/image/crop.post.summary:
sourceHash: fb3dabcf0d02
provenance: machine
outputHash: 9be8b6b069b7
paths./api/v1/tools/image/crop.post.description:
sourceHash: db6c5c89d359
provenance: machine
outputHash: 1a3744e5270c
paths./api/v1/tools/image/rotate.post.summary:
sourceHash: 816edfdfe65e
provenance: machine
outputHash: d51d7a55f166
paths./api/v1/tools/image/rotate.post.description:
sourceHash: 5360b7d1a4c3
provenance: machine
outputHash: c04a1d8213dd
paths./api/v1/tools/image/convert.post.summary:
sourceHash: 6ccca094d767
provenance: machine
outputHash: dc4fa3323165
paths./api/v1/tools/image/convert.post.description:
sourceHash: 2298d8af460d
provenance: machine
outputHash: d7e8b01b4a25
paths./api/v1/tools/image/compress.post.summary:
sourceHash: a18573a37f49
provenance: machine
outputHash: e8fedf8f6e97
paths./api/v1/tools/image/compress.post.description:
sourceHash: 01f63e9e928a
provenance: machine
outputHash: 01549bece8b8
paths./api/v1/tools/image/strip-metadata.post.summary:
sourceHash: 1b49ff96cee6
provenance: machine
outputHash: 41b5c19430f5
paths./api/v1/tools/image/strip-metadata.post.description:
sourceHash: b5718bfd5335
provenance: machine
outputHash: fdc4a3d739f2
paths./api/v1/tools/image/border.post.summary:
sourceHash: 1d23e2771077
provenance: machine
outputHash: 06bad868483b
paths./api/v1/tools/image/border.post.description:
sourceHash: 6d48679c08cd
provenance: machine
outputHash: 93a0620c5b00
paths./api/v1/tools/image/beautify.post.summary:
sourceHash: 096b365107c5
provenance: machine
outputHash: f8b597a99a7e
paths./api/v1/tools/image/beautify.post.description:
sourceHash: 7db7fb58263f
provenance: machine
outputHash: 658f8ad4a967
paths./api/v1/tools/image/adjust-colors.post.summary:
sourceHash: a45b7d1e2535
provenance: machine
outputHash: 749a56543fe7
paths./api/v1/tools/image/adjust-colors.post.description:
sourceHash: 1fb36db32da7
provenance: machine
outputHash: 427d0c3e086b
paths./api/v1/tools/image/sharpening.post.summary:
sourceHash: d07b9f428bbf
provenance: machine
outputHash: 83f14218b71e
paths./api/v1/tools/image/sharpening.post.description:
sourceHash: 8080cda0610a
provenance: machine
outputHash: 883431d63bd0
paths./api/v1/tools/image/optimize-for-web.post.summary:
sourceHash: 54245d072fef
provenance: machine
outputHash: 98518d89dd2f
paths./api/v1/tools/image/optimize-for-web.post.description:
sourceHash: e846eaabbabc
provenance: machine
outputHash: d9f9b3050b55
paths./api/v1/tools/image/optimize-for-web/preview.post.summary:
sourceHash: f50e6149b56c
provenance: machine
outputHash: b1fdfcda40dc
paths./api/v1/tools/image/optimize-for-web/preview.post.description:
sourceHash: 10a427197f6e
provenance: machine
outputHash: 56a726fe9e56
paths./api/v1/tools/image/image-enhancement.post.summary:
sourceHash: 246a536c8207
provenance: machine
outputHash: ee3858796a05
paths./api/v1/tools/image/image-enhancement.post.description:
sourceHash: 17ec5e5e2b04
provenance: machine
outputHash: 99fe53b2b860
paths./api/v1/tools/image/image-enhancement/analyze.post.summary:
sourceHash: 2697cf8b079f
provenance: machine
outputHash: 702cfe304999
paths./api/v1/tools/image/image-enhancement/analyze.post.description:
sourceHash: 7712bfd40c3a
provenance: machine
outputHash: 8f35d82f5f66
paths./api/v1/tools/image/noise-removal.post.summary:
sourceHash: 9301fe47b563
provenance: machine
outputHash: 2809f811381a
paths./api/v1/tools/image/noise-removal.post.description:
sourceHash: e16aa743abcb
provenance: machine
outputHash: 231499aa1d85
paths./api/v1/tools/image/red-eye-removal.post.summary:
sourceHash: d9315c5a87b4
provenance: machine
outputHash: b775fec3f85e
paths./api/v1/tools/image/red-eye-removal.post.description:
sourceHash: 479c687988eb
provenance: machine
outputHash: c7a396f0939c
paths./api/v1/tools/image/restore-photo.post.summary:
sourceHash: 3ef425c0ba9b
provenance: machine
outputHash: a7b0282e0d45
paths./api/v1/tools/image/restore-photo.post.description:
sourceHash: 6e3b2de0372c
provenance: machine
outputHash: c1382481112e
paths./api/v1/tools/image/passport-photo/analyze.post.summary:
sourceHash: 0a3c3687ff5f
provenance: machine
outputHash: 299068c973af
paths./api/v1/tools/image/passport-photo/analyze.post.description:
sourceHash: 235c51cb497e
provenance: machine
outputHash: 2f7b7b1fb139
paths./api/v1/tools/image/passport-photo/generate.post.summary:
sourceHash: 029eecf0438e
provenance: machine
outputHash: c7270ff70c8c
paths./api/v1/tools/image/passport-photo/generate.post.description:
sourceHash: d0edd7c634d9
provenance: machine
outputHash: 178a2520cba0
paths./api/v1/tools/image/colorize.post.summary:
sourceHash: 34df56e96234
provenance: machine
outputHash: ea97e7e1ed6f
paths./api/v1/tools/image/colorize.post.description:
sourceHash: 04d7dc54396a
provenance: machine
outputHash: 6b81407f591e
paths./api/v1/tools/image/enhance-faces.post.summary:
sourceHash: 74f27131fec9
provenance: machine
outputHash: 8fa6e8d7e1f9
paths./api/v1/tools/image/enhance-faces.post.description:
sourceHash: beec2f7e8561
provenance: machine
outputHash: c8891b1d404d
paths./api/v1/tools/image/image-to-base64.post.summary:
sourceHash: 440737c09f0d
provenance: machine
outputHash: 440737c09f0d
paths./api/v1/tools/image/image-to-base64.post.description:
sourceHash: 02a80d960185
provenance: machine
outputHash: 7a186c4af97d
paths./api/v1/tools/image/watermark-text.post.summary:
sourceHash: dfef3d1052de
provenance: machine
outputHash: 96cd667be03b
paths./api/v1/tools/image/watermark-text.post.description:
sourceHash: 158e444c0a77
provenance: machine
outputHash: 4a68ca345cad
paths./api/v1/tools/image/text-overlay.post.summary:
sourceHash: 7311c0ffc340
provenance: machine
outputHash: 5641b73e0edc
paths./api/v1/tools/image/text-overlay.post.description:
sourceHash: e5dd74752a49
provenance: machine
outputHash: 022a13cdf084
paths./api/v1/tools/image/replace-color.post.summary:
sourceHash: 80e60e5fe0ed
provenance: machine
outputHash: c1d0804cf074
paths./api/v1/tools/image/replace-color.post.description:
sourceHash: cbafc4d168c3
provenance: machine
outputHash: d9f26dc4d805
paths./api/v1/tools/image/color-blindness.post.summary:
sourceHash: 1ab73f30893d
provenance: machine
outputHash: fcc2130f1085
paths./api/v1/tools/image/color-blindness.post.description:
sourceHash: 1e362d094237
provenance: machine
outputHash: 1acf7016b734
paths./api/v1/tools/image/gif-tools.post.summary:
sourceHash: 985d94d31548
provenance: machine
outputHash: 985d94d31548
paths./api/v1/tools/image/gif-tools.post.description:
sourceHash: fe7113c6fefd
provenance: machine
outputHash: 349c6dc63649
paths./api/v1/tools/image/gif-tools/info.post.summary:
sourceHash: e864c10b29f7
provenance: machine
outputHash: 2fa3752dacec
paths./api/v1/tools/image/gif-tools/info.post.description:
sourceHash: aaeba6b11dbf
provenance: machine
outputHash: cc184e37fdd2
paths./api/v1/tools/image/smart-crop.post.summary:
sourceHash: 890848540d35
provenance: machine
outputHash: 5131fb6c4520
paths./api/v1/tools/image/smart-crop.post.description:
sourceHash: 0f00f334ba29
provenance: machine
outputHash: 0da719170d96
paths./api/v1/tools/image/vectorize.post.summary:
sourceHash: ffa9db773ada
provenance: machine
outputHash: ffa9db773ada
paths./api/v1/tools/image/vectorize.post.description:
sourceHash: 3d5de38dc3f3
provenance: machine
outputHash: b09892faaa68
paths./api/v1/tools/image/svg-to-raster.post.summary:
sourceHash: bccef23ad06b
provenance: machine
outputHash: bccef23ad06b
paths./api/v1/tools/image/svg-to-raster.post.description:
sourceHash: 27a0b0dfe170
provenance: machine
outputHash: c37a5673b7d6
paths./api/v1/tools/image/svg-to-raster/batch.post.summary:
sourceHash: 340743c4e68b
provenance: machine
outputHash: 340743c4e68b
paths./api/v1/tools/image/svg-to-raster/batch.post.description:
sourceHash: a0069d315b7e
provenance: machine
outputHash: 7cfe1cd3d44f
paths./api/v1/tools/image/image-to-pdf.post.summary:
sourceHash: 966eba6e1412
provenance: machine
outputHash: 966eba6e1412
paths./api/v1/tools/image/image-to-pdf.post.description:
sourceHash: f5a0819f56f7
provenance: machine
outputHash: 308dd9d36fa0
paths./api/v1/tools/pdf/pdf-to-image.post.summary:
sourceHash: 4c3c2ae28b1f
provenance: machine
outputHash: 4c3c2ae28b1f
paths./api/v1/tools/pdf/pdf-to-image.post.description:
sourceHash: 4f0f5c643801
provenance: machine
outputHash: e5b67932423b
paths./api/v1/tools/pdf/pdf-to-image/info.post.summary:
sourceHash: d9398268b597
provenance: machine
outputHash: d8398f59cf9a
paths./api/v1/tools/pdf/pdf-to-image/info.post.description:
sourceHash: 9ace4aaa3978
provenance: machine
outputHash: 32b27f610fc8
paths./api/v1/tools/pdf/pdf-to-image/preview.post.summary:
sourceHash: 3bd369a401ba
provenance: machine
outputHash: cba6700192d5
paths./api/v1/tools/pdf/pdf-to-image/preview.post.description:
sourceHash: 90db92475b9a
provenance: machine
outputHash: e0bade9d4c65
paths./api/v1/tools/image/split.post.summary:
sourceHash: 6a45e35cf509
provenance: machine
outputHash: c2b0fc39ab15
paths./api/v1/tools/image/split.post.description:
sourceHash: d7d4988765b3
provenance: machine
outputHash: f51ca4eb8581
paths./api/v1/tools/image/bulk-rename.post.summary:
sourceHash: 5489fe2b69b0
provenance: machine
outputHash: 2188f8ff9515
paths./api/v1/tools/image/bulk-rename.post.description:
sourceHash: 093bf3688b13
provenance: machine
outputHash: 1d354dff1d47
paths./api/v1/tools/image/favicon.post.summary:
sourceHash: 7a587af97797
provenance: machine
outputHash: 835b6398c427
paths./api/v1/tools/image/favicon.post.description:
sourceHash: 5351a1c80471
provenance: machine
outputHash: 9e0fa696cd3f
paths./api/v1/tools/image/watermark-image.post.summary:
sourceHash: 577e5e431f77
provenance: machine
outputHash: 1de28d6ce030
paths./api/v1/tools/image/watermark-image.post.description:
sourceHash: 4e103b8a7d17
provenance: machine
outputHash: 77d869f92a14
paths./api/v1/tools/image/compose.post.summary:
sourceHash: 06718c2a3b98
provenance: machine
outputHash: 702c7d1bebc0
paths./api/v1/tools/image/compose.post.description:
sourceHash: d48d40e77edf
provenance: machine
outputHash: e3888fbeea0d
paths./api/v1/tools/image/meme-generator.post.summary:
sourceHash: a4e89614a5c1
provenance: machine
outputHash: 3d7306564fbb
paths./api/v1/tools/image/meme-generator.post.description:
sourceHash: 7aa04984be62
provenance: machine
outputHash: 1a8ecce2f8a6
paths./api/v1/meme-templates.get.summary:
sourceHash: fd3392277306
provenance: machine
outputHash: 81c34181969a
paths./api/v1/meme-templates.get.description:
sourceHash: a147e348597c
provenance: machine
outputHash: e67c5ff44292
paths./api/v1/meme-templates/full/{filename}.get.summary:
sourceHash: fd501704c913
provenance: machine
outputHash: e7f6acd2a987
paths./api/v1/meme-templates/full/{filename}.get.description:
sourceHash: 3bb962f4402c
provenance: machine
outputHash: 16b082f31259
paths./api/v1/meme-templates/thumbs/{filename}.get.summary:
sourceHash: d2102190f5a2
provenance: machine
outputHash: 73076e6f7c69
paths./api/v1/meme-templates/thumbs/{filename}.get.description:
sourceHash: 77c69805732d
provenance: machine
outputHash: a89f5fc38fe7
paths./api/v1/meme-templates/fonts/{filename}.get.summary:
sourceHash: 3627280f2609
provenance: machine
outputHash: 0b6d1aa895b9
paths./api/v1/meme-templates/fonts/{filename}.get.description:
sourceHash: 717c6764f472
provenance: machine
outputHash: 34ca7d7ffcb4
paths./api/v1/tools/image/compare.post.summary:
sourceHash: 46e3612ffee1
provenance: machine
outputHash: 01ad51f47729
paths./api/v1/tools/image/compare.post.description:
sourceHash: ac21fee13ecc
provenance: machine
outputHash: 07c7e893845d
paths./api/v1/tools/image/erase-object.post.summary:
sourceHash: 21f13ba2930d
provenance: machine
outputHash: bd6d0038fd6e
paths./api/v1/tools/image/erase-object.post.description:
sourceHash: 9d6614ed28c6
provenance: machine
outputHash: 72dc5e177592
paths./api/v1/tools/image/ai-canvas-expand.post.summary:
sourceHash: 990aeca723ff
provenance: machine
outputHash: 7ac3772fbb8d
paths./api/v1/tools/image/ai-canvas-expand.post.description:
sourceHash: 084de536af45
provenance: machine
outputHash: eea0731c9e30
paths./api/v1/tools/image/collage.post.summary:
sourceHash: 6e5e905e8c16
provenance: machine
outputHash: 2b4ccecc19e6
paths./api/v1/tools/image/collage.post.description:
sourceHash: fb0ba3d2cf44
provenance: machine
outputHash: bba96af0d2de
paths./api/v1/tools/image/stitch.post.summary:
sourceHash: d0e2b34fe22b
provenance: machine
outputHash: 009a4abcfd3d
paths./api/v1/tools/image/stitch.post.description:
sourceHash: 914837a5d232
provenance: machine
outputHash: f3385b1cc4c4
paths./api/v1/tools/image/remove-gif-background.post.summary:
sourceHash: a316267cf5d1
provenance: machine
outputHash: cf7d1350ac94
paths./api/v1/tools/image/remove-gif-background.post.description:
sourceHash: ef1d100f2345
provenance: machine
outputHash: 41787aa48bdc
paths./api/v1/tools/image/remove-background.post.summary:
sourceHash: a8d1ab54b32c
provenance: machine
outputHash: 9831149fa9c5
paths./api/v1/tools/image/remove-background.post.description:
sourceHash: 3bb193c0a2f9
provenance: machine
outputHash: 025ee2929583
paths./api/v1/tools/image/remove-background/effects.post.summary:
sourceHash: 2194d6947f3f
provenance: machine
outputHash: 166d21f31ad3
paths./api/v1/tools/image/remove-background/effects.post.description:
sourceHash: 1e2ab8e3b1ae
provenance: machine
outputHash: fb439272f9b1
paths./api/v1/tools/image/transparency-fixer.post.summary:
sourceHash: 0cf307cacb91
provenance: machine
outputHash: 6f35bc4717de
paths./api/v1/tools/image/transparency-fixer.post.description:
sourceHash: 67b2a3c1cb7b
provenance: machine
outputHash: 7e247e2ea68d
paths./api/v1/tools/image/upscale.post.summary:
sourceHash: ce44856d9e64
provenance: machine
outputHash: 297a60317d72
paths./api/v1/tools/image/upscale.post.description:
sourceHash: e603db60e711
provenance: machine
outputHash: 783ab886531b
paths./api/v1/tools/image/blur-faces.post.summary:
sourceHash: d9a7e1d9a145
provenance: machine
outputHash: 525f33cc2dc4
paths./api/v1/tools/image/blur-faces.post.description:
sourceHash: 28790ae08ac7
provenance: machine
outputHash: 02ce08fcf3c0
paths./api/v1/tools/image/ocr.post.summary:
sourceHash: 0b508f19963b
provenance: machine
outputHash: ec33b69b7a16
paths./api/v1/tools/image/ocr.post.description:
sourceHash: 7b74b30329a5
provenance: machine
outputHash: 22669457be65
paths./api/v1/tools/image/info.post.summary:
sourceHash: 1823e118aed5
provenance: machine
outputHash: 46d1f81de031
paths./api/v1/tools/image/info.post.description:
sourceHash: 196d7190f16c
provenance: machine
outputHash: c92202a43740
paths./api/v1/tools/image/color-palette.post.summary:
sourceHash: 81a9be1a8044
provenance: machine
outputHash: ead340514d98
paths./api/v1/tools/image/color-palette.post.description:
sourceHash: d34d5ff2ade7
provenance: machine
outputHash: 43456b63d355
paths./api/v1/tools/image/barcode-read.post.summary:
sourceHash: b51dcac65420
provenance: machine
outputHash: 91dd75a8cd43
paths./api/v1/tools/image/barcode-read.post.description:
sourceHash: ae952218a233
provenance: machine
outputHash: 031401ba2f1a
paths./api/v1/tools/image/find-duplicates.post.summary:
sourceHash: bd6e5d3e4d26
provenance: machine
outputHash: a28638c42bb8
paths./api/v1/tools/image/find-duplicates.post.description:
sourceHash: 61322792b4bd
provenance: machine
outputHash: c2fe51f6a6c9
paths./api/v1/tools/image/qr-generate.post.summary:
sourceHash: 799653bb4ee1
provenance: machine
outputHash: ccd20d230115
paths./api/v1/tools/image/qr-generate.post.description:
sourceHash: ad4154c7b555
provenance: machine
outputHash: a660861dcb7c
paths./api/v1/tools/image/html-to-image.post.summary:
sourceHash: d4dcd8d52cfd
provenance: machine
outputHash: 8b3729b69a3a
paths./api/v1/tools/image/html-to-image.post.description:
sourceHash: adb3e27eb0e6
provenance: machine
outputHash: ec800aa7b484
paths./api/v1/tools/image/strip-metadata/inspect.post.summary:
sourceHash: 26c48e56ad62
provenance: machine
outputHash: 48aa70fd467a
paths./api/v1/tools/image/strip-metadata/inspect.post.description:
sourceHash: a6a7d5c72088
provenance: machine
outputHash: 254f71c3eb6a
paths./api/v1/tools/image/edit-metadata.post.summary:
sourceHash: b2e22f0aa9d8
provenance: machine
outputHash: 97604b84efb4
paths./api/v1/tools/image/edit-metadata.post.description:
sourceHash: 70d277ec5566
provenance: machine
outputHash: 1e90d10bdc20
paths./api/v1/tools/image/edit-metadata/inspect.post.summary:
sourceHash: a9b31ad7470f
provenance: machine
outputHash: 6cfa72be8d51
paths./api/v1/tools/image/edit-metadata/inspect.post.description:
sourceHash: 71173fd89d89
provenance: machine
outputHash: ea67ac6d061a
paths./api/v1/tools/{section}/{toolId}/batch.post.summary:
sourceHash: c48b2b0a9212
provenance: machine
outputHash: 1dd9d448ece8
paths./api/v1/tools/{section}/{toolId}/batch.post.description:
sourceHash: e2ddfe55094d
provenance: machine
outputHash: 71cf5fa0ce4b
paths./api/v1/pipeline/execute.post.summary:
sourceHash: 6357b47fa7a9
provenance: machine
outputHash: 52be75afd358
paths./api/v1/pipeline/execute.post.description:
sourceHash: ca3c9eb4acf1
provenance: machine
outputHash: 614b02905c9c
paths./api/v1/pipeline/save.post.summary:
sourceHash: 8209ec3e0c9b
provenance: machine
outputHash: 347cab0978aa
paths./api/v1/pipeline/save.post.description:
sourceHash: a904ab4f3701
provenance: machine
outputHash: 6497745fc8ef
paths./api/v1/pipeline/list.get.summary:
sourceHash: c8d290eff4a7
provenance: machine
outputHash: 041beb47ab45
paths./api/v1/pipeline/list.get.description:
sourceHash: d11170073568
provenance: machine
outputHash: 86d50828854f
paths./api/v1/pipeline/{id}.delete.summary:
sourceHash: 0a798831c1be
provenance: machine
outputHash: 1d82c502b6fa
paths./api/v1/pipeline/{id}.delete.description:
sourceHash: e3b43bf6d73d
provenance: machine
outputHash: 1f7b2c19ad09
paths./api/v1/pipeline/tools.get.summary:
sourceHash: 79f28e6075f7
provenance: machine
outputHash: 58a067be9960
paths./api/v1/pipeline/tools.get.description:
sourceHash: 6f341cc670d3
provenance: machine
outputHash: 5f83e2a28665
paths./api/v1/pipeline/batch.post.summary:
sourceHash: 14abb819b562
provenance: machine
outputHash: 9f1fc5b5451f
paths./api/v1/pipeline/batch.post.description:
sourceHash: 0c7b90acb5d8
provenance: machine
outputHash: 16d1ca27cdb5
paths./api/v1/upload.post.summary:
sourceHash: 25d0eba68bdc
provenance: machine
outputHash: 9cf4af22f996
paths./api/v1/upload.post.description:
sourceHash: a9e18800407e
provenance: machine
outputHash: 2edde35d4b60
paths./api/v1/download/{jobId}/{filename}.get.summary:
sourceHash: 6246d8c07e4b
provenance: machine
outputHash: 4462ce0f3585
paths./api/v1/download/{jobId}/{filename}.get.description:
sourceHash: a09d603b069c
provenance: machine
outputHash: bcb512ed7314
paths./api/v1/preview.post.summary:
sourceHash: 8266fbd3ff72
provenance: machine
outputHash: 73b69c1cbe63
paths./api/v1/preview.post.description:
sourceHash: d5e04d49c594
provenance: machine
outputHash: 7838b336f290
paths./api/v1/files.get.summary:
sourceHash: aefb51ff8aaa
provenance: machine
outputHash: d6a15bf82950
paths./api/v1/files.get.description:
sourceHash: 45f45ad625ed
provenance: machine
outputHash: aa57c69afdab
paths./api/v1/files.delete.summary:
sourceHash: 179bb72a6deb
provenance: machine
outputHash: 741ae5ab08c1
paths./api/v1/files.delete.description:
sourceHash: 1bfaa5c376bb
provenance: machine
outputHash: db8e5f290798
paths./api/v1/files/upload.post.summary:
sourceHash: b94c597782ee
provenance: machine
outputHash: '733067327173'
paths./api/v1/files/upload.post.description:
sourceHash: 8a070581c1e5
provenance: machine
outputHash: 1f884bc8dcf2
paths./api/v1/files/save-result.post.summary:
sourceHash: c35e320d9164
provenance: machine
outputHash: 2e33fe402fff
paths./api/v1/files/save-result.post.description:
sourceHash: 3c434713031e
provenance: machine
outputHash: 9339a8918e7e
paths./api/v1/files/{id}.get.summary:
sourceHash: a09c1fb7e33a
provenance: machine
outputHash: 4edf99b7c794
paths./api/v1/files/{id}.get.description:
sourceHash: 8193066e23c5
provenance: machine
outputHash: 1d30cba4d1eb
paths./api/v1/files/{id}/download.get.summary:
sourceHash: c0043bd46394
provenance: machine
outputHash: 7b284debf93a
paths./api/v1/files/{id}/download.get.description:
sourceHash: 96df2a599e22
provenance: machine
outputHash: 7aa67e734d9a
paths./api/v1/files/{id}/thumbnail.get.summary:
sourceHash: 07714ad0c5f8
provenance: machine
outputHash: 5d7c42ffa3ee
paths./api/v1/files/{id}/thumbnail.get.description:
sourceHash: 9b04bbf75cba
provenance: machine
outputHash: 437ac82a24c5
paths./api/v1/fetch-urls.post.summary:
sourceHash: a00341e59161
provenance: machine
outputHash: cfa51782b8fd
paths./api/v1/fetch-urls.post.description:
sourceHash: ac474639261c
provenance: machine
outputHash: 5457e8f09c74
paths./api/v1/config/locale.get.summary:
sourceHash: 78de2255222d
provenance: machine
outputHash: e4da58d804d3
paths./api/v1/config/locale.get.description:
sourceHash: b9967e400d09
provenance: machine
outputHash: 9da985970506
paths./api/auth/login.post.summary:
sourceHash: c189840cf7e2
provenance: machine
outputHash: 6d19e795e22a
paths./api/auth/login.post.description:
sourceHash: 91ad9a828bf3
provenance: machine
outputHash: 8a0ee3c702d7
paths./api/auth/logout.post.summary:
sourceHash: 49616145514e
provenance: machine
outputHash: 119f6cee8ede
paths./api/auth/logout.post.description:
sourceHash: 0b9ae300808d
provenance: machine
outputHash: b5bba72ce730
paths./api/auth/session.get.summary:
sourceHash: f4f7376ca1ea
provenance: machine
outputHash: 145ff14781d3
paths./api/auth/session.get.description:
sourceHash: 2dad822c46ea
provenance: machine
outputHash: 8fdfd981a6bd
paths./api/auth/change-password.post.summary:
sourceHash: 3f9c991f63a9
provenance: machine
outputHash: 86961805986c
paths./api/auth/change-password.post.description:
sourceHash: 5190db8a04e7
provenance: machine
outputHash: 7ab55c1fc4da
paths./api/auth/users.get.summary:
sourceHash: '9029730603e0'
provenance: machine
outputHash: 83db7d55ae82
paths./api/auth/users.get.description:
sourceHash: 34d5a11733bd
provenance: machine
outputHash: ca30c0150768
paths./api/auth/register.post.summary:
sourceHash: f06da128c342
provenance: machine
outputHash: ee4fc9fef8a4
paths./api/auth/users/{id}.put.summary:
sourceHash: 602b8b1607b0
provenance: machine
outputHash: a80d88e0b5d2
paths./api/auth/users/{id}.delete.summary:
sourceHash: 58363fd94240
provenance: machine
outputHash: 83e2cc37a32d
paths./api/auth/users/{id}/reset-password.post.summary:
sourceHash: aae899c2d3ad
provenance: machine
outputHash: b42e554ee28d
paths./api/v1/api-keys.get.summary:
sourceHash: ad0527749f03
provenance: machine
outputHash: 3c2e0abf4f77
paths./api/v1/api-keys.get.description:
sourceHash: 470cee6220f0
provenance: machine
outputHash: 393fdffd1a7c
paths./api/v1/api-keys.post.summary:
sourceHash: eb136082215a
provenance: machine
outputHash: eb6dc930f22e
paths./api/v1/api-keys.post.description:
sourceHash: 7568aec4ab9b
provenance: machine
outputHash: 6baddb6dc532
paths./api/v1/api-keys/{id}.delete.summary:
sourceHash: 9ebde15b7f02
provenance: machine
outputHash: 7f65d798521b
paths./api/v1/api-keys/{id}.delete.description:
sourceHash: 46a57dbc68a5
provenance: machine
outputHash: f9680e957534
paths./api/v1/settings.get.summary:
sourceHash: 8530e17de153
provenance: machine
outputHash: c6fdce15d344
paths./api/v1/settings.get.description:
sourceHash: 57a4d7da3780
provenance: human
outputHash: 970c5299cc14
paths./api/v1/settings.put.summary:
sourceHash: 46ed69579c39
provenance: machine
outputHash: 072888ed4abc
paths./api/v1/settings.put.description:
sourceHash: 0ad5adfe3216
provenance: human
outputHash: aab6513a2028
paths./api/v1/settings/{key}.get.summary:
sourceHash: 186add054525
provenance: machine
outputHash: 4dde6655440e
paths./api/v1/settings/{key}.get.description:
sourceHash: ffbf8af128f0
provenance: human
outputHash: b6fec86f5f9e
paths./api/v1/teams.get.summary:
sourceHash: 863546c57b78
provenance: machine
outputHash: 40ff24b770d1
paths./api/v1/teams.get.description:
sourceHash: 88ce5170c6ed
provenance: machine
outputHash: 1031650c67de
paths./api/v1/teams.post.summary:
sourceHash: 00766ad4b096
provenance: machine
outputHash: 3ec3e0ef4035
paths./api/v1/teams.post.description:
sourceHash: 88ce5170c6ed
provenance: machine
outputHash: 1031650c67de
paths./api/v1/teams/{id}.put.summary:
sourceHash: c5dd33827a5b
provenance: machine
outputHash: 66ac0c31460d
paths./api/v1/teams/{id}.put.description:
sourceHash: 88ce5170c6ed
provenance: machine
outputHash: 1031650c67de
paths./api/v1/teams/{id}.delete.summary:
sourceHash: b51488367ba6
provenance: machine
outputHash: e00bc25760fe
paths./api/v1/teams/{id}.delete.description:
sourceHash: 88ce5170c6ed
provenance: machine
outputHash: 1031650c67de
paths./api/v1/config/auth.get.summary:
sourceHash: 13189298880a
provenance: machine
outputHash: 13189298880a
paths./api/v1/config/auth.get.description:
sourceHash: 404909083a24
provenance: machine
outputHash: de8bf378259a
paths./api/v1/jobs/{jobId}/progress.get.summary:
sourceHash: bcf19846aa43
provenance: machine
outputHash: 01ebf40a4868
paths./api/v1/jobs/{jobId}/progress.get.description:
sourceHash: 2df913c75d85
provenance: human
outputHash: 4fb6dcbff064
paths./api/v1/admin/health.get.summary:
sourceHash: 92f8575c9c94
provenance: machine
outputHash: ee07af770058
paths./api/v1/admin/health.get.description:
sourceHash: 4abbba893ea4
provenance: machine
outputHash: 6d54837ec00c
paths./api/v1/config/analytics.get.summary:
sourceHash: b7fdcf112830
provenance: machine
outputHash: 31eed73fca2e
paths./api/v1/config/analytics.get.description:
sourceHash: 2447c239373f
provenance: machine
outputHash: ffd67c0825da
paths./api/v1/features.get.summary:
sourceHash: e45ee3163f96
provenance: machine
outputHash: 68dec6bce163
paths./api/v1/features.get.description:
sourceHash: aa0b433ca9a9
provenance: machine
outputHash: 0f91db19ca62
paths./api/v1/admin/features/{bundleId}/install.post.summary:
sourceHash: bebc6f7ea7c3
provenance: machine
outputHash: d68ee36d3af2
paths./api/v1/admin/features/{bundleId}/install.post.description:
sourceHash: 6051af19be7e
provenance: machine
outputHash: 95d79a5eff08
paths./api/v1/admin/features/{bundleId}/uninstall.post.summary:
sourceHash: 160eaf179d4f
provenance: machine
outputHash: 390d1d713f51
paths./api/v1/admin/features/{bundleId}/uninstall.post.description:
sourceHash: 35bdb459a1a7
provenance: machine
outputHash: 4b64d0d0ad2c
paths./api/v1/admin/features/disk-usage.get.summary:
sourceHash: 54dc8991b9a7
provenance: machine
outputHash: 8604fc575f75
paths./api/v1/admin/features/disk-usage.get.description:
sourceHash: a78fac026ea3
provenance: machine
outputHash: d3b2fd722d81
paths./api/v1/audit-log.get.summary:
sourceHash: 05536545727c
provenance: machine
outputHash: 5190b46de074
paths./api/v1/audit-log.get.description:
sourceHash: b7950dcf7e49
provenance: machine
outputHash: 4dbe977755fd
paths./api/v1/roles.get.summary:
sourceHash: 833a75e86b93
provenance: machine
outputHash: 473042f065ff
paths./api/v1/roles.get.description:
sourceHash: 9ccdec8630d3
provenance: machine
outputHash: 246b89bd155d
paths./api/v1/roles.post.summary:
sourceHash: 6dd06b2529d4
provenance: machine
outputHash: 20b639a2c3dc
paths./api/v1/roles/{id}.put.summary:
sourceHash: 6c0cda1bc967
provenance: machine
outputHash: f823846ad3b6
paths./api/v1/roles/{id}.delete.summary:
sourceHash: d5a3ab01055a
provenance: machine
outputHash: f038a74fc497
paths./api/v1/tools/video/convert-video.post.summary:
sourceHash: b4defe1d6906
provenance: machine
outputHash: b4defe1d6906
paths./api/v1/tools/video/convert-video.post.description:
sourceHash: 00ab19fbffe4
provenance: machine
outputHash: 22b984df61fe
paths./api/v1/tools/video/compress-video.post.summary:
sourceHash: 8af3d4b27a4b
provenance: machine
outputHash: 8af3d4b27a4b
paths./api/v1/tools/video/compress-video.post.description:
sourceHash: 7f517e885483
provenance: machine
outputHash: fb45417f85b6
paths./api/v1/tools/video/trim-video.post.summary:
sourceHash: af6ed946e090
provenance: machine
outputHash: af6ed946e090
paths./api/v1/tools/video/trim-video.post.description:
sourceHash: c01dd24a19dd
provenance: machine
outputHash: 34ddcacb44d3
paths./api/v1/tools/video/mute-video.post.summary:
sourceHash: 48ed61cb4802
provenance: machine
outputHash: 48ed61cb4802
paths./api/v1/tools/video/mute-video.post.description:
sourceHash: 76898fc22f53
provenance: machine
outputHash: 312a673406dd
paths./api/v1/tools/video/video-to-gif.post.summary:
sourceHash: 4abd5ab74c35
provenance: machine
outputHash: 4abd5ab74c35
paths./api/v1/tools/video/video-to-gif.post.description:
sourceHash: d2d195459149
provenance: machine
outputHash: 5309e806f6ed
paths./api/v1/tools/video/resize-video.post.summary:
sourceHash: 99fde7cc129d
provenance: machine
outputHash: 99fde7cc129d
paths./api/v1/tools/video/resize-video.post.description:
sourceHash: ffe090ccf55b
provenance: machine
outputHash: c5573c3680a7
paths./api/v1/tools/video/crop-video.post.summary:
sourceHash: f042b21b17c0
provenance: machine
outputHash: f042b21b17c0
paths./api/v1/tools/video/crop-video.post.description:
sourceHash: a70528f0d600
provenance: machine
outputHash: 4339a8dbaf4d
paths./api/v1/tools/video/rotate-video.post.summary:
sourceHash: a1d5d2488fd5
provenance: machine
outputHash: a1d5d2488fd5
paths./api/v1/tools/video/rotate-video.post.description:
sourceHash: 0858085b737b
provenance: machine
outputHash: 479720c92aaa
paths./api/v1/tools/video/change-fps.post.summary:
sourceHash: bc48dbea9413
provenance: machine
outputHash: bc48dbea9413
paths./api/v1/tools/video/change-fps.post.description:
sourceHash: 20c9ae3f7c23
provenance: machine
outputHash: 329bbd56b2e2
paths./api/v1/tools/video/video-color.post.summary:
sourceHash: 6005cc99c426
provenance: machine
outputHash: 6005cc99c426
paths./api/v1/tools/video/video-color.post.description:
sourceHash: f8ce7dae4f04
provenance: machine
outputHash: d1383ec8bea8
paths./api/v1/tools/video/video-speed.post.summary:
sourceHash: 4439901f7d61
provenance: machine
outputHash: 4439901f7d61
paths./api/v1/tools/video/video-speed.post.description:
sourceHash: 7a4b64e60829
provenance: machine
outputHash: 957893db8485
paths./api/v1/tools/video/reverse-video.post.summary:
sourceHash: 4f0d7b5ea9ae
provenance: machine
outputHash: 4f0d7b5ea9ae
paths./api/v1/tools/video/reverse-video.post.description:
sourceHash: 77abcb48d823
provenance: machine
outputHash: 72ccf1d6d787
paths./api/v1/tools/video/video-loudnorm.post.summary:
sourceHash: e502f3536632
provenance: machine
outputHash: 33c8d84d4122
paths./api/v1/tools/video/video-loudnorm.post.description:
sourceHash: 019f6147f722
provenance: machine
outputHash: baaf441e5364
paths./api/v1/tools/video/aspect-pad.post.summary:
sourceHash: aa7c02eeacf1
provenance: machine
outputHash: aa7c02eeacf1
paths./api/v1/tools/video/aspect-pad.post.description:
sourceHash: 288b33cc62de
provenance: machine
outputHash: f6172fa75baf
paths./api/v1/tools/video/blur-pad.post.summary:
sourceHash: 84af9c217d52
provenance: machine
outputHash: 84af9c217d52
paths./api/v1/tools/video/blur-pad.post.description:
sourceHash: d49a3fab5e02
provenance: machine
outputHash: 21b22c2c090f
paths./api/v1/tools/video/watermark-video.post.summary:
sourceHash: bbbe197c46c5
provenance: machine
outputHash: bbbe197c46c5
paths./api/v1/tools/video/watermark-video.post.description:
sourceHash: d914078985d7
provenance: machine
outputHash: 3602c71cf05a
paths./api/v1/tools/video/stabilize-video.post.summary:
sourceHash: f76615a74aac
provenance: machine
outputHash: f76615a74aac
paths./api/v1/tools/video/stabilize-video.post.description:
sourceHash: 42e5e8a954ae
provenance: machine
outputHash: 60ac855cf2ad
paths./api/v1/tools/video/gif-to-video.post.summary:
sourceHash: 766d5d54badb
provenance: machine
outputHash: 766d5d54badb
paths./api/v1/tools/video/gif-to-video.post.description:
sourceHash: 22a13cbfe672
provenance: machine
outputHash: f0f11afe9fe0
paths./api/v1/tools/video/video-to-webp.post.summary:
sourceHash: 0c4028ecac61
provenance: machine
outputHash: 0c4028ecac61
paths./api/v1/tools/video/video-to-webp.post.description:
sourceHash: 48fa0306cbe8
provenance: machine
outputHash: 4152e2cc5aca
paths./api/v1/tools/video/video-to-frames.post.summary:
sourceHash: 8941a5926866
provenance: machine
outputHash: 8941a5926866
paths./api/v1/tools/video/video-to-frames.post.description:
sourceHash: 907e19fcf6a2
provenance: machine
outputHash: fbcb3799bdd2
paths./api/v1/tools/video/merge-videos.post.summary:
sourceHash: afbd2e62e1dd
provenance: machine
outputHash: afbd2e62e1dd
paths./api/v1/tools/video/merge-videos.post.description:
sourceHash: 30e77c05314f
provenance: machine
outputHash: 7c33a6df8fb2
paths./api/v1/tools/video/replace-audio.post.summary:
sourceHash: 0cd096774105
provenance: machine
outputHash: 0cd096774105
paths./api/v1/tools/video/replace-audio.post.description:
sourceHash: f9aef92c2ad2
provenance: machine
outputHash: 1b091fb4900d
paths./api/v1/tools/video/burn-subtitles.post.summary:
sourceHash: 53e23068613b
provenance: machine
outputHash: 53e23068613b
paths./api/v1/tools/video/burn-subtitles.post.description:
sourceHash: a501f3253970
provenance: machine
outputHash: 16865fc19aac
paths./api/v1/tools/video/embed-subtitles.post.summary:
sourceHash: 55a0c6104e9e
provenance: machine
outputHash: 55a0c6104e9e
paths./api/v1/tools/video/embed-subtitles.post.description:
sourceHash: 9ed219a50b61
provenance: machine
outputHash: 865ff6389a7b
paths./api/v1/tools/video/extract-subtitles.post.summary:
sourceHash: 0ae3dd9f7012
provenance: machine
outputHash: 0ae3dd9f7012
paths./api/v1/tools/video/extract-subtitles.post.description:
sourceHash: 4daf70632777
provenance: machine
outputHash: 7616ade2b457
paths./api/v1/tools/video/images-to-video.post.summary:
sourceHash: feb4b6d19902
provenance: machine
outputHash: feb4b6d19902
paths./api/v1/tools/video/images-to-video.post.description:
sourceHash: c7ec30bbfec8
provenance: machine
outputHash: 26f5c4730a52
paths./api/v1/tools/video/video-metadata.post.summary:
sourceHash: f2902a6112ff
provenance: machine
outputHash: f2902a6112ff
paths./api/v1/tools/video/video-metadata.post.description:
sourceHash: 25b0eb0d1f64
provenance: machine
outputHash: 18b0334db05f
paths./api/v1/tools/video/auto-subtitles.post.summary:
sourceHash: 61b5c42d8cd0
provenance: machine
outputHash: 61b5c42d8cd0
paths./api/v1/tools/video/auto-subtitles.post.description:
sourceHash: fe628b19b3dc
provenance: machine
outputHash: 772e6d6c7434
paths./api/v1/tools/video/extract-audio.post.summary:
sourceHash: ad7f2c51f215
provenance: machine
outputHash: ad7f2c51f215
paths./api/v1/tools/video/extract-audio.post.description:
sourceHash: 97425b1da99f
provenance: machine
outputHash: 183a1198e213
paths./api/v1/tools/audio/convert-audio.post.summary:
sourceHash: 295e4a5939e1
provenance: machine
outputHash: 295e4a5939e1
paths./api/v1/tools/audio/convert-audio.post.description:
sourceHash: db7c32326757
provenance: machine
outputHash: 797539eb5fc5
paths./api/v1/tools/audio/trim-audio.post.summary:
sourceHash: 6fdc83d79136
provenance: machine
outputHash: 6fdc83d79136
paths./api/v1/tools/audio/trim-audio.post.description:
sourceHash: 1150da04e398
provenance: machine
outputHash: a87649c1ff4c
paths./api/v1/tools/audio/volume-adjust.post.summary:
sourceHash: 04257764f127
provenance: machine
outputHash: e641de4d3102
paths./api/v1/tools/audio/volume-adjust.post.description:
sourceHash: 18308a469600
provenance: machine
outputHash: 3725fba4ee1a
paths./api/v1/tools/audio/normalize-audio.post.summary:
sourceHash: f5298327c322
provenance: machine
outputHash: f5298327c322
paths./api/v1/tools/audio/normalize-audio.post.description:
sourceHash: d9993db45ccb
provenance: machine
outputHash: b6e9465cb731
paths./api/v1/tools/audio/fade-audio.post.summary:
sourceHash: fc7e035a63d5
provenance: machine
outputHash: fc7e035a63d5
paths./api/v1/tools/audio/fade-audio.post.description:
sourceHash: a85ba1a120e5
provenance: machine
outputHash: 684833613c30
paths./api/v1/tools/audio/reverse-audio.post.summary:
sourceHash: b2eddae3a717
provenance: machine
outputHash: b2eddae3a717
paths./api/v1/tools/audio/reverse-audio.post.description:
sourceHash: 218f9b33f5eb
provenance: machine
outputHash: 59a06fa5ba97
paths./api/v1/tools/audio/audio-speed.post.summary:
sourceHash: aee2a47692bd
provenance: machine
outputHash: aee2a47692bd
paths./api/v1/tools/audio/audio-speed.post.description:
sourceHash: 51fe7745adbd
provenance: machine
outputHash: 2830bf1dad87
paths./api/v1/tools/audio/pitch-shift.post.summary:
sourceHash: b26d4482b076
provenance: machine
outputHash: b26d4482b076
paths./api/v1/tools/audio/pitch-shift.post.description:
sourceHash: 04cf48eca03e
provenance: machine
outputHash: 80469464a1bd
paths./api/v1/tools/audio/audio-channels.post.summary:
sourceHash: 409c74651939
provenance: machine
outputHash: 409c74651939
paths./api/v1/tools/audio/audio-channels.post.description:
sourceHash: 0974271a6730
provenance: machine
outputHash: 5ba3c3c917ef
paths./api/v1/tools/audio/silence-removal.post.summary:
sourceHash: dc27812cd572
provenance: machine
outputHash: dc27812cd572
paths./api/v1/tools/audio/silence-removal.post.description:
sourceHash: 29d4e890a62d
provenance: machine
outputHash: 8879fed98cc4
paths./api/v1/tools/audio/noise-reduction.post.summary:
sourceHash: 0bcf30a006cb
provenance: machine
outputHash: 0bcf30a006cb
paths./api/v1/tools/audio/noise-reduction.post.description:
sourceHash: 032c91b97641
provenance: machine
outputHash: f0c15668d53f
paths./api/v1/tools/audio/merge-audio.post.summary:
sourceHash: 780965910dff
provenance: machine
outputHash: 780965910dff
paths./api/v1/tools/audio/merge-audio.post.description:
sourceHash: 1397edf49056
provenance: machine
outputHash: 6ffa953cb5e4
paths./api/v1/tools/audio/split-audio.post.summary:
sourceHash: e59c513c0ba2
provenance: machine
outputHash: e59c513c0ba2
paths./api/v1/tools/audio/split-audio.post.description:
sourceHash: 763e0458c032
provenance: machine
outputHash: a28c6b7b369a
paths./api/v1/tools/audio/ringtone-maker.post.summary:
sourceHash: f0e142322ff9
provenance: machine
outputHash: f0e142322ff9
paths./api/v1/tools/audio/ringtone-maker.post.description:
sourceHash: c301dcbbedc1
provenance: machine
outputHash: 9d3ea345e501
paths./api/v1/tools/audio/waveform-image.post.summary:
sourceHash: 0e373ca45197
provenance: machine
outputHash: 0e373ca45197
paths./api/v1/tools/audio/waveform-image.post.description:
sourceHash: 70f63b279b5d
provenance: machine
outputHash: f19de4964d6c
paths./api/v1/tools/audio/audio-metadata.post.summary:
sourceHash: 55d1a5a0e65d
provenance: machine
outputHash: 55d1a5a0e65d
paths./api/v1/tools/audio/audio-metadata.post.description:
sourceHash: 5c799135421c
provenance: machine
outputHash: d73fd6083be4
paths./api/v1/tools/audio/transcribe-audio.post.summary:
sourceHash: a723c84c3ab0
provenance: machine
outputHash: a723c84c3ab0
paths./api/v1/tools/audio/transcribe-audio.post.description:
sourceHash: 2967ad141d14
provenance: machine
outputHash: 0be12b6be19d
paths./api/v1/tools/pdf/merge-pdf.post.summary:
sourceHash: 43d1539b7596
provenance: machine
outputHash: 43d1539b7596
paths./api/v1/tools/pdf/merge-pdf.post.description:
sourceHash: 728388cddb8a
provenance: machine
outputHash: 75bdefcbccaf
paths./api/v1/tools/pdf/split-pdf.post.summary:
sourceHash: 4f1b846cb144
provenance: machine
outputHash: 4f1b846cb144
paths./api/v1/tools/pdf/split-pdf.post.description:
sourceHash: fbe9d9c35006
provenance: machine
outputHash: 9ce14f22112e
paths./api/v1/tools/pdf/compress-pdf.post.summary:
sourceHash: 932c3c48a4de
provenance: machine
outputHash: 932c3c48a4de
paths./api/v1/tools/pdf/compress-pdf.post.description:
sourceHash: 89f23fb6b3c8
provenance: machine
outputHash: 9dab1f5d541a
paths./api/v1/tools/pdf/rotate-pdf.post.summary:
sourceHash: 1eccabbce838
provenance: machine
outputHash: 1eccabbce838
paths./api/v1/tools/pdf/rotate-pdf.post.description:
sourceHash: 7c561cc7ed48
provenance: machine
outputHash: 418e61b49f39
paths./api/v1/tools/pdf/extract-pages.post.summary:
sourceHash: 0247b9f3e6cf
provenance: machine
outputHash: 4ac4d71783c9
paths./api/v1/tools/pdf/extract-pages.post.description:
sourceHash: c07eea0c017f
provenance: machine
outputHash: 6c135a4743a0
paths./api/v1/tools/pdf/remove-pages.post.summary:
sourceHash: 670a5909f883
provenance: machine
outputHash: b55d3f3001e4
paths./api/v1/tools/pdf/remove-pages.post.description:
sourceHash: 6231b16e7bea
provenance: machine
outputHash: 0cfd17a396b4
paths./api/v1/tools/pdf/organize-pdf.post.summary:
sourceHash: d5a641ebd93a
provenance: machine
outputHash: d5a641ebd93a
paths./api/v1/tools/pdf/organize-pdf.post.description:
sourceHash: ac32f48665e7
provenance: machine
outputHash: 3d316fd1c7e6
paths./api/v1/tools/pdf/protect-pdf.post.summary:
sourceHash: dae6c607e963
provenance: machine
outputHash: dae6c607e963
paths./api/v1/tools/pdf/protect-pdf.post.description:
sourceHash: 600a3be47970
provenance: machine
outputHash: 8a509ed5594f
paths./api/v1/tools/pdf/unlock-pdf.post.summary:
sourceHash: 893947d82ded
provenance: machine
outputHash: 893947d82ded
paths./api/v1/tools/pdf/unlock-pdf.post.description:
sourceHash: 1d199055f386
provenance: machine
outputHash: f5fb34a02e44
paths./api/v1/tools/pdf/repair-pdf.post.summary:
sourceHash: 43faa052d4cf
provenance: machine
outputHash: 43faa052d4cf
paths./api/v1/tools/pdf/repair-pdf.post.description:
sourceHash: 77f71d364df4
provenance: machine
outputHash: 3f7f942761cd
paths./api/v1/tools/pdf/linearize-pdf.post.summary:
sourceHash: 75fa522e3fe3
provenance: machine
outputHash: 75fa522e3fe3
paths./api/v1/tools/pdf/linearize-pdf.post.description:
sourceHash: 200f45aa4a91
provenance: machine
outputHash: f0ad570e59f3
paths./api/v1/tools/pdf/grayscale-pdf.post.summary:
sourceHash: 58b0007c3425
provenance: machine
outputHash: 58b0007c3425
paths./api/v1/tools/pdf/grayscale-pdf.post.description:
sourceHash: 7b7e2b4857e6
provenance: machine
outputHash: 7e0ba9bca4d1
paths./api/v1/tools/pdf/pdfa-convert.post.summary:
sourceHash: 9971b16fe624
provenance: machine
outputHash: 63501b30d118
paths./api/v1/tools/pdf/pdfa-convert.post.description:
sourceHash: 3c8ad47aa904
provenance: machine
outputHash: 1f101f90f59e
paths./api/v1/tools/pdf/crop-pdf.post.summary:
sourceHash: dc4bdbce825f
provenance: machine
outputHash: dc4bdbce825f
paths./api/v1/tools/pdf/crop-pdf.post.description:
sourceHash: 94eb9575aecc
provenance: machine
outputHash: 71df7859b9ab
paths./api/v1/tools/pdf/nup-pdf.post.summary:
sourceHash: dac1b895452a
provenance: machine
outputHash: 9194761c0b12
paths./api/v1/tools/pdf/nup-pdf.post.description:
sourceHash: 5e2a264dafb0
provenance: machine
outputHash: 2ad05c051bd8
paths./api/v1/tools/pdf/booklet-pdf.post.summary:
sourceHash: a1fdff0bc065
provenance: machine
outputHash: a1fdff0bc065
paths./api/v1/tools/pdf/booklet-pdf.post.description:
sourceHash: 0ce5f88843c3
provenance: machine
outputHash: 00ea762774d4
paths./api/v1/tools/pdf/watermark-pdf.post.summary:
sourceHash: 903ce98c712a
provenance: machine
outputHash: 903ce98c712a
paths./api/v1/tools/pdf/watermark-pdf.post.description:
sourceHash: c15a57a06624
provenance: machine
outputHash: 1d15e5d6d476
paths./api/v1/tools/pdf/pdf-page-numbers.post.summary:
sourceHash: 44eb045097be
provenance: machine
outputHash: d8398f59cf9a
paths./api/v1/tools/pdf/pdf-page-numbers.post.description:
sourceHash: 30ce839cac96
provenance: machine
outputHash: 202d351a46e3
paths./api/v1/tools/files/convert-document.post.summary:
sourceHash: 51556213858a
provenance: machine
outputHash: 4a537b56ed10
paths./api/v1/tools/files/convert-document.post.description:
sourceHash: 8a61bf0f3459
provenance: machine
outputHash: d7e396c618a3
paths./api/v1/tools/files/convert-presentation.post.summary:
sourceHash: 5e2293e30835
provenance: machine
outputHash: dcebe7a82319
paths./api/v1/tools/files/convert-presentation.post.description:
sourceHash: c24f1d70d630
provenance: machine
outputHash: c3e5d1cf294a
paths./api/v1/tools/files/convert-spreadsheet.post.summary:
sourceHash: 670b7aa81c49
provenance: machine
outputHash: 1b8cb850d3a3
paths./api/v1/tools/files/convert-spreadsheet.post.description:
sourceHash: 1c254c7db8bc
provenance: machine
outputHash: ffa657cf86d2
paths./api/v1/tools/files/excel-to-pdf.post.summary:
sourceHash: edba3432df77
provenance: machine
outputHash: edba3432df77
paths./api/v1/tools/files/excel-to-pdf.post.description:
sourceHash: c2e4aaa88cb7
provenance: machine
outputHash: 824daa699c0e
paths./api/v1/tools/files/word-to-pdf.post.summary:
sourceHash: e6cb1150e762
provenance: machine
outputHash: e6cb1150e762
paths./api/v1/tools/files/word-to-pdf.post.description:
sourceHash: eca3c027bc10
provenance: machine
outputHash: cc0b0594c03d
paths./api/v1/tools/files/powerpoint-to-pdf.post.summary:
sourceHash: 799dd29fe97a
provenance: machine
outputHash: 799dd29fe97a
paths./api/v1/tools/files/powerpoint-to-pdf.post.description:
sourceHash: cdc18f172040
provenance: machine
outputHash: 660f6d8a7d8d
paths./api/v1/tools/files/html-to-pdf.post.summary:
sourceHash: e03b0e6dda95
provenance: machine
outputHash: e03b0e6dda95
paths./api/v1/tools/files/html-to-pdf.post.description:
sourceHash: e189b21c7bed
provenance: machine
outputHash: 6746fa26f508
paths./api/v1/tools/files/markdown-to-docx.post.summary:
sourceHash: 1162393274fa
provenance: machine
outputHash: 1162393274fa
paths./api/v1/tools/files/markdown-to-docx.post.description:
sourceHash: 2bc0fd718613
provenance: machine
outputHash: faa9ff898c5c
paths./api/v1/tools/files/markdown-to-html.post.summary:
sourceHash: e5e6e736b649
provenance: machine
outputHash: e5e6e736b649
paths./api/v1/tools/files/markdown-to-html.post.description:
sourceHash: 4f6f706c371e
provenance: machine
outputHash: e24c42e7266d
paths./api/v1/tools/files/markdown-to-pdf.post.summary:
sourceHash: 82712b1fc2b5
provenance: machine
outputHash: 82712b1fc2b5
paths./api/v1/tools/files/markdown-to-pdf.post.description:
sourceHash: f588e3d2847d
provenance: machine
outputHash: 93ef3e0f5aad
paths./api/v1/tools/files/epub-convert.post.summary:
sourceHash: dcee1b93b5d5
provenance: machine
outputHash: 7028f672c8a1
paths./api/v1/tools/files/epub-convert.post.description:
sourceHash: 5a42072194d3
provenance: machine
outputHash: 46127ec9ecd5
paths./api/v1/tools/files/to-epub.post.summary:
sourceHash: 542d3fb468be
provenance: machine
outputHash: 542d3fb468be
paths./api/v1/tools/files/to-epub.post.description:
sourceHash: 1e0b8c39ef9d
provenance: machine
outputHash: b1c4d3d21187
paths./api/v1/tools/pdf/flatten-pdf.post.summary:
sourceHash: 86c838d2d497
provenance: machine
outputHash: 86c838d2d497
paths./api/v1/tools/pdf/flatten-pdf.post.description:
sourceHash: cb0b0bdeaaa5
provenance: machine
outputHash: 475adbe9c138
paths./api/v1/tools/pdf/redact-pdf.post.summary:
sourceHash: 1437d196213c
provenance: machine
outputHash: 1437d196213c
paths./api/v1/tools/pdf/redact-pdf.post.description:
sourceHash: c2652c3da04a
provenance: machine
outputHash: 4e3663d0bc8c
paths./api/v1/tools/pdf/pdf-to-text.post.summary:
sourceHash: f1a719f99a31
provenance: machine
outputHash: f1a719f99a31
paths./api/v1/tools/pdf/pdf-to-text.post.description:
sourceHash: f107a4082454
provenance: machine
outputHash: 587949def02f
paths./api/v1/tools/pdf/pdf-to-word.post.summary:
sourceHash: 283553b063ad
provenance: machine
outputHash: 283553b063ad
paths./api/v1/tools/pdf/pdf-to-word.post.description:
sourceHash: 324b6f3d35f7
provenance: machine
outputHash: 138c0f3d8534
paths./api/v1/tools/pdf/pdf-metadata.post.summary:
sourceHash: 7aa0fbdbeac6
provenance: machine
outputHash: 7aa0fbdbeac6
paths./api/v1/tools/pdf/pdf-metadata.post.description:
sourceHash: 4267623afc19
provenance: machine
outputHash: 4fd41af18da2
paths./api/v1/tools/pdf/ocr-pdf.post.summary:
sourceHash: 2d9dfe74b2d1
provenance: machine
outputHash: 2d9dfe74b2d1
paths./api/v1/tools/pdf/ocr-pdf.post.description:
sourceHash: fbed951c39df
provenance: machine
outputHash: b79f6864833b
paths./api/v1/tools/files/chart-maker.post.summary:
sourceHash: dbcca76ccbf5
provenance: machine
outputHash: dbcca76ccbf5
paths./api/v1/tools/files/chart-maker.post.description:
sourceHash: e4adb80dab58
provenance: machine
outputHash: a9b33fbfc46b
paths./api/v1/tools/files/csv-excel.post.summary:
sourceHash: c53386a6d40d
provenance: machine
outputHash: c53386a6d40d
paths./api/v1/tools/files/csv-excel.post.description:
sourceHash: b567a5eb0ee5
provenance: machine
outputHash: 6eecef287a60
paths./api/v1/tools/files/csv-json.post.summary:
sourceHash: 3ed0542f5ca4
provenance: machine
outputHash: 3ed0542f5ca4
paths./api/v1/tools/files/csv-json.post.description:
sourceHash: 6ed58f7ca5ac
provenance: machine
outputHash: 0235cf8a417a
paths./api/v1/tools/files/json-xml.post.summary:
sourceHash: 0e374572749d
provenance: machine
outputHash: 0e374572749d
paths./api/v1/tools/files/json-xml.post.description:
sourceHash: bbb56d23a274
provenance: machine
outputHash: 9573e407e018
paths./api/v1/tools/files/split-csv.post.summary:
sourceHash: 06c1cfb6cb2c
provenance: machine
outputHash: 06c1cfb6cb2c
paths./api/v1/tools/files/split-csv.post.description:
sourceHash: 1181658ae239
provenance: machine
outputHash: be207b1a4934
paths./api/v1/tools/files/merge-csvs.post.summary:
sourceHash: 0042c1153e55
provenance: machine
outputHash: 0042c1153e55
paths./api/v1/tools/files/merge-csvs.post.description:
sourceHash: 4956c801900a
provenance: machine
outputHash: a0a4694c0a59
paths./api/v1/tools/files/yaml-json.post.summary:
sourceHash: cd3e06c3d51d
provenance: machine
outputHash: e9c43158e301
paths./api/v1/tools/files/yaml-json.post.description:
sourceHash: a7fa089ac00a
provenance: machine
outputHash: dde25b6d0d6e
paths./api/v1/tools/files/xml-to-csv.post.summary:
sourceHash: 909195e97a63
provenance: machine
outputHash: 909195e97a63
paths./api/v1/tools/files/xml-to-csv.post.description:
sourceHash: 156ea77c8a62
provenance: machine
outputHash: 4ba5623dc465
paths./api/v1/tools/files/create-zip.post.summary:
sourceHash: 8463eb4799ce
provenance: machine
outputHash: 8463eb4799ce
paths./api/v1/tools/files/create-zip.post.description:
sourceHash: 26c97508b498
provenance: machine
outputHash: e86df41a061c
paths./api/v1/tools/files/extract-zip.post.summary:
sourceHash: aa7dad519142
provenance: machine
outputHash: aa7dad519142
paths./api/v1/tools/files/extract-zip.post.description:
sourceHash: 5b025b124d8b
provenance: machine
outputHash: 179ddb094aa6
paths./api/v1/tools/image/background-replace.post.summary:
sourceHash: 971cacdad5ce
provenance: machine
outputHash: 835fd208797b
paths./api/v1/tools/image/background-replace.post.description:
sourceHash: 5f7a0c0dbbc7
provenance: machine
outputHash: e406263561ea
paths./api/v1/tools/image/blur-background.post.summary:
sourceHash: 2383b0d9c928
provenance: machine
outputHash: 2d9de267a355
paths./api/v1/tools/image/blur-background.post.description:
sourceHash: f3afcae74767
provenance: machine
outputHash: f2996b175688
paths./api/v1/tools/image/barcode-generate.post.summary:
sourceHash: 4717ee594681
provenance: machine
outputHash: e4f46131efad
paths./api/v1/tools/image/barcode-generate.post.description:
sourceHash: e174f8923d5d
provenance: machine
outputHash: caf1f1951165
paths./api/v1/tools/image/circle-crop.post.summary:
sourceHash: d76473270976
provenance: machine
outputHash: b60bb5df3084
paths./api/v1/tools/image/circle-crop.post.description:
sourceHash: 3e4d4819d594
provenance: machine
outputHash: a8e10ae2bc9c
paths./api/v1/tools/image/duotone.post.summary:
sourceHash: 27e78e7e8cca
provenance: machine
outputHash: 27e78e7e8cca
paths./api/v1/tools/image/duotone.post.description:
sourceHash: f3d5b592526a
provenance: machine
outputHash: fbcbf4c793a6
paths./api/v1/tools/image/image-pad.post.summary:
sourceHash: 7cbc7ca5de5b
provenance: machine
outputHash: 91eae0c26728
paths./api/v1/tools/image/image-pad.post.description:
sourceHash: f222b64a52bc
provenance: machine
outputHash: 54966e0eec2d
paths./api/v1/tools/image/pixelate.post.summary:
sourceHash: f4982f86e732
provenance: machine
outputHash: f4982f86e732
paths./api/v1/tools/image/pixelate.post.description:
sourceHash: c47f345410f8
provenance: machine
outputHash: 766dab29bb4e
paths./api/v1/tools/image/vignette.post.summary:
sourceHash: f841c2080740
provenance: machine
outputHash: f841c2080740
paths./api/v1/tools/image/vignette.post.description:
sourceHash: 9e1e807e89e0
provenance: machine
outputHash: d9183c258b19
paths./api/v1/tools/image/gif-webp.post.summary:
sourceHash: 337e539d70a4
provenance: machine
outputHash: e5968d5d9401
paths./api/v1/tools/image/gif-webp.post.description:
sourceHash: f397405d0b9c
provenance: machine
outputHash: 0510411d2e6e
paths./api/v1/tools/image/histogram.post.summary:
sourceHash: b32dc489fba8
provenance: machine
outputHash: b32dc489fba8
paths./api/v1/tools/image/histogram.post.description:
sourceHash: f98c4a1d1bf0
provenance: machine
outputHash: f7cd59ff0682
paths./api/v1/tools/image/lqip-placeholder.post.summary:
sourceHash: 878e3f3518db
provenance: machine
outputHash: 1deb8c1fd15d
paths./api/v1/tools/image/lqip-placeholder.post.description:
sourceHash: 2100f7e08142
provenance: machine
outputHash: 5e203b1dcf48
paths./api/v1/tools/image/sprite-sheet.post.summary:
sourceHash: f1c0772c4599
provenance: machine
outputHash: f1c0772c4599
paths./api/v1/tools/image/sprite-sheet.post.description:
sourceHash: 4ef141ec92ed
provenance: machine
outputHash: e89c221265f9
paths./api/v1/tools/image/passport-photo.post.summary:
sourceHash: 535e5bf9e5e6
provenance: machine
outputHash: 535e5bf9e5e6
paths./api/v1/tools/image/passport-photo.post.description:
sourceHash: 7d3a81dbb05c
provenance: machine
outputHash: e2160ea9687d
paths./api/v1/tools/pdf/sign-pdf.post.summary:
sourceHash: 1bf93e215df9
provenance: machine
outputHash: 1bf93e215df9
paths./api/v1/tools/pdf/sign-pdf.post.description:
sourceHash: d66e168d79ba
provenance: machine
outputHash: 60ad52945d30
paths./api/v1/tools/image/jpg-to-png.post.summary:
sourceHash: 2b455c24e59e
provenance: machine
outputHash: 2b455c24e59e
paths./api/v1/tools/image/jpg-to-png.post.description:
sourceHash: 1d504faac90f
provenance: machine
outputHash: 9a8bb14b031b
paths./api/v1/tools/image/png-to-jpg.post.summary:
sourceHash: 9e2eef671853
provenance: machine
outputHash: 9e2eef671853
paths./api/v1/tools/image/png-to-jpg.post.description:
sourceHash: 12d6c8d6aa01
provenance: machine
outputHash: 08f57db40ea6
paths./api/v1/tools/image/jpg-to-webp.post.summary:
sourceHash: 1e67451d3358
provenance: machine
outputHash: 1e67451d3358
paths./api/v1/tools/image/jpg-to-webp.post.description:
sourceHash: 0e7e4b18daa5
provenance: machine
outputHash: 6e794bc78d61
paths./api/v1/tools/image/png-to-webp.post.summary:
sourceHash: 6c9410143dd5
provenance: machine
outputHash: 6c9410143dd5
paths./api/v1/tools/image/png-to-webp.post.description:
sourceHash: 7505ddaf944b
provenance: machine
outputHash: d562f76063a6
paths./api/v1/tools/image/webp-to-jpg.post.summary:
sourceHash: 670a9097dec8
provenance: machine
outputHash: 670a9097dec8
paths./api/v1/tools/image/webp-to-jpg.post.description:
sourceHash: 2b7701fe02eb
provenance: machine
outputHash: 03c6898bd4bf
paths./api/v1/tools/image/webp-to-png.post.summary:
sourceHash: 781a17cb5ec0
provenance: machine
outputHash: 781a17cb5ec0
paths./api/v1/tools/image/webp-to-png.post.description:
sourceHash: 78645c123b20
provenance: machine
outputHash: 2b9e0102ee9c
paths./api/v1/tools/image/jpg-to-avif.post.summary:
sourceHash: 1c50ea7bdfce
provenance: machine
outputHash: 1c50ea7bdfce
paths./api/v1/tools/image/jpg-to-avif.post.description:
sourceHash: fbc8f6ae407c
provenance: machine
outputHash: f67ab9d42236
paths./api/v1/tools/image/png-to-avif.post.summary:
sourceHash: c3ba0668ee1f
provenance: machine
outputHash: c3ba0668ee1f
paths./api/v1/tools/image/png-to-avif.post.description:
sourceHash: d0dcdde42555
provenance: machine
outputHash: 2f636ba773f8
paths./api/v1/tools/image/webp-to-avif.post.summary:
sourceHash: 690ea37f961e
provenance: machine
outputHash: 690ea37f961e
paths./api/v1/tools/image/webp-to-avif.post.description:
sourceHash: bcae3fc230b8
provenance: machine
outputHash: 21741ae0a8d8
paths./api/v1/tools/image/heic-to-jpg.post.summary:
sourceHash: 0013ad2f7e97
provenance: machine
outputHash: 0013ad2f7e97
paths./api/v1/tools/image/heic-to-jpg.post.description:
sourceHash: deb0641a6bfd
provenance: machine
outputHash: 98648ee76254
paths./api/v1/tools/image/heic-to-png.post.summary:
sourceHash: a191f1708025
provenance: machine
outputHash: a191f1708025
paths./api/v1/tools/image/heic-to-png.post.description:
sourceHash: 583345b636d6
provenance: machine
outputHash: 189350cb2f93
paths./api/v1/tools/image/heic-to-avif.post.summary:
sourceHash: a03031e5c80d
provenance: machine
outputHash: a03031e5c80d
paths./api/v1/tools/image/heic-to-avif.post.description:
sourceHash: 6812ebf99c0b
provenance: machine
outputHash: ee5b2b9df64f
paths./api/v1/tools/image/jpg-to-gif.post.summary:
sourceHash: 46b3bcd3a38f
provenance: machine
outputHash: 46b3bcd3a38f
paths./api/v1/tools/image/jpg-to-gif.post.description:
sourceHash: 365097fb68a9
provenance: machine
outputHash: 80af8607743e
paths./api/v1/tools/image/png-to-gif.post.summary:
sourceHash: e4de0e11bf3d
provenance: machine
outputHash: e4de0e11bf3d
paths./api/v1/tools/image/png-to-gif.post.description:
sourceHash: 89620988c5bd
provenance: machine
outputHash: c392bf4b00e2
paths./api/v1/tools/image/gif-to-jpg.post.summary:
sourceHash: 016ce94121b8
provenance: machine
outputHash: 016ce94121b8
paths./api/v1/tools/image/gif-to-jpg.post.description:
sourceHash: d3c99d325441
provenance: machine
outputHash: b2933e41de03
paths./api/v1/tools/image/gif-to-png.post.summary:
sourceHash: 8f3239971851
provenance: machine
outputHash: 8f3239971851
paths./api/v1/tools/image/gif-to-png.post.description:
sourceHash: 6b363c6c5b6a
provenance: machine
outputHash: b6b8f765e801
paths./api/v1/tools/image/webp-to-gif.post.summary:
sourceHash: db331b95e19b
provenance: machine
outputHash: db331b95e19b
paths./api/v1/tools/image/webp-to-gif.post.description:
sourceHash: 9295d8ac8c09
provenance: machine
outputHash: ab7dd81266a2
paths./api/v1/tools/image/jpg-to-tiff.post.summary:
sourceHash: 86ae950de6a3
provenance: machine
outputHash: 86ae950de6a3
paths./api/v1/tools/image/jpg-to-tiff.post.description:
sourceHash: 4f0ac37f2e06
provenance: machine
outputHash: 3919ab1d3781
paths./api/v1/tools/image/png-to-tiff.post.summary:
sourceHash: 3fa124cbaa4a
provenance: machine
outputHash: 3fa124cbaa4a
paths./api/v1/tools/image/png-to-tiff.post.description:
sourceHash: 5cf97e597ee8
provenance: machine
outputHash: 4d473c0ae97c
paths./api/v1/tools/image/tiff-to-jpg.post.summary:
sourceHash: c803f62926b8
provenance: machine
outputHash: c803f62926b8
paths./api/v1/tools/image/tiff-to-jpg.post.description:
sourceHash: cf928b0513e5
provenance: machine
outputHash: b02c20b1a600
paths./api/v1/tools/image/tiff-to-png.post.summary:
sourceHash: 73c313976bb4
provenance: machine
outputHash: 73c313976bb4
paths./api/v1/tools/image/tiff-to-png.post.description:
sourceHash: 52f065d2f324
provenance: machine
outputHash: ac700cddd29c
paths./api/v1/tools/image/psd-to-jpg.post.summary:
sourceHash: b9d50a4fd5a9
provenance: machine
outputHash: b9d50a4fd5a9
paths./api/v1/tools/image/psd-to-jpg.post.description:
sourceHash: a9897ebb6e8c
provenance: machine
outputHash: 1fbfaddad007
paths./api/v1/tools/image/psd-to-png.post.summary:
sourceHash: af36a6f53221
provenance: machine
outputHash: af36a6f53221
paths./api/v1/tools/image/psd-to-png.post.description:
sourceHash: b15171b20160
provenance: machine
outputHash: 421d749fb03c
paths./api/v1/tools/image/png-to-eps.post.summary:
sourceHash: 33ce1b37d63f
provenance: machine
outputHash: 33ce1b37d63f
paths./api/v1/tools/image/png-to-eps.post.description:
sourceHash: 31d8bfe76c0d
provenance: machine
outputHash: 60ec2d5150f2
paths./api/v1/tools/image/jpg-to-eps.post.summary:
sourceHash: e8bde3997aaf
provenance: machine
outputHash: e8bde3997aaf
paths./api/v1/tools/image/jpg-to-eps.post.description:
sourceHash: 62cce0cb73ba
provenance: machine
outputHash: b98c2eedf00d
paths./api/v1/tools/image/eps-to-png.post.summary:
sourceHash: be7ed58f6b7e
provenance: machine
outputHash: be7ed58f6b7e
paths./api/v1/tools/image/eps-to-png.post.description:
sourceHash: e9157e4e334b
provenance: machine
outputHash: f117761ee384
paths./api/v1/tools/image/eps-to-jpg.post.summary:
sourceHash: c05512db4202
provenance: machine
outputHash: c05512db4202
paths./api/v1/tools/image/eps-to-jpg.post.description:
sourceHash: b582104358cd
provenance: machine
outputHash: 455481a94c1c
paths./api/v1/tools/image/png-to-svg.post.summary:
sourceHash: 651353e8e22c
provenance: machine
outputHash: 651353e8e22c
paths./api/v1/tools/image/png-to-svg.post.description:
sourceHash: 5cbb3b81f383
provenance: machine
outputHash: f8d21f269983
paths./api/v1/tools/image/jpg-to-svg.post.summary:
sourceHash: 46f10c1c31b4
provenance: machine
outputHash: 46f10c1c31b4
paths./api/v1/tools/image/jpg-to-svg.post.description:
sourceHash: ea475d6542cb
provenance: machine
outputHash: 7cc50dc41a56
paths./api/v1/tools/image/tiff-to-svg.post.summary:
sourceHash: 52f9db13bb53
provenance: machine
outputHash: 52f9db13bb53
paths./api/v1/tools/image/tiff-to-svg.post.description:
sourceHash: 26ac4eed4312
provenance: machine
outputHash: 03dcba977022
paths./api/v1/tools/image/psd-to-svg.post.summary:
sourceHash: 654d378a3882
provenance: machine
outputHash: 654d378a3882
paths./api/v1/tools/image/psd-to-svg.post.description:
sourceHash: 990b5ce49f61
provenance: machine
outputHash: 40c3fdd98732
paths./api/v1/tools/image/eps-to-svg.post.summary:
sourceHash: 36137967b026
provenance: machine
outputHash: 36137967b026
paths./api/v1/tools/image/eps-to-svg.post.description:
sourceHash: 8c2914626a16
provenance: machine
outputHash: 8a983dfd169e
paths./api/v1/tools/image/svg-to-png.post.summary:
sourceHash: 1f1eb20e97fe
provenance: machine
outputHash: 1f1eb20e97fe
paths./api/v1/tools/image/svg-to-png.post.description:
sourceHash: 5338d3a81ff7
provenance: machine
outputHash: 176a41f16825
paths./api/v1/tools/image/svg-to-jpg.post.summary:
sourceHash: 8e51faf94ff1
provenance: machine
outputHash: 8e51faf94ff1
paths./api/v1/tools/image/svg-to-jpg.post.description:
sourceHash: 23241e664642
provenance: machine
outputHash: 997291fe5e0f
paths./api/v1/tools/image/jpg-to-pdf.post.summary:
sourceHash: 480104dd2622
provenance: machine
outputHash: 480104dd2622
paths./api/v1/tools/image/jpg-to-pdf.post.description:
sourceHash: daffc3441cf6
provenance: machine
outputHash: 865d394b899e
paths./api/v1/tools/image/png-to-pdf.post.summary:
sourceHash: 7cab3612203f
provenance: machine
outputHash: 7cab3612203f
paths./api/v1/tools/image/png-to-pdf.post.description:
sourceHash: 135646c47b37
provenance: machine
outputHash: 54e703b297ce
paths./api/v1/tools/image/heic-to-pdf.post.summary:
sourceHash: d9a32701511d
provenance: machine
outputHash: d9a32701511d
paths./api/v1/tools/image/heic-to-pdf.post.description:
sourceHash: cb1a4bc6ad48
provenance: machine
outputHash: fc469b6c5f12
paths./api/v1/tools/image/tiff-to-pdf.post.summary:
sourceHash: 76458bef5bb7
provenance: machine
outputHash: 76458bef5bb7
paths./api/v1/tools/image/tiff-to-pdf.post.description:
sourceHash: f26e932da894
provenance: machine
outputHash: 69a9bb97546c
paths./api/v1/tools/image/webp-to-pdf.post.summary:
sourceHash: fdbcd78acb8e
provenance: machine
outputHash: fdbcd78acb8e
paths./api/v1/tools/image/webp-to-pdf.post.description:
sourceHash: 02d3842d170f
provenance: machine
outputHash: 34eab46d5e92
paths./api/v1/tools/image/gif-to-pdf.post.summary:
sourceHash: 62a5f26018fc
provenance: machine
outputHash: 62a5f26018fc
paths./api/v1/tools/image/gif-to-pdf.post.description:
sourceHash: e1d4ce05a711
provenance: machine
outputHash: a7703920e552
paths./api/v1/tools/image/eps-to-pdf.post.summary:
sourceHash: b183686e176a
provenance: machine
outputHash: b183686e176a
paths./api/v1/tools/image/eps-to-pdf.post.description:
sourceHash: 797845fc1a13
provenance: machine
outputHash: fc2537e450d8
paths./api/v1/tools/pdf/pdf-to-jpg.post.summary:
sourceHash: f84d053c3344
provenance: machine
outputHash: f84d053c3344
paths./api/v1/tools/pdf/pdf-to-jpg.post.description:
sourceHash: 294e7071a0cd
provenance: machine
outputHash: e1f715443127
paths./api/v1/tools/pdf/pdf-to-png.post.summary:
sourceHash: 18362545fcb8
provenance: machine
outputHash: 18362545fcb8
paths./api/v1/tools/pdf/pdf-to-png.post.description:
sourceHash: 879e2d2c287b
provenance: machine
outputHash: 923f72b4875b
paths./api/v1/tools/pdf/pdf-to-tiff.post.summary:
sourceHash: cd0065e23473
provenance: machine
outputHash: cd0065e23473
paths./api/v1/tools/pdf/pdf-to-tiff.post.description:
sourceHash: 4e46452ab02e
provenance: machine
outputHash: d5cdda15ba7b
paths./api/v1/tools/video/mov-to-mp4.post.summary:
sourceHash: b88833009ff9
provenance: machine
outputHash: b88833009ff9
paths./api/v1/tools/video/mov-to-mp4.post.description:
sourceHash: a248339c26d1
provenance: machine
outputHash: af96c96fa074
paths./api/v1/tools/video/webm-to-mp4.post.summary:
sourceHash: 66e6dae5210e
provenance: machine
outputHash: 66e6dae5210e
paths./api/v1/tools/video/webm-to-mp4.post.description:
sourceHash: a9977ca09125
provenance: machine
outputHash: 72163e12a761
paths./api/v1/tools/video/mkv-to-mp4.post.summary:
sourceHash: cffe53cd9489
provenance: machine
outputHash: cffe53cd9489
paths./api/v1/tools/video/mkv-to-mp4.post.description:
sourceHash: d4c9bfc05b71
provenance: machine
outputHash: 99a15764ecd3
paths./api/v1/tools/video/avi-to-mp4.post.summary:
sourceHash: a5ed5b5782d3
provenance: machine
outputHash: a5ed5b5782d3
paths./api/v1/tools/video/avi-to-mp4.post.description:
sourceHash: 59f0c2a1860b
provenance: machine
outputHash: f5f949a44eda
paths./api/v1/tools/video/mp4-to-mov.post.summary:
sourceHash: a20af2c4b1fb
provenance: machine
outputHash: a20af2c4b1fb
paths./api/v1/tools/video/mp4-to-mov.post.description:
sourceHash: 8d99e8459b46
provenance: machine
outputHash: f0ddaed13c38
paths./api/v1/tools/video/mp4-to-webm.post.summary:
sourceHash: a1b67df8d74e
provenance: machine
outputHash: a1b67df8d74e
paths./api/v1/tools/video/mp4-to-webm.post.description:
sourceHash: 2d0fec602c82
provenance: machine
outputHash: 39361a21a6ea
paths./api/v1/tools/video/webm-to-mov.post.summary:
sourceHash: 60df7d3b385b
provenance: machine
outputHash: 60df7d3b385b
paths./api/v1/tools/video/webm-to-mov.post.description:
sourceHash: 6982fc1cb933
provenance: machine
outputHash: 7783c1f6ab2c
paths./api/v1/tools/video/mkv-to-mov.post.summary:
sourceHash: dc04291270e6
provenance: machine
outputHash: dc04291270e6
paths./api/v1/tools/video/mkv-to-mov.post.description:
sourceHash: 71c9c1b99374
provenance: machine
outputHash: f8ff3a21027e
paths./api/v1/tools/video/avi-to-mov.post.summary:
sourceHash: 449c58ca9486
provenance: machine
outputHash: 449c58ca9486
paths./api/v1/tools/video/avi-to-mov.post.description:
sourceHash: 62b1fd2e8e0c
provenance: machine
outputHash: e224cc97af13
paths./api/v1/tools/video/mp4-to-avi.post.summary:
sourceHash: 700763fbdb4a
provenance: machine
outputHash: 700763fbdb4a
paths./api/v1/tools/video/mp4-to-avi.post.description:
sourceHash: da2c6f405f96
provenance: machine
outputHash: 99d1aa66eb31
paths./api/v1/tools/video/mov-to-avi.post.summary:
sourceHash: 6cc35a24d9fa
provenance: machine
outputHash: 6cc35a24d9fa
paths./api/v1/tools/video/mov-to-avi.post.description:
sourceHash: e1dd8989a812
provenance: machine
outputHash: 9cf427b88b9c
paths./api/v1/tools/video/mkv-to-avi.post.summary:
sourceHash: 993ee5fab472
provenance: machine
outputHash: 993ee5fab472
paths./api/v1/tools/video/mkv-to-avi.post.description:
sourceHash: f1b9b4ced057
provenance: machine
outputHash: 03feed864a7b
paths./api/v1/tools/video/avi-to-mkv.post.summary:
sourceHash: 3393bba23656
provenance: machine
outputHash: 3393bba23656
paths./api/v1/tools/video/avi-to-mkv.post.description:
sourceHash: ce821c05956b
provenance: machine
outputHash: 83c54deb5eb4
paths./api/v1/tools/video/mp4-to-gif.post.summary:
sourceHash: 62a7b6e94a53
provenance: machine
outputHash: 62a7b6e94a53
paths./api/v1/tools/video/mp4-to-gif.post.description:
sourceHash: eb95a94fc0e0
provenance: machine
outputHash: 65a5bf5cfa2d
paths./api/v1/tools/video/mov-to-gif.post.summary:
sourceHash: c0e8c3dcfdfd
provenance: machine
outputHash: c0e8c3dcfdfd
paths./api/v1/tools/video/mov-to-gif.post.description:
sourceHash: f0f7c24adb4f
provenance: machine
outputHash: 0855d5425b24
paths./api/v1/tools/video/mkv-to-gif.post.summary:
sourceHash: c19834912c0e
provenance: machine
outputHash: c19834912c0e
paths./api/v1/tools/video/mkv-to-gif.post.description:
sourceHash: 591062eb518f
provenance: machine
outputHash: e4510c839bc3
paths./api/v1/tools/video/avi-to-gif.post.summary:
sourceHash: b6286a84b91d
provenance: machine
outputHash: b6286a84b91d
paths./api/v1/tools/video/avi-to-gif.post.description:
sourceHash: dd44bdc0686d
provenance: machine
outputHash: 340d86191254
paths./api/v1/tools/video/gif-to-mp4.post.summary:
sourceHash: 9c2d0df2d1e9
provenance: machine
outputHash: 9c2d0df2d1e9
paths./api/v1/tools/video/gif-to-mp4.post.description:
sourceHash: 96914944fdc5
provenance: machine
outputHash: bc81ed2ff080
paths./api/v1/tools/video/gif-to-webm.post.summary:
sourceHash: f2b694034e10
provenance: machine
outputHash: f2b694034e10
paths./api/v1/tools/video/gif-to-webm.post.description:
sourceHash: 221c2fee1775
provenance: machine
outputHash: 8e1d0b390ad3
paths./api/v1/tools/video/gif-to-mov.post.summary:
sourceHash: 45c5f35f45f3
provenance: machine
outputHash: 45c5f35f45f3
paths./api/v1/tools/video/gif-to-mov.post.description:
sourceHash: 57996ae8e8cb
provenance: machine
outputHash: 2a09fcb9909b
paths./api/v1/tools/video/mp4-to-mp3.post.summary:
sourceHash: 69e107b048a8
provenance: machine
outputHash: 69e107b048a8
paths./api/v1/tools/video/mp4-to-mp3.post.description:
sourceHash: 40de83aa6ed2
provenance: machine
outputHash: 2e722ccd01a6
paths./api/v1/tools/video/mov-to-mp3.post.summary:
sourceHash: e149b039deaf
provenance: machine
outputHash: e149b039deaf
paths./api/v1/tools/video/mov-to-mp3.post.description:
sourceHash: 27f1a1f36a88
provenance: machine
outputHash: b1eed9d7a9a7
paths./api/v1/tools/video/mkv-to-mp3.post.summary:
sourceHash: a017e66660ad
provenance: machine
outputHash: a017e66660ad
paths./api/v1/tools/video/mkv-to-mp3.post.description:
sourceHash: 12cb145afcd0
provenance: machine
outputHash: 74b92757f5b0
paths./api/v1/tools/video/webm-to-mp3.post.summary:
sourceHash: 9fbcc26dd542
provenance: machine
outputHash: 9fbcc26dd542
paths./api/v1/tools/video/webm-to-mp3.post.description:
sourceHash: 5213b45f3c7d
provenance: machine
outputHash: 08d5276bcf31
paths./api/v1/tools/video/avi-to-mp3.post.summary:
sourceHash: 5f4d7167967b
provenance: machine
outputHash: 5f4d7167967b
paths./api/v1/tools/video/avi-to-mp3.post.description:
sourceHash: dea6a15cea91
provenance: machine
outputHash: aad04ce4c1c3
paths./api/v1/tools/video/mp4-to-wav.post.summary:
sourceHash: b6769af66349
provenance: machine
outputHash: b6769af66349
paths./api/v1/tools/video/mp4-to-wav.post.description:
sourceHash: 5b9126a6bb99
provenance: machine
outputHash: 163b7bf63e2b
paths./api/v1/tools/video/mov-to-wav.post.summary:
sourceHash: 4194226fdf68
provenance: machine
outputHash: 4194226fdf68
paths./api/v1/tools/video/mov-to-wav.post.description:
sourceHash: fe4925d7babd
provenance: machine
outputHash: 4bdaa70a34a7
paths./api/v1/tools/video/mp4-to-ogg.post.summary:
sourceHash: dcb33be4e615
provenance: machine
outputHash: dcb33be4e615
paths./api/v1/tools/video/mp4-to-ogg.post.description:
sourceHash: d8be42b38707
provenance: machine
outputHash: 8446c63cdefd
paths./api/v1/tools/audio/m4a-to-mp3.post.summary:
sourceHash: e4f86f589bd4
provenance: machine
outputHash: e4f86f589bd4
paths./api/v1/tools/audio/m4a-to-mp3.post.description:
sourceHash: ad144ccdc1d4
provenance: machine
outputHash: 38aab297068c
paths./api/v1/tools/audio/m4a-to-wav.post.summary:
sourceHash: 5e8aa1c62150
provenance: machine
outputHash: 5e8aa1c62150
paths./api/v1/tools/audio/m4a-to-wav.post.description:
sourceHash: dab8ed1c0668
provenance: machine
outputHash: ce04a2ee0839
paths./api/v1/tools/audio/aac-to-mp3.post.summary:
sourceHash: dd7d2c46e335
provenance: machine
outputHash: dd7d2c46e335
paths./api/v1/tools/audio/aac-to-mp3.post.description:
sourceHash: 4187ef8fb789
provenance: machine
outputHash: 8982c4ac4187
paths./api/v1/tools/audio/aac-to-wav.post.summary:
sourceHash: 6485f4d30fd0
provenance: machine
outputHash: 6485f4d30fd0
paths./api/v1/tools/audio/aac-to-wav.post.description:
sourceHash: c2221db94cf4
provenance: machine
outputHash: 21eb6e8e589d
paths./api/v1/tools/audio/aac-to-flac.post.summary:
sourceHash: 9dc0a9886938
provenance: machine
outputHash: 9dc0a9886938
paths./api/v1/tools/audio/aac-to-flac.post.description:
sourceHash: 945f63a2be18
provenance: machine
outputHash: f6ce3d70ecda
paths./api/v1/tools/audio/ogg-to-mp3.post.summary:
sourceHash: c3cff86b4282
provenance: machine
outputHash: c3cff86b4282
paths./api/v1/tools/audio/ogg-to-mp3.post.description:
sourceHash: 8889a760d19f
provenance: machine
outputHash: 42b165088361
paths./api/v1/tools/audio/ogg-to-wav.post.summary:
sourceHash: 85fbfd8ee338
provenance: machine
outputHash: 85fbfd8ee338
paths./api/v1/tools/audio/ogg-to-wav.post.description:
sourceHash: 99156f0db542
provenance: machine
outputHash: 603d96871f96
paths./api/v1/tools/audio/wav-to-mp3.post.summary:
sourceHash: d8344c7d753c
provenance: machine
outputHash: d8344c7d753c
paths./api/v1/tools/audio/wav-to-mp3.post.description:
sourceHash: 7f83d006baf8
provenance: machine
outputHash: 35f36f82b979
paths./api/v1/tools/audio/mp3-to-wav.post.summary:
sourceHash: a7de59ab62b9
provenance: machine
outputHash: a7de59ab62b9
paths./api/v1/tools/audio/mp3-to-wav.post.description:
sourceHash: c19d5fba1478
provenance: machine
outputHash: a6fc2045e5de
paths./api/v1/tools/audio/flac-to-mp3.post.summary:
sourceHash: da353684dd2b
provenance: machine
outputHash: da353684dd2b
paths./api/v1/tools/audio/flac-to-mp3.post.description:
sourceHash: e83797072608
provenance: machine
outputHash: 917846c391ff
paths./api/v1/tools/files/excel-to-csv.post.summary:
sourceHash: 8610a88e662a
provenance: machine
outputHash: 8610a88e662a
paths./api/v1/tools/files/excel-to-csv.post.description:
sourceHash: c5b6027afaa5
provenance: machine
outputHash: 631dde880e12
paths./api/v1/readyz.get.summary:
sourceHash: 2f70aef72373
provenance: machine
outputHash: fa6b9253bfbe
paths./api/v1/readyz.get.description:
sourceHash: 1600aad09ab9
provenance: machine
outputHash: f8393027e9d2
paths./api/v1/jobs/{jobId}/cancel.post.summary:
sourceHash: a5032d26d61d
provenance: machine
outputHash: ca8632377b72
paths./api/v1/jobs/{jobId}/cancel.post.description:
sourceHash: c828ad6eed72
provenance: machine
outputHash: ffc5f61532f2
paths./api/v1/preferences.get.summary:
sourceHash: 14eccfecf549
provenance: machine
outputHash: 39d6862ba40a
paths./api/v1/preferences.get.description:
sourceHash: be05d444bc85
provenance: machine
outputHash: c6c8960a2b20
paths./api/v1/preferences.put.summary:
sourceHash: 2649ca8f6a25
provenance: machine
outputHash: b1af089f444f
paths./api/v1/preferences.put.description:
sourceHash: ac325d43a780
provenance: machine
outputHash: 918d097bdcdb
paths./api/auth/mfa/enroll.post.summary:
sourceHash: c138aec8b79b
provenance: machine
outputHash: de07dc4b6636
paths./api/auth/mfa/enroll.post.description:
sourceHash: e00560362017
provenance: machine
outputHash: c75d6f5401bf
paths./api/auth/mfa/verify.post.summary:
sourceHash: 12b670ebf850
provenance: machine
outputHash: b525677f0bc9
paths./api/auth/mfa/verify.post.description:
sourceHash: ae628486beb5
provenance: machine
outputHash: 3a7cd229fe75
paths./api/auth/mfa/complete.post.summary:
sourceHash: 16f65adb8582
provenance: machine
outputHash: 863eec09d4ae
paths./api/auth/mfa/complete.post.description:
sourceHash: 3dc67142d5da
provenance: machine
outputHash: d85d15bde7e5
paths./api/auth/mfa/disable.post.summary:
sourceHash: 8adb8274a7c6
provenance: machine
outputHash: e66cd1c704f8
paths./api/auth/mfa/disable.post.description:
sourceHash: 7980f5f0d9f0
provenance: machine
outputHash: ebe678c8ff3c
paths./api/auth/users/{id}/mfa/reset.post.summary:
sourceHash: c765204eb72c
provenance: machine
outputHash: 885f22649f10
paths./api/auth/oidc/login.get.summary:
sourceHash: bac046b3ef24
provenance: machine
outputHash: 9fdf28dd9824
paths./api/auth/oidc/login.get.description:
sourceHash: e48289d1e534
provenance: machine
outputHash: 2bb13d70d45c
paths./api/auth/oidc/callback.get.summary:
sourceHash: 396eda750d3c
provenance: machine
outputHash: 396eda750d3c
paths./api/auth/oidc/callback.get.description:
sourceHash: e9437a06c530
provenance: machine
outputHash: f034c77b651d
paths./api/auth/saml/metadata.get.summary:
sourceHash: d6b4c80ec1e4
provenance: machine
outputHash: d6b4c80ec1e4
paths./api/auth/saml/metadata.get.description:
sourceHash: 0b08445f03af
provenance: machine
outputHash: d0e40c288a66
paths./api/auth/saml/login.get.summary:
sourceHash: 6de21463c7cb
provenance: machine
outputHash: 53ffad0cd625
paths./api/auth/saml/login.get.description:
sourceHash: eca8bcf506ea
provenance: machine
outputHash: 98077ce560be
paths./api/auth/saml/callback.post.summary:
sourceHash: 2a95ad454bd5
provenance: machine
outputHash: 2a95ad454bd5
paths./api/auth/saml/callback.post.description:
sourceHash: a03dcebde897
provenance: machine
outputHash: 4b906664bae3
paths./api/v1/files/{id}/preview.get.summary:
sourceHash: 71d50aa39313
provenance: machine
outputHash: 119b32de97df
paths./api/v1/files/{id}/preview.get.description:
sourceHash: fb3edf8df6cf
provenance: machine
outputHash: ff2850d9d3cc
paths./api/v1/preview/generate.post.summary:
sourceHash: cff28fa8e380
provenance: machine
outputHash: 4e54f4179c11
paths./api/v1/preview/generate.post.description:
sourceHash: 56d484d0c85b
provenance: machine
outputHash: b06930dbdef7
paths./api/v1/admin/log-level.get.summary:
sourceHash: f9fa3ff842cd
provenance: machine
outputHash: 6deca615d3d2
paths./api/v1/admin/log-level.get.description:
sourceHash: 277cddb1b284
provenance: machine
outputHash: 4a7ed486ba13
paths./api/v1/admin/log-level.post.summary:
sourceHash: e9ac46f76c49
provenance: machine
outputHash: 0e1fe13456a0
paths./api/v1/admin/log-level.post.description:
sourceHash: 5f12391622b9
provenance: machine
outputHash: 1e3ddf05c5fb
paths./api/v1/metrics.get.summary:
sourceHash: 05be9e156194
provenance: machine
outputHash: 05be9e156194
paths./api/v1/metrics.get.description:
sourceHash: e5723b8ba79e
provenance: machine
outputHash: a1f6815a03da
paths./api/v1/admin/support-bundle.get.summary:
sourceHash: 3fc31382eaf7
provenance: machine
outputHash: 3fc31382eaf7
paths./api/v1/admin/support-bundle.get.description:
sourceHash: c04e47b20915
provenance: machine
outputHash: 4f674fab0faa
paths./api/v1/admin/usage.get.summary:
sourceHash: 2f5017840735
provenance: machine
outputHash: e04e67b44b7f
paths./api/v1/admin/usage.get.description:
sourceHash: 5ba73241349d
provenance: machine
outputHash: 0073d147096b
paths./api/v1/admin/backup-status.get.summary:
sourceHash: cea8a0d690fc
provenance: machine
outputHash: ac9b468ec448
paths./api/v1/admin/backup-status.get.description:
sourceHash: e42e4494117a
provenance: machine
outputHash: 31c0b82f53f0
paths./api/v1/admin/backup-status.post.summary:
sourceHash: 1a7ed3984596
provenance: machine
outputHash: 1d1e052b702b
paths./api/v1/admin/backup-status.post.description:
sourceHash: 84b506533dbf
provenance: machine
outputHash: cdba20419861
paths./api/v1/admin/features/import.post.summary:
sourceHash: 31b34aebf83b
provenance: machine
outputHash: 884a3def34f5
paths./api/v1/admin/features/import.post.description:
sourceHash: 229fcb03f525
provenance: machine
outputHash: 373932fe29b3
paths./api/v1/enterprise/scim/token.post.summary:
sourceHash: e550c4aaeecf
provenance: machine
outputHash: a35ff7a09ebc
paths./api/v1/enterprise/scim/token.delete.summary:
sourceHash: e57912d50189
provenance: machine
outputHash: 632088aed2e8
paths./api/v1/scim/v2/ServiceProviderConfig.get.summary:
sourceHash: 6d9bb054fb7b
provenance: machine
outputHash: 6d9bb054fb7b
paths./api/v1/scim/v2/ServiceProviderConfig.get.description:
sourceHash: a111048aed19
provenance: machine
outputHash: 5c7620efe24f
paths./api/v1/scim/v2/Schemas.get.summary:
sourceHash: c04171c8ce40
provenance: machine
outputHash: c04171c8ce40
paths./api/v1/scim/v2/Schemas.get.description:
sourceHash: 74cf47ef6038
provenance: machine
outputHash: d739d9970e8f
paths./api/v1/scim/v2/ResourceTypes.get.summary:
sourceHash: b3f61558b888
provenance: machine
outputHash: b3f61558b888
paths./api/v1/scim/v2/ResourceTypes.get.description:
sourceHash: d3935183ed14
provenance: machine
outputHash: b9ff99bc6a79
paths./api/v1/scim/v2/Users.get.summary:
sourceHash: 06aa223783d0
provenance: machine
outputHash: 5a63dac3a89b
paths./api/v1/scim/v2/Users.get.description:
sourceHash: dccfb3116fb5
provenance: machine
outputHash: cccccad82d6c
paths./api/v1/scim/v2/Users.post.summary:
sourceHash: ba4ce4467898
provenance: machine
outputHash: 7e7a8f6f1397
paths./api/v1/scim/v2/Users.post.description:
sourceHash: ab9d5413dfe0
provenance: machine
outputHash: ca72f504aad2
paths./api/v1/scim/v2/Users/{id}.get.summary:
sourceHash: 06a26f48a1d7
provenance: machine
outputHash: ff92ac3a90e5
paths./api/v1/scim/v2/Users/{id}.get.description:
sourceHash: f643db8015e1
provenance: machine
outputHash: 14211f38b55b
paths./api/v1/scim/v2/Users/{id}.put.summary:
sourceHash: acfe35ddd973
provenance: machine
outputHash: 75fb78ba5aa9
paths./api/v1/scim/v2/Users/{id}.put.description:
sourceHash: 7051119f905f
provenance: machine
outputHash: cd7ab2eca83f
paths./api/v1/scim/v2/Users/{id}.delete.summary:
sourceHash: 11c8da919810
provenance: machine
outputHash: 9c849e7a8b6c
paths./api/v1/scim/v2/Users/{id}.delete.description:
sourceHash: f8a3ee46d088
provenance: machine
outputHash: 281a62047712
paths./api/v1/scim/v2/Groups.get.summary:
sourceHash: 7f5cfe4da60d
provenance: machine
outputHash: 604a12717617
paths./api/v1/scim/v2/Groups.get.description:
sourceHash: b3dea6667317
provenance: machine
outputHash: 01f7503b7c9d
paths./api/v1/scim/v2/Groups.post.summary:
sourceHash: 2477896fba1c
provenance: machine
outputHash: 1f77ddb778c4
paths./api/v1/scim/v2/Groups.post.description:
sourceHash: fbb117796dfb
provenance: machine
outputHash: 46a532fd2462
paths./api/v1/scim/v2/Groups/{id}.get.summary:
sourceHash: cf7956970f8e
provenance: machine
outputHash: c8c9c278b834
paths./api/v1/scim/v2/Groups/{id}.get.description:
sourceHash: 7aeb5a733198
provenance: machine
outputHash: 703ef84d7667
paths./api/v1/scim/v2/Groups/{id}.put.summary:
sourceHash: 5878fbd31c27
provenance: machine
outputHash: 3325c24e6e76
paths./api/v1/scim/v2/Groups/{id}.put.description:
sourceHash: 0b41d735866c
provenance: machine
outputHash: 48349331e823
paths./api/v1/scim/v2/Groups/{id}.delete.summary:
sourceHash: 37212ab76d6b
provenance: machine
outputHash: 23310cd0e593
paths./api/v1/scim/v2/Groups/{id}.delete.description:
sourceHash: faf5572bb482
provenance: machine
outputHash: faba40bb6724
paths./api/v1/enterprise/audit/export.get.summary:
sourceHash: bb1ef74df6a7
provenance: machine
outputHash: 40bffdac1aa4
paths./api/v1/enterprise/audit/export.get.description:
sourceHash: 78723fd7a551
provenance: machine
outputHash: 577a8ae21c19
paths./api/v1/enterprise/config/export.get.summary:
sourceHash: 0657bced852f
provenance: machine
outputHash: 90c5442816d3
paths./api/v1/enterprise/config/export.get.description:
sourceHash: 78e6cca796a5
provenance: human
outputHash: 67b7c13336de
paths./api/v1/enterprise/config/import.post.summary:
sourceHash: 8a507f40b80f
provenance: machine
outputHash: a35b2c408440
paths./api/v1/enterprise/config/import.post.description:
sourceHash: 21367e8b3579
provenance: human
outputHash: 941451f40982
paths./api/v1/enterprise/ip-allowlist.get.summary:
sourceHash: 8756df674b27
provenance: machine
outputHash: 6c9b1171a3b2
paths./api/v1/enterprise/ip-allowlist.get.description:
sourceHash: 42fe8d5e6555
provenance: machine
outputHash: 70db5e2faf3b
paths./api/v1/enterprise/ip-allowlist.put.summary:
sourceHash: e0d442c15809
provenance: machine
outputHash: 3be904e8155c
paths./api/v1/enterprise/ip-allowlist.put.description:
sourceHash: 0cb040540d15
provenance: machine
outputHash: ed537caeaf72
paths./api/v1/enterprise/legal-hold.get.summary:
sourceHash: a3b33d97f1b3
provenance: machine
outputHash: ee2644740707
paths./api/v1/enterprise/legal-hold.get.description:
sourceHash: 2b51807e41b2
provenance: machine
outputHash: 12d7d20447ec
paths./api/v1/enterprise/legal-hold.put.summary:
sourceHash: f0f8a1f6bd23
provenance: machine
outputHash: 3e9692bebe80
paths./api/v1/enterprise/legal-hold.put.description:
sourceHash: 2f22192732ff
provenance: machine
outputHash: e2af251a591b
paths./api/v1/enterprise/siem/config.get.summary:
sourceHash: 7ac4058ce316
provenance: machine
outputHash: 2ce0e32e398f
paths./api/v1/enterprise/siem/config.get.description:
sourceHash: b4c92171b7fb
provenance: machine
outputHash: b06d234f6255
paths./api/v1/enterprise/siem/config.put.summary:
sourceHash: b236d6669c61
provenance: machine
outputHash: 6ff5e20a114b
paths./api/v1/enterprise/siem/config.put.description:
sourceHash: 94cec3b103c8
provenance: machine
outputHash: 293523e99a18
paths./api/v1/enterprise/webhooks.get.summary:
sourceHash: a43cfb1a8c96
provenance: machine
outputHash: 149b74ee5ca1
paths./api/v1/enterprise/webhooks.get.description:
sourceHash: 292a38feca49
provenance: machine
outputHash: 77b0465fd094
paths./api/v1/enterprise/webhooks.post.summary:
sourceHash: 4a2b33ad2c1f
provenance: machine
outputHash: c18650ca8bf2
paths./api/v1/enterprise/webhooks.post.description:
sourceHash: 2cc3c4b18327
provenance: machine
outputHash: 6a94160c28bf
paths./api/v1/enterprise/webhooks/{index}.put.summary:
sourceHash: c5be5387d7be
provenance: machine
outputHash: 8a4703c517d3
paths./api/v1/enterprise/webhooks/{index}.put.description:
sourceHash: 28806bb5b6ce
provenance: machine
outputHash: 1e25e23bf0d4
paths./api/v1/enterprise/webhooks/{index}.delete.summary:
sourceHash: 60f85e57e4a7
provenance: machine
outputHash: b0518c16db32
paths./api/v1/enterprise/webhooks/{index}.delete.description:
sourceHash: 97b9800c59a2
provenance: machine
outputHash: a2865b3b5f98
paths./api/v1/enterprise/webhooks/{index}/test.post.summary:
sourceHash: 333e8368ac5c
provenance: machine
outputHash: 7dc735537649
paths./api/v1/enterprise/webhooks/{index}/test.post.description:
sourceHash: 5626cb4c037d
provenance: machine
outputHash: 306708211b42
paths./api/v1/enterprise/users/{id}/export.post.summary:
sourceHash: 75556a6714fc
provenance: machine
outputHash: 72ef813f1006
paths./api/v1/enterprise/users/{id}/export.post.description:
sourceHash: 4f90b2a09ef8
provenance: machine
outputHash: 6247b41d2003
paths./api/v1/enterprise/users/{id}/export/{jobId}.get.summary:
sourceHash: 7fa624472044
provenance: machine
outputHash: c53e088ee621
paths./api/v1/enterprise/users/{id}/export/{jobId}.get.description:
sourceHash: fb51267dcbf7
provenance: machine
outputHash: 6ac2a2124f0c
paths./api/v1/enterprise/users/{id}/purge.delete.summary:
sourceHash: 09c40d574cc0
provenance: machine
outputHash: b1d2bfde9537
paths./api/v1/enterprise/teams/{id}/purge.delete.summary:
sourceHash: e5f557c6db8b
provenance: machine
outputHash: a11ae49bffa6
paths./api/v1/admin/version.get.summary:
sourceHash: 1fa5f3f5fa4a
provenance: machine
outputHash: 6408aec786f0
paths./api/v1/admin/version.get.description:
sourceHash: b72b0bfc24e6
provenance: machine
outputHash: a816a5f37ec6
paths./api/v1/admin/migrations/pending.get.summary:
sourceHash: dd3d4aea6207
provenance: machine
outputHash: 1045836d50d9
paths./api/v1/admin/migrations/pending.get.description:
sourceHash: 434f121758d2
provenance: machine
outputHash: 28f5ed26d67c
paths./api/v1/admin/upgrade-check.get.summary:
sourceHash: abc755f5b011
provenance: machine
outputHash: bb99d32af951
paths./api/v1/admin/upgrade-check.get.description:
sourceHash: a21396abfd74
provenance: machine
outputHash: 4d0bd3cf175e
paths./llms.txt.get.summary:
sourceHash: ba31286a938b
provenance: machine
outputHash: c929bfcf8348
paths./llms.txt.get.description:
sourceHash: 5f69094320cb
provenance: machine
outputHash: dd4f721da07f
paths./llms-full.txt.get.summary:
sourceHash: 6f12d5cecc9d
provenance: machine
outputHash: 692d853eafb3
paths./llms-full.txt.get.description:
sourceHash: a135dfc6aac1
provenance: machine
outputHash: 9c8df4988d4b
paths./api/v1/openapi.yaml.get.summary:
sourceHash: 9ee7dc77d462
provenance: machine
outputHash: 9ee7dc77d462
paths./api/v1/openapi.yaml.get.description:
sourceHash: 10ceb656a256
provenance: machine
outputHash: 0830a8cf655d
paths./api/v1/tools/popular.get.summary:
sourceHash: de2139ffd4c3
provenance: machine
outputHash: 078778d637a0
paths./api/v1/tools/popular.get.description:
sourceHash: 40c9637d843b
provenance: machine
outputHash: 0d52b2807e82