what not to do: the 10 most common api mistakes
DESCRIPTION
The Bronto API is a key tool for integrating your systems data with Bronto. Understanding all of the various aspects and features of the API will help maximize the full potential of the system, driving revenue and ensuring customer engagement. Along the way, you may come across issues with your integration. This presentation will explore some of the common issues developers have when integrating with the Bronto API along with tips and tricks that will make the integration as painless as possible.TRANSCRIPT
What Not To Do: The 10 Most Common API Mistakes
None of my date fields are saving? API Date Formats
API Date Formats
• Standard ISO 8601 Combined Date and Time format • 2013-03-17T00:23:00 YYYY-MM-DDTHH:MM:SS • All date/time is stored as UTC • Time zone offsets the API Input or the • Output • 2013-03-17T00:23:00-4:00 YYYY-MM-DDTHH:MM:SS-Offset
Why do I get invalid sessions errors? Session Refresh
Session Refresh
Always keep it fresh!
Sessions will timeout after 20 minutes of inactivity
Session Id's must stay the same when paging through results.
None of my contacts status changes are being saved? Contact Status Change
Contact Status Change
Status can only be updated by
using the updateContacts function
Status update removed from
the addOrUpdateContacts function
Why are my API deliveries being skipped? Transactional vs. Triggered
Transactional vs. Triggered
What is a Triggered email?
What is a Transactional email?
Set your delivery type correctly.
What is an API Id and where can I get it? Using API Id's instead of named elements
Using API Id's
Where can I find API Id's?
API calls or Bronto UI
Use Id's as they are a faster read and write
Why was my contact removed from all lists but one? List Management
List Management
Remember to always read before you write.
**All API functions are an overwrite, not an append.
Is there a way to process more than one record at a time? Batch Processing
Batch Processing
Batch processing can be up to 4x faster.
Example: updateContacts function with 500 contact objects **Try to limit the total elements per call to 5000
My API calls are no longer working, that code has not been touched in years! Logging
Logging
Log it, Log it All! § Log the error that the API returns.
§ Log the SOAP request that went out.
§ Log the SOAP response.
Logging
Trap, Wait and Retry.
• Timeouts
• Connection issues
• Etc.
Why can't I connect to the API right now? Queuing
Queuing
So what do you do when you can't connect?
Sit, Wait, Panic...
Build a Queue!
Queuing helps to alleviate issues or processing when:
• Processes are running slow
• Connectivity issues arise
• Maintenance windows
Why is my order data not not updating properly? Orders and Conversions
Orders and Conversions
Conversions lock data when they are added to the system.
Items that cannot be modified.
• Contact ID
• Message ID
• Delivery ID
If an order already exists in the system and does not have a contact ID on the record, the order will need to be deleted and
re-entered in order to associate that order to the contact correctly.
Thank you for attending…