Skip to main content
Set test_mode: true on the request envelope to validate the envelope and every event without creating a canonical record or forwarding to OpenAI. Use this as the final integration check before sending live conversions.

Results

Inspect every result in a 200 response. Possible statuses are accepted, duplicate, suppressed, invalid, and, in test mode, validated. Retry the complete request with the same event IDs only after a 503, when Thrad could not determine a durable outcome.

Common errors

  • invalid_timestamp: correct the system clock or send the event within the supported time window.
  • invalid_identity: send valid lowercase SHA-256 hex values, or supported plaintext arrays for local hashing.
  • invalid_context: do not alter click signatures, oppref, oppcref, or obref.
  • no_attribution_signal: include a signed Thrad context, an OpenAI reference, or a supported matching identifier.
  • measurement_consent_denied: do not retry until measurement consent is granted for a new event.
  • duplicate_event: the original event was accepted; do not create a new ID for a retry.