OneRouter
Models / ibm-granite / Granite 4.0 Micro
ibm-granite

Granite 4.0 Micro

cheap

Send this model by its id from any OpenAI-compatible client. One key, one base URL, 131K of context.

ibm-granite/granite-4.0-h-micro
$0.0179Input / 1M tokens
$0.1176Output / 1M tokens
131KContext window
117KMaximum output

USD per million tokens, OneRouter’s fee included. A response is charged on the attempt that produced it — see billing.

Use this model

Every snippet carries this model’s id. The base URL and the key are the same ones you already use for every other model in the catalog.

curl https://onerouter.network/v1/chat/completions \
  -H "Authorization: Bearer $ONEROUTER_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "ibm-granite/granite-4.0-h-micro",
    "messages": [{"role":"user","content":"ping"}],
    "stream": true
  }'

More clients — Cursor, Zed, Continue, Aider, LiteLLM — are on client setup.

Specification

Model IDibm-granite/granite-4.0-h-micro
Authoribm-granite
Context window131,000 tokens
Maximum output117,900 tokens
Inputtext
Outputtext
Input price$0.0179 / 1M tokens
Output price$0.1176 / 1M tokens

Endpoints

Send the id unchanged on either supported shape:

EndpointShapeState
POST /v1/chat/completionsOpenAI Chat CompletionsLive
POST /v1/messagesAnthropic MessagesLive
POST /v1/responsesOpenAI ResponsesNot implemented

Both live shapes accept JSON and SSE. Set "stream": true for incremental output — see streaming. /v1/responses answers 400 unsupported_endpoint.

Hosts

Priority is the catalog order, not a live latency score.

HostPriorityWhen it serves
openrouter1Tried first

A single route serves this model. There is nowhere to fail over to: if the host does not answer, the request returns 503 model_unavailable and nothing is charged.

Pin one host and refuse failover entirely:

json
{
  "model": "ibm-granite/granite-4.0-h-micro",
  "messages": [{ "role": "user", "content": "ping" }],
  "provider": { "only": ["openrouter"] }
}

← Back to the catalog · Model guide · Get a key