Image
abstract swish line in gradient colouring from pink to blue on a dark blue background

Integrations - Learning

Saving the custom card record

Before sending the post request that will do the actual record save, users can do a “resource template” get that will give information about the data structure needed to create a new record.

Endpoint for resource template

GET {baseAPIUrl}/customcards/realization/employee/{employeeId}/customcarddata/{cardId}/resourcetemplate

Example response:

{
    "data": {
        "customCardData": {
            "moduleId": "talent",
            "schemaId": "b3635703-12ae-4070-a37d-19386baf9e30",
            "linkedId": "32229a0f-bb20-4611-b0cd-a6a400cfba22",
            "entityType": "employee",
            "_links": {
                "validate": {
                    "href": "customcards/realization/employee/32229a0f-bb20-4611-b0cd-a6a400cfba22/customcarddata/b3635703-12ae-4070-a37d-19386baf9e30/validation/{fieldName}"
                }
            },
            "uuidbab076fe64d5417a9499773747693b9e": null,
            "uuidfcb4b107494f47828813e2646a83a060": null,
            "uuidcf5ca0428a7b4c3ba79cc45849d8458f": ""
        }
    },
    "meta": {
        "customCardData.entityType": {
            "hidden": "true",
            "disabled": "true"
        },
        "customCardData.id": {
            "hidden": "true",
            "disabled": "true"
        },
        "customCardData.entityId": {
            "hidden": "true",
            "disabled": "true"
        },
        "customCardData.linkedId": {
            "hidden": "true",
            "disabled": "true"
        },
        "customCardData": {
            "label": "External LMS",
            "hasMany": "true"
        },
        "customCardData.schemaId": {
            "hidden": "true",
            "values": [
                {
                    "_links": {
                        "template": "customcards/realization/employee/32229a0f-bb20-4611-b0cd-a6a400cfba22/customcarddata/b3635703-12ae-4070-a37d-19386baf9e30/resourcetemplate",
                        "self": "customcards/realization/employee/32229a0f-bb20-4611-b0cd-a6a400cfba22/customcarddata/b3635703-12ae-4070-a37d-19386baf9e30/resourcetemplate"
                    },
                    "meta": {
                        "hasMany": true
                    },
                    "id": "b3635703-12ae-4070-a37d-19386baf9e30",
                    "value": "External LMS"
                }
            ],
            "disabled": "true"
        },
        "customCardData.uuidbab076fe64d5417a9499773747693b9e": {
            "datatype": {
                "type": "text"
            },
            "visibleOnSummary": "true",
            "label": "Course name",
            "mandatory": "true",
            "order": "0"
        },
        "customCardData.uuidcf5ca0428a7b4c3ba79cc45849d8458f": {
            "datatype": {
                "type": "datetime"
            },
            "visibleOnSummary": "true",
            "label": "Completion date",
            "mandatory": "true",
            "order": "1"
        },
        "customCardData.uuidfcb4b107494f47828813e2646a83a060": {
            "datatype": {
                "type": "text"
            },
            "visibleOnSummary": "true",
            "label": "Course URL",
            "mandatory": "false",
            "order": "2"
        },
        "links": {
            "self": {
                "href": "customcards/realization/employee/32229a0f-bb20-4611-b0cd-a6a400cfba22/customcarddata/b3635703-12ae-4070-a37d-19386baf9e30/resourcetemplate"
            },
            "create": {
                "href": "customcards/realization/employee/32229a0f-bb20-4611-b0cd-a6a400cfba22/customcarddata/b3635703-12ae-4070-a37d-19386baf9e30"
            }
        }
    }
}


Response explanation

Each of the three fields we added to the custom card have their corresponding IDs that are in the customCardData object. Each of the fields also have details in the meta object explaining which id which field represents:

Fields

"uuidbab076fe64d5417a9499773747693b9e": null,
"uuidfcb4b107494f47828813e2646a83a060": null,
 "uuidcf5ca0428a7b4c3ba79cc45849d8458f": ""


Details

"customCardData.uuidbab076fe64d5417a9499773747693b9e": {
            "datatype": {
                "type": "text"
            },
            "visibleOnSummary": "true",
            "label": "Course name",
            "mandatory": "true",
            "order": "0"
        },
        "customCardData.uuidcf5ca0428a7b4c3ba79cc45849d8458f": {
            "datatype": {
                "type": "datetime"
            },
            "visibleOnSummary": "true",
            "label": "Completion date",
            "mandatory": "true",
            "order": "1"
        },
        "customCardData.uuidfcb4b107494f47828813e2646a83a060": {
            "datatype": {
                "type": "text"
            },
            "visibleOnSummary": "true",
            "label": "Course URL",
            "mandatory": "false",
            "order": "2"
        },


Endpoint for record saving

POST {baseAPIUrl}/customcards/realization/employee/{employeeId}/customcarddata/{cardId}?annotate=t
Sample Payload:
{
   "customCardData":{
      "moduleId":"talent",
      "linkedId":"32229a0f-bb20-4611-b0cd-a6a400cfba22",
      "entityType":"employee",
      "uuidbab076fe64d5417a9499773747693b9e":"New course completion record",
      "uuidfcb4b107494f47828813e2646a83a060":"https://externacourse.com/courselink",
      "uuidcf5ca0428a7b4c3ba79cc45849d8458f":"2023-12-12T12:44:00Z",
      "schemaId":"b3635703-12ae-4070-a37d-19386baf9e30"
   }
}


If the post request was successful, we should receive 201 created response including the created record.

Looking for something specific?