Best Practices
Summary:
CDS has curated six best practices to enhance your data retrieval experience with the CDS Bridge APIs. Adhering to these guidelines is paramount throughout the event, particularly onsite, given the substantial volume of data involved.
6 Best Practices
Set program guidelines for retrieving data from the Bridge incrementally and in smaller data sets. Minimum is once a day, and maximum is every 15 minutes. For example, many API methods accept StartDate and EndDate parameters. The consuming application should be developed to track the modified field of the last record returned, and then use that date/time as the StartDate for the next call being made. CDS will then only return registrant records that were added/modified since the start date
Use the bridge to pull as much data pre-show as possible. Using the StartDate and EndDate parameters, pull data once a day until the event is onsite. This will prevent you from trying to pull all the data during the busy onsite time. Once onsite, decrease the time range so as to pull in added/modified records on a more frequent basis.
Exclude demographic answers and/or items selected from the data being pulled if not needed.
Exclude specific RegClasses not needed by the application. This also helps with performance because only requested data is included.
As a precaution, increase application timeout to two hours. This will ensure that your application does not timeout while pulling data from the Bridge and allows the data pull on your desired frequency. Preferred frequency remains--just the timeout is extended.
CDS recommends using the Page parameter in API calls to get chunks of data requested in the call. Repeated API calls with an incremented Page parameter (Page=1, Page=2, Page=3, etc.) will return all the records (a chunk at a time) for your requested call.
Process Example
Program Run #1
Start date = 2023-09-24 3 pm
Step 1 - call api/Data/GetRegistrantsCount
Step 2 - call api/Data/GetRegistrants with &RecordLimit&Page=1 (Repeat this while incrementing the Page value. Example Page=2, then Page=3, etc.
Program Run #2
Use the maximum update date from run #1 as the new start date (it could have been 2023-09-25 10 am)
NOTE: This process may cause a small amount of duplicate data to be returned (the last record of run #1 and the first record of run #2)
API Info
Get Record Count: api/Data/GetRegistrantsCount
Get Detail: api/Data/GetRegistrants