Quick Start | Proxyify Docs
Docs Quick Start

Quick Start

Go from zero to your first API response in under 5 minutes. Proxyify is a drop-in replacement for the OpenAI API — no new SDK, no code refactoring, just one line change.

How it works

Proxyify sits between your application and AI providers (OpenAI, Anthropic, Google, Meta, and 50+ others). You send requests to Proxyify using the exact same format as the OpenAI SDK. Proxyify authenticates you, deducts credits, routes your request to the right provider, and returns the response — all transparently.

The only thing that changes in your code is the base_url. Everything else — method names, request parameters, response shapes, streaming — is identical to the OpenAI API.

Prerequisites

1

Create a Proxyify account

Sign in with Google — no email/password required. Your account is created automatically on first login.

2

Get an API key

Go to Dashboard → Keys and click New Key. Your key starts with prx- and is shown only once — copy and store it securely. All subsequent uses authenticate via this key.

3

Check your credits

You can see your balance on the Dashboard overview. Purchase a credit pack from Billing to get started. Credits are deducted per request based on model and tokens used.

Step 1 — Install the SDK

Proxyify uses the standard OpenAI SDK. There is no custom package to install — if you already have openai installed, you are ready to go.

bash — Python
pip install openai
bash — Node.js
npm install openai

Step 2 — Make your first request

Set base_url (Python) or baseURL (JavaScript) to https://proxyify.dev/v1 and pass your prx- key as api_key. That is the only change. All existing OpenAI code works immediately.

Python
from openai import OpenAI # Initialize the client — only base_url is different from OpenAI client = OpenAI( api_key="prx-xxxxxxxxxxxxxxxx", # your Proxyify key (prx- prefix) base_url="https://proxyify.dev/v1", # ← the only change ) # Use exactly like the OpenAI SDK — method names are identical response = client.chat.completions.create( model="openai/gpt-4o-mini", # provider/model-name format messages=[ {"role": "user", "content": "Explain REST APIs in one sentence."} ], ) print(response.choices[0].message.content)
JavaScript / Node.js
import OpenAI from "openai"; // Initialize the client — only baseURL is different from OpenAI const client = new OpenAI({ apiKey: "prx-xxxxxxxxxxxxxxxx", // your Proxyify key baseURL: "https://proxyify.dev/v1", // ← the only change }); // Exact same API as OpenAI const response = await client.chat.completions.create({ model: "openai/gpt-4o-mini", // provider/model-name format messages: [{ role: "user", content: "Explain REST APIs in one sentence." }], }); console.log(response.choices[0].message.content);
curl
curl https://proxyify.dev/v1/chat/completions \ -H "Authorization: Bearer prx-xxxxxxxxxxxxxxxx" \ -H "Content-Type: application/json" \ -d '{ "model": "openai/gpt-4o-mini", "messages": [{"role": "user", "content": "Explain REST APIs in one sentence."}] }'

Step 3 — Read the response

The response structure is identical to the OpenAI API. Proxyify appends a _proxyify object to every response with billing and performance metadata:

json — response
{ "id": "chatcmpl-...", "choices": [{ "message": { "role": "assistant", "content": "REST APIs are..." }, "finish_reason": "stop" }], "usage": { "prompt_tokens": 14, "completion_tokens": 22, "total_tokens": 36 }, "_proxyify": { "credits_used": 4, // credits deducted from your balance "cost_usd": 0.000004, // actual provider cost in USD "model_used": "openai/gpt-4o-mini", "input_tokens": 14, "output_tokens": 22, "latency_ms": 830, // end-to-end latency "cached": false, // true = served from cache, 0 credits "cheaper_model": "anthropic/claude-haiku-3-5" // null if already cheapest } }

Every request is logged in real time. View full request history, token counts, latency, and cost at Dashboard → Logs.

Model naming

Models are identified by a provider/model-name slug. The provider prefix is required. You can also pass just the model name (gpt-4o) and Proxyify will resolve it automatically — but using the full slug is recommended to avoid ambiguity when multiple providers offer the same model name.

model slugs — examples
# OpenAI "openai/gpt-4o" "openai/gpt-4o-mini" "openai/o3-mini" "openai/o4-mini" # Anthropic "anthropic/claude-3-5-sonnet" "anthropic/claude-3-7-sonnet" "anthropic/claude-3-5-haiku" # Google "google/gemini-2.0-flash" "google/gemini-2.5-pro" "google/gemini-2.5-flash" # Meta "meta-llama/llama-4-scout" "meta-llama/llama-3.3-70b-instruct" # Image generation "black-forest-labs/flux-1.1-pro" "openai/dall-e-3" # Speech-to-Text — copy slug from Dashboard → Models "openai/whisper-1" // example; use exact slug from /dashboard/models/ # Text-to-Speech — copy slug from Dashboard → Models "openai/gpt-4o-mini-tts" // example; use exact slug from /dashboard/models/

The full list with pricing is available on the Models page — click any slug to copy it to clipboard. You can also query it programmatically:

curl — list all models
curl https://proxyify.dev/v1/models

Next steps