Data Exporter API - Access Core Objects Over API

The Data Exporter API is available to organizations that use the Reporting API, and it provides access to Core objects, which are enhanced versions of views that are more performant at scale.

The following benefits are included with the Data Exporter API:

  • Max page size increased to 10,000
  • Replaces 80 legacy views
  • Extended metadata to simplify integrations
    • Descriptions
    • Custom Field Names
    • Relationships between fields and objects (via the Odata Navigation properties)
  • All core objects include Last_touched_dt

How Does this Enhancement Benefit My Organization?

Data Exporter core objects are optimized for reliability at scale and improved performance compared to the API views. Organizations attempting to retrieve large numbers of records (>100K) may notice improved performance upon switching to the core objects.

End Point

[Portalname].csod.com/services/api/x/dataexporter/api/objects/

API Documentation

Documentation for all available APIs is available in the API Explorer for general access.

If you are not logged into your Cornerstone portal, you may want to do so since the documentation for certain Reporting API endpoints, such as those related to custom fields, adjust based on your portal's schema.

Resources

Click here to download the Data Exporter API Integration Guide.

OData v4.0 / Delta Documentation

Implementation

This functionality is available via a new end point for organizations that use the Reporting API. Objects are not 1:1 representations of views, therefore they will require some integration work in order to begin use.

On by default for current Data Exporter API users. Delta for additional objects/endpoints will be added in patches and announced via the RTDW Documentation for Reporting API, RDW, and Data Exporter Community.

OData v4.0 Delta Capabilities for Data Exporter API

OData v4.0 Delta change capabilities are available for the Data Exporter API, starting with the user_ou_core object. OData v4.0 compatible Delta change tracking is available for inserted, updated, and deleted data for the Data Exporter API.

OData v4.0 Delta Change Tracking Key Features

  • Inspect results of the $metadata endpoint to see which objects support change tracking
    • If ExtendedMetadata.ObjectSupportsChangeTracking’ = ‘true’, then can proceed with steps below
  • Do not need explicit date/time filter
    • Example: https://{corpname}.csod.com/services/api/x/dataexporter/api/objects/user_ou_core
  • Insert 'Prefer odata.track-changes’ into initial HTTP header to request that the service return a delta link
    • Response header will include ‘Preference-Applied: odata.track-changes’
    • Next pages will automatically reapply ‘Prefer: odata.track-changes’
    • If object does not support delta, will receive ‘501’ (Not Implemented) error
  • Last page of result set will include delta link with delta token
    • Example: "@odata.deltaLink": “user_ou_core?deltatoken=xxxx"
    • Delta token is encoded representation of original query and timestamp
    • Should retain delta link/token for next request and only replace when receive next delta link/token
      • If request is interrupted or otherwise unsuccessful, can use last token to request delta again. You do not need to keep track of timestamps.
  • Delta result sets may include two types of records (see sample image below):
    • Records deleted since the timestamp in the delta token. Record will include an ‘id’ field and a ‘reason’ field (with value = ‘deleted’). The ‘id’ field can be used to delete the corresponding record (if it exists) in the customer’s local database.
    • Records inserted/updated since the timestamp in the delta token. Customers should continue to use the current MERGE or UPSERT process used to process Data Exporter API data.
  • Records for data deleted in Cornerstone CSX will be maintained (primary keys only) for 15 days before hard deletion. Therefore, delta links/tokens are only valid for 15 days. After 15 days a new request for a full extract will be required