VoxLink.ai

Leads

Update Lead

Update an existing lead in your campaigns

Update a lead by providing the lead ID and the fields you want to modify. Only the fields provided in the request will be updated.

Path Parameters

idintegerrequired

The ID of the lead to update

Body Parameters

campaign_idinteger

The ID of the campaign to assign the lead to

phone_numberstring

The phone number of the lead (will be formatted to E164)

statusstring

The status of the lead. Must be one of: created, completed, reached-max-retries

variablesobject

Custom variables to merge with existing lead variables

Response

messagestring

Success message indicating the lead was updated

curl -X PUT "https://app.voxlink.ai/api/user/leads/123" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "campaign_id": 456,
    "phone_number": "+1234567890",
    "variables": {
      "name": "John Doe",
      "company": "Acme Corp"
    }
  }'
{
  "message": "Lead updated successfully"
}
{
  "message": "Lead not found"
}
{
  "message": "Campaign not found"
}
{
  "message": "Invalid phone number"
}
{
  "message": "Validation failed",
  "errors": {
    "campaign_id": ["The selected campaign does not exist"],
    "status": ["This status is assigned automatically and cannot be set manually"],
    "variables": ["Variables must be an array"]
  }
}
{
  "message": "Invalid fields: invalid_field, another_invalid_field"
}

Notes

  • The lead must belong to the authenticated user
  • If updating the campaign, the new campaign must also belong to the authenticated user
  • Phone numbers are automatically formatted and validated
  • Variables are merged with existing variables (not replaced)
  • Only allowed fields can be updated: campaign_id, phone_number, status, variables
  • The status field has restricted values for data integrity

Related guides