Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the ModelRunner Requests API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fmodelrunner.ai%2Fmodelrunner" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fmodelrunner.ai%2Fmodelrunner" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with ModelRunner Requests API.
Queue an inference job on a model by ownerName and modelName with a prompt, size, steps, and seed
Poll a request's status from IN_QUEUE to COMPLETED, FAILED, or CANCELLED
Fetch a completed request's output with inferenceTime and delayTime
Cancel a queued or running request, stopping the job on a Serverless GPU deployment
GET STARTED
List past requests filtered by modelEndpoint, deploymentId, status, or metadata tags
Follow every account request's status transitions on a server-sent event stream
Purge a finished request's stored payloads and output media from the CDN
Patterns agents use ModelRunner Requests API for, with concrete tasks.
★ Agent Image Generation Through Jentic
An AI agent that needs an illustration or product mock-up queues a job on a ModelRunner image model with a prompt and size, polls the status URL until it completes, and returns the output. Through Jentic the agent finds the create-request operation by intent and calls it with ownerName and modelName in the path, using the stored Key token without seeing it.
Create a request on bytedance/sdxl-lightning-4step with prompt 'a red bicycle on a beach at sunset', width 1024, height 1024, and num_outputs 2, then poll its status until COMPLETED and fetch the result
Batch Jobs on a Serverless GPU Deployment
Teams running their own model on a ModelRunner Serverless GPU deployment submit batches of jobs, then list requests by deploymentId and metadata tag to collect results. The list response carries billingStatus, which is the field to read when telling a successful job from a failed one.
List requests with deploymentId set to the deployment's UUID and status COMPLETED, page 1 with limit 50, and return each request id with its billingStatus
Live Job Monitoring and Cleanup
Operations dashboards subscribe to the request stream for a snapshot of in-flight jobs followed by an update event per status change, cancel stuck jobs, and purge stored payloads for terminal, already-charged requests to meet data-retention rules.
Cancel request 'abc123def456ghi789jkl' on bytedance/sdxl-lightning-4step, then delete the stored payloads of a completed request by its requestId
10 endpoints — the modelrunner requests api queues inference jobs against hosted models, wrappers, or your own serverless gpu deployments, addressed by owner and model name such as bytedance/sdxl-lightning-4step.
METHOD
PATH
DESCRIPTION
/{ownerName}/{modelName}
Create a request
/{ownerName}/{modelName}/requests/{requestId}/status
Get request status
/{ownerName}/{modelName}/requests/{requestId}
Get request result
/{ownerName}/{modelName}/requests/{requestId}/cancel
Cancel a request
/requests
List requests
/requests/stream
Stream request updates
/{ownerName}/{modelName}
Create a request
/{ownerName}/{modelName}/requests/{requestId}/status
Get request status
/{ownerName}/{modelName}/requests/{requestId}
Get request result
/{ownerName}/{modelName}/requests/{requestId}/cancel
Cancel a request
/requests
List requests
/requests/stream
Stream request updates
What agents get from Jentic-routed access to this vendor.
Setup
Wiring ModelRunner by hand means sending the key with its Key prefix in the Authorization header, building owner and model paths, and writing the loop that polls status until a job is terminal. Through Jentic you install once, import ModelRunner from the API Directory, store the key once, and your agent calls it.
Permission scoping
ModelRunner puts the ownerName and modelName in the URL path (/{ownerName}/{modelName}/...), so a rule can pin your agent to one model or deployment and the operations you pick. You choose the operations it may call, so irreversible ones like payload deletion or making a request public are not included unless you add them.
Credential isolation
Your ModelRunner key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'generate an image from a prompt' or 'check inference job status', and Jentic returns the matching ModelRunner operation with its input schema so the agent calls the right endpoint without reading the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using ModelRunner Requests API through Jentic.
What authentication does the ModelRunner Requests API use?
Per its OpenAPI spec, the ModelRunner Requests API uses an API key sent in the `Authorization` header in the form `Key <your key>`, declared globally for every operation. Through Jentic the key is stored once, encrypted, by your own Jentic One instance and injected at call time, so it never enters the agent's prompt or logs.
How do I tell if a ModelRunner request succeeded?
Poll the status operation until status is COMPLETED, FAILED, or CANCELLED, then fetch the result. When listing or reading requests through the account-level operations, the spec says to read billingStatus rather than status to tell success from failure.
Can I limit what my agent is allowed to do with the ModelRunner API?
Yes. For example, write a rule that allows the create, status, and result operations only under /bytedance/sdxl-lightning-4step, so the agent can generate images with that one model and read its own results while payload deletion and visibility changes stay out of reach, and every call it makes is logged.
What are the rate limits for the ModelRunner Requests API?
The OpenAPI spec does not specify rate limits. Check the ModelRunner documentation at https://modelrunner.ai/docs for current limits before submitting large batches of jobs.
How do I generate an image with ModelRunner through Jentic?
Search Jentic for the intent 'generate an image from a prompt', which returns the ModelRunner create-request operation with its input schema; the agent posts the prompt to the model path, polls the returned status_url until COMPLETED, and reads the output from the result. To run it on your own infrastructure, install Jentic One from its GitHub repo.
Is there a ModelRunner MCP server?
You don't need an MCP server to give your agent the ModelRunner API. Jentic connects it directly from the API Directory: import it, store your key once, and your agent calls the create, status, result, and cancel operations. Operations are discovered on demand, so no extra tool definitions are loaded into the agent's context.
For Agents
Queue image-generation and other inference jobs on ModelRunner models or your Serverless GPU deployments, poll status, fetch outputs, cancel jobs, and list past requests. Authenticated with a Key token in the Authorization header.
Use for: Generate four images from a text prompt with SDXL Lightning, Check whether my inference request has finished, Get the output images for a completed request, Cancel the request that is still in the queue
Not supported: Does not train or fine-tune models, create or scale Serverless GPU deployments, or manage billing. Use for submitting, tracking, and retrieving inference requests only.
The ModelRunner Requests API queues inference jobs against hosted models, wrappers, or your own Serverless GPU deployments, addressed by owner and model name such as bytedance/sdxl-lightning-4step. Each job returns a request id with status, response, and cancel URLs, and moves through IN_QUEUE, IN_PROGRESS, and a terminal COMPLETED, FAILED, or CANCELLED state. You can poll a job's status, fetch its final output with inference and delay times, cancel it, list your account's requests filtered by endpoint, deployment, status, or metadata tags, and follow every transition on a server-sent event stream. Owner controls publish a request publicly or purge its stored payloads and output media.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>