Skip to main content

Person Management

The People controller lets you read and mutate the individual parts of a person record — aliases (names), tags, notes, addresses, and entity-field attributes. To read the whole person in one call, see Get Identity.

All writes are upserts: PUT with the sub-resource's id creates or updates it; omit the id to create a new one.

API Endpoints

  • Base URL (Cloud): https://customername.econnectcloud.com/identities
  • Base URL (On-prem): https://<server-host-or-ip>:5009

All paths are prefixed with /api/v1/people/{personId}.

ResourceMethodPathDescription
AliasesGET/aliasesList the person's aliases.
AliasesPUT/aliasesCreate or update an alias.
AliasesDELETE/aliases/{aliasId}Remove an alias.
TagsGET/tagsList the person's tags (optional ?tagName=).
TagsPUT/tagsApply / update a tag on the person.
TagsDELETE/tags/{personTagId}Remove a tag from the person.
NotesGET/notesList the person's notes.
NotesPUT/notesCreate or update a note.
NotesDELETE/notes/{noteId}Remove a note.
AddressesPUT/addressesCreate or update an address.
Entity fieldsGET/entityFieldsList custom attributes (optional ?fieldName=).
Entity fieldsPUT/entityFieldsCreate or update a custom attribute.
Entity fieldsDELETE/entityFields/{entityId}Remove a custom attribute.

Authentication

Requires a JWT bearer token. See Authentication.

Permissions

The permission names and category below are what you'll see in the Identities web app under System → System settings → Roles.

OperationPermissionCategory
Reads (GET)Read All IdentityIdentities
Writes (PUT / DELETE)Mutate All IdentityIdentities

Object Shapes

Content-Type: application/json. Omit the id field when creating; include it to update an existing item.

Alias

FieldTypeDescription
personAliasIdstring (GUID)Alias id. Omit when creating.
firstNamestringFirst name.
lastNamestringLast name.
middleNamestringMiddle name.
titlestringTitle (e.g. Mr., Dr.).

Tag (applied to a person)

FieldTypeDescription
tagIdstring (GUID)The tag to apply — from Tag Management.
createdstring (ISO-8601 UTC)When the tag was applied.
expiresstring (ISO-8601 UTC)Optional expiry; omit/null for no expiry.

Note

FieldTypeDescription
noteIdstring (GUID)Note id. Omit when creating.
summarystringShort summary.
bodystringFull note text.
authorstringAuthor identifier.
sharedIdstring (GUID)Optional shared-note linkage.

Address

FieldTypeDescription
personAddressIdstring (GUID)Address id. Omit when creating.
street / street2stringStreet lines.
city / state / postalCode / countrystringLocality fields.

Entity Field (custom attribute)

FieldTypeDescription
entityFieldIdstring (GUID)Field id. Omit when creating.
namestringAttribute name.
stringValuestringString value (use the value field matching the field's type).
dateValuestring (ISO-8601)Date value.
numberValuenumberNumeric value.
boolValueboolBoolean value.

Code Examples

API_URL="https://customername.econnectcloud.com/identities"
TOKEN="your_jwt"
PERSON_ID="0a1b2c3d-4e5f-6a7b-8c9d-0e1f2a3b4c5d"

# Upsert a name / alias
curl -sk -X PUT "$API_URL/api/v1/people/$PERSON_ID/aliases" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "firstName": "Jane", "lastName": "Doe" }'

# Apply a tag (tagId from the Tags endpoints)
curl -sk -X PUT "$API_URL/api/v1/people/$PERSON_ID/tags" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "tagId": "4c5d6e7f-8091-2345-6789-abcdef012345", "created": "2026-06-16T18:32:05Z" }'

# Upsert a custom attribute (entity field)
curl -sk -X PUT "$API_URL/api/v1/people/$PERSON_ID/entityFields" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{ "name": "LoyaltyTier", "stringValue": "Gold" }'

Raw Sample

Apply a tag — Request

PUT https://customername.econnectcloud.com/identities/api/v1/people/{personId}/tags
Authorization: Bearer <your_jwt_token>
Content-Type: application/json
{
"tagId": "4c5d6e7f-8091-2345-6789-abcdef012345",
"created": "2026-06-16T18:32:05Z"
}

Upsert an entity field — Request

PUT https://customername.econnectcloud.com/identities/api/v1/people/{personId}/entityFields
Authorization: Bearer <your_jwt_token>
Content-Type: application/json
{
"name": "LoyaltyTier",
"stringValue": "Gold"
}

PUT operations return the created/updated object; DELETE operations return true on success; GET operations return an array.

Response Codes

CodeMeaning
200 OKThe operation succeeded.
401 UnauthorizedMissing or invalid JWT.
403 ForbiddenThe user lacks the required Identities permission (Read All Identity / Mutate All Identity).
500 Internal Server ErrorA server-side error occurred.