API
The API allows you to integrate the core CVtoBlind functionality within your app.
Authentication
All endpoints use the Bearer Authentication mechanism. You can create a new API Key at Settings / Access Keys.
Usage guide
Creating a profile
In order to ingest a new profile into CVtoBlind, you need to upload a CV file to the API endpoint. The endpoint returns the ID of created profile.
Profile processing
Once you have that ID, you can retrieve the profile with API. The profile has a status field, which initially will be set to queued. Within 15-30 seconds the profile will be processed & the data field will be populated.
Profile contents
Once the processing is completed, the data field contains the entire CV data object. This object contains all the data we've extracted from the CV file. It can also be modified with the Profile Editor inside the app, but not via the API.
Exporting profiles
In order to export profile data, you can either access the raw files directly as JSON via API or render the profile in a given template with API. The available options are docx and pdf.
If you don't specify a templateId parameter, the default template assigned to your account will be used. In order to lookup available templates, see Templates. You can copy the templateId by clicking the ID column value.
OpenAI Spec
Max file size: 10MB. Accepted file types: .pdf, .docx, .jpg, .png
ID of the created profile
Invalid file parameter
Unauthorized
Internal Server Error
POST /api/v1/convert HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: multipart/form-data
Accept: */*
Content-Length: 17
{
"file": "binary"
}{
"profileId": "text"
}Returns a paginated list of profiles
110A paginated list of profiles
Invalid page or page size
Unauthorized
Internal Server Error
GET /api/v1/profiles HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": [
{
"profileId": "text",
"fileName": "text",
"createdBy": "text",
"status": "queued",
"data": {
"email": "text",
"github": "text",
"mobile": "text",
"skills": [
"text"
],
"summary": "text",
"linkedin": "text",
"education": [
{
"major": "text",
"start": "text",
"degree": "text",
"finish": "text",
"faculty": "text",
"university": "text"
}
],
"languages": [
{
"level": "text",
"language": "text"
}
],
"last_name": "text",
"main_role": "text",
"experience": [
{
"to": "text",
"from": "text",
"roles": [
"text"
],
"company": "text",
"project": "text",
"location": "text",
"technologies": [
"text"
],
"responsibilities": [
"text"
]
}
],
"first_name": "text",
"other_urls": [
"text"
],
"technologies": [
"text"
],
"category_tech": {
"ANY_ADDITIONAL_PROPERTY": [
"text"
]
},
"certifications": [
{
"certificate": "text",
"date": "text"
}
],
"physical_address": "text",
"additional_information": "text",
"hobby": [
"text"
],
"total_experience": "text",
"detailed_address": {
"country": "text",
"city": "text",
"postal_code": "text",
"address": "text"
},
"custom_fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
}
],
"metadata": {
"total": 0,
"page": 1,
"pageSize": 10,
"totalPages": 0
}
}Returns a single profile
Profile details
Profile not found
Internal Server Error
GET /api/v1/profiles/{profileId} HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"profileId": "text",
"fileName": "text",
"createdBy": "text",
"status": "queued",
"data": {
"email": "text",
"github": "text",
"mobile": "text",
"skills": [
"text"
],
"summary": "text",
"linkedin": "text",
"education": [
{
"major": "text",
"start": "text",
"degree": "text",
"finish": "text",
"faculty": "text",
"university": "text"
}
],
"languages": [
{
"level": "text",
"language": "text"
}
],
"last_name": "text",
"main_role": "text",
"experience": [
{
"to": "text",
"from": "text",
"roles": [
"text"
],
"company": "text",
"project": "text",
"location": "text",
"technologies": [
"text"
],
"responsibilities": [
"text"
]
}
],
"first_name": "text",
"other_urls": [
"text"
],
"technologies": [
"text"
],
"category_tech": {
"ANY_ADDITIONAL_PROPERTY": [
"text"
]
},
"certifications": [
{
"certificate": "text",
"date": "text"
}
],
"physical_address": "text",
"additional_information": "text",
"hobby": [
"text"
],
"total_experience": "text",
"detailed_address": {
"country": "text",
"city": "text",
"postal_code": "text",
"address": "text"
},
"custom_fields": {
"ANY_ADDITIONAL_PROPERTY": "text"
}
}
}Renders a profile document in the specified format (pdf or docx)
Rendered profile document
Invalid parameters
Profile or user not found
Internal Server Error
GET /api/v1/profiles/{profileId}/render?fileType=pdf HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
binaryProfile deleted
No content
Unauthorized
Profile not found or could not be deleted
Internal Server Error
DELETE /api/v1/profiles/{profileId} HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
Last updated