De PC Patrol User API: je account beheren via een API
Naast het klantenpaneel bieden we een HTTP REST API aan waarmee je je account, facturen, diensten, domeinen, SSL-certificaten en DNS programmatisch kunt beheren. Daarmee koppel je PC Patrol aan je eigen applicaties, scripts of systemen. Alle antwoorden van de API worden teruggegeven in JSON.
De volledige, altijd actuele documentatie met alle methoden, parameters en codevoorbeelden vind je in je klantenpaneel onder:
https://my.pcpatrol.nl/index.php?/userapiBasis-URL
Alle API-aanvragen lopen via:
https://my.pcpatrol.nl/api/We raden sterk aan om alle aanvragen over HTTPS te doen.
Authenticatie
Er zijn twee manieren om je te authenticeren. Gebruik je e-mailadres en wachtwoord van het klantenpaneel als inloggegevens.
JSON Web Token (aanbevolen voor integraties)
Bij JWT wissel je je inloggegevens eenmalig in voor een token via de /login-route. Dat token stuur je daarna mee in elke aanvraag, zodat je niet steeds je wachtwoord hoeft mee te geven.
Token ophalen:
curl -X POST "https://my.pcpatrol.nl/api/login" \
-H "Content-Type: application/json" \
-d '{"username": "jij@voorbeeld.nl", "password": "jouw-wachtwoord"}'Antwoord:
{
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...",
"refresh": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9..."
}Gebruik het token vervolgens in de Authorization-header:
curl -X GET "https://my.pcpatrol.nl/api/details" \
-H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9..."Bijbehorende routes:
POST /loginhaalt een nieuw token en refresh-token op.POST /tokenhaalt met je refresh-token een nieuw token op (zonder opnieuw in te loggen).POST /logoutmaakt je token ongeldig.POST /revoketrekt je token en refresh-token in.
Basic Authentication
Bij Basic Auth stuur je bij elke aanvraag je inloggegevens mee. Eenvoudig op te zetten en handig voor snelle scripts of tests:
curl -X GET "https://my.pcpatrol.nl/api/details" \
-u "jij@voorbeeld.nl:jouw-wachtwoord"Achter de schermen stuurt dit een Authorization: Basic <credentials>-header mee, waarbij credentials de Base64-codering is van je gebruikersnaam en wachtwoord, gescheiden door een dubbele punt. Een uitgebreide uitleg met codevoorbeelden vind je in de documentatie: Basic Authentication.
Beschikbare functies
De API is opgedeeld in logische onderdelen. Hieronder de belangrijkste routes per categorie.
Account
GET /detailshaalt je registratiegegevens op.PUT /detailswerkt je registratiegegevens bij.GET /logstoont je accounthistorie.GET /contactenPOST /contactvoor het beheren van contactpersonen, inclusief rechten viaGET /contact/privileges.GET /notificationsenGET /notifications/newvoor portaalmeldingen.
Facturen en saldo
GET /balancetoont je openstaande saldo en tegoed.GET /invoicetoont al je facturen,GET /invoice/@idde details van een factuur.GET /invoice/@id/pdfhaalt een factuur op als PDF (base64).GET /paymentenGET /payment/feestonen beschikbare betaalmethoden.GET /addfundsenPOST /addfundsvoor het opwaarderen van je tegoed.
Support
GET /ticketstoont je tickets,GET /tickets/@numberde details met antwoorden.POST /ticketsopent een nieuw ticket,POST /tickets/@numberplaatst een antwoord.PUT /tickets/@number/closeenPUT /tickets/@number/opensluiten of heropenen een ticket.GET /ticket/departmentstoont de beschikbare afdelingen.
Diensten
GET /servicetoont al je diensten,GET /service/@idde details.GET /service/@id/upgradetoont upgrade-opties,POST /service/@id/upgradevraagt een upgrade aan.GET /service/@id/cycleenPOST /service/@id/cyclevoor de facturatiecyclus.POST /service/@id/renewgenereert een verlengfactuur.POST /service/@id/canceldient een opzegging in.
Domeinen
GET /domaintoont je domeinen,GET /domain/@idde details.GET /domain/@id/nsenPUT /domain/@id/nsvoor het beheren van nameservers.GET /domain/@id/dnsvoor DNS-records op domeinniveau, metPOST,PUTenDELETEom records te beheren.POST /domain/lookupcontroleert of een domein beschikbaar is.GET /domain/ordertoont beschikbare TLD's,POST /domain/orderplaatst een nieuwe domeinregistratie.Daarnaast onder meer EPP-code (
GET /domain/@id/epp), domeinlock, ID-protection, autorenew en DNSSEC.
SSL-certificaten
GET /certificatetoont je certificaten,GET /certificate/@service_idde details.GET /certificate/@service_id/crtdownloadt het certificaat.GET /certificate/ordertoont beschikbare certificaten,POST /certificate/orderplaatst een bestelling.
DNS (zones)
GET /dnstoont al je DNS-zones.POST /service/@service_id/dnsmaakt een nieuwe zone aan,GET /service/@service_id/dns/@zone_idtoont de details.Records beheer je via
POST,PUTenDELETEop/service/@service_id/dns/@zone_id/records.
Bestellen
GET /categoryenGET /category/@category_id/productvoor het productaanbod.GET /order/@product_idtoont de configuratie-opties van een product.POST /order/@product_idbestelt een dienst,POST /orderbestelt meerdere items tegelijk.POST /quoteberekent de kosten van een bestelling vooraf.
Voorbeeld: je domeinen ophalen
curl -X GET "https://my.pcpatrol.nl/api/domain" \
-H "Authorization: Bearer $token"Antwoord:
{
"domains": [
{
"id": "47",
"name": "voorbeeld.nl",
"expires": "2026-12-30",
"recurring_amount": "15.00",
"status": "Active",
"autorenew": "1"
}
]
}Met de id uit dit antwoord kun je vervolgens de details opvragen, de nameservers wijzigen of DNS-records beheren.
Tips en veiligheid
Behandel je inloggegevens en tokens als geheim. Zet ze nooit in publieke code, repositories of logbestanden.
Gebruik JWT voor doorlopende integraties en het refresh-token om sessies te verlengen, in plaats van bij elke aanvraag je wachtwoord mee te sturen.
Doe alle aanvragen over HTTPS.
Test eerst met een uitleesactie zoals
GET /detailsofGET /domainvoordat je acties uitvoert die iets wijzigen, zoals het aanpassen van nameservers, DNS-records of het opzeggen van een dienst.Raadpleeg de documentatie in je account voor de exacte parameters en codevoorbeelden in onder andere curl, PHP en Python. Die is altijd actueel.
Hulp nodig?
Loop je vast bij het opzetten van een koppeling, of mis je een bepaalde functie in de API? Open gerust een support ticket. We denken graag met je mee.