Aan de slag
Authenticatie
Authenticeer elk request met een sk-api14 API-key als Bearer-token: sleutels aanmaken, veilig bewaren, beperken en intrekken in het dashboard.
Elke request naar een betaald endpoint wordt geauthenticeerd met een api14 API-key, die als Bearer-token in de Authorization-header wordt meegestuurd.
Authorization: Bearer sk-api14-...
De OpenAI-SDK's zetten deze header voor je op basis van de optie apiKey / api_key.
API-keys
Maak en beheer keys in API-keys.
- Keys beginnen met
sk-api14-en worden één keer getoond, bij het aanmaken. Alleen een hash wordt opgeslagen, dus een verloren key is niet te herstellen, maak een nieuwe aan en trek de oude in. - Elke key kan een eigen limiet voor requests per minuut, dagelijkse uitgavelimiet in USD en model-allowlist hebben. Zie Rate limits.
- Hoeveel keys je kunt hebben hangt af van je abonnement: 1 bij Free, 10 bij Pro, meer bij Team en Enterprise.
- Het intrekken van een key gaat direct in; requests met die key geven
401 invalid_api_keyterug.
Een key gebruiken
Bewaar de key in een omgevingsvariabele en lees hem in je code uit:
export API14_API_KEY="sk-api14-..."
curl https://api14.com/api/v1/chat/completions \
-H "Authorization: Bearer $API14_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "openai/gpt-5-mini", "messages": [{"role": "user", "content": "Hello"}]}'
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api14.com/api/v1",
apiKey: process.env.API14_API_KEY,
});
const result = await client.chat.completions.create({
"model": "openai/gpt-5-mini",
"messages": [
{
"role": "user",
"content": "Explain vector databases in two sentences."
}
]
});
console.log(result.choices[0].message.content);
Endpoints zonder key
Deze alleen-lezen catalogus-endpoints werken zonder authenticatie:
| Endpoint | Beschrijving |
|---|---|
GET /models | Alle beschikbare modellen |
GET /models/{id} | Eén model |
GET /images/models | Beeldmodellen met hun extra parameters |
GET /videos/models | Videomodellen met resoluties en duur |
GET /embeddings/models | Embeddingmodellen |
Al het andere, generatie-endpoints, /credits, /key, /generation en de status van videojobs, vereist een key.
Authenticatiefouten
Een ontbrekende, ongeldige of ingetrokken key geeft:
{
"error": {
"message": "Missing or invalid API key. Use \"Authorization: Bearer sk-api14-…\".",
"type": "authentication_error",
"code": "invalid_api_key"
}
}
met HTTP-status 401. Een key met een allowlist geeft 403 model_not_allowed terug voor andere modellen. Zie Fouten.
Keys veilig houden
- Zet een key nooit in browser- of mobiele-appcode, daar kan iedereen hem uitlezen. Roep api14 aan vanaf je server.
- Commit keys nooit naar versiebeheer. Gebruik omgevingsvariabelen of een secret manager.
- Gebruik één key per app of omgeving, zodat je er één kunt intrekken zonder de andere te breken.
- Stel een dagelijkse USD-limiet in voor keys die door scripts of minder vertrouwde services worden gebruikt, zodat een bug je saldo niet kan leegtrekken.
- Is een key uitgelekt, trek hem dan meteen in via API-keys.