Build your career website using the listings from StartupJobs or import candidates into your own system. You can easily manage both with our API!
Public API
1. Authorization
Access to the api endpoints is granted by the Bearer token, the token must be sent in each request. Each company is provided with a unique token.
Authorization: Bearer <token>
2. Offers list
Endpoint returns list of active visible offers.
Endpoint URL
GET
https://api.startupjobs.cz/company/offers
Query Parameters
none
Request example
https://api.startupjobs.cz/company/offers
Response
200 OK
Headers
Content-type: application/json
Body
[
{
"id": "9629f28d-78b5-4194-90f9-996cd6cf2aa9",
"links": [
{
"url": "https://www.startupjobs.cz/nabidka/1234",
"lang": "cs"
},
{
"url": "https://www.startupjobs.cz/en/job/1234",
"lang": "en"
}
],
"names": [
{
"name": "StartupJobs PHP žralok",
"lang": "cs"
},
{
"name": "StartupJobs PHP shark",
"lang": "en"
}
],
"internal_name": "PHP programátor",
"descriptions": [
{
"description": "<p>Pojď pracovat s námi! StartupJobs</p>",
"lang": "cs"
},
{
"description": "<p>Come work with us! StartupJobs</p>",
"lang": "en"
}
],
"locations": [
"Praha, Česko"
],
"shifts": [
{
"name": "FULL_TIME",
"hours": 160
},
{
"name": "PART_TIME",
"hours": 80
}
],
"collaborations": [
{
"id": 1,
"collaboration": "external"
},
{
"id": 2,
"collaboration": "remote"
},
{
"id": 3,
"collaboration": "internship"
}
],
"seniorities": [
{
"id": 1,
"seniority": "junior"
}
],
"areas": [
{
"id": 1,
"area": "Vývoj"
},
{
"id": 2,
"area": "Back-End"
},
{
"id": 4,
"area": "PHP"
}
],
"salary": {
"min": 50000,
"max": 80000,
"measure": "monthly",
"currency": "CZK"
},
"benefits": [
{
"id": 1,
"benefit": "13. a 14. plat"
},
{
"id": 6,
"benefit": "Čas na inovace"
},
{
"id": 7,
"benefit": "Čas na vlastní projekt"
}
],
"created_at": "2020-07-08T13:46:45",
"updated_at": "2020-07-08T13:59:47",
"valid_until": "2020-08-07T13:47:24"
}
]
3. Candidates list
Endpoint returns a list of company candidates.
Endpoint URL
GET
https://api.startupjobs.cz/company/applications
Query Parameters
Request example
https://api.startupjobs.cz/company/applications?offer=1e8c1d7b-673a-42b6-9da9-5eeb2a8ce308&created_at.gt=2020-04-01&createad_at.lt=2020-05-01
Response
200 OK
Headers
Content-type: application/json
Body
[
{
"id": "3e51e86d-9562-4611-a8a4-97412569f446",
"name": "Pan Žralok",
"created_at": "2020-07-08T13:56:43",
"offer": {
"id": "9629f28d-78b5-4194-90f9-996cd6cf2aa9",
"names": [
{
"name": "StartupJobs PHP zralok",
"lang": "cs"
},
{
"name": "StartupJobs PHP shark",
"lang": "en"
}
],
"created_at": "2020-07-08T13:46:45"
}
}
]
4. Candidate detail
Endpoint returns detailed info about candidate.
Endpoint URL
GET
https://api.startupjobs.cz/company/applications/{candidate uuid}
Query Parameters
none
Request example
https://api.startupjobs.cz/company/applications/3e51e86d-9562-4611-a8a4-97412569f446
Response
200 OK
Headers
Content-type: application/json
Body
{
"id": "5bf84a69-3a5c-4ddb-8cea-ae111bd262c5",
"name": "Pan Žralok",
"email": "zralok@startupjobs.cz",
"phone": "123 456 789",
"linkedin": {
"url": "https://www.linkedin.com/panzralok"
},
"text": "Umím skvěle programovat v PHP!",
"attachments": [
{
"url": "https://www.startupjobs.cz/uploads/panzralok.png"
}
],
"notes": null,
"status": "new",
"offer": {
"id": "9629f28d-78b5-4194-90f9-996cd6cf2aa9",
"name": [
{
"name": "StartupJobs PHP žralok",
"lang": "cs"
},
{
"name": "StartupJobs PHP shark",
"lang": "en"
}
],
"internal_position_name": "PHP programátor"
},
"created_at": "2020-07-08T13:59:47"
}
5. Watchdog subscription
Endpoint enables the registeration of users' emails to the watchdog newsletter. The newsletter is sent when the company adds a new offer.
Would you like to try this endpoint? Contact .support@startupjobs.com
Webhooks
On StartupJobs, you can use webhooks to get information about candidates.
1. How to set up a webhook?
When adding or editing an offer in the Additional Options section, you can enter a URL (webhook) where we'll send you information about interested candidates immediately after they've signed up.
The webhook must return an HTTP response code of 200, 201, 202, 204, or 422; otherwise, we will automatically delete the webhook.
2. JSON payload
We send candidate information in JSON format.
{
"date": "2017-09-11T18:19:15+02:00",
"candidateID": 12345,
"offerID": 1234,
"name": "Pan Žralok",
"position": "Vývojář webhooků",
"why": "<p>Chci se stát vývojářem webhooků na StartupJobs.cz, protože mě to baví!</p>",
"phone": "+420 725 875 752",
"email": "dev@startupjobs.cz",
"details": "https://www.startupjobs.cz/admin/company/zajemce/32437/pan-zralok?oid=1234",
"linkedin": "https://linkedin.com/pan-zralok",
"internalPositionName": "JOB1",
"files": [
"https://www.startupjobs.cz/download/file.pdf"
],
"gdpr_accepted": true
}
3. Test Payload
When setting up a webhook (adding/editing an offer in the "Additional Options" section), you can send a test request (simulating a candidate's application). The payload of the test request includes an additional value ("test": true).
{
"date": "2017-09-11T18:19:15+02:00",
"candidateID": 12345,
"offerID": 1234,
"name": "Mr. Shark",
"position": "Webhook developer",
"why": "<p>Hello from StartupJobs. This is not a real candidate, just testing your webhook.</p>",
"phone": "+420 725 875 752",
"email": "dev@startupjobs.cz",
"details": "https://www.startupjobs.cz/",
"linkedin": "https://linkedin.com/",
"internalPositionName": "JOB1",
"files": [
"https://www.startupjobs.cz/favicon.ico"
],
"gdpr_accepted": true,
"test": true
}
If you have any questions, don't hesitate to contact us at support@startupjobs.com