List available models
package main
import ( "fmt" "net/http" "io")
func main() {
url := "https://api.ai.wpengine.com/v1/models"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}const url = 'https://api.ai.wpengine.com/v1/models';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}<?php
$client = new \GuzzleHttp\Client();
$response = $client->request('GET', 'https://api.ai.wpengine.com/v1/models');
echo $response->getBody();curl --request GET \ --url https://api.ai.wpengine.com/v1/modelsReturns the model catalog with rate-card pricing and display metadata. No authentication is required.
Authorizations
Section titled “Authorizations”- None
Responses
Section titled “Responses”List of supported models
object
object
Provider organization name preserved for OpenAI /v1/models compatibility (e.g. “openai”, “anthropic”, “moonshotai”).
Canonical provider key used by the console for grouping and iconography. One of: “openai”, “google”, “gemma”, “anthropic”, “deepseek”, “kimi”, “glm”, “minimax”, “qwen”.
Human-readable model name for UI display.
Short marketing-style description of the model’s capabilities.
Operations and features this model supports. Clients that build agents or tool-calling flows should only offer models whose capabilities include “tools”.
Maximum input context length in tokens.
Maximum number of output tokens the model can generate in a single response. Omitted when no limit is published for the model.
Per-model parameter constraints. Omitted for models with no constrained parameters.
object
Rules for a numeric chat parameter. Omitted when not applicable. Supported parameters publish max (and optionally min); unsupported parameters publish supported: false.
object
When false, the model rejects any explicit value for this parameter (provider default only). Omitted when max is published.
Smallest accepted value, inclusive. Omitted when the minimum is 0; clients and the gateway treat a missing min as 0.
Largest accepted value, inclusive. Published for every supported parameter (when supported is not false).
Rules for a string-enum chat parameter. Omitted when not applicable. Values lists every accepted string the model honours end-to-end through the current relay.
object
Every accepted value for this parameter.
Pricing for a model. The unit field says how to read it.
With unit of credits, token rates apply to chat-family models; the per-image, per-character, and per-megabyte rates apply to image generation, speech generation, and transcription respectively. Only the rates that apply to a given model are present, so a chat model carries token rates and an image model carries per_image.
With unit of ai_credits, every price is AI credits per 1,000,000 tokens of one token type, and only the token types the model bills are present. The per-image, per-character, per-megabyte, per-search, and reasoning fields are not set. A model that bills long prompts at higher rates adds long_context.
All rates are decimal strings to avoid floating-point drift.
object
Credits per 1,000,000 input tokens.
Credits per 1,000,000 output tokens.
Credits per 1,000,000 tokens read from the prompt cache.
Credits per 1,000,000 tokens written to the prompt cache.
AI credits per 1,000,000 tokens written to the prompt cache with a 1-hour lifetime. Present only when unit is ai_credits and the model bills 1-hour cache writes.
AI credits per 1,000,000 audio tokens read from the prompt cache. Present only when unit is ai_credits and the model bills cached audio input.
AI credits per 1,000,000 audio input tokens. Present only when unit is ai_credits and the model bills audio input.
AI credits per 1,000,000 audio output tokens. Present only when unit is ai_credits and the model bills audio output.
AI credits per 1,000,000 image output tokens. Present only when unit is ai_credits and the model bills image output.
Prices a model bills at once a prompt exceeds threshold_tokens, instead of the standard prices. Present only when unit is ai_credits and the model has long-context pricing.
object
Prompt size in tokens above which these prices apply.
AI credits per 1,000,000 input tokens.
AI credits per 1,000,000 output tokens.
AI credits per 1,000,000 tokens read from the prompt cache.
AI credits per 1,000,000 tokens written to the prompt cache.
AI credits per 1,000,000 tokens written to the prompt cache with a 1-hour lifetime.
AI credits per 1,000,000 audio tokens read from the prompt cache.
AI credits per 1,000,000 audio input tokens.
AI credits per 1,000,000 audio output tokens.
AI credits per 1,000,000 image output tokens.
Credits per 1,000,000 reasoning tokens, when a model bills those separately from output tokens.
Credits per web search the provider runs during a chat call, charged on top of tokens. Present on models that support web search.
Credits per generated image.
Credits per 1,000,000 characters of generated speech.
Credits per megabyte of transcribed audio.
Identifies the rate card these prices were taken from. Compare it between responses to detect a repricing.
The unit every rate above is denominated in. credits prices come from the model’s rate card. ai_credits prices are AI credits per 1,000,000 tokens of each token type.
The date this model was announced as deprecated, in YYYY-MM-DD form. Absent for a model with no announced deprecation. On and after this date the model is still served unchanged, but new integrations should prefer an alternative — where one exists, the model description names it.
The date this model stops being served, in YYYY-MM-DD form. Absent when the model is deprecated but no removal date has been announced yet. After this date requests naming the model are rejected, and it is no longer shown in the console model catalog.
Example
{ "object": "list", "data": [ { "id": "google/gemini-3.5-flash", "object": "model", "owned_by": "openai", "provider": "openai", "display_name": "GPT OSS 120B", "capabilities": [ "chat", "tools", "reasoning" ], "context_window": 200000, "max_output_tokens": 128000, "parameters": { "temperature": { "supported": false, "max": 1 }, "response_format_type": { "values": [ "text" ] } }, "pricing": { "input_per_million": "1.5", "output_per_million": "9", "cache_read_per_million": "0.5", "cache_write_per_million": "6.25", "cache_write_1h_per_million": "10", "cache_read_audio_per_million": "0.75", "input_audio_per_million": "3", "output_audio_per_million": "12", "output_image_per_million": "30", "long_context": { "threshold_tokens": 200000, "input_per_million": "3", "output_per_million": "18", "cache_read_per_million": "0.3", "cache_write_per_million": "3.75", "cache_write_1h_per_million": "6", "cache_read_audio_per_million": "1.5", "input_audio_per_million": "6", "output_audio_per_million": "24", "output_image_per_million": "60" }, "reasoning_per_million": "9", "per_web_search": "0.01", "per_image": "0.04", "per_million_characters": "30", "per_megabyte_audio": "2.25", "pricing_version": "2026-05-01", "unit": "credits" }, "deprecation_date": "2026-01-05", "removal_date": "2026-07-05" } ]}Rate limit exceeded. The request was throttled at the edge; wait and retry later. The response body is a short HTML page generated by the load balancer, not a structured JSON error — clients should rely on the 429 status code rather than parsing the body.