Skip to main content

API Overview

This page lists the public REST endpoints exposed by the Identities controllers. GraphQL endpoints are intentionally out of scope for this guide.

Generate, don't hand-write

It is highly recommended to generate a typed client from the OpenAPI schema before building requests by hand.

Swagger / OpenAPI is disabled by default on each Identities deployment. For development, use eConnect's always-on test instance, which has the full schema available:

  • Swagger UI: https://montana.econnectclouddev.com/identities/swagger/index.html
  • Swagger Schema: https://montana.econnectclouddev.com/identities/swagger/v1/swagger.json

All paths below are appended to your base URL. On cloud that includes the /identities prefix (https://customername.econnectcloud.com/identities/api/v1/authenticate); on-premise the app listens on HTTPS port 5009 with no prefix (https://<host>:5009/api/v1/authenticate). See Getting Started → Base URL. Every endpoint except authenticate requires an Authorization: Bearer <JWT> header.

Authentication & Users

MethodPathDescriptionMin Permission
POST/api/v1/authenticateExchange username/password for a JWT.None (anonymous)
GET/api/v1/renewTokenRenew a still-valid JWT.Authenticated
GET/auth/v1/user/profileCurrent session profile (email, roles, token).Authenticated

Face Edge ⭐

The focus of this guide. See the Face Edge pages for full details and runnable examples.

MethodPathDescriptionMin Permission
POST/api/v1/faceEdge/publishWithResponsePublish a detected face and return detection results.Face Publishing
POST/api/v1/faceEdge/publishPublish a detected face (fire-and-forget).Face Publishing
POST/api/v1/faceEdge/recognizeMatch a cropped/aligned face to an enrolled person.Face Recognize
POST/api/v1/faceEdge/lookupMatch an uploaded face / embeddings (multipart).Face Recognize

Face Recognition

Documented with examples on the Face Recognition page.

MethodPathDescriptionMin Permission
POST/api/v1/faces/faceDetectDetect faces in an image.Face Detection
POST/api/v1/faces/faceEnrollEnroll a face for a person.Face Enrollment
POST/api/v1/faces/faceCompareCompare two faces (1:1).Face Detection
GET/api/v1/faces/checkImageReference/{referenceId}Check whether an enrollment image reference exists.Face Enrollment

People

MethodPathDescription
GET/api/v1/peopleQuery people (by tag or entity field).
GET/api/v1/people/{personId}Get a single person.
GET / PUT / DELETE/api/v1/people/{personId}/aliasesRead / upsert / delete aliases.
GET / PUT / DELETE/api/v1/people/{personId}/tagsRead / upsert / delete person tags.
GET / PUT / DELETE/api/v1/people/{personId}/notesRead / upsert / delete notes.
PUT/api/v1/people/{personId}/addressesUpsert an address.
GET / PUT / DELETE/api/v1/people/{personId}/entityFieldsRead / upsert / delete custom fields.
GET/api/v1/people/enrollmentPhoto/{faceId}Download an enrollment photo.
GET/api/v1/people/detectionPhoto/{faceId}/{detectionId}Download a detection photo.

People reads require Read All Identity (or the matching granular read permission such as Read Aliases, Read Tags); writes require Mutate All Identity (or the matching granular mutate permission). Dedicated pages cover the common operations:

Tags

Documented with examples on the Tag Management page.

MethodPathDescriptionMin Permission
GET/api/v1/TagsList tags.Read Tags
POST/api/v1/TagsCreate a tag.Add Tags
GET/api/v1/Tags/{tagId}Get a tag.Read Tags
PUT/api/v1/Tags/{tagId}Update a tag.Edit Tags
DELETE/api/v1/Tags/{tagId}Delete a tag.Delete Tags

Detections

Documented with examples on the Detections page.

MethodPathDescriptionMin Permission
GET/api/v1/people/detections/faceId/{faceId}Query detections by face.Read Detections
GET/api/v1/people/detections/personId/{personId}Query detections by person.Read Detections

Entity Field Settings

MethodPathDescription
PUT/api/v1/EntityFieldSettings/{entityType}/stringField/{fieldId}Configure a string custom-field.
PUT/api/v1/EntityFieldSettings/{entityType}/datetimeField/{fieldId}Configure a date/time custom-field.

For full request/response details on any endpoint, consult the Swagger UI for your server or generate a client from the OpenAPI schema — see Getting Started → OpenAPI / Swagger.