Algemeen

De PC Patrol User API: je account beheren via een API

Met de PC Patrol User API beheer je je account, facturen, diensten, domeinen, SSL en DNS via een REST API. Lees over de basis-URL, authenticatie met JWT of Basic Auth en de beschikbare endpoints.

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?/userapi

Basis-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 /login haalt een nieuw token en refresh-token op.

  • POST /token haalt met je refresh-token een nieuw token op (zonder opnieuw in te loggen).

  • POST /logout maakt je token ongeldig.

  • POST /revoke trekt 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 /details haalt je registratiegegevens op.

  • PUT /details werkt je registratiegegevens bij.

  • GET /logs toont je accounthistorie.

  • GET /contact en POST /contact voor het beheren van contactpersonen, inclusief rechten via GET /contact/privileges.

  • GET /notifications en GET /notifications/new voor portaalmeldingen.

Facturen en saldo

  • GET /balance toont je openstaande saldo en tegoed.

  • GET /invoice toont al je facturen, GET /invoice/@id de details van een factuur.

  • GET /invoice/@id/pdf haalt een factuur op als PDF (base64).

  • GET /payment en GET /payment/fees tonen beschikbare betaalmethoden.

  • GET /addfunds en POST /addfunds voor het opwaarderen van je tegoed.

Support

  • GET /tickets toont je tickets, GET /tickets/@number de details met antwoorden.

  • POST /tickets opent een nieuw ticket, POST /tickets/@number plaatst een antwoord.

  • PUT /tickets/@number/close en PUT /tickets/@number/open sluiten of heropenen een ticket.

  • GET /ticket/departments toont de beschikbare afdelingen.

Diensten

  • GET /service toont al je diensten, GET /service/@id de details.

  • GET /service/@id/upgrade toont upgrade-opties, POST /service/@id/upgrade vraagt een upgrade aan.

  • GET /service/@id/cycle en POST /service/@id/cycle voor de facturatiecyclus.

  • POST /service/@id/renew genereert een verlengfactuur.

  • POST /service/@id/cancel dient een opzegging in.

Domeinen

  • GET /domain toont je domeinen, GET /domain/@id de details.

  • GET /domain/@id/ns en PUT /domain/@id/ns voor het beheren van nameservers.

  • GET /domain/@id/dns voor DNS-records op domeinniveau, met POST, PUT en DELETE om records te beheren.

  • POST /domain/lookup controleert of een domein beschikbaar is.

  • GET /domain/order toont beschikbare TLD's, POST /domain/order plaatst een nieuwe domeinregistratie.

  • Daarnaast onder meer EPP-code (GET /domain/@id/epp), domeinlock, ID-protection, autorenew en DNSSEC.

SSL-certificaten

  • GET /certificate toont je certificaten, GET /certificate/@service_id de details.

  • GET /certificate/@service_id/crt downloadt het certificaat.

  • GET /certificate/order toont beschikbare certificaten, POST /certificate/order plaatst een bestelling.

DNS (zones)

  • GET /dns toont al je DNS-zones.

  • POST /service/@service_id/dns maakt een nieuwe zone aan, GET /service/@service_id/dns/@zone_id toont de details.

  • Records beheer je via POST, PUT en DELETE op /service/@service_id/dns/@zone_id/records.

Bestellen

  • GET /category en GET /category/@category_id/product voor het productaanbod.

  • GET /order/@product_id toont de configuratie-opties van een product.

  • POST /order/@product_id bestelt een dienst, POST /order bestelt meerdere items tegelijk.

  • POST /quote berekent 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 /details of GET /domain voordat 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.

Was dit artikel nuttig?