Contacts

Manage your contacts: list them, get a contact by ID, or update its pipeline state.

POST /api/contacts

Create a contact

Example request

curl -X POST "https://www.letsligo.com/api/contacts" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{   "name": "Marie Dubois",   "emails": [     "[email protected]",     "[email protected]"   ],   "company": "Acme Corp" }'

Request body

{
    "name": "Marie Dubois",
    "emails": [
        "[email protected]",
        "[email protected]"
    ],
    "company": "Acme Corp"
}

Request parameters

Name Type Description Required
name string Contact name (required) Yes
emails array Email addresses only (one entry if there is a single address). No
company string No
position string No
phones array Phone numbers only (one entry if there is a single number). No
address string No
website string No
linkedinUrl string No
additionalInfo string No
meetingContext string No
POST /api/contacts/confirm

Confirm contact creation (wizard)

Example request

curl -X POST "https://www.letsligo.com/api/contacts/confirm" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN"

Request parameters

Name Type Description Required
confirmationToken string Yes
overrides object Last-minute field overrides No
POST /api/contacts/prepare

Prepare contact creation (wizard)

Example request

curl -X POST "https://www.letsligo.com/api/contacts/prepare" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN"

Request parameters

Name Type Description Required
text string Raw text (signature, vCard) to extract contact from Yes
overrides object Field overrides to correct/extend extracted data No
PATCH /api/contacts/{id}

Update a contact

Example request

curl -X PATCH "https://www.letsligo.com/api/contacts/123e4567-e89b-12d3-a456-426614174000" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{   "company": "Acme Corp",   "position": "Directrice",   "phones": [     "+33 6 00 00 00 00",     "+33 1 00 00 00 00"   ] }'

Request body

{
    "company": "Acme Corp",
    "position": "Directrice",
    "phones": [
        "+33 6 00 00 00 00",
        "+33 1 00 00 00 00"
    ]
}

Request parameters

Name Type Description Required
id string (uuid) Unique identifier (UUID) of the resource. Yes
name string No
emails array Email addresses only (one entry if there is a single address). No
company string No
position string No
phones array Phone numbers only (one entry if there is a single number). No
address string No
website string No
linkedinUrl string No
additionalInfo string No
meetingContext string No
POST /api/contacts/{id}/emails/prepare

Prepare / generate email

Example request

curl -X POST "https://www.letsligo.com/api/contacts/123e4567-e89b-12d3-a456-426614174000/emails/prepare" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{   "message": "Rédige un email de relance après notre rencontre au salon" }'

Request body

{
    "message": "Rédige un email de relance après notre rencontre au salon"
}

Request parameters

Name Type Description Required
id string (uuid) Unique identifier (UUID) of the resource. Yes
message string Instruction for email generation Yes
sessionId string (uuid) Existing session ID for iterations No
currentEmail object No
POST /api/contacts/{id}/emails/refine

Refine email

Example request

curl -X POST "https://www.letsligo.com/api/contacts/123e4567-e89b-12d3-a456-426614174000/emails/refine" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{   "instruction": "Raccourcis le paragraphe 2",   "sessionId": "uuid-from-prepare" }'

Request body

{
    "instruction": "Raccourcis le paragraphe 2",
    "sessionId": "uuid-from-prepare"
}

Request parameters

Name Type Description Required
id string (uuid) Unique identifier (UUID) of the resource. Yes
instruction string e.g. "Shorten paragraph 2" Yes
sessionId string (uuid) Required - from prepare No
currentEmail object No
POST /api/contacts/{id}/emails/send

Send email

Example request

curl -X POST "https://www.letsligo.com/api/contacts/123e4567-e89b-12d3-a456-426614174000/emails/send" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{   "sessionId": "uuid-from-prepare" }'

Request body

{
    "sessionId": "uuid-from-prepare"
}

Request parameters

Name Type Description Required
id string (uuid) Unique identifier (UUID) of the resource. Yes
emailData object No
sessionId string (uuid) No
POST /api/contacts/{id}/extend

Extend contact with text

Example request

curl -X POST "https://www.letsligo.com/api/contacts/123e4567-e89b-12d3-a456-426614174000/extend" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN"

Request parameters

Name Type Description Required
id string (uuid) Unique identifier (UUID) of the resource. Yes
text string Text to append Yes
field string: additionalInfo | meetingContext No
PATCH /api/contacts/{id}/pipeline-state

Update contact pipeline state

Example request

curl -X PATCH "https://www.letsligo.com/api/contacts/123e4567-e89b-12d3-a456-426614174000/pipeline-state" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{   "stateId": "123e4567-e89b-12d3-a456-426614174000" }'

Request body

{
    "stateId": "123e4567-e89b-12d3-a456-426614174000"
}

Request parameters

Name Type Description Required
id string (uuid) Contact UUID Yes
stateId string (uuid), nullable Pipeline state UUID. Pass null or omit to remove contact from pipeline. No

Response example

{
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "name": "Marie Dubois",
    "company": "Acme Corp",
    "status": "pending",
    "pipelineState": {
        "id": "223e4567-e89b-12d3-a456-426614174000",
        "name": "Nouveau contact"
    }
}

Response attributes

Name Type Description
id string (uuid) Unique identifier (UUID) of the resource.
name string Full name of the contact (required).
company string, nullable Company or organization name.
status string: pending | enriched | contacted | qualified | converted | lost Contact status in the pipeline: pending, enriched, contacted, qualified, converted, or lost.
pipelineState object, nullable Current pipeline state of the contact.