List Sessions

Query signing sessions for your organisation with filtering, sorting, and pagination. Useful for dashboards, reporting, and polling for status changes.

Endpoint

GET https://api.airsign.com.au/api/v1/Sessions

Headers

NameValueRequiredDescription
AuthorizationBearer {access_token}YesBearer token obtained from authentication

Query Parameters

ParameterTypeRequiredDescription
statusstringNoFilter by status. Comma-separated for multiple: pending,completed. Values: draft, pending, inProgress, completed, cancelled, expired
namestringNoSearch sessions by name (substring match)
recipientEmailstringNoFilter sessions that include this recipient email
createdAfterstringNoISO 8601 datetime. Only return sessions created after this date
createdBeforestringNoISO 8601 datetime. Only return sessions created before this date
updatedAfterstringNoISO 8601 datetime. Only return sessions updated after this date. Ideal for polling
updatedBeforestringNoISO 8601 datetime. Only return sessions updated before this date
sortBystringNoSort field. Values: createdAt, updatedAt (default), completedDate, name
sortOrderstringNoSort direction. Values: asc, desc (default)
limitintegerNoNumber of results per page. Default: 50, max: 100
offsetintegerNoNumber of results to skip for pagination. Default: 0

Example Request

curl --location 'https://api.airsign.com.au/api/v1/Sessions?status=completed&updatedAfter=2025-01-01T00:00:00Z&limit=10' \
--header 'Authorization: Bearer {access_token}'

Response

Status: 200 OK

{
  "sessions": [
    {
      "sessionId": "{uuid}",
      "name": "Employment Contract - John Doe",
      "status": "completed",
      "selfSignOnly": false,
      "createdAt": "2025-06-15T10:30:00.000Z",
      "updatedAt": "2025-06-16T14:22:00.000Z",
      "completedDate": "2025-06-16T14:22:00.000Z",
      "expiryDate": "2025-07-15T10:30:00.000Z",
      "recipients": [
        {
          "recipientId": "{uuid}",
          "name": "John Doe",
          "email": "[email protected]",
          "status": "completed",
          "recipientType": "toCompleteEmail",
          "signingOrder": 1
        }
      ]
    }
  ],
  "pagination": {
    "total": 42,
    "limit": 10,
    "offset": 0,
    "hasMore": true
  }
}

Response Fields

FieldTypeDescription
sessionsarrayArray of session objects
sessions[].sessionIdstringUnique session identifier
sessions[].namestringSession name
sessions[].statusstringCurrent status of the session
sessions[].recipientsarrayRecipients with their current signing status
pagination.totalintegerTotal number of matching sessions
pagination.hasMorebooleanWhether there are more results beyond this page

Rate Limiting

This endpoint is rate limited to 60 requests per hour per organisation. Rate limit headers are included in every response:

HeaderDescription
X-RateLimit-LimitMaximum requests allowed per window
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetUnix timestamp when the window resets
Retry-AfterSeconds until you can retry (only on 429 responses)