Profile - Loopbacks

Loopbacks are for any 1:1 or 1:many fields included for profile updates that are associated with a warehouse field shipped to AlumnIQ.

We use this loopback aproach to capture adds and removes (timestamped, of course) so you can 'replay' the changes on your CRM system and catch up to what we believe the truth to be.

Because loopbacks can be captured on varying objects/properties, and we didn't want to send you looking for 20 different API resources, this is an intensely vertical feed with a requirement to discriminate/filter on entityName and propertyName fields for your internal processing.

Data Sources

The changes in this feed originate exclusively from profile updates conducted by an authenticated constituent.

Quick Preview

Log in to admin. Go to System > Reports and find "Daily: Loopbacks" and choose an entity filter (if desired).

This exercises the same API resource you're about to pull from and returns the data as a flat csv. The columns represent each key of each item in the returned object array.

Timing

We recommend daily. You're welcome to pull more frequently, but it's probably not of much help.

Workflow

triangle-exclamation

The recommended flow puts the onus on you to call us back after you've processed change requests. You may find that inconvenient. The alternate approach puts all the handling responsibility on your shoulders from the moment of fetch - meaning there's no recourse if you drop or lose the changeset following the GET. Most clients have opted for the alternate approach for simplicity.

Recommended:

  • fetch a block

  • update your CRM system

  • for each record you've handled, add the changeId to a list

  • PUT that list to AlumnIQ so we can mark the changes as processed

Alternate:

  • fetch a block, setting markAsProcessed=true

  • update your CRM system

API Resource

GET /loopback/unprocessed

Optional Filter:

  • propertyName - Filter by a specific propertyName. For example to get unprocessed loobacks for Affinity Groups use profileAffinities

PUT /loopback/unprocessed

Pick One:

  • upToAndIncludingLoopbackId - Specify ONLY ONE loopbackId: the max value that you want processed

  • loopbackIds - Specify one or more loopbackId values to mark as processed. (comma-delimited list)

Last updated