Request Notification Test
POST /api/v1/notification-profiles/{profileId}/testsQueue one clearly labeled customer notification test without creating an incident. Provider session and current customer approval required. Reuse requestId only to retrieve the same submission after a lost response; deduplication lasts seven days after completion. No automatic delivery retry. Unknown means the recipient may have accepted the message. Single-server durable mode only; Genetec event tests are unsupported.
Access
Section titled “Access”Authentication options declared in the contract include user cookie session or bearer service token.
The shared authentication policy requires organizationNotifications:manage. Resource access also depends on the caller’s role, organization, camera grants, and the operation’s validation.
User-session writes require recent authentication.
The handler requires an EyesOnIt system administrator. Use an administrator user session for this operation.
Authentication and permissions explains tokens, cookies, CSRF, and workspace context.
Parameters
Section titled “Parameters”| Name | Location | Required | Type | Description and constraints |
|---|---|---|---|---|
profileId |
path | Yes | string (uuid) | |
X-EyesOnIt-Session-Id |
header | No | string (uuid) | The sessionId the caller expects. Required when switching workspaces and for cookie requests after workspace rotation. A mismatched value returns 409 with X-EyesOnIt-Workspace-Changed: 1. Bootstrap with getCurrentPrincipal; never replay a mutation automatically after changing context. Bearer clients do not use this header. |
X-CSRF-Token |
header | No | string | Required for unsafe requests authenticated by CookieSession; ignored for bearer clients. minimum length 32. maximum length 256 |
Request body
Section titled “Request body”Required.
application/json — RequestNotificationTestBody.
| Field | Type | Required | Description and constraints |
|---|---|---|---|
requestId |
string (uuid) | Yes | |
organizationId |
string (uuid) | Yes | |
cameraId |
string (uuid) | Yes | |
profileRevision |
integer | Yes | minimum 1.0 |
approvalRevision |
integer | Yes | minimum 1.0 |
credentialVersion |
integer or null | Yes |
cURL request template
Section titled “cURL request template”Set the connection variables described in Get started. Replace each additional EOI_… variable with the parameter value for this request. Prepare the body file using the request schema above. This template sends the request when run.
curl --fail-with-body --silent --show-error \ --request POST \ --cookie "${EOI_COOKIE_JAR}" \ --header "X-EyesOnIt-Session-Id: ${EOI_SESSION_ID}" \ --header "X-CSRF-Token: ${EOI_CSRF_TOKEN}" \ --header "Content-Type: application/json" \ --data-binary @request.json \ "${EOI_API_BASE_URL}/notification-profiles/${EOI_PROFILEID}/tests"Contract responses
Section titled “Contract responses”The table records responses declared by the OpenAPI contract. See Errors and status codes for the runtime error envelope and shared failures.
| Status | Description | Media type | Body |
|---|---|---|---|
| 202 | Successful Response | application/json |
NotificationTestResponse |
| 422 | Validation Error | application/json |
HTTPValidationError |
Operation identifier requestNotificationTest. Browse Notification profiles.
