API e Integrazione

ProxyPT espone un'API compatibile con OpenAI. Qualsiasi applicazione che usa l'SDK OpenAI può integrarsi con ProxyPT cambiando solo la base URL e la chiave API.

Endpoint e autenticazione

Base URL:  https://<your-proxypt-domain>/v1
Auth:      Bearer token (chiave API generata dal pannello admin)

Per generare una chiave API: Pannello AdminAPI KeysCrea nuova chiave.

Endpoint disponibili

Chat completions

POST /v1/chat/completions

Parametri identici all'API OpenAI. Il campo model deve corrispondere al nome configurato nell'interfaccia admin.

{
  "model": "nome-modello-configurato",
  "messages": [
    {"role": "user", "content": "Testo della richiesta"}
  ],
  "temperature": 0.7,
  "max_tokens": 1000
}

Embeddings

POST /v1/embeddings
{
  "model": "nome-modello-embeddings",
  "input": "Testo da vettorializzare"
}

SDK Python

pip install openai
import openai

client = openai.OpenAI(
    api_key="sk-...",
    base_url="https://<your-proxypt-domain>/v1"
)

response = client.chat.completions.create(
    model="nome-modello-configurato",
    messages=[{"role": "user", "content": "La tua domanda"}]
)

print(response.choices[0].message.content)

Streaming:

stream = client.chat.completions.create(
    model="nome-modello-configurato",
    messages=[{"role": "user", "content": "La tua domanda"}],
    stream=True
)

for chunk in stream:
    content = chunk.choices[0].delta.content or ""
    print(content, end="")

SDK JavaScript / Node.js

npm install openai
import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: 'sk-...',
  baseURL: 'https://<your-proxypt-domain>/v1',
});

const response = await client.chat.completions.create({
  model: 'nome-modello-configurato',
  messages: [{ role: 'user', content: 'La tua domanda' }],
});

console.log(response.choices[0].message.content);

Note operative

  • I modelli disponibili tramite API sono gli stessi configurati nel pannello admin, con le stesse regole di visibilità e budget
  • I consumi API vengono conteggiati nel budget dell'utente associato alla chiave API
  • Il rate limiting si applica per chiave API, con gli stessi limiti configurati per l'utente corrispondente