Skip to main content

Events API

Query and retrieve system events and activity logs via the API.

Endpoints Overview

MethodEndpointDescription
GET/v1/eventsList events
GET/v1/events/:idGet single event
GET/v1/requests/:id/eventsRequest events

List Events

Request

GET /v1/events

Query Parameters

ParameterTypeDescription
typestringEvent type filter
resourceTypestringResource type
resourceIdstringSpecific resource
userIdstringEvents by user
sincedatetimeEvents after date
untildatetimeEvents before date
pagenumberPage number
limitnumberItems per page

Example

curl -X GET "https://api.dzdesk.com/v1/events?resourceType=request&since=2024-01-15T00:00:00Z" \
-H "Authorization: Bearer YOUR_TOKEN"

Response

{
"success": true,
"data": {
"events": [
{
"id": "evt_abc123",
"type": "request.status_changed",
"resourceType": "request",
"resourceId": "req_123",
"actor": {
"id": "usr_456",
"name": "Jane Smith",
"email": "jane@company.com"
},
"changes": {
"status": {
"from": "open",
"to": "in_progress"
}
},
"timestamp": "2024-01-15T14:30:00Z",
"ipAddress": "192.168.1.100"
}
],
"pagination": {
"page": 1,
"limit": 20,
"total": 150,
"pages": 8
}
}
}

Get Single Event

Request

GET /v1/events/:id

Example

curl -X GET "https://api.dzdesk.com/v1/events/evt_abc123" \
-H "Authorization: Bearer YOUR_TOKEN"

Response

{
"success": true,
"data": {
"id": "evt_abc123",
"type": "request.status_changed",
"resourceType": "request",
"resourceId": "req_123",
"actor": {
"id": "usr_456",
"name": "Jane Smith",
"email": "jane@company.com",
"role": "agent"
},
"changes": {
"status": {
"from": "open",
"to": "in_progress"
}
},
"metadata": {
"userAgent": "Mozilla/5.0...",
"source": "web"
},
"timestamp": "2024-01-15T14:30:00Z",
"ipAddress": "192.168.1.100"
}
}

Request Events

Get events for a specific request:

Request

GET /v1/requests/:id/events

Example

curl -X GET "https://api.dzdesk.com/v1/requests/req_123/events" \
-H "Authorization: Bearer YOUR_TOKEN"

Response

{
"success": true,
"data": {
"events": [
{
"id": "evt_001",
"type": "request.created",
"timestamp": "2024-01-15T10:00:00Z",
"actor": {
"id": "usr_123",
"name": "John Doe"
}
},
{
"id": "evt_002",
"type": "request.assigned",
"timestamp": "2024-01-15T10:30:00Z",
"actor": {
"id": "usr_456",
"name": "Jane Smith"
},
"changes": {
"assignedTo": {
"from": null,
"to": "usr_456"
}
}
},
{
"id": "evt_003",
"type": "request.comment_added",
"timestamp": "2024-01-15T11:00:00Z",
"actor": {
"id": "usr_456",
"name": "Jane Smith"
}
}
]
}
}

Event Types

Request Events

TypeDescription
request.createdRequest created
request.updatedRequest modified
request.status_changedStatus change
request.assignedAssignment change
request.priority_changedPriority change
request.comment_addedComment added
request.attachment_addedFile attached
request.deletedRequest deleted

User Events

TypeDescription
user.createdUser created
user.updatedUser modified
user.role_changedRole changed
user.deactivatedUser deactivated
user.loginUser logged in
user.logoutUser logged out

System Events

TypeDescription
system.sla_warningSLA warning triggered
system.sla_breachSLA breached
system.sync_completedIdentity sync done
system.config_changedSetting changed

Filtering by Event Type

Multiple Types

GET /v1/events?type=request.created,request.status_changed

Category Filter

GET /v1/events?resourceType=request
GET /v1/events?resourceType=user
GET /v1/events?resourceType=system

Event Details

Each event includes:

FieldDescription
idUnique event ID
typeEvent type
resourceTypeType of resource
resourceIdID of affected resource
actorWho performed action
changesBefore/after values
metadataAdditional context
timestampWhen it occurred
ipAddressOrigin IP (if applicable)

Use Cases

Audit Trail

# All admin actions today
GET /v1/events?actor.role=admin&since=2024-01-15T00:00:00Z

Request History

# Full history for request
GET /v1/requests/req_123/events

User Activity

# User's actions this week
GET /v1/events?userId=usr_456&since=2024-01-08T00:00:00Z

Security Monitoring

# Login events
GET /v1/events?type=user.login&since=2024-01-15T00:00:00Z

Pagination

Events are paginated by default:

{
"pagination": {
"page": 1,
"limit": 20,
"total": 1000,
"pages": 50,
"hasMore": true
}
}

Use page and limit parameters to navigate.

Rate Limits

Events API has specific limits:

  • Standard: 30 requests/minute
  • Professional: 120 requests/minute
  • Enterprise: Custom