Problem

A custom field does not sync to Freshservice, or the field is missing in the Target Attribute list.

Cause

Microsoft Entra ID does not find Freshservice custom fields by itself. You must add each one by hand, with the exact name and the right type.

Steps

  1. Make sure the field already exists in Freshservice (Admin > User Fields).
  2. Find the exact field name: Freshservice Admin > Apps > Installed Apps > Azure Active Directory provisioning (SCIM) > Settings. Scroll below the OAuth token. The table lists the custom field names. Use the name in that table, not the display name. The name is case-sensitive.
  3. In Microsoft Entra ID go to Enterprise applications > Freshservice Provisioning > Provisioning > Edit attribute mappings.
  4. Click Show advanced options > Edit attribute list for Freshservice.
  5. Add a new attribute with this name (no angle brackets):
    urn:ietf:params:scim:schemas:extension:freshservice:2.0:User:<field_name>
  6. Choose the type that matches the Freshservice field. Microsoft Entra ID always sends employee_id as a string, so that Freshservice field must be a text field.
  7. Click Save.
  8. Back on the mapping page, click Add New Mapping. Set the Source Attribute (for example employeeId) and set the Target Attribute to the attribute you just added.
  9. Run Provision on demand for one user to test (see How to Test One User with Provision on Demand).

Good to know

  • Custom fields use freshservice:2.0:User. Only department and manager use enterprise:2.0:User. If a wrong attribute exists, delete it and add it again, because a name cannot be edited in place.
  • If the field is missing from the Settings table, it does not exist in Freshservice yet.
  • If the field type is wrong, delete the Freshservice field and create it again with the right type. This deletes the values stored in the field, so export them first.

Sources

  • KB: Mapping the Location Field from Microsoft Entra ID
  • KB: Mapping Errors: Find the Fix by Error Message