what not to do: the 10 most common api mistakes

Post on 13-Jan-2015

649 Views

Category:

Technology

4 Downloads

Preview:

Click to see full reader

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…

top related