Completions Mapping Reference

Prev Next

This guide details the mapping of completion records between SAP SuccessFactors and Thrive.

SAP

Thrive

Source Field

Source Type

Target Field

Target Type

Transformation Rule

Nullable

Notes

USER_ID

String

ref

String

Direct copy (used to resolve Thrive user by ref)

N

Used to identify the learner in Thrive by matching user.ref to the SAP USER_ID. This is the key used to link assignments to a user.

COMPLETED_AT

String (date-time)
2019-03-13T16:15:24Z

completedAt

String (date-time)
2019-03-13T16:15:24Z

Direct copy (date-time)

N

Stored as-is as the completed date. When a valid completion is received, the integration creates or updates the corresponding assignment (user ↔ content) and marks it as Completed using Thrive’s internal lifecycle.

COMPLETION_STATUS

String

Not stored – used for processing logic only

N

Not persisted in Thrive. Used to decide whether this completion should mark the assignment as completed (e.g., some SAP completion statuses such as ASMT-NC should not complete an assignment).

COMPLETION_STATUS_ID

String

Not stored – used for processing logic only

N

Not persisted in Thrive. Same handling as COMPLETION_STATUS; used only to determine whether the completion should result in an assignment being marked as completed.

CONTENT_ID

String

externalReference

String

Derived (composite key: contentId + contentTypeId + revisionAt)

N

Not stored as a standalone field. Used together with CONTENT_TYPE_ID and CONTENT_REVISION_AT to construct externalReference in the format {contentId}_{contentTypeId}_{revisionEpochMs}. This value is persisted and also included in the Thrive description for traceability.

CONTENT_TYPE_ID

String

Used in derivation of externalReference

N

Not stored as a standalone field. Used only as part of the composite externalReference key together with CONTENT_ID and CONTENT_REVISION_AT. Thrive does not persist SAP content type separately as all SAP content is stored as URL content.

CONTENT_TITLE

String

title

String

Direct copy

N

SAP content title is stored as the Thrive content title.

CONTENT_DESCRIPTION

String

description

String

Derived (contentId + description + target audience)

Y

Thrive description is derived by concatenating CONENT_ID, then SAP CONTENT_DESCRIPTION, then SAP CONTENT_TARGET_AUDIENCE (in that order). Either SAP field may be missing; the description may contain only the external reference if no other values are provided.

CONTENT_REVISION_AT

String (date-time)
2019-03-13T16:15:24Z

externalReference

String

Used in derivation of externalReference (converted to epoch ms)

N

Not stored as a standalone field. Converted to epoch milliseconds and used as part of the composite externalReference together with CONTENT_ID and CONTENT_TYPE_ID. The resulting externalReference is also included in the Thrive description for traceability.

CONTENT_IS_ACTIVE

Boolean

Not stored – Thrive derives internally

We don’t store this value. It is used to decide whether we should create the content item.

CONTENT_THUMBNAIL_URL

String

thumbnail

String

Direct copy

Y

Stored as the Thrive thumbnail URL if provided by SAP.

CONTENT_DOMAIN_ID

String

tags

Array(String)

Direct copy (mapped to tags array)

Y

SAP domain ID is stored as a tag in Thrive

CONTENT_TARGET_AUDIENCE

String

description

String

Derived (append to description)

Y

Appended to the Thrive description after SAP CONTENT_DESCRIPTION. This value is not stored in a separate field as Thrive has no dedicated “target audience” attribute.