Reinstate Lead

This endpoint reinstates a previously cancelled lead.

PATCH/api/integration/lead/reinstate

Request

cURL
curl -X PATCH "https://dev.integration.cl.sodtrack-shared.sodtrack.com/api/integration/lead/reinstate" \
  -H "Authorization: Bearer $SODTRACK_TOKEN" \
  -H "Content-Type: application/json" \
  -H "origin: <your-origin>" \
  -d '{
  "lead": {
    "type": "leadId",
    "value": "252"
  }
}'

Base URL: https://dev.integration.cl.sodtrack-shared.sodtrack.com · other environments

Headers

NameTypeDescription
originstring

Request body

application/json
{
  "lead": {
    "type": "leadId",
    "value": "252"
  }
}

General Description

This endpoint reinstates a previously cancelled lead. The lead is identified in the request body by either lead ID or lead reference.

Reinstating a lead rolls it back to its latest non-cancelled status found in lead status history. The lead cancel reason is cleared.


Field Definitions

Request Body: ExternalIntegrationReinstateLeadRequestDTO

FieldTypeRequiredDescription
leadExternalIntegrationLeadIdentifierRequestDTOYesLead identifier object (ID or reference lookup).

ExternalIntegrationLeadIdentifierRequestDTO

FieldTypeRequiredDescription
typeenumYesType of lead identifier. Must be one of: leadId or leadReference.
valuestringYesThe lead ID (if type is leadId) or lead reference (if type is leadReference).

Success Response

FieldTypeRequiredDescription
---200 OK. Lead reinstate operation completed.

Business Rules & Constraints

  • The lead must exist (leadId or leadReference lookup). If not found, the endpoint returns LEAD_NOT_FOUND.

  • The lead must currently be in status CANCELLED. Otherwise, the endpoint returns LEAD_NOT_IN_CANCELLED_STATUS.

  • The lead must have at least one non-cancelled status in lead_status_history. Otherwise, the endpoint returns LEAD_HAS_NO_PREVIOUS_STATUS.

  • On success, the lead status is set to the latest non-cancelled history status and cancelReason is cleared.


Example Request (Lead reference)

json
{
  "lead": {
    "type": "leadReference",
    "value": "LEAD-EXT-252"
  }
}

Example Request (Lead id)

json
{
  "lead": {
    "type": "leadId",
    "value": "252"
  }
}

Example Response

http
HTTP/1.1 200 OK

Example Error Response: Lead Not Found

json
{
  "statusCode": 400,
  "message": "LEAD_NOT_FOUND",
  "error": "Bad Request"
}

Example Error Response: Lead Not In Cancelled Status

json
{
  "statusCode": 400,
  "message": "LEAD_NOT_IN_CANCELLED_STATUS",
  "error": "Bad Request"
}

Example Error Response: No Previous Status

json
{
  "statusCode": 400,
  "message": "LEAD_HAS_NO_PREVIOUS_STATUS",
  "error": "Bad Request"
}