Skip to content

Quickstart

This guide takes a new tenant to one successful response from a hosted Platform model. OneNexus operates the model and catalog endpoint, so this path needs no GPU quota.

You need:

  1. Choose a Platform model.

    In the Console, open Platform models and expand a model row. Copy these two values:

    • the shared Endpoint displayed above the catalog; and
    • the exact model value inside that row’s cURL request.

    Use the generated cURL value rather than the Public model ID column. The latter is the catalog and billing identity; the serving router dispatches on the model string shown in the cURL request.

    If the row shows an amber notice that the policy layer has not acknowledged the listing, wait for it to clear or choose another model — a newly published listing can take about a minute to become callable.

    The Platform Models page. A shared endpoint sits above the table; one row is expanded to show model capabilities and a cURL request whose body sets model to the public model id.

    The endpoint above the table, and the model value inside the expanded row’s cURL — those two, not the Public model ID column.

  2. Generate a Platform API key.

    Open API KeysGenerate API key. Choose an expiry and set Type to Platform.

    Copy the secret from the success dialog; the Console shows it only once.

    The Generate API key dialog with Type set to Platform. No model list is offered; a note explains the key calls every published platform model, including ones added later.

    A Platform key shows no model list — it calls the whole catalog and cannot be narrowed.

  3. Set the connection values.

    Replace <model-value-from-curl> with the model value copied in step 1. The configured URL below is the normal catalog URL; if the Console shows a different endpoint, use the Console value.

    Bash or zsh

    Terminal
    export ONX_BASE_URL="https://catalog.onenexus-do.cloud/v1"
    export ONX_MODEL="<model-value-from-curl>"

    Run the key prompt separately, then paste the key when prompted, to keep the secret out of shell history.

    Terminal
    printf "OneNexus Platform API key: "; IFS= read -rs ONX_API_KEY </dev/tty && export ONX_API_KEY && printf "\n"

    PowerShell

    PowerShell
    $env:ONX_BASE_URL = "https://catalog.onenexus-do.cloud/v1"
    $env:ONX_MODEL = "<model-value-from-curl>"
    $secret = Read-Host "OneNexus Platform API key" -AsSecureString
    $env:ONX_API_KEY = [System.Net.NetworkCredential]::new("", $secret).Password
    Remove-Variable secret
  4. Install the SDK and create the script.

    Install the OpenAI Python SDK:

    Terminal
    python -m pip install openai

    Save this as first_call.py:

    first_call.py
    import os
    from openai import OpenAI
    client = OpenAI(
    base_url=os.environ["ONX_BASE_URL"],
    api_key=os.environ["ONX_API_KEY"],
    )
    response = client.chat.completions.create(
    model=os.environ["ONX_MODEL"],
    messages=[{"role": "user", "content": "Say hello in one sentence."}],
    )
    print("Success:", response.choices[0].message.content)
  5. Run the request and confirm the response.

    Terminal
    python first_call.py

    Success prints a model-generated message prefixed with Success:. For example:

    Success: Hello! I hope you're having a great day.

    The wording after Success: varies; a complete final-answer result has response.choices[0].message.content. A 2xx response with empty final text still proves the API was reached; inspect the full response before retrying, since some models can return reasoning without final content.

ResultWhat to check
401The Authorization header received a key. Generate a replacement if the secret was lost.
403The key Type is Platform, the catalog endpoint is correct, the request uses the exact model value from the row’s cURL request, and no policy-layer notice is showing. Do not retry unchanged.
404The URL ends in /v1/chat/completions. The catalog does not currently expose GET /v1/models.
429 or 503Retry only a bounded number of times with exponential backoff and jitter. Escalate if the error persists.

Do not log the API key or put it in source code. For the complete request contract and error guidance, see the API reference.