Expand my Community achievements bar.

Update BDIA Response to be Explicit when File Upload Fails due to Known Limitations


Level 1


Description - In the documentation for the BDIA (Bulk Data Insertion API), there are 5 Limitations on uploads. One is the requirement that the report suite be configured as "Timestamp Optional" or "Timestamp enabled." 


Last month, my team began uploading files using the BDIA for the first time. After each upload, the API provided a response that suggested the upload was successful (see an excerpt of the API response below). However, our QA efforts showed that the data was not present in Analytics even after days of uploads. We eventually determined through other means that the root cause was that the report suite had not been set to "Timestamp Optional". The data uploads were failing, yet the API response did not reflect this.

Why is this feature important to you - The data we were uploading is critical for some of our business processes, and those processes were delayed while we investigated the root cause of the failed uploads. We also spent more engineer time than necessary while deep diving, since the "Processing complete" API response led us to investigate other possible root causes instead of the simple fix to "Timestamp Optional" in the Admin panel. These costs could have been avoided if the API response had provided a clear error message explaining the reason for the failed uploads or at least suggesting that the error had occurred in the Analytics engine.

How would you like the feature to work - The current API response should provide the user with feedback if the upload will fail for any reason related to known limitations on the file or report suite. Alternatively, the Admin panel could provide logs or another form of feedback showing whether previous BDIA uploads were successful or failed. At that time, it could check whether the Analytics engine processed all BDIA uploads to completion.

Current Behavior - The current API response suggests a successful upload occurred even if the upload fails for reasons related to known limitations.


Excerpt of API Response from 1 upload:

[status_code] => UPLOADED
[processing_log] => Processing complete: 875 rows will be submitted. No invalid rows.