API documentatie

Algemeen

Introductie

Hier vind je alle documentatie die je nodig hebt om te integreren met de API van Technicus.nl. Onze API is een REST-API en alle requests en responses zijn volledig in JSON. Mocht je op enig moment extra informatie willen of ondersteuning bij de integratie wensen, neem dan contact met ons op.

Rate limits

We hanteren onderstaande rate limits. Mocht je een uitzondering hierop willen dan kun je hiervoor contact met ons opnemen.
  • 200 requests per 60 seconden per account
  • 1000 requests per 60 seconden per IP-adres

Paginatie

De API van Technicus.nl heeft een limiet aan items die per request van een lijst opgehaald kunnen worden. De limiet staat vast op 50 items. Wanneer je een lijst met items ophaalt heb je in het resultaat een item "rel" waarin wanneer nodig een "prev" en/of "next" item inzitten. Deze bevatten een URL die je kunt gebruiken om de volgende of vorige pagina op te halen. Al je parameters worden automatisch meegenomen.
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    }
}

HTTP-statuscodes

Met elke request geeft onze API een HTTP-statuscode terug om aan te geven of de request succesvol is of niet. Onderstaand vind je een overzicht van statuscodes die wij hanteren.
HTTP-statuscode Beschrijving
200 OK Request succesvol.
201 Created Item is succesvol toegevoegd.
204 No Content Item is succesvol verwijderd.
400 Bad Request Request bevat ongeldige data.
401 Unauthorized Ongeldige autorisatie / apikey.
402 Payment Required Abonnement of (extra) credits vereist.
403 Forbidden Je hebt geen toegang tot dit endpoint.
404 Not Found Het gebruikte endpoint bestaat niet.
409 Conflict Item bestaat al (duplicate).
429 Too Many Requests Het maximaal aantal requests is bereikt (rate limit).
500 Internal Server Error Interne fout, neem contact op met Technicus.nl.

Foutmeldingen

Bij iedere request op de API kun je verschillende foutmeldingen terug krijgen. Dit kunnen bijvoorbeeld foutmeldingen zijn dat de parameters onjuist zijn, of bij het aanmaken van items dat de data niet valide is. Hieronder vind je de manier hoe wij deze foutmeldingen terugsturen.
{
    "errors": [
        {
            "error": "string",
            "label": "string",
            "path": "string"
        }
    ]
}

Authenticatie

Credentials

Om gebruik te kunnen maken van de API van Technicus.nl moet je eerst een API key aanmaken via je account. Log in op je account, ga vervolgens naar Instellingen > API om deze aan te maken. Bij het aanmaken van je API key kun je aangeven tot welke endpoints je toegang wil hebben.

API key

Elke request dient geauthenticeerd te worden. Dit kan door middel van een API key die als Bearer aan de header van iedere request moet worden toegevoegd.
Header
Authorization: Bearer <apikey>

Vacatures

Toevoegen

POST https://api.technicus.nl/vacancy
Met behulp van dit endpoint kun je een vacature toevoegen.
Velden
Naam Type Format Verplicht Beschrijving
referenceNumber string required Uniek eigen referentienummer
title string required
description string required
location string required Plaats of postcode
countryCode string (2) ISO 3166 optional
education string optional
experience string optional
employment string optional
hours string optional
salary string optional
industry string optional
company object (companyResource) optional
companyUser object (companyUserResource) optional Sollicitaties worden naar dit e-mailadres verzonden
atsId string optional
autoDeleteDate string ISO 8601 optional
customFields array (customFieldResource) optional
companyResource
Naam Type Format Verplicht Beschrijving
name string required
logo string base64 encoded string optional
description string optional
type enum direct/staffing/agency optional Type bedrijf: directe werkgever, werving & selectie of uitzendbureau
companyUserResource
Naam Type Format Verplicht Beschrijving
name string required
email string required
phone string optional
photo string base64 encoded string optional
function enum recruiter/director/hr-manager/hr-employee/marketing/other optional Functie van de gebruiker
customFieldResource
Naam Type Format Verplicht Beschrijving
name string required
value string required
Request
curl https://api.technicus.nl/vacancy \
    -X POST \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' \
    -d '<payload>' 
Response
{
    "vacancyId": "int",
    "vacancyUrl": "string"
}
Voorbeeld payload
{
    "referenceNumber": "REF12345",
    "title": "Senior Software Engineer",
    "description": "We zijn op zoek naar een ervaren Senior Software Engineer om ons groeiende engineeringteam te versterken.",
    "location": "Amsterdam",
    "countryCode": "NL",
    "education": "Bachelor in Computerwetenschappen",
    "experience": "5+ jaar in softwareontwikkeling",
    "employment": "Fulltime",
    "hours": "40 uur per week",
    "salary": "1000-2000 euro per maand",
    "industry": "Informatietechnologie",
    "company": {
        "name": "Naam bedrijf",
        "logo": "VBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPD\\u2026..(truncated)",
        "description": "Beschrijving over bedrijf",
        "type": "enum"
    },
    "companyUser": {
        "name": "John Doe",
        "email": "[email protected]",
        "phone": "0612345678",
        "photo": "VBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPD\\\\u2026..(truncated)",
        "function": "enum"
    },
    "atsId": "12345",
    "autoDeleteDate": "2023-12-31",
    "customFields": [
        {
            "name": "frameworks",
            "value": "Laravel, Vue.js"
        }
    ]
}

Wijzigen

PUT https://api.technicus.nl/vacancy/<vacancyid>
Met behulp van dit endpoint kun je een vacature wijzigen.
Velden
Naam Type Format Verplicht Beschrijving
referenceNumber string required Uniek eigen referentienummer
title string required
description string required
location string required Plaats of postcode
countryCode string (2) ISO 3166 optional
education string optional
experience string optional
employment string optional
hours string optional
salary string optional
industry string optional
company object (companyResource) optional
companyUser object (companyUserResource) optional Sollicitaties worden naar dit e-mailadres verzonden
atsId string optional
autoDeleteDate string ISO 8601 optional
customFields array (customFieldResource) optional
companyResource
Naam Type Format Verplicht Beschrijving
name string required
logo string base64 encoded string optional
description string optional
type enum direct/staffing/agency optional Type bedrijf: directe werkgever, werving & selectie of uitzendbureau
companyUserResource
Naam Type Format Verplicht Beschrijving
name string required
email string required
phone string optional
photo string base64 encoded string optional
function enum recruiter/director/hr-manager/hr-employee/marketing/other optional Functie van de gebruiker
customFieldResource
Naam Type Format Verplicht Beschrijving
name string required
value string required
Request
curl https://api.technicus.nl/vacancy/<vacancyid> \
    -X PUT \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' \
    -d '<payload>' 
Response
{
    "vacancyId": "int",
    "vacancyUrl": "string"
}
Voorbeeld payload
{
    "referenceNumber": "REF12345",
    "title": "Senior Software Engineer",
    "description": "We zijn op zoek naar een ervaren Senior Software Engineer om ons groeiende engineeringteam te versterken.",
    "location": "Amsterdam",
    "countryCode": "NL",
    "education": "Bachelor in Computerwetenschappen",
    "experience": "5+ jaar in softwareontwikkeling",
    "employment": "Fulltime",
    "hours": "40 uur per week",
    "salary": "1000-2000 euro per maand",
    "industry": "Informatietechnologie",
    "company": {
        "name": "Naam bedrijf",
        "logo": "VBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPD\\u2026..(truncated)",
        "description": "Beschrijving over bedrijf",
        "type": "enum"
    },
    "companyUser": {
        "name": "John Doe",
        "email": "[email protected]",
        "phone": "0612345678",
        "photo": "VBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPD\\\\u2026..(truncated)",
        "function": "enum"
    },
    "atsId": "12345",
    "autoDeleteDate": "2023-12-31",
    "customFields": [
        {
            "name": "frameworks",
            "value": "Laravel, Vue.js"
        }
    ]
}

Verwijderen

DELETE https://api.technicus.nl/vacancy/<vacancyid>
Met behulp van dit endpoint kun je een vacature verwijderen. Je hebt hiervoor het <vacancyid> nodig dat in de response stond bij het toevoegen van de vacature.
curl https://api.technicus.nl/vacancy/<vacancyid> \
    -X DELETE \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json'

Inzichten

GET https://api.technicus.nl/vacancy/insight
Met behulp van dit endpoint ben je in staat om inzichten (kliks, sollicitaties etc) van je vacatures op te vragen.
Query Parameters
Naam Type Format Verplicht Beschrijving
offset integer optional
limit integer optional
startDate string ISO 8601 optional
endDate string ISO 8601 optional
referenceNumber string optional Uniek eigen referentienummer
Request
curl https://api.technicus.nl/vacancy/insight \
    -X GET \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    },
    "items": [
        {
            "vacancyId": "int",
            "referenceNumber": "string",
            "publishDate": "string",
            "status": "int",
            "title": "string",
            "city": "string",
            "runtime": "int",
            "campaign": "string",
            "functionGroup": "string",
            "companyUser": {
                "name": "string",
                "email": "string"
            },
            "clicks": "int",
            "cpc": "float",
            "cost": "float",
            "inSearchResult": "int",
            "averagePosition": "int",
            "applicationStarts": "int",
            "applications": "int"
        }
    ]
}

Feeds

Lijst feeds

GET https://api.technicus.nl/feed
Met behulp van dit endpoint kun je de lijst opvragen met alle feeds.
Request
curl https://api.technicus.nl/feed \
    -X GET \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    },
    "items": [
        {
            "feedId": "string",
            "url": "string"
        }
    ]
}

Toevoegen

POST https://api.technicus.nl/feed
Met behulp van dit endpoint kun je een feed toevoegen.
Velden
Naam Type Format Verplicht Beschrijving
url string required XML Feed
Request
curl https://api.technicus.nl/feed \
    -X POST \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' \
    -d '<payload>' 
Response
{
    "feedId": "string"
}
Voorbeeld payload
{
    "url": "string"
}

Lijst met filtervelden

GET https://api.technicus.nl/feed/{feedId}/filter/field
Met behulp van dit endpoint kun je de mogelijke filter velden ophalen van een feed welke je kunt gebruiken voor het filteren van je vacatures binnen de campagne.
Query Parameters
Naam Type Format Verplicht Beschrijving
offset integer optional
limit integer optional
Request
curl https://api.technicus.nl/feed/{feedId}/filter/field \
    -X GET \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    },
    "items": [
        {
            "fieldId": "string",
            "name": "string",
            "type": "string"
        }
    ]
}

Campagnes

Lijst campagnes

GET https://api.technicus.nl/campaign
Met behulp van dit endpoint kun je de lijst opvragen met alle campagnes.
Query Parameters
Naam Type Format Verplicht Beschrijving
offset integer optional
limit integer optional
status enum active/inactive optional
Request
curl https://api.technicus.nl/campaign \
    -X GET \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    },
    "items": [
        {
            "campaignId": "string",
            "name": "string",
            "status": "string",
            "utm": {
                "source": "string",
                "medium": "string",
                "campaign": "string"
            },
            "budget": {
                "amount": "float",
                "schedule": "enum",
                "tempo": "enum"
            },
            "budgetPerVacancy": "int",
            "requirements": {
                "motivation": "enum",
                "cv": "enum",
                "dutchLanguage": "enum"
            },
            "filters": [
                {
                    "fieldId": "int",
                    "operator": "enum",
                    "value": "string"
                }
            ]
        }
    ]
}

Bekijken

GET https://api.technicus.nl/campaign/{campaignId}
Met behulp van dit endpoint kun je de details van een campagne bekijken.
Request
curl https://api.technicus.nl/campaign/{campaignId} \
    -X GET \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "campaignId": "string",
    "name": "string",
    "status": "string",
    "utm": {
        "source": "string",
        "medium": "string",
        "campaign": "string"
    },
    "budget": {
        "amount": "float",
        "schedule": "enum",
        "tempo": "enum"
    },
    "budgetPerVacancy": "int",
    "requirements": {
        "motivation": "enum",
        "cv": "enum",
        "dutchLanguage": "enum"
    },
    "filters": [
        {
            "fieldId": "int",
            "operator": "enum",
            "value": "string"
        }
    ]
}

Toevoegen

POST https://api.technicus.nl/campaign
Met behulp van dit endpoint kun je een campagne toevoegen.
Velden
Naam Type Format Verplicht Beschrijving
name string required
utm object (campaignUtmResource) optional
status enum active/inactive optional Default: active
feedId string optional
budget object (campaignBudgetResource) required
budgetPerVacancy int optional Default: onbeperkt
requirements object (campaignRequirementResource) optional
filters array (campaignFilterResource) optional
budgetResource
Naam Type Format Verplicht Beschrijving
amount int required
schedule enum monthly/onetime optional Per maand of eenmalig (Default per maand).
tempo enum spread/speed optional Verspreiden over de maand of zo snel mogelijk opmaken. (Default per verspreid)
filterResource
Naam Type Format Verplicht Beschrijving
fieldId int required FieldId uit Lijst filtervelden
operator enum include/exclude/greater/smaller/equals/not_equals/not_older required
value string required Meerdere waardes scheiden met een komma (OR).
requirementResource
Naam Type Format Verplicht Beschrijving
motivation enum yes/no/default optional Default: accountinstelling
cv enum yes/no/default optional Default: accountinstelling
dutchLanguage enum yes/no/default optional Default: accountinstelling
utmResource
Naam Type Format Verplicht Beschrijving
source string optional Default: Technicus.nl
medium string optional Default: cpc
campaign string optional Default: naam van je campagne
Request
curl https://api.technicus.nl/campaign \
    -X POST \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' \
    -d '<payload>' 
Response
{
    "campaignId": "string"
}
Voorbeeld payload
{
    "name": "string",
    "utm": {
        "source": "string",
        "medium": "string",
        "campaign": "string"
    },
    "status": "enum",
    "feedId": "string",
    "budget": {
        "amount": "int",
        "schedule": "enum",
        "tempo": "enum"
    },
    "budgetPerVacancy": "int",
    "requirements": {
        "motivation": "enum",
        "cv": "enum",
        "dutchLanguage": "enum"
    },
    "filters": [
        {
            "fieldId": "int",
            "operator": "enum",
            "value": "string"
        }
    ]
}

Wijzigen

PUT https://api.technicus.nl/campaign/<campaignid>
Met behulp van dit endpoint kun je een campagne toevoegen.
Velden
Naam Type Format Verplicht Beschrijving
name string required
utm object (campaignUtmResource) optional
status enum active/inactive optional Default: active
feedId string optional
budget object (campaignBudgetResource) required
budgetPerVacancy int optional Default: onbeperkt
requirements object (campaignRequirementResource) optional
filters array (campaignFilterResource) optional
budgetResource
Naam Type Format Verplicht Beschrijving
amount int required
schedule enum monthly/onetime optional Per maand of eenmalig (Default per maand).
tempo enum spread/speed optional Verspreiden over de maand of zo snel mogelijk opmaken. (Default per verspreid)
filterResource
Naam Type Format Verplicht Beschrijving
fieldId int required FieldId uit Lijst filtervelden
operator enum include/exclude/greater/smaller/equals/not_equals/not_older required
value string required Meerdere waardes scheiden met een komma (OR).
requirementResource
Naam Type Format Verplicht Beschrijving
motivation enum yes/no/default optional Default: accountinstelling
cv enum yes/no/default optional Default: accountinstelling
dutchLanguage enum yes/no/default optional Default: accountinstelling
utmResource
Naam Type Format Verplicht Beschrijving
source string optional Default: Technicus.nl
medium string optional Default: cpc
campaign string optional Default: naam van je campagne
Request
curl https://api.technicus.nl/campaign/<campaignid> \
    -X PUT \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' \
    -d '<payload>' 
Response
{
    "campaignId": "string"
}
Voorbeeld payload
{
    "name": "string",
    "utm": {
        "source": "string",
        "medium": "string",
        "campaign": "string"
    },
    "status": "enum",
    "feedId": "string",
    "budget": {
        "amount": "int",
        "schedule": "enum",
        "tempo": "enum"
    },
    "budgetPerVacancy": "int",
    "requirements": {
        "motivation": "enum",
        "cv": "enum",
        "dutchLanguage": "enum"
    },
    "filters": [
        {
            "fieldId": "int",
            "operator": "enum",
            "value": "string"
        }
    ]
}

Verwijderen

DELETE https://api.technicus.nl/campaign/<campaignid>
Met behulp van dit endpoint kun je een campagne verwijderen. Je hebt hiervoor het <campaignid> nodig dat in de response stond bij het toevoegen van de campagne.
curl https://api.technicus.nl/campaign/<campaignid> \
    -X DELETE \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json'

Lijst filtervelden

GET https://api.technicus.nl/campaign/filter/field
Met behulp van dit endpoint kun je de lijst van mogelijke filtervelden opvragen voor het aanmaken van campagnefilters. Wanneer je een veld wil toevoegen dan kun je dat doen door een custom veld toe te voegen bij het aanmaken van een vacature via de API.
Request
curl https://api.technicus.nl/campaign/filter/field \
    -X GET \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    },
    "items": [
        {
            "fieldId": "string",
            "name": "string",
            "type": "string"
        }
    ]
}

Kliks

Lijst kliks

GET https://api.technicus.nl/click
Met behulp van dit endpoint ben je in staat om alle kliks van je vacatures op te vragen.
Query parameters
Naam Type Format Verplicht Beschrijving
offset integer optional
limit integer optional
startDate string ISO 8601 optional
endDate string ISO 8601 optional
referenceNumber string optional
Request
curl https://api.technicus.nl/click \
    -X GET \
    -H 'Authorization: Bearer <apikey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    },
    "items": [
        {
            "vacancyId": "int",
            "clickDate": "string",
            "referenceNumber": "string",
            "ip": "string",
            "cpc": "float"
        }
    ]
}

Partners

Introductie

Als geregistreerd partner ben je o.a. in staat om vacatures te plaatsen en te beheren voor andere bedrijven. Ook kun je als partner via specifieke endpoints nieuwe bedrijfsaccounts toevoegen. Wil je ook graag partner worden? Neem dan contact met ons op.

Authenticatie

Als partner maak je gebruik van 2 verschillende soorten Bearer tokens. De Partner-Authorization is bedoeld voor de authenticatie van jou als partner. Hiermee krijg je toegang tot endpoints zoals het toevoegen van een nieuw bedrijfsaccount en het ophalen van de API-keys van bedrijven waar je toegang tot hebt.
Header voor partnerauthenticatie
Onderstaande key is verplicht bij elk request die je doet.
Partner-Authorization: Bearer <partnerkey>
Header voor bedrijfsauthenticatie
Onderstaande key moet toegevoegd worden als je uit naam van een ander bedrijf endpoints gebruikt. Deze API key kan je opvragen door een call te doen op het endpoint /partner/company.
Authorization: CompanyId <companyid>

Bedrijfsaccount toevoegen

POST https://api.technicus.nl/partner/company
Met behulp van dit endpoint kun je een bedrijfsaccount toevoegen. Er wordt een mail verzonden naar het opgegeven e-mailadres om het account te activeren. Pas na activatie zijn evt. geplaatste vacatures zichtbaar op Technicus.nl.
Velden
Naam Type Format Verplicht Beschrijving
company object (companyCreateResource)
companyUser object (companyCreateUserResource)
companyResource
Naam Type Format Verplicht Beschrijving
name string required
city string required
description string required Uitgebreide info zoals bedrijfsactiviteiten, missie, visie, etc.
logo string base64 encoded string optional
phone string optional
websiteUrl string optional
type enum direct/staffing/agency optional Type bedrijf: directe werkgever, werving & selectie of uitzendbureau
companyUserResource
Naam Type Format Verplicht Beschrijving
name string required
email string required
phone string optional
Request
curl https://api.technicus.nl/partner/company \
    -X POST \
    -H 'Partner-Authorization: Bearer <partnerkey>' \ 
    -H 'Content-Type: application/json' \
    -d '<payload>' 
Response
{
    "companyId": "int"
}
Voorbeeld payload
{
    "company": {
        "name": "Naam bedrijf",
        "city": "Rotterdam",
        "description": "Beschrijving over bedrijf",
        "logo": "VBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPD\\u2026..(truncated)",
        "phone": "0101234567",
        "websiteUrl": "https:\/\/example.com\/",
        "type": "enum"
    },
    "companyUser": {
        "name": "John Doe",
        "email": "[email protected]",
        "phone": "0651234567"
    }
}

Lijst bedrijfsaccounts

GET https://api.technicus.nl/partner/company
Met behulp van dit endpoint kun je de lijst opvragen met alle bedrijfsaccounts inclusief de Id's waar je toegang tot hebt.
Request
curl https://api.technicus.nl/partner/company \
    -X GET \
    -H 'Partner-Authorization: Bearer <partnerkey>' \ 
    -H 'Content-Type: application/json' 
Response
{
    "count": "int",
    "offset": "int",
    "limit": "int",
    "rel": {
        "prev": "string",
        "next": "string"
    },
    "items": [
        {
            "companyId": "string",
            "name": "string",
            "accessSinceDate": "string"
        }
    ]
}

Webhooks

Sollicitaties

Webhooks zijn, in tegenstelling tot onze API, endpoints die je zelf zult moeten implementeren.

We bieden de mogelijkheid tot het aanroepen van je webhook zodra er een sollicitatie via Technicus.nl binnen is gekomen. Hieronder vind je de payload die we versturen. We doen een POST request naar de door jou opgegeven endpoint-URL. De payload is een JSON object met onderstaande velden. Het is mogelijk om custom velden toe te voegen.
Zodra je de webhook hebt geïntegreerd dien je contact met ons op te nemen om deze te laten activeren.
Autorisatie
Elke request dient geauthenticeerd te worden. Bij voorkeur werken we met een onderling afgesproken unieke key die we als Bearer in de header toevoegen. Hieronder vind je een voorbeeld. Optioneel kunnen we ook werken met HMAC.
Authorization: Bearer <apikey>
Velden
Naam Type Format Verplicht Beschrijving
referenceNumber string (255) required Referentienummer van je vacature.
name string (255) required Naam van de kandidaat.
firstname string (255) required Voornaam van de kandidaat.
lastname string (255) required Achternaam van de kandidaat.
email email (255) required E-mailadres van de kandidaat.
phone string (255) optional Telefoonnummer van de kandidaat.
city string (255) optional Woonplaats van de kandidaat.
motivation text (65.535) optional Motivatie van de kandidaat.
source string (255) required Bron van de sollicitatie (utm-source).
campaign string (255) required Campagne van de sollicitatie (utm-campaign).
cv string base64 encoded string optional Base64 encoded string van het CV bestand (max 20MB).
filename string (255) optional Naam van het CV bestand incl. extensie.
applicationId string (255) optional Uniek id van de sollicitatie.
Te verwachte HTTP-statuscodes
HTTP-statuscode Betekenis
201 Created Sollicitatie is succesvol toegevoegd.
400 Bad Request De request is niet succesvol door ongeldige data (graag de reden toevoegen aan de response).
401 Unauthorized Ongeldige autorisatie.
Te verwachte response

De response moet een uniek id zijn van de sollicitatie of kandidaat, bv. een hash. Dit dient als bewijs dat de sollicitatie daadwerkelijk ontvangen is.

{
    "id": "string"
}
Voorbeeld payload
{
    "referenceNumber": "f435a426-f656-ea11-a811-000d3a649fc7",
    "name": "John Doe",
    "firstname": "John",
    "lastname": "Doe",
    "email": "[email protected]",
    "phone": "0612345678",
    "city": "Amsterdam",
    "motivation": "Motivatie",
    "source": "Technicus.nl",
    "campaign": "Transport Campagne",
    "cv": "VBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmoKPD\u2026..(truncated)",
    "filename": "cv.pdf",
    "applicationId": "5639567c-3d11-11ef-a6b6-00163ee78db5"
}
 
check