Skip to main content

StartupJobs Dev

Martina Folkova avatar
Written by Martina Folkova
Updated over 10 months ago

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

Did this answer your question?