Skip to content
API Reference
Records

Events

Events in Prism / Objects — Micro Python reference.

Reference for Python SDK 0.8.0.

Release source · Setup and client configuration

list

GET /v2/prism/{teamId}/event

client.prism.objects.events.list(*, team_id, **params) -> EventListResponse

Convenience list endpoint. Equivalent to POST /v2/prism/{teamId}/{objectType}/query with an empty body, plus query-string sugar for the common cases. Any unrecognized query parameter is interpreted as an equality filter on a property of that name; pass arrays for in. Values are received as strings, so non-string property filters via this endpoint may not work — use the query endpoint for typed comparisons or anything beyond simple equality.

count

GET /v2/prism/{teamId}/event/count

client.prism.objects.events.count(*, team_id, **params) -> EventCountResponse

Returns the total number of records of this object type that the caller can see. Avoids the page-overshoot anti-pattern — clients no longer need to keep paging until has_more flips false to discover the total. Currently does not apply query filters; for a filtered total, pass include_total: true in a POST /query body.

find

GET /v2/prism/{teamId}/event/by/{slug}/{value}

client.prism.objects.events.find(value, *, team_id, slug, **params) -> EventFindResponse

Returns the single record whose property {slug} equals {value}. 404 if nothing matches; 409 if more than one record matches.

get

GET /v2/prism/{teamId}/event/{eventId}

client.prism.objects.events.get(event_id, *, team_id, **params) -> EventGetResponse

Get object

query

POST /v2/prism/{teamId}/event/query

client.prism.objects.events.query(*, team_id, **params) -> EventQueryResponse

Query

Parameter and response types

These declarations show the request parameters and response shapes used by the methods above.

EventListParams

Source

FieldTypeRequiredDescription
team_idstrNoAPI name: teamId.
cursorstrNoOpaque cursor from a previous response's next_cursor. Pass it back unchanged to fetch the next page.
deletedboolNoInclude soft-deleted records. Pass the literal string true.
include_totalboolNoWhen set to true, the response includes a total field with the unpaginated row count. Costs an extra pass; prefer GET .../count for the unfiltered total.
limitintNoMaximum number of rows to return. Capped server-side at 50.
list_idstrNoScope properties to a specific list/app.
selectstrNoComma-separated property slugs to return. Use dot notation for relationships. id is always returned at the top level. Defaults to all properties.
sortstrNoComma-separated list of slugs. Prefix with - for descending. Example: sort=-updated_at,name.

Data

Source

Row returned by the query endpoint. id is always present at the top level. Selected property values are returned under properties, keyed by property slug. Reference-typed values are returned as nested { id, properties } objects.

FieldTypeRequiredDescription
idstrYes
is_user_objectOptional[bool]No
propertiesOptional[Dict[str, object]]NoSelected property values keyed by property slug. For select/multiselect properties, option slugs are returned. For reference properties, values are nested { id, properties } objects.
sourceOptional[List[str]]No

EventListResponse

Source

FieldTypeRequiredDescription
dataList[Data]Yes
has_moreboolYesAccurate end-of-data signal — false on the last page, never forces clients to overshoot.
next_cursorOptional[str]No
totalOptional[int]NoPopulated only when ?include_total=true was passed.

EventCountParams

Source

FieldTypeRequiredDescription
team_idstrNoAPI name: teamId.
list_idstrNoScope the count to a specific list/app.

EventCountResponse

Source

FieldTypeRequiredDescription
totalintYesNumber of records matching the access scope.

EventFindParams

Source

FieldTypeRequiredDescription
team_idstrNoAPI name: teamId.
slugRequired[str]Yes
list_idstrNoScope the lookup to a specific list/app.

EventFindResponse

Source

Object returned by reads (get/create/patch/restore). id is always present.

FieldTypeRequiredDescription
idstrYes
defaultOptional[Dict[str, object]]NoProperties keyed by property slug.
listOptional[object]No

EventGetParams

Source

FieldTypeRequiredDescription
team_idstrNoAPI name: teamId.
selectstrNoComma-separated property slugs to return. Use dot notation for relationships. id is always returned at the top level. Defaults to all properties.

EventGetResponse

Source

Object returned by reads (get/create/patch/restore). id is always present.

FieldTypeRequiredDescription
idstrYes
defaultOptional[Dict[str, object]]NoProperties keyed by property slug.
listOptional[object]No

EventQueryParams

Source

FieldTypeRequiredDescription
team_idstrNoAPI name: teamId.
queryRequired[Query]Yes
idUnion[str, SequenceNotStr[str]]No
boxesSequenceNotStr[str]No
cursorstrNoAlternative location for the opaque cursor (a sibling of query). Use whichever feels more natural; if both are present, query.cursor wins.
deletedboolNo
include_totalboolNoWhen true, the response includes a total field with the unpaginated row count. Costs an additional pass over the result set — for unfiltered totals prefer GET /v2/prism/{teamId}/{objectType}/count instead.
sourcesSequenceNotStr[str]No

QueryFilterQueryFilterItemPrismQueryFilterEq

Source

FieldTypeRequiredDescription
api_emptyRequired[Annotated[Union[str, bool], PropertyInfo(alias="=")]]YesAPI name: =.

QueryFilterQueryFilterItemPrismQueryFilterNe

Source

FieldTypeRequiredDescription
api_emptyRequired[Annotated[Union[str, bool], PropertyInfo(alias="!=")]]YesAPI name: !=.

QueryFilterQueryFilterItemPrismQueryFilterLt

Source

FieldTypeRequiredDescription
api_emptyRequired[str]YesAPI name: <.

QueryFilterQueryFilterItemPrismQueryFilterGt

Source

FieldTypeRequiredDescription
api_emptyRequired[str]YesAPI name: >.

QueryFilterQueryFilterItemPrismQueryFilterLte

Source

FieldTypeRequiredDescription
api_emptyRequired[str]YesAPI name: <=.

QueryFilterQueryFilterItemPrismQueryFilterGte

Source

FieldTypeRequiredDescription
api_emptyRequired[str]YesAPI name: >=.

QueryFilterQueryFilterItemContains

Source

FieldTypeRequiredDescription
containsRequired[Union[str, bool, SequenceNotStr[str]]]Yes

QueryFilterQueryFilterItemBeginsWith

Source

FieldTypeRequiredDescription
begins_withRequired[str]Yes

QueryFilterQueryFilterItemEndsWith

Source

FieldTypeRequiredDescription
ends_withRequired[str]Yes

QueryFilterQueryFilterItemNotContains

Source

FieldTypeRequiredDescription
not_containsRequired[str]Yes

QueryFilterQueryFilterItemExists

Source

FieldTypeRequiredDescription
existsRequired[bool]Yes

QueryFilterQueryFilterItemNotExists

Source

FieldTypeRequiredDescription
not_existsRequired[bool]Yes

QueryFilterQueryFilterItemIsNull

Source

FieldTypeRequiredDescription
is_nullRequired[Union[str, bool, SequenceNotStr[str]]]Yes

QueryFilterQueryFilterItemIsNotNull

Source

FieldTypeRequiredDescription
is_not_nullRequired[Union[str, bool, SequenceNotStr[str]]]Yes

QueryFilterQueryFilterItemBetween

Source

FieldTypeRequiredDescription
betweenRequired[Union[str, bool, SequenceNotStr[str]]]Yes

QueryFilterQueryFilterItemIn

Source

class QueryFilterQueryFilterItemIn(_QueryFilterQueryFilterItemInReservedKeywords, total=False):

QueryFilterQueryFilterItemNotIn

Source

FieldTypeRequiredDescription
not_inRequired[SequenceNotStr[str]]Yes

QueryFilterQueryFilterItem

Source

QueryFilterQueryFilterItem = Union[

Query

Source

FieldTypeRequiredDescription
selectRequired[SequenceNotStr[str]]YesProperty slugs to select. Use dot notation for relationships (e.g. attendee.contact.first_name). id is always returned at the top level of each row and does not need to be selected.
combinatorLiteral["AND", "OR"]NoLogical operator for combining filters
cursorstrNoOpaque cursor from a previous response's next_cursor. Pass it back unchanged to fetch the next page. When set, page and limit are derived from the cursor and any explicit values are ignored.
filterIterable[Dict[str, QueryFilterQueryFilterItem]]NoFilters as [{ slug: { operator: value } }]. For select/multiselect properties, values may be option slugs or option UUIDs.
limitintNoMaximum number of rows to return. Capped server-side at 50; requests above the cap are rejected.
list_idstrNo
pageintNoPage number (1-based). Prefer cursor. Page-number pagination drifts under concurrent writes; use it only for one-shot exports.
sortIterable[Dict[str, Literal["asc", "desc"]]]NoSort order as [{ slug: direction }]. Array order determines sort priority

EventQueryResponse

Source

FieldTypeRequiredDescription
dataList[Data]Yes
has_moreboolYesAccurate end-of-data signal. False when this page contains the last record; true only when at least one more record exists. (Implementation note: the server fetches one extra row internally to determine this — clients never need to overshoot to discover the end.)
next_cursorOptional[str]NoOpaque cursor pointing at the next page. Pass it back unchanged in the request body (cursor) of the next call. Null when has_more is false.
totalOptional[int]NoOnly populated when the request set include_total: true. Total number of records matching the query, ignoring pagination. Opt-in because it costs an additional pass over the result set.
micro.so