Base URL
Use the versioned endpoint
Set your client’s API base URL to exactly https://scriptengine.org/v1. The version root is an API base, not a human-readable web page, so opening it directly in a browser can return a 404 response.
Authentication
Keep the API key private
Use the individual bearer key generated for your account. Store it in a local environment variable or a server-side secret manager; never commit it, include it in a prompt, or publish it in a screenshot.
export SCRIPTENGINE_API_KEY="YOUR_PRIVATE_KEY"
Model discovery
Discover models with your own key
Model availability can change. Use the public AI API model catalog to compare current rate information, then query the authenticated models endpoint rather than copying a model ID from an old example or another account. If you are evaluating a cheap OpenRouter alternative, keep the same model-discovery and request-format checks on both sides. The capability matrix separates verified features from model-specific or unpublished behavior, while the alternatives guide explains trade-offs against gateways and hosted inference services.
curl https://scriptengine.org/v1/models \
-H "Authorization: Bearer $SCRIPTENGINE_API_KEY"
Chat completions
Send a standard request
Choose a model ID returned by the authenticated discovery call, then send it to the chat-completions route using the same bearer key.
curl https://scriptengine.org/v1/chat/completions \
-H "Authorization: Bearer $SCRIPTENGINE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "YOUR_DISCOVERED_MODEL_ID",
"messages": [{"role": "user", "content": "Hello"}]
}'
Connection checklist
Verify the route before sending production traffic
Start by querying /v1/models with the same bearer key your client will use. Select a returned model ID, then make a small chat-completions request before moving a larger workload. This avoids relying on a stale model name and confirms that the base URL, authorization header and JSON request body are all being sent by the client you actually deploy.
- Set the base URL to
https://scriptengine.org/v1. - Keep the key outside source control and pass it as a bearer credential.
- Discover an available model for that key.
- Send a small completion and inspect the response before increasing traffic.
Request troubleshooting
Check the credential before changing client code
A 401 response means the request has no bearer key or the key is not valid. A 403 response can indicate that a sandbox key is being used against the gateway. During an account-credit top-up, a 409 response means the key is temporarily locked; wait briefly and retry. For model-related errors, re-run model discovery and use an ID returned to the same key rather than an ID copied from another account or older example.
Next steps
Use a client-specific guide when available
For Hermes Agent, use the step-by-step setup paths for the CLI or Desktop app. They explain where to enter the base URL, how to discover models, and how to verify the connection.