---
title: "Get Custom events"
method: GET
path: "/v1/events/custom"
tags: ["Custom events"]
---

# Get Custom events

`GET /v1/events/custom`

## Request

- Base URL: `https://app.aptrinsic.com`
- URL: `https://app.aptrinsic.com/v1/events/custom`
- Auth: none declared
- TypeScript: <https://skmtc.dev/gainsight/apis/gainsight-px-rest-api/docs/v1/events/custom/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieves custom events.  Supports filtering, sorting and paging.
### Filtering
The filter parameter accepts a list of semicolon-separated filters in the form: {fieldName}{operator}{fieldValue}
Filter terms within a single filter parameter are joined by a logical AND. 
Separate filter parameters are joined by a logical OR.
#### Supported filter fields
| Field   |
| ----- |
| identifyId |
| eventName |
| date |

#### Operators
| Operator   | Meaning  |
| ----- | -------- |
| == | Exact match |
| != | Not equal |
| &lt;  | Less than |
| &lt;= | Less than or equal |
| &gt;  | Greater than |
| &gt;= | Greater than or equal |
| ~  | Matches string, supports wildcard characters * and ? |
| !~ | Not like, supports wildcard characters * and ? |

Examples: 

| URI   | Results  |
| ----- | -------- |
| GET /v1/events/custom?filter=identifyId==ABC123 | Custom event matches for user with identifyId of 'ABC123'. |


### Sorting
The sort parameter accepts a list of semi-colon separated fields names, each with an optional dash to imply descending sort order.
#### Supported sort fields
| Field   |
| ----- |
| accountId |
| date |

Examples: 

| URI   | Results  |
| ----- | -------- |
| GET /v1/events/custom?sort=-date | Matches sorted by date descending. |

## Query parameters

- `dateRangeEnd` string
- `dateRangeStart` string
- `filter` string[]
- `pageSize` integer
- `scrollId` string
- `sort` string

## Response `200`

Success

- CustomEventsPage
  - `customEvents` CustomEvent[]: Array of custom events
    - `eventId` string
    - `identifyId` string, required
    - `propertyKey` string, required
    - `date` integer
    - `eventType` string
    - `sessionId` string
    - `userType` 'LEAD' | 'USER' | 'VISITOR' | 'EMPTY_USER_TYPE', required
    - `accountId` string
    - `globalContext` object
    - `eventName` string, required
    - `attributes` object
    - `url` string
    - `referrer` string
    - `remoteHost` string
  - `totalHits` integer: Total number of records matching filters
  - `scrollId` string: If passed on subsequent requests as the scrollId parameter, will fetch the next page

## Other responses

- `400`: Bad request
- `401`: Unauthorized or bad API Key
- `429`: Rate limit exceeded

---

[API](https://skmtc.dev/gainsight/apis/gainsight-px-rest-api.md) - [All operations](https://skmtc.dev/gainsight/apis/gainsight-px-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gainsight/apis/gainsight-px-rest-api/revisions/e7b197b373d8?raw)
