Files
tilbudgivern/docs/OPENAI_COSTS_API.md
T

46 lines
1.7 KiB
Markdown

# OpenAI-forbrug og omkostninger
## Formål
Tilbudsgivern viser lokalt registreret tokenforbrug og kan hente organisationsomkostninger, når en gyldig admin-nøgle er konfigureret.
## Konfiguration
Sæt værdierne i `backend/.env` eller den godkendte serverkonfiguration:
```dotenv
OPENAI_ADMIN_KEY=REPLACE_ME
OPENAI_BUDGET_QUOTA_USD=0
```
En værdi på `0` for budgetkvoten betyder, at der ikke håndhæves en lokal månedlig kvote. Hemmeligheder må aldrig skrives i dokumentation eller committes.
## Endpoints
Routes findes i `backend/src/routes/quotes.js` og den samlede server:
| Endpoint | Funktion |
|---|---|
| `GET /api/quotes/openai/stats` | Lokalt registreret token- og omkostningsforbrug |
| `POST /api/quotes/openai/stats/update` | Forsøger at opdatere forbrugsdata |
| `GET /api/quotes/openai/costs?daysBack=30` | Organisationsomkostninger for en periode |
| `GET /api/quotes/openai/costs/breakdown` | Grupperet omkostningsfordeling |
| `GET /api/quotes/openai/budget/status` | Lokal budgetstatus og advarselsniveau |
## Lokal kontrol
```bash
curl http://localhost:4032/api/quotes/openai/stats
curl http://localhost:4032/api/quotes/openai/costs?daysBack=7
curl http://localhost:4032/api/quotes/openai/budget/status
```
Uden `OPENAI_ADMIN_KEY` skal endpoints, der kræver organisationsdata, returnere en kontrolleret fejl uden at lække konfiguration.
## Vedligeholdelse
- Brug data fra API-svaret som sandhedskilde for aktuelle omkostninger.
- Undgå at gemme modelpriser i dokumentationen; priser og modeludvalg ændrer sig.
- Kontrollér implementeringen i `backend/src/services/openaiService.js` og credential-håndteringen i `backend/src/utils/openaiCredentials.js`.
- Log aldrig admin-nøgler eller komplette API-svar med følsomme metadata.