Get started
API Endpoint
https://app.sprintcv.com/api/v1/
The SprintCV API extends the capabilities of the SprintCV platform, allowing developers and organizations to integrate our robust CV generation features directly into their applications or workflows. With this API, not only can you programmatically create and format CVs, but you can also fetch available templates, manage user registrations, and more, all while maintaining the standards and quality that SprintCV is known for.
To access and utilize this API, obtain your API key through the SprintCV settings. This ensures a secure and seamless integration.
Authentication
To ensure the security and privacy of our users, the SprintCV API employs a token-based authentication system. For each API call you make, you must include the following headers in your request:
- access-token: Your unique access token.
- client: Your client identifier.
These headers are essential for authenticating your requests and ensuring that only authorized users have access to our API's functionalities.
Where to find your authentication details?
Upon successfully registering a user, you can retrieve these details from the admin menu on the SprintCV platform.
We recommend storing these values securely and ensuring they are not exposed or shared unnecessarily. Always use secure methods when transmitting your headers, especially when making calls to our API.
Important: It is mandatory to include the access-token and client headers in every request made to our API. These headers not only ensure security and integrity but are also crucial for identifying the company associated with each API request. Requests that lack these headers will fail authentication and will not be processed, as they are essential for determining which company is interacting with the API.
GET CV Templates
# Here is a curl example
curl --location -g '{{url}}/api/v1/company_api_user/cv_templates' \
--header 'access-token: {{access-token}}' \
--header 'client: {{client}}' \
--data ''
This endpoint allows users to access a comprehensive list of CV templates provided by SprintCV. It's designed to help users explore various template options and select the most suitable one for their CV generation needs.
Endpoint:
https://app.sprintcv.com/api/v1/company_api_user/cv_templates
Result example :
[
[
61,
"Corporate CV"
],
[
53,
"Sprint CV"
],
[
62,
"Corporate Anonymous"
],
[
18,
"IT Resume"
],
[
78,
"Sprint Curriculum"
],
[
47,
"IT Expert"
],
[
91,
"Company Compact CV"
],
[
34,
"Software Engineer CV"
],
[
190,
"Europass 2024"
],
[
70,
"Europass 2020"
],
[
16,
"Consultant CV"
],
[
6,
"Europass 2018"
],
[
35,
"ATS-Friendly CV"
],
[
7,
"TOPIC"
],
[
13,
"Developer CV"
],
[
220,
"EuropeAid CV"
],
[
112,
"DIGIT-TM II"
],
[
158,
"SRB CV"
],
[
219,
"EIB 2025"
],
[
68,
"FRONTEX"
],
[
139,
"ITUSS21"
],
[
77,
"euLisa"
],
[
40,
"ITUSS17 CV"
],
[
233,
"ITOMS19"
],
[
137,
"ITS19"
],
[
10,
"EEAS ISDLS2"
],
[
27,
"EIB CFT-1561"
],
[
224,
"ITS24 "
],
[
256,
"Europass Elegant CV"
],
[
253,
"ITS26"
],
[
254,
"TAXUD PEP"
],
[
30,
"SITCO"
],
[
25,
"TIMEA3"
],
[
133,
"ITS20"
],
[
63,
"BNP CCES CV"
],
[
255,
"MLOZ CV"
],
[
120,
"DIMOS VI"
],
[
52,
"Bee Engineering CV"
],
[
38,
"onRising CV"
],
[
110,
"DIMOS IV"
],
[
50,
"DC_SPARK2D"
],
[
33,
"Alter-Solutions CV"
],
[
22,
"KCS-IT CV"
],
[
20,
"DarwinLabs CV"
],
[
21,
"Red-IT CV"
],
[
31,
"Adentis CV"
]
]
GET Languages
# Here is a curl example
curl --location -g '{{url}}/api/v1/company_api_user/languages' \
--header 'access-token: {{access-token}}' \
--header 'client: {{client}}' \
--data ''
The languages endpoint offers a detailed list of available languages supported by SprintCV. This feature enables users to choose a preferred language for their CV, ensuring it meets their specific linguistic requirements.
Endpoint:
https://app.sprintcv.com/api/v1/company_api_user/languages
Result example :
[
[
1,
"English"
],
[
2,
"French"
],
[
3,
"Polish"
],
[
4,
"Dutch"
],
[
5,
"Romanian"
],
[
6,
"German"
],
[
7,
"Spanish"
],
[
8,
"Italian"
],
[
9,
"Portuguese"
],
[
10,
"Danish"
]
]
POST generate cv
# Here is a curl example
curl --location -g '{{url}}/api/v1/ats/profiles/generate_cv' \
--header 'access-token: {{access-token}}' \
--header 'client: {{client}}' \
--data-raw '{
"consultant": {
"email": "user@sprintcv.com",
"email_confirmation": "user@sprintcv.com",
"kind": 0,
"name": "John",
"surname": "Doe",
"profile_language_selected": 1,
},
"recruiter": {
"name": "Jane",
"surname": "Smith",
"email": "recruiter@example.com"
},
"cv_template": 23,
"file_format": "docx",
"file": The CV file
"generate_cv": 1,
"ai_review": 1
}'
This endpoint facilitates the creation of a CV based on the user's data and the selected template. Users send their data, and the API responds with a CV tailored to the chosen template.
Result example :
{
"status": "success",
"message": "CV will be generated"
}
BODY
| Field | Type | Description | Requirement |
|---|---|---|---|
| consultant[id] | String | The id of the consultant. | Required/Optional* |
| consultant[public_uid] | String | The public uid of the consultant. | Required/Optional* |
| consultant[email] | String, Email format | The email of the consultant. | Required/Optional* |
| consultant[email_confirmation] | String, Email format | Email confirmation for the consultant. | Required/Optional* |
| consultant[consent_email] | String, Email format | Email address for consultant's consent. | Required/Optional* |
| consultant[consent_confirmation_email] | String, Email format | Email confirmation for consultant's consent. | Required/Optional* |
| consultant[name] | String | Consultant's first name. | Required |
| consultant[surname] | String | Consultant's last name. | Required |
| consultant[profile_language_selected] | Integer | ID of the selected language profile. Obtain this ID by using the 'Get Language' API endpoint. | Optional |
| consultant[kind] | Boolean: 0 or 1 | Ownership of the account by the consultant. '0' if the consultant is the owner of the account, '1' if not. | Required |
| consultant_valid_email | Boolean: 0 or 1 | Email validation status for the consultant. '1' for a valid email, '0' for an invalid email. | Optional* |
| recruiter[email] | String, Email format | Recruiter's email address. | Required |
| recruiter[name] | String | Recruiter's first name. | Required |
| recruiter[surname] | String | Recruiter's last name. | Required |
| cv_template | Integer | ID of the CV template. Retrieve available template IDs via the 'Get CV Templates' API endpoint. | Optional |
| file_format | String | Desired file format of the output CV. Supported formats include 'docx', 'pdf', 'pptx', and 'xlsx'. | Optional |
| file | File | File to be uploaded. | Required |
| generate_cv | Boolean: 0 or 1 | Flag to generate CV. '0' for not generating, '1' for generating. | Required |
| ai_review | Boolean: 0 or 1 | Request for AI review. '0' for no review, '1' for review. | Required |
*Note: The requirement for fields marked with 'Required/Optional' depends on specific conditions detailed in the API documentation. Optional fields will use default values set in the company settings if not provided.
Conditional Requirements:
- If 'kind' is 0:
- 'consultant[email]' and 'consultant[email_confirmation]' are required.
- If 'kind' is 1:
- Include the 'consultant_valid_email' field.
- If 'consultant_valid_email' is 0:
- 'consultant_consent_email' and 'consultant_consent_confirmation_email' are required.
It's important to follow these conditional requirements to ensure proper processing of your request. Failing to include the necessary fields based on the 'kind' value may result in errors or incomplete operations.
GET Jobs
# Here is a curl example
curl --location -g '{{url}}/api/v1/company_api_user/jobs' \
--header 'access-token: {{access-token}}' \
--header 'client: {{client}}' \
--data ''
The jobs endpoint provides a comprehensive list of the open job IDs available within your company. This feature allows users to retrieve specific job identifiers, enabling them to manage and reference job-related data efficiently.
Endpoint:
https://app.sprintcv.com/api/v1/company_api_user/jobs
Result example :
[
[
1,
"20191211-061900-java-full-stack-developer-at-european-commission",
"Online - Public"
],
[
2,
"20191211-063922-jira-administrator-at-european-commission",
"Closed"
],
[
3,
"20191211-065647-java-application-architect-at-european-commission",
"Online - Public"
],
[
4,
"20191214-075524-senior-automation-tester",
"Online - Public"
],
[
5,
"20191214-081707-full-stack-developer-at-european-commission",
"Online - Public"
],
[
6,
"20200102-180111-java-application-architect-at-european-commission",
"Online - Public"
],
[
7,
"20200102-182655-project-manager-at-european-commission",
"Online - Public"
],
[
8,
"20200102-183908-java-back-end-application-developer-at-european-commission",
"Online - Public"
],
[
9,
"20200102-185117-front-end-developer-at-european-commission",
"Online - Public"
],
[
10,
"20200122-092413-it-system-test-engineer-at-eeas",
"Online - Public"
]
]
GET Job
# Here is a curl example
curl --location -g '{{url}}/api/v1/company_api_user/jobs/1' \
--header 'access-token: {{access-token}}' \
--header 'client: {{client}}' \
--data ''
The https://app.sprintcv.com/api/v1/company_api_user/jobs/{id} endpoint provides detailed information about a specific job within your company. By specifying the job ID in the URL, users can retrieve comprehensive details including job description, requirements, status, and other relevant data. This feature enables efficient management and referencing of job-related information, ensuring that users have access to all necessary job specifics.
Endpoint:
https://app.sprintcv.com/api/v1/company_api_user/jobs/{id}
Result example :
{
"success": {
"id": 23,
"company_id": 131,
"recruiter_id": 67,
"status": 1,
"featured_image": {
"url": "/uploads/job/featured_image/23/Screenshot_2024-02-28_at_13.49.30.png",
"large": {
"url": "/uploads/job/featured_image/23/large_Screenshot_2024-02-28_at_13.49.30.png"
},
"medium": {
"url": "/uploads/job/featured_image/23/medium_Screenshot_2024-02-28_at_13.49.30.png"
},
"small": {
"url": "/uploads/job/featured_image/23/small_Screenshot_2024-02-28_at_13.49.30.png"
},
"thumb": {
"url": "/uploads/job/featured_image/23/thumb_Screenshot_2024-02-28_at_13.49.30.png"
}
},
"job_title": "ajksdnajsd",
"description_introduction": "qwd",
"description_about": "",
"description_skills": "qwd",
"description_challenge": "",
"description_offer": "",
"city": "qwdqw",
"country": "NG",
"contract_type": 1,
"worksite_type": 2,
"job_type": null,
"contract_duration": null,
"client": "",
"employer": "",
"require_eu_nationality": 0,
"visa_sponsorship": 0,
"salary_amount": null,
"salary_currency": 0,
"salary_frequency": null,
"show_contact_person": false,
"show_company_about": false,
"config_min_years_exp": 5,
"config_min_years_exp_relevance": 2,
"config_min_years_exp_without_studies": 1,
"config_min_years_exp_without_studies_relevance": 2,
"config_min_degree_level": 1,
"config_min_degree_level_relevance": 2,
"config_min_years_academic_studies": 1,
"config_min_years_academic_studies_relevance": 3,
"config_eu_nationality": 1,
"config_eu_nationality_relevance": 1,
"config_has_visa_to_work_in_eu": 1,
"config_has_visa_to_work_in_eu_relevance": 1,
"config_expected_monthly_salary": 80000,
"config_expected_monthly_salary_relevance": 2,
"config_availability": 90,
"config_availability_relevance": 0,
"config_worksite_type": 1,
"config_worksite_type_relevance": 3,
"config_contract_type": 1,
"config_contract_type_relevance": 2,
"created_at": "2024-02-29T12:17:31.537Z",
"updated_at": "2024-04-08T12:57:54.413Z",
"slug": "20240229-121731-ajksdnajsd",
"internal_job_reference": "",
"application_notification_emails": "",
"include_submitted_cv": false,
"total_score": 601
}
}
POST Job
# Here is a curl example
curl --location -g '{{url}}/api/v1/company_api_user/jobs/{id}/apply' \
--header 'access-token: {{access-token}}' \
--header 'client: {{client}}' \
--data-raw '{
"consultant": {
"email": "user@sprintcv.com",
"email_confirmation": "user@sprintcv.com",
"kind": 0,
"name": "John",
"surname": "Doe",
},
"file": The CV file
}'
The POST https://app.sprintcv.com/api/v1/company_api_user/jobs/{id}/apply endpoint allows sers to apply for a specific job. By submitting the required application data to this endpoint, users can initiate the job application process for the job identified by the specified job ID. This feature streamlines the application process, enabling efficient submission and management of job applications.
Endpoint:
https://app.sprintcv.com/api/v1/company_api_user/jobs/{id}/apply
BODY
| Field | Type | Description | Requirement |
|---|---|---|---|
| consultant[email] | String, Email format | The email of the consultant. | Required/Optional* |
| consultant[email_confirmation] | String, Email format | Email confirmation for the consultant. | Required/Optional* |
| consultant[name] | String | Consultant's first name. | Required |
| consultant[surname] | String | Consultant's last name. | Required |
| consultant[kind] | Boolean: 0 or 1 | Ownership of the account by the consultant. '0' if the consultant is the owner of the account, '1' if not. | Required |
| file | File | CV file to be uploaded. | Required |
Result example :
{
"success": "Job applied with success"
}
Postman
Need Help?
If you need assistance with making API calls or understanding how our API works, we’ve got you covered. We have created a comprehensive Postman collection that includes all the endpoints and their respective request parameters.
You can import this Postman collection to get started quickly and easily test our API.
Postman Collection
Click here to download the Postman collection
Click here to access the Postman collection
This collection includes:
- All API endpoints
- Sample request parameters
- Example responses
For further assistance, feel free to reach out to our support team.
Generate CV Sandbox