Skip to main content

API Reference

Complete endpoint reference for the eCourtDate REST API. All endpoints require authentication via Bearer token — see Authentication.

tip

Explore the API interactively using our Postman Workspace.

Base URL

Use the base URL for your assigned region. See Environments & Regions for the full list.

https://{region}.api.ecourtdate.com

Authentication

POST /oauth/token

Request a Bearer token using client credentials.

Request:

{
"client_id": "{client_id}",
"client_secret": "{client_secret}",
"grant_type": "client_credentials"
}

Response (201):

{
"access_token": "{access_token}",
"token_type": "Bearer"
}

Settings

Get Settings

GET /v1/settings

Verify API access and retrieve agency configuration. Use ?agency_reference={ref} for multi-agency access.


Clients

List Clients

GET /v1/clients

Query parameters: limit, skip, sort, sortDirection, search, client_reference

Create Client

POST /v1/clients

Request:

{
"first_name": "Jane",
"last_name": "Doe",
"phone": "+15551234567",
"email": "jane.doe@example.com",
"client_reference": "CLIENT-12345",
"language": "en"
}

Get Client

GET /v1/clients/{uuid}

Update Client

PATCH /v1/clients/{uuid}

Delete Client

DELETE /v1/clients/{uuid}

Events

List Events

GET /v1/events

Query parameters: limit, skip, sort, sortDirection, search, event_reference

Create Event

POST /v1/events

Request:

{
"client": "{client_uuid}",
"case_number": "CASE-2024-001",
"event_reference": "EVENT-12345",
"date": "2024-03-15",
"time": "09:00",
"type": "hearing",
"description": "Initial hearing",
"status": "scheduled",
"location": "{location_name_or_reference}",
"flow": "{flow_name_or_reference}",
"portal": "{portal_name_or_reference}"
}

Get Event

GET /v1/events/{uuid}

Update Event

PATCH /v1/events/{uuid}

Delete Event

DELETE /v1/events/{uuid}

Contacts

List Contacts

GET /v1/contacts

Query parameters: limit, skip, sort, sortDirection, client

Create Contact

POST /contacts

Get Contact

GET /v1/contacts/{uuid}

Update Contact

PATCH /v1/contacts/{uuid}

Delete Contact

DELETE /v1/contacts/{uuid}

Messages

List Messages

GET /v1/messages

Query parameters: limit, skip, sort, sortDirection, search

Send One-Off Message

POST /v1/messages/oneoffs

Request:

{
"to": "+15551234567",
"subject": "Court Reminder",
"content": "Your hearing is scheduled for March 15 at 9:00 AM."
}

Response:

{
"uuid": "{message_uuid}",
"from": "+15559876543",
"to": "+15551234567",
"subject": "Court Reminder",
"content": "Your hearing is scheduled for March 15 at 9:00 AM.",
"last_status": "scheduled",
"sent": false,
"mms": false,
"scheduled_at": "2024-01-15T10:30:00Z"
}

Optional parameters:

ParameterTypeDescription
scheduled_atstringSchedule for future delivery (YYYY-MM-DD HH:MM:SS)
timezonestringTimezone for scheduling (e.g., America/New_York)
send_nowbooleanSend immediately (requires agency settings: Default Message Delay = 0, Send Immediately = enabled)
skip_duplicatebooleanSkip duplicate checking
typestringMessage type
eventstringAssociated event UUID or reference
casestringAssociated case UUID or reference
clientstringAssociated client UUID or reference
paymentstringAssociated payment UUID or reference
formstringAssociated form UUID or reference

Send Bulk Messages

POST /v1/messages/bulks

Send up to 100 messages per request.

Get Message

GET /v1/messages/{uuid}

Update Message

PATCH /v1/messages/{uuid}

Delete Message

DELETE /v1/messages/{uuid}

Get Message Delivery History

GET /messages/{uuid}/metas

Track Message Opens

GET /opens?message={message_uuid}

Payments

List Payments

GET /v1/payments

Query parameters: limit, skip, sort, sortDirection, search

Create Payment

POST /v1/payments

Get Payment

GET /v1/payments/{uuid}

Additional Resources

Create Case

POST /cases

Create Warrant

POST /warrants

Create Bond

POST /bonds

Create Form

POST /forms

Common Headers

All API requests require:

Authorization: Bearer {access_token}
Content-Type: application/json

Pagination

All list endpoints support:

ParameterDefaultDescription
limit10Records per page
skip0Records to skip
sortcreated_atSort field
sortDirectiondescasc or desc
searchFull-text search

Resources