Skip to main content
POST
/
my-talents
/
import
cURL
curl --request POST \
  --url https://api.collective.work/{environment}/v1/my-talents/import \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "internalUserId": "candidate-12345",
  "linkedInUrl": "https://www.linkedin.com/in/johndoe",
  "resume": "JVBERi0xLjQKJeLjz9...",
  "resumeUrl": "https://storage.example.com/resumes/johndoe-cv.pdf",
  "firstname": "John",
  "lastname": "Doe",
  "pictureUrl": "https://storage.example.com/photos/johndoe.jpg",
  "atsUrl": "https://ats.example.com/candidates/12345",
  "emails": [
    "[email protected]",
    "[email protected]"
  ],
  "phones": [
    "+33 6 12 34 56 78",
    "+1 555 123 4567"
  ],
  "notes": [
    {
      "content": "Great candidate, strong technical skills. Interviewed for senior role.",
      "timestamp": "2024-03-15T14:30:00Z",
      "email": "[email protected]"
    }
  ],
  "links": [
    {
      "name": "GitHub",
      "url": "https://github.com/johndoe"
    }
  ],
  "dailyRate": "50000",
  "yearlySalaryMin": "4500000",
  "yearlySalaryMax": "6500000",
  "workPreference": "REMOTE",
  "location": "Paris, France",
  "desiredContractType": [
    "FREELANCER",
    "PERMANENT_CONTRACT"
  ]
}
'
{
  "userId": "cm71yqftr00000ck0bpz3hpg1",
  "status": "created"
}

Authorizations

Authorization
string
header
required

API key given to you (If you don't have one, check this section)

Body

application/json
internalUserId
string
required

Internal identifier of the user in your system - this is used to link the user to your system

Example:

"candidate-12345"

linkedInUrl
string

LinkedIn profile URL of the user (At least one of linkedInUrl or resume must be provided)

Example:

"https://www.linkedin.com/in/johndoe"

resume
string

Resume/CV file content in base64 format (At least one of linkedInUrl or resume must be provided) - Payload is limited to 10mb maximum size

Example:

"JVBERi0xLjQKJeLjz9..."

resumeUrl
string
deprecated

Resume/CV URL of the user - ⚠️ don't use anymore ⚠️ - send resume in base64 format instead for safer handling

Example:

"https://storage.example.com/resumes/johndoe-cv.pdf"

firstname
string

First name of the user

Example:

"John"

lastname
string

Last name of the user

Example:

"Doe"

pictureUrl
string

Profile picture URL of the user

Example:

"https://storage.example.com/photos/johndoe.jpg"

atsUrl
string

ATS URL - this is the URL of the profile in your ATS system - providing is important to allow you to jump directly to the profile in your ATS system from Collective, simplifying greatly the experience

Example:

"https://ats.example.com/candidates/12345"

emails
string[]

List of email addresses

phones
string[]

List of phone numbers

Example:
["+33 6 12 34 56 78", "+1 555 123 4567"]
notes
object[]

List of notes, interview reviews about the user

List of links (github, personal website, etc...)

dailyRate
string

Daily rate in cents (e.g., "50000" for 500.00 EUR)

Example:

"50000"

yearlySalaryMin
string

Minimum yearly salary expectation in cents (e.g., "4500000" for 45000.00 EUR). Must be provided together with yearlySalaryMax.

Example:

"4500000"

yearlySalaryMax
string

Maximum yearly salary expectation in cents (e.g., "6500000" for 65000.00 EUR). Must be provided together with yearlySalaryMin.

Example:

"6500000"

workPreference
enum<string>

Work preference: REMOTE or FLEXIBLE

Available options:
REMOTE,
FLEXIBLE
Example:

"REMOTE"

location
string

Location of the user (e.g., "Paris, France")

This overrides any location data we may have gathered internally.

Example:

"Paris, France"

desiredContractType
enum<string>[]

Desired contract types: array containing FREELANCER and/or PERMANENT_CONTRACT

Available options:
FREELANCER,
PERMANENT_CONTRACT
Example:
["FREELANCER", "PERMANENT_CONTRACT"]

Response

Users successfully imported

userId
string
required

Unique identifier of the user in Collective

Example:

"cm71yqftr00000ck0bpz3hpg1"

status
enum<string>
required

Whether the user was newly created or updated

Available options:
created,
updated
Example:

"created"