Handling Custom Attributes in Templates

CertifyMe allows you to dynamically insert custom data fields into your digital credentials using custom attributes. This guide outlines how to use the CertifyMe API to assign these attributes during the credential issuance process.

Audience: Developers integrating CertifyMe’s credential issuance API into their systems, particularly those using custom fields in templates.


Overview

Custom attributes are dynamic data fields defined within a template on the CertifyMe platform. These can include information such as "eventdate", "Credits", "CourseName", and more. When issuing a credential via API, you must provide these custom values prefixed with Custom. followed by the exact field name used in the template.


Endpoint Information

URL:
https://eu2.certifyme.org/api/v2/credential

Method:
POST

Headers:

Authorization: <API Token>
accept: application/json
content-type: application/json


Request Body Parameters

Field Type Description
name string Recipient's full name.
email string Recipient's email address.
template_ID string ID of the template to be used (retrieved from the CertifyMe dashboard).
text string Additional text shown on certificate (e.g., designation).
verify_mode string Verification type (e.g., SSN, Code, None).
verify_code string Verification code if applicable.
Custom.<Field> string Custom attributes defined in the template (see examples below).

Custom field names must exactly match those defined in your CertifyMe template (case-sensitive).
Prefix Custom. is mandatory for all custom fields.


Custom Attribute Syntax

"Custom.<FieldName>": "<Value>"

Where:

  • <FieldName> is the exact name of the custom field as defined in the template.
  • <Value> is the value you’d like to assign to that field.


Example Requests

1. Single Custom Attribute: eventdate

curl --request POST \
  --url https://eu2.certifyme.org/api/v2/credential \
  --header 'Authorization: <API Token>' \
  --header 'accept: application/json' \
  --header 'content-type: application/json' \
  --data '
{
  "name": "Anju",
  "template_ID": "12",
  "email": "anju@certifyme.cc",
  "text": "Manager, CertifyMe",
  "verify_mode": "SSN",
  "verify_code": "123456",
  "Custom.eventdate": "29th April"
}'

2. Multiple Custom Attributes: eventdate, Credits

curl --request POST \
  --url https://eu2.certifyme.org/api/v2/credential \
  --header 'Authorization: <API Token>' \
  --header 'accept: application/json' \
  --header 'content-type: application/json' \
  --data '
{
  "name": "Anju",
  "template_ID": "12",
  "email": "anju@certifyme.cc",
  "text": "Manager, CertifyMe",
  "verify_mode": "SSN",
  "verify_code": "123456",
  "Custom.eventdate": "29th April",
  "Custom.Credits": "100"
}'

3. Extended Example with More Custom Fields

curl --request POST \
  --url https://eu2.certifyme.org/api/v2/credential \
  --header 'Authorization: <API Token>' \
  --header 'accept: application/json' \
  --header 'content-type: application/json' \
  --data '
{
  "name": "Anju",
  "template_ID": "12",
  "email": "anju@certifyme.cc",
  "text": "Manager, CertifyMe",
  "verify_mode": "SSN",
  "verify_code": "123456",
  "Custom.eventdate": "29th April",
  "Custom.Credits": "100",
  "Custom.CourseName": "Advanced Leadership"
}'


Tips for Success

  • Custom field names must be an exact match (case-sensitive).
  • Prefix Custom. is mandatory.
  • You may include as many custom fields as are defined in the template.
  • Use the API playground to generate and validate request payloads.


Support

For support or questions, please contact support@certifyme.cc.