Get Failed Syncs

Use this endpoint to retrieve all messages that failed to sync to Salesforce within a given time window.

Daily email digest: The daily failure email is sent each morning and covers failures from the previous day. Set from_time to the start of that day and till_time to the end of it to fetch all failures covered by that email.

Endpoint

GET /tenants/{tenant_id}/messages/failed/

Path parameters

Parameter

Type

Required

Description

tenant_id

string (uuid)

Required

The UUID that identifies your tenant in the GoTallo system.

Query parameters

Parameter

Type

Required

Description

from_time

string (date-time)

Required

Start of the time range. ISO 8601 format. Example: 2021-05-01T00:00:00

till_time

string (date-time)

Required

End of the time range. ISO 8601 format. Example: 2021-06-01T00:00:00

type

string

Optional

Filter by message format. Accepted values: standard (default) or salesforce. Pass salesforce to receive messages in the Heroku_Message__c Salesforce object format.

Example request

Bash
curl -X GET \
  "https://api.gotallo.com/api/v1/tenants/34f5c98e-f430-457b-a812-92637d0c6fd0/messages/failed/?from_time=2021-05-01T00:00:00&till_time=2021-06-01T00:00:00&type=salesforce" \
  -H "Authorization: Bearer <your_api_token>" \
  -H "Content-Type: application/json"

Response

Status codes

Code

Description

200

Returns a paginated list of failed messages.

400

Bad Request — missing or malformed from_time or till_time.

401

Unauthorized — invalid or missing API token.

Response fields

Field

Type

Description

count

integer

Total number of failed messages in the result set.

next

string | null

URL to the next page of results. null if this is the last page.

previous

string | null

URL to the previous page of results. null if this is the first page.

results

array

Array of failed message objects.

results[].id

string (uuid)

Unique identifier of the message.

results[].ext_identifier

string

External identifier for the message, if set.

results[].agent_id

string (uuid)

ID of the agent associated with the message.

results[].tenant_id

string (uuid)

Tenant the message belongs to.

results[].conversation_id

string (uuid)

ID of the conversation this message belongs to.

results[].timestamp

string (date-time)

When the message was originally created.

results[].modified_timestamp

string (date-time)

When the message was last modified.

results[].type

string

Message type (e.g. text, image).

results[].status

string

Current sync status of the message.

results[].outbound

boolean

true if sent by an agent; false if received from a customer.

results[].text

string

Message body text.

results[].log_message

string

The Salesforce error that caused the sync to fail. Use this field to diagnose and resolve the issue.

results[].file

string

URL to an attached file, if present.

results[].file_type

string

MIME category of the attached file (e.g. image, audio).

results[].media_title

string

Display title of the attached media.

results[].mime_type

string

Full MIME type of the attached file (e.g. image/jpeg).

results[].transcribe_enabled

boolean

Whether transcription is enabled for this message.

results[].transcribe_in_progress

boolean

Whether transcription is currently being processed.

results[].auxiliary_data

string

Additional metadata attached to the message.

results[].custom_data

object

Free-form key/value object for custom properties set on the message.

Diagnosing failures: The log_message field contains the error returned by Salesforce at the time of the failed sync. This is the primary field to inspect when troubleshooting. Common causes include missing required fields, permission errors on the integration user, or Salesforce validation rule violations.

Example response

JSON
{
  "count": 1,
  "next": null,
  "previous": null,
  "results": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "ext_identifier": "ext-msg-001",
      "agent_id": "2b1e3b65-2c04-4fa2-a2d7-467901e98978",
      "tenant_id": "34f5c98e-f430-457b-a812-92637d0c6fd0",
      "conversation_id": "cc71b11a-25cd-4c2d-9950-df2cc38e3407",
      "timestamp": "2019-08-24T14:15:22Z",
      "modified_timestamp": "2019-08-24T14:15:22Z",
      "type": "text",
      "status": "sync_failed",
      "outbound": false,
      "text": "Hello, I need help with my order.",
      "auxiliary_data": null,
      "custom_data": {},
      "file": null,
      "file_type": null,
      "media_title": null,
      "mime_type": null,
      "transcribe_enabled": false,
      "transcribe_in_progress": false,
      "log_message": "FIELD_CUSTOM_VALIDATION_EXCEPTION: Message body exceeds maximum field length."
    }
  ]
}