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
POST /api/v1/convert HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer {access token}
Content-Type: multipart/form-data
Accept: */*
Content-Length: 17
{
"file": "binary"
}
{
"profileId": "text"
}
Returns a paginated list of profiles
1
10
GET /api/v1/profiles HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer {access 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
GET /api/v1/profiles/{profileId} HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer {access 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)
GET /api/v1/profiles/{profileId}/render HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer {access token}
Accept: */*
binary
DELETE /api/v1/profiles/{profileId} HTTP/1.1
Host: app.cvtoblind.com
Authorization: Bearer {access token}
Accept: */*
No content
Last updated