tenzro-xyz Vision API
The Vision API from tenzro-xyz — 13 operation(s) for vision.
The Vision API from tenzro-xyz — 13 operation(s) for vision.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/tenzro-xyz:tenzro-xyz-vision-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Tenzro Labs Platform Vision API
version: 1.0.0
description: Browse the curated catalogue; manage credits, billing, keys, plans and rentals; place and pay orders; run Datasets, Fieldwork, Voices and Forecasts. Chat, embeddings, images, speech and the model list keep the OpenAI-compatible /v1 paths.
servers:
- url: https://api.tenzro.xyz
security:
- apiKey: []
tags:
- name: Vision
paths:
/vision/status:
get:
tags:
- Vision
summary: Which parts of Vision are serving now
description: No key needed.
operationId: getVisionStatus
x-tenzro-scope: public
security: []
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/models:
get:
tags:
- Vision
summary: Vision models by task, licence, what is serving and prices
description: No key needed.
operationId: getVisionModels
x-tenzro-scope: public
security: []
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/understand:
post:
tags:
- Vision
summary: Describe an image, read its text, answer a question, choose labels, or analyse…
description: Needs a key with the `vision:analyse` permission.
operationId: postVisionUnderstand
x-tenzro-scope: vision:analyse
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/detect:
post:
tags:
- Vision
summary: 'Detect objects in an image: boxes, labels and scores'
description: Needs a key with the `vision:analyse` permission.
operationId: postVisionDetect
x-tenzro-scope: vision:analyse
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/images:
post:
tags:
- Vision
summary: Generate an image (signed provenance; optionally into a Dataset)
description: Needs a key with the `vision:generate` permission.
operationId: postVisionImages
x-tenzro-scope: vision:generate
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/videos:
post:
tags:
- Vision
summary: Start a video generation job
description: Needs a key with the `vision:generate` permission.
operationId: postVisionVideos
x-tenzro-scope: vision:generate
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
get:
tags:
- Vision
summary: List video jobs
description: Needs a key with the `vision:generate` permission.
operationId: getVisionVideos
x-tenzro-scope: vision:generate
parameters:
- name: limit
in: query
required: false
description: Page size
schema:
type: string
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/videos/{id}:
get:
tags:
- Vision
summary: Get a video job
description: Needs a key with the `vision:generate` permission.
operationId: getVisionVideosById
x-tenzro-scope: vision:generate
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/videos/{id}/content:
get:
tags:
- Vision
summary: The rendered video (byte ranges supported)
description: Needs a key with the `vision:generate` permission.
operationId: getVisionVideosByIdContent
x-tenzro-scope: vision:generate
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
video/mp4:
schema:
type: string
format: binary
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/runs:
post:
tags:
- Vision
summary: Run a model over an image Dataset (describe, detect or label)
description: Needs a key with the `vision:batch` permission.
operationId: postVisionRuns
x-tenzro-scope: vision:batch
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
get:
tags:
- Vision
summary: List runs
description: Needs a key with the `vision:batch` permission.
operationId: getVisionRuns
x-tenzro-scope: vision:batch
parameters:
- name: limit
in: query
required: false
description: Page size
schema:
type: string
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/runs/{id}:
get:
tags:
- Vision
summary: Get a run
description: Needs a key with the `vision:batch` permission.
operationId: getVisionRunsById
x-tenzro-scope: vision:batch
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/runs/{id}/cancel:
post:
tags:
- Vision
summary: Cancel a run
description: Needs a key with the `vision:batch` permission.
operationId: postVisionRunsByIdCancel
x-tenzro-scope: vision:batch
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/outputs/{id}:
get:
tags:
- Vision
summary: A generated image's or video's signed manifest
description: Needs a key with the `vision:generate` permission.
operationId: getVisionOutputsById
x-tenzro-scope: vision:generate
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/json: {}
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
/vision/outputs/{id}/content:
get:
tags:
- Vision
summary: A generated image or video (byte ranges supported)
description: Needs a key with the `vision:generate` permission.
operationId: getVisionOutputsByIdContent
x-tenzro-scope: vision:generate
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: OK
content:
application/octet-stream:
schema:
type: string
format: binary
default:
description: Error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
Error:
type: object
properties:
error:
type: object
properties:
code:
type: string
message:
type: string
scope:
type: string
description: 'On a 403: the permission the key lacks.'
securitySchemes:
apiKey:
type: http
scheme: bearer
description: A Tenzro Labs API key (tzl_…).
ingestKey:
type: http
scheme: bearer
description: 'A Fieldwork ingest key (tzi_…): bound to one project and the origins listed on it, able only to run the participant flow. Safe in a browser. Create it with POST /fieldwork/projects/{id}/ingest-keys.'
serviceAssertion:
type: http
scheme: bearer
bearerFormat: JWT
description: 'A Tenzro Labs service''s ES256 assertion: header kid = the RFC 7638 thumbprint of a key in the service''s published JWKS; iss = sub = the service; aud = this endpoint; exp at most 60 s after iat; jti used once.'