Troubleshooting app stuck records

  1. What type of app is this? What are the notify settings of the app? On notify calls, does it expect to receive records in the notification request?

    • For example, if this app is an Action app, and the max records = 0, this means, when records arrive on the app step, Oracle Eloqua will make a notify call out to the app, but will not export the members in the request body of the notify call. The app is expected to manually do the Bulk API export.
  2. Was there a notify call being made for those records? How did the app respond?

    • In the instance where the records are stuck, you'll be able to see the stuck records and the time frame where they entered the step. You can check if a notify call went to the app, and verify the app's response. Logs can be viewed in the Eloqua instance that is hosting the app by going to Settings > AppCloud Developer > Select the app > Click logs icon located across from the app name. Note that these logs can only be viewed here if the Eloqua instance the app is installed on is on the same Pod as the host instance. These same logs can also be viewed using the API endpoint GET /api/cloud/1.0/apps/<id>/logs. This endpoint enables viewing the app logs regardless of the Pod.
  3. Is Contact Security being used?

    • If Contact Security is being used:
      • If records are in notify call, does the user that activated the canvas have access to the right labels?
      • If app is exporting records, does the user creating the Bulk API sync export have access to the right labels?
      • Are there 0 records in export by app? If so, this indicates the user does not have access to the labels for contacts in the step.
      • Options to confirm if a user has access to a contact:

        • Check if the user is able to view the contact in Eloqua
        • Check if the customer has set up Contact Security from Settings > Users > Contact Security (This requires customer admin access)
        • Check the security labels on the contact and compare with user's label access
        • Check if the contact can be retrieved using the Retrieve a contact Application API endpoint (if you have the contact id) or the Retrieve a list of contacts Application API endpoint (if you have email address or another field to search with)
  4. Did the app do a Bulk API export to retrieve these records?

    • Are there logs that a Bulk API export was performed for the instance and executionId?
    • Are there Bulk API logs that indicate that the export creation has failed?
    • Are there 0 records in the export by app? This could indicate the user does not have access to the labels for contacts in the step. This could also occur if there is a mismatch with the entity. For example, a mismatch can occur when trying to export contacts from a custom object program, or when attempting to export records from a custom object that’s different from the program setting.
  5. If a Bulk API export sync was successfully completed, was there a Bulk API import to move the records through?

  6. Are there are a large volume of pending Bulk API syncs that are delaying import?

    • With 21B, the record status will indicate "Import Queued by App" when the app has created an import to update step member's status.
    • The following Bulk API request can be used to view the number of pending syncs: GET /api/Bulk/2.0/syncs?q=status=pending.
  7. Check the app logs.

  8. If the error is related to the Bulk API export or import, then check the sync logs.

  9. If the error is not apparent from the logs, then open a Service Request. Attach the details confirmed as part of these steps and the logs for investigation.