POST Resend SMS

Send a reminder SMS with the original capture URL to the session’s recipient (Lithia use case). Allowed once per session within 7 days.

Endpoint

POST https://openapi.paveapi.com/v2/capture/sessions/{{session_key}}/resend

Replace session_key with the unique key for the existing session to trigger an SMS resend.

Path Parameters

Name
Type
Description

session_key

string

Unique session key (e.g., TOA-XYCBCSR6DD)

Name
Type
Description

API-Access-Token

string

Your API key

Content-Type

string

application/json

Request Body (Optional)

{
  "phone": "+84989137086"
}
Field
Type
Description

phone

string

Override destination number. If omitted, PAVE uses the original recipient.

Business Rules

  • Session must exist and belong to your API key.

  • Session cannot resend if status is QC_PASSED, CONFIRM, COMPLETE, or EXPIRED ( Valid statuses for resend: PEDING, IN_PROGRESS, SUBMITTED )

  • Session age ≤ 7 days

  • Original SMS must have been logged as delivered (legacy sessions allowed during grace period).

  • One resend per session.

  • Subject to rate limiting.

  • All attempts are audit-logged.

Sample Request

curl --location --request POST 'https://openapi.paveapi.com/v2/capture/sessions/TOA-XYCBCSR6DD/resend' \
  --header 'API-Access-Token: <your-token>' \
  --header 'Content-Type: application/json'

Sample Request (with custom phone)

curl --location --request POST 'https://openapi.paveapi.com/v2/capture/sessions/TOA-XYCBCSR6DD/resend' \
  --header 'API-Access-Token: <your-token>' \
  --header 'Content-Type: application/json' \
  --data-raw '{ "phone": "+84989137086" }'

Sample Response (200: Ok)

{
  "status": "success",
  "message": "SMS resend has been processed",
  "session_key": "TOA-XYCBCSR6DD",
  "phone": "+18005550123",
  "session_age_days": 2,
  "days_remaining": 5
}

Sample Response (404: Not Found)

{
  "status": "error",
  "message": "Session not found",
  "session_key": "TOA-INVALID"
}

Sample Response (400: Finalized)

{
  "status": "error",
  "message": "Session is already finalized and cannot be resent",
  "session_key": "TOA-XYCBCSR6DD",
  "session_status": "QC_PASSED"
}

Sample Response (400: Expired)

{
  "status": "error",
  "message": "Session has expired (older than 7 days)",
  "session_key": "TOA-XYCBCSR6DD",
  "age_days": 9,
  "max_days": 7
}

Sample Response (400: Already Resent)

{
  "status": "error",
  "message": "SMS resend already attempted for this session",
  "session_key": "TOA-XYCBCSR6DD",
  "previous_resend_at": "2025-09-08T10:00:00Z",
  "total_attempts": 2
}

Notes

  • “delivered” indicates the SMS was accepted by the provider (not handset confirmation).

  • For sessions created before SMS logging, resend may pass during a limited grace period.

Last updated