For Agents
Route a prompt to the best LLM for cost, quality, or latency, optimise prompts asynchronously, and train a custom router for your workload.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Not Diamond 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://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | 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 Not Diamond API.
Select the best LLM for a given prompt and preference profile via /v2/modelRouter/modelSelect
Create, update, and delete user preference profiles that bias model selection
Submit a prompt for asynchronous optimisation with /v2/prompt/optimize and poll status
GET STARTED
Use for: I want to pick the cheapest LLM that still answers correctly, Find the best model for a long-context summarisation prompt, Retrieve a list of all models the router currently supports, Submit a prompt for optimisation and wait for the rewritten version
Not supported: Does not host or run language models, fine-tune base models, or stream completions — use for model selection and prompt optimisation only.
Jentic publishes the only available OpenAPI specification for Not Diamond API, keeping it validated and agent-ready. Not Diamond is an AI model router that picks the most suitable large language model for each prompt based on quality, cost, and latency preferences. The API exposes model selection, prompt optimisation, custom router training, and user preference management so applications can offload routing decisions instead of hard-coding a single provider. It returns a recommended model per request and supports asynchronous prompt optimisation jobs that improve prompts before they are sent to the underlying LLM.
Retrieve optimised prompt results and per-run cost breakdowns
Train a custom router on labelled data via /v2/pzn/trainCustomRouter
List currently supported models from /v2/models
Patterns agents use Not Diamond API for, with concrete tasks.
★ Cost-Aware Model Routing
Route each incoming prompt to the cheapest model that meets a configured quality threshold by calling /v2/modelRouter/modelSelect with a user preference profile. This shifts routing logic out of the application and into Not Diamond, so adding a new provider or changing weights does not require redeploying. Useful for SaaS products that want to expose 'auto' as a model choice without locking customers to one vendor.
Call POST /v2/modelRouter/modelSelect with a user preference favouring cost, supply the prompt, and return the recommended model identifier.
Asynchronous Prompt Optimisation
Improve underperforming prompts by submitting them to /v2/prompt/optimize, polling /v2/prompt/optimizeStatus until the run completes, and retrieving the rewritten prompt from /v2/prompt/optimizeResults. The cost endpoint returns a breakdown of compute spent during the run so teams can budget the optimisation pipeline. This is suited to teams running prompt experiments at scale rather than ad-hoc tuning.
Submit a baseline prompt to POST /v2/prompt/optimize, poll /v2/prompt/optimizeStatus/{id} every 30 seconds, and return the optimised prompt once status is complete.
Custom Router Training
Train a routing model tailored to your traffic by sending labelled examples to /v2/pzn/trainCustomRouter. The custom router can then be selected during model selection so that decisions reflect your evaluation criteria rather than the generic default. Suitable for teams with a stable internal eval set who want better routing on domain-specific prompts.
Send a training payload of prompt-completion pairs with labels to POST /v2/pzn/trainCustomRouter and capture the resulting custom router identifier.
AI Agent LLM Selection via Jentic
Let an autonomous agent decide which LLM to use for each tool call by invoking the Not Diamond router through Jentic. The agent does not need to maintain a price-per-token table — Jentic returns the right modelSelect operation, the agent loads the schema, and the router responds with a model name to call next. Combined with Jentic credential isolation, this keeps Not Diamond's bearer token out of agent prompts.
Search Jentic for 'select the best LLM for this prompt', load Not Diamond's modelSelect schema, execute it with the agent's current prompt, and forward the result to the chosen model.
10 endpoints — jentic publishes the only available openapi specification for not diamond api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/v2/modelRouter/modelSelect
Select the best model for a prompt
/v2/preferences/userPreferenceCreate
Create a user preference profile
/v2/prompt/optimize
Submit a prompt for asynchronous optimisation
/v2/prompt/optimizeStatus/{optimization_run_id}
Check optimisation run status
/v2/prompt/optimizeResults/{optimization_run_id}
Retrieve optimised prompt results
/v2/pzn/trainCustomRouter
Train a custom router
/v2/models
List supported models
/v2/modelRouter/modelSelect
Select the best model for a prompt
/v2/preferences/userPreferenceCreate
Create a user preference profile
/v2/prompt/optimize
Submit a prompt for asynchronous optimisation
/v2/prompt/optimizeStatus/{optimization_run_id}
Check optimisation run status
/v2/prompt/optimizeResults/{optimization_run_id}
Retrieve optimised prompt results
Three things that make agents converge on Jentic-routed access.
Credential isolation
Not Diamond bearer tokens are stored encrypted in the Jentic vault (MAXsystem). Agents receive scoped execution access and never see the raw token.
Intent-based discovery
Agents search Jentic by intent (e.g., 'select the best LLM for this prompt') and Jentic returns the matching Not Diamond operation with its input schema, so the agent can route without manually wiring the modelSelect call.
Time to first call
Direct Not Diamond integration: 1-2 days to handle auth, async optimisation polling, and preference management. Through Jentic: under 30 minutes.
Alternatives and complements available in the Jentic catalogue.
Specific to using Not Diamond API through Jentic.
Why is there no official OpenAPI spec for Not Diamond API?
Not Diamond does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Not Diamond API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Not Diamond API use?
The Not Diamond API uses HTTP bearer token authentication. Each request must include an `Authorization: Bearer <token>` header. Through Jentic, the bearer token is stored encrypted in the Jentic vault and injected at execution time, so it never appears in agent prompts or logs.
Can I optimise prompts asynchronously with the Not Diamond API?
Yes. POST /v2/prompt/optimize starts an optimisation run and returns a run identifier. Poll /v2/prompt/optimizeStatus/{optimization_run_id} until the job is complete, then read /v2/prompt/optimizeResults/{optimization_run_id} for the rewritten prompt and /v2/prompt/optimize/{optimization_run_id}/costs for the cost breakdown.
What are the rate limits for the Not Diamond API?
The published spec does not declare numeric rate limits. Treat /v2/modelRouter/modelSelect as the highest-volume endpoint and throttle accordingly. Watch for HTTP 429 responses and back off; cache /v2/models results since the supported model list changes infrequently.
How do I route a prompt to the best model through Jentic?
Search Jentic for 'select the best LLM for this prompt', load the POST /v2/modelRouter/modelSelect schema, and execute it with your prompt and a user preference identifier. With `pip install jentic` the call is a single execute() invocation that returns the recommended model name.
Is the Not Diamond API free?
Pricing is set by Not Diamond's account tiers and is not encoded in the spec. Most teams use a paid plan once they exceed evaluation usage; check the Not Diamond dashboard for the current limits attached to your bearer token.
/v2/pzn/trainCustomRouter
Train a custom router
/v2/models
List supported models