Introduction
Hello fellow developer,
This is where you'll find the documentation for the Jobtoolz Content API.
Authenticating requests
To authenticate requests, include an Authorization
header with the value "Bearer {YOUR_AUTH_KEY}"
.
All authenticated endpoints are marked with a requires authentication
badge in the documentation below.
You can find your API key in the application settings.
Employer branding
Retrieve the current company.
requires authentication
Example request:
curl --request GET \
--get "https://api.jobtoolz.com/content/v1/company" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Accept-Language: en"
const url = new URL(
"https://api.jobtoolz.com/content/v1/company"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
"Accept-Language": "en",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.jobtoolz.com/content/v1/company';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Accept-Language' => 'en',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"id": null,
"type": "company",
"attributes": {
"name": "Grégoire",
"email": "tran.arthur@example.org",
"active": true,
"subdomain": "gregoire",
"domainalias": null,
"domainalias_verified": null,
"website": "https://example.org",
"jobsite_url": "http://gregoire.jobtoolz.com",
"logo_original_name": null,
"logo_url": null,
"social": {
"facebook": "https://www.facebook.com",
"linkedin": "https://www.linkedin.com",
"twitter": "https://twitter.com",
"instagram": "https://instagram.com"
},
"description": {
"nl": "<p>En zij telde ze hem. Uilenspiegel toog er henen, ging zoo.</p><p>Sidderend stak zij al die dwaallichtjes, die, gonzend als krekelen, zeiden: Kijkt toe.</p>",
"fr": "<p>Dormouse shall!' they both cried. 'Wake up, Dormouse!'.</p><p>PRECIOUS nose'; as an explanation. 'Oh, you're sure to happen,'.</p><p>March Hare went on. 'Would you like to be treated with respect. 'Cheshire Puss,' she began, in a twinkling! Half-past one, time for.</p>",
"en": "<p>Alice, as the large birds complained that they must needs come wriggling down from the change: and Alice could.</p><p>Alice. 'I've so often read in the after-time, be herself a grown.</p><p>I'm mad. You're mad.' 'How do you know that Cheshire cats always grinned; in fact, I didn't know how to set about.</p><p>By the use of repeating all that stuff,' the Mock Turtle in.</p>"
}
},
"relationships": [],
"links": {
"self": "https://api.jobtoolz.com/content/v1/company"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Retrieve a list of locations.
requires authentication
Example request:
curl --request GET \
--get "https://api.jobtoolz.com/content/v1/locations" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Accept-Language: en"
const url = new URL(
"https://api.jobtoolz.com/content/v1/locations"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
"Accept-Language": "en",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.jobtoolz.com/content/v1/locations';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Accept-Language' => 'en',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"data": [
{
"id": null,
"type": "location",
"attributes": {
"street": "Pironpad 86",
"postal_code": "3200",
"city": "Châtelet",
"country": "BE",
"phone": "0719 982547",
"email": "sacha.diallo@messaoudi.be",
"lat": -21.589243,
"lng": 32.874606,
"created_at": null,
"updated_at": null
}
},
{
"id": null,
"type": "location",
"attributes": {
"street": "Jansendreef 39",
"postal_code": "7811",
"city": "Chiny",
"country": "BE",
"phone": "019 67 72 19",
"email": "kobe.vervoort@hardy.be",
"lat": -79.926251,
"lng": -77.25144,
"created_at": null,
"updated_at": null
}
}
],
"links": [
{
"href": "http://api.jobtoolz.com/content/v1/locations",
"rel": "self",
"method": "GET"
}
]
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Applications
Create a new application
requires authentication
Example request:
curl --request POST \
"https://api.jobtoolz.com/content/v1/applications" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Accept-Language: en" \
--data "{
\"data\": {
\"type\": \"application\",
\"attributes\": {
\"job_id\": 5,
\"first_name\": \"John\",
\"last_name\": \"Doe\",
\"email\": \"john.doe@example.com\",
\"photo\": 16,
\"phone\": \"omnis\",
\"motivation\": \"recusandae\",
\"curriculum_vitae\": 4,
\"education\": [
{
\"title\": \"magnam\",
\"institution\": \"et\",
\"short_description\": \"reiciendis\",
\"date_from\": \"minus\",
\"date_to\": \"sint\"
}
],
\"experience\": [
{
\"company\": \"esse\",
\"job_title\": \"totam\",
\"job_description\": \"numquam\",
\"tasks\": \"velit\",
\"date_from\": \"et\",
\"date_to\": \"et\"
}
],
\"disclaimer\": true,
\"referrer\": \"https:\\/\\/google.com\"
}
}
}"
const url = new URL(
"https://api.jobtoolz.com/content/v1/applications"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
"Accept-Language": "en",
};
let body = {
"data": {
"type": "application",
"attributes": {
"job_id": 5,
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"photo": 16,
"phone": "omnis",
"motivation": "recusandae",
"curriculum_vitae": 4,
"education": [
{
"title": "magnam",
"institution": "et",
"short_description": "reiciendis",
"date_from": "minus",
"date_to": "sint"
}
],
"experience": [
{
"company": "esse",
"job_title": "totam",
"job_description": "numquam",
"tasks": "velit",
"date_from": "et",
"date_to": "et"
}
],
"disclaimer": true,
"referrer": "https:\/\/google.com"
}
}
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.jobtoolz.com/content/v1/applications';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Accept-Language' => 'en',
],
'json' => [
'data' => [
'type' => 'application',
'attributes' => [
'job_id' => 5,
'first_name' => 'John',
'last_name' => 'Doe',
'email' => 'john.doe@example.com',
'photo' => 16,
'phone' => 'omnis',
'motivation' => 'recusandae',
'curriculum_vitae' => 4,
'education' => [
[
'title' => 'magnam',
'institution' => 'et',
'short_description' => 'reiciendis',
'date_from' => 'minus',
'date_to' => 'sint',
],
],
'experience' => [
[
'company' => 'esse',
'job_title' => 'totam',
'job_description' => 'numquam',
'tasks' => 'velit',
'date_from' => 'et',
'date_to' => 'et',
],
],
'disclaimer' => true,
'referrer' => 'https://google.com',
],
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"id": 1437371120,
"type": "applications",
"attributes": {
"id": 1437371120,
"created_at": "2020-07-17T07:30:21.000000Z",
"updated_at": "2020-07-17T07:30:21.000000Z",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"referrer": "https://google.com"
},
"links": {
"self": "https://api.jobtoolz.com/content/v1/applications/1437371120"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Jobs
Retrieve a list of jobs.
requires authentication
Example request:
curl --request GET \
--get "https://api.jobtoolz.com/content/v1/jobs" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Accept-Language: en"
const url = new URL(
"https://api.jobtoolz.com/content/v1/jobs"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
"Accept-Language": "en",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.jobtoolz.com/content/v1/jobs';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Accept-Language' => 'en',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Retrieve a job.
requires authentication
Example request:
curl --request GET \
--get "https://api.jobtoolz.com/content/v1/jobs/11" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--header "Accept-Language: en"
const url = new URL(
"https://api.jobtoolz.com/content/v1/jobs/11"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "application/json",
"Accept": "application/json",
"Accept-Language": "en",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.jobtoolz.com/content/v1/jobs/11';
$response = $client->get(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'application/json',
'Accept' => 'application/json',
'Accept-Language' => 'en',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.
Queued files
Create a new queued file
requires authentication
Example request:
curl --request POST \
"https://api.jobtoolz.com/content/v1/file" \
--header "Authorization: Bearer {YOUR_AUTH_KEY}" \
--header "Content-Type: multipart/form-data" \
--header "Accept: application/json" \
--header "Accept-Language: en" \
--form "type=image"\
--form "file=@/tmp/phpZGjPQa"
const url = new URL(
"https://api.jobtoolz.com/content/v1/file"
);
const headers = {
"Authorization": "Bearer {YOUR_AUTH_KEY}",
"Content-Type": "multipart/form-data",
"Accept": "application/json",
"Accept-Language": "en",
};
const body = new FormData();
body.append('type', 'image');
body.append('file', document.querySelector('input[name="file"]').files[0]);
fetch(url, {
method: "POST",
headers,
body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://api.jobtoolz.com/content/v1/file';
$response = $client->post(
$url,
[
'headers' => [
'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
'Content-Type' => 'multipart/form-data',
'Accept' => 'application/json',
'Accept-Language' => 'en',
],
'multipart' => [
[
'name' => 'type',
'contents' => 'image'
],
[
'name' => 'file',
'contents' => fopen('/tmp/phpZGjPQa', 'r')
],
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
Example response (200):
{
"id": 374296568,
"type": "file",
"attributes": {
"type": "document",
"name_original": "a38eee3d-c82f-32dd-8bde-bdf2698ba639.jpg"
}
}
Received response:
Request failed with error:
Tip: Check that you're properly connected to the network.
If you're a maintainer of ths API, verify that your API is running and you've enabled CORS.
You can check the Dev Tools console for debugging information.