Property definitions

For instructions on how to authenticate to use this endpoint, see API overview.

Endpoints

GET
GET
PATCH
DELETE
GET

List all property definitions

Required API key scopes

property_definition:read

Path parameters

  • project_id
    string

Query parameters

  • event_names
    string
  • exclude_core_properties
    boolean
    Default: false
  • exclude_hidden
    boolean
    Default: false
  • excluded_properties
    string
  • filter_by_event_names
    boolean
  • group_type_index
    integer
  • is_feature_flag
    boolean
  • is_numerical
    boolean
  • limit
    integer
  • offset
    integer
  • properties
    string
  • search
    string
  • type
    string
    Default: event
    One of: "event""person""group""session"

Response


Example request

GET /api/projects/:project_id/property_definitions
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/property_definitions/

Example response

Status 200
RESPONSE
{
"count": 123,
"next": "http://api.example.org/accounts/?offset=400&limit=100",
"previous": "http://api.example.org/accounts/?offset=200&limit=100",
"results": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"is_numerical": true,
"property_type": "DateTime",
"tags": [
null
],
"is_seen_on_filtered_events": "string"
}
]
}

Retrieve property definitions

Required API key scopes

property_definition:read

Path parameters

  • id
    string
  • project_id
    string

Response


Example request

GET /api/projects/:project_id/property_definitions/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/property_definitions/:id/

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"is_numerical": true,
"property_type": "DateTime",
"tags": [
null
],
"is_seen_on_filtered_events": "string"
}

Update property definitions

Required API key scopes

property_definition:write

Path parameters

  • id
    string
  • project_id
    string

Request parameters

  • name
    string
  • is_numerical
    boolean
  • property_type
  • tags
    array

Response


Example request

PATCH /api/projects/:project_id/property_definitions/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X PATCH \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/property_definitions/:id/\
-d name="string"

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"is_numerical": true,
"property_type": "DateTime",
"tags": [
null
],
"is_seen_on_filtered_events": "string"
}

Delete property definitions

Required API key scopes

property_definition:write

Path parameters

  • id
    string
  • project_id
    string

Example request

DELETE /api/projects/:project_id/property_definitions/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X DELETE \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/property_definitions/:id/

Example response

Status 204 No response body

Retrieve property definitions seen together

Allows a caller to provide a list of event names and a single property name Returns a map of the event names to a boolean representing whether that property has ever been seen with that event_name

Required API key scopes

property_definition:read

Path parameters

  • project_id
    string

Example request

GET /api/projects/:project_id/property_definitions/seen_together
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/projects/:project_id/property_definitions/seen_together/

Example response

Status 200 No response body
PostHog is an all-in-one developer platform for building successful products. We provide product analytics, web analytics, session replay, error tracking,feature flags, experiments, surveys, LLM analytics, data warehouse, CDP, and anAI product assistant to help debug your code, ship features faster, and keep all your usage and customer data in one stack.

Community questions

Questions about this page? or post a community question.