Authentication — Secure API Access
Find the perfect server in milliseconds
API-sleutels
Genereer en beheer API-sleutels via het ServerScout Developer Dashboard. Elke sleutel is gekoppeld aan jouw account en kan per project worden ingeperkt met scopes.
Log in op dashboard.serverscout.nl/developer en navigeer naar API-sleutels > Nieuwe sleutel aanmaken. Geef je sleutel een beschrijvende naam zoals RankTrak-Produktie of DiscordBot-Test. ServerScout genereert direct een 64-karakter sleutel die begint met het prefix ss_live_ voor productie-omgevingen of ss_test_ voor sandbox-tests.
Elke sleutel ondersteunt de volgende scopes:
- server:read — lezen van servermetadata, status en spelerslijsten
- server:write — aanmaken en bewerken van serververmeldingen
- player:read — opvragen van spelersstatistieken en profieldata
- vote:write — registreren van stemacties voor gesponsorde servers
Sleutels kunnen op elk moment worden ingetrokken. Bij hergeneratie wordt de vorige sleutel binnen 15 seconden ongeldig verklaard. Houd je sleutels geheim — deel ze nooit in openbare repositories of client-side code.
Productiesleutel
Prefix: ss_live_. Geldig op alle ServerScout-productie-API's. Limiet: 1.000 verzoeken per minuut per sleutel. Geschikt voor live integraties zoals Discord-bots en webdashboards.
Testsleutel
Prefix: ss_test_. Geldig op het sandbox-domein api-sandbox.serverscout.nl. Onbeperkte request-rate voor ontwikkeling. Data is geanonimiseerd en wordt elke 24 uur vernieuwd.
Webhooks
Configureer webhook-endpoints voor real-time notificaties bij serverstatuswijzigingen, nieuwe spelersregistraties of stemacties. ServerScout ondertekent elke webhook-payload met HMAC-SHA256 voor verificatie.
OAuth 2.0 Flow
Voor applicaties die namens eindgebruikers handelen, ondersteunt ServerScout de OAuth 2.0 Authorization Code flow met PKCE. Dit is verplicht voor integraties die spelersprofielen of serverbeheerdersrechten benaderen.
Registreer eerst je applicatie op developer.serverscout.nl/apps. Je ontvangt een client_id en een geheim client_secret. Stel je redirect URI in — bijvoorbeeld https://mijnapp.nl/auth/callback — en controleer of deze exact overeenkomt; ServerScout accepteert geen wildcard-URI's.
De autorisatiestroom verloopt als volgt:
- Stuur de gebruiker naar
https://auth.serverscout.nl/oauth/authorizemet parametersclient_id,redirect_uri,scope,response_type=codeen eencode_challenge(PKCE). - De gebruiker meldt zich aan bij ServerScout en verleent toestemming voor de aangevraagde scopes.
- ServerScout redirect de gebruiker terug naar je
redirect_urimet een eenmaligecodeparameter. - Wissel de
codein voor eenaccess_tokenenrefresh_tokenviaPOST https://auth.serverscout.nl/oauth/token. - Gebruik het
access_tokenin deAuthorization: Bearerheader voor API-verzoeken. Tokens verlopen na 3600 seconden; gebruik hetrefresh_tokenvoor verlenging.
Onze OAuth-implementatie is compatibel met standaardbibliotheken zoals Auth0, Paswordless en NextAuth.js. Een volledige OpenID Connect discovery-document is beschikbaar op https://auth.serverscout.nl/.well-known/openid-configuration.
Authorization Code + PKCE
Standaard flow voor web- en mobiele applicaties. Verplichte PKCE-uitwisseling voorkomt authorization-code interception. Ondersteund door alle moderne OAuth-bibliotheken.
Client Credentials
Voor machine-to-machine communicatie zonder gebruikerscontext. Gebruik je client_id en client_secret om direct een access token op te halen. Geschikt voor backend-services en cron-jobs.
Beveiligingsbest Practices
Volg deze richtlijnen om je integratie met de ServerScout API zo veilig mogelijk te houden. Elke inbreuk op deze richtlijnen kan leiden tot tijdelijke of permanente opschorting van API-toegang.
Rotatie en minimalisatie
Roteer je API-sleutels minimaal elke 90 dagen via het Developer Dashboard. Gebruik de principle of least privilege: vraag alleen de scopes aan die je echt nodig hebt. Een Discord-bot die alleen serverstatussen weergeeft, heeft geen server:write scope nodig.
Alleen TLS 1.2+
De ServerScout API accepteert uitsluitend verzoeken over HTTPS (TLS 1.2 of hoger). HTTP-verzoeken worden direct verworpen met een 403-status. Configureer je backend om TLS 1.3 te prefereren en certificaatvalidatie te forceren.
Eerbiedig de limieten
Productie-API's hanteren een limiet van 1.000 verzoeken per minuut per sleutel. OAuth-access tokens hebben een lagere limiet van 300 verzoeken per minuut. Respecteer de X-RateLimit-Remaining en X-RateLimit-Reset headers in API-antwoorden. Implementeer exponential backoff bij 429-responses.
Nooit in client-side code
Plaats API-sleutels en client secrets nooit in frontend-code, GitHub-repositories of Docker images die worden gedeeld. Gebruik environment variables of een secrets manager zoals HashiCorp Vault of AWS Secrets Manager. ServerScout scant automatisch ingelekte sleutels in publieke repositories en zal deze direct intrekken.
Log en alert
Activeer real-time alerts in het Developer Dashboard voor verdachte activiteit: inlogpogingen uit ongebruikelijke regio's, plotselinge pieken in API-gebruik of herhaalde 401-responses. ServerScout stuurt automatisch een e-mail naar het rekening-eigenaar bij elke nieuwe sleutelgeneratie of scope-wijziging.
Verifieer signing signatures
Elke webhook van ServerScout bevat een X-ServerScout-Signature header met een HMAC-SHA256-signatuur. Verifieer deze signatuur server-side voordat je de payload verwerkt. De signing secret vind je bij je webhook-configuratie in het dashboard.
Bij vragen over API-authenticatie of bij vermoeden van een beveiligingsincident, neem dan contact op met ons securityteam via security@serverscout.nl of via het contactformulier op dashboard.serverscout.nl/security. We reageren binnen 4 uur tijdens werkdagen.