Organizations

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

Endpoints

GET
POST
GET
DELETE
GET

List all roles role memberships

Role endpoints disclose member records, so they scope them the same way the members list does when the org restricts member list visibility.

Required API key scopes

organization:read

Path parameters

  • role_id
    string

Query parameters

  • limit
    integer
  • offset
    integer

Response


Example request

GET /api/organizations/:organization_id/roles/:role_id/role_memberships
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/organizations/:organization_id/roles/:role_id/role_memberships/

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",
"role_id": "ac4e70c8-d5be-48af-93eb-760f58fc91a9",
"organization_member": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"user": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {},
"role_at_organization": "engineering"
},
"level": 1,
"joined_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"is_2fa_enabled": true,
"has_social_auth": true,
"last_login": "2019-08-24T14:15:22Z",
"search_match_type": "exact"
},
"user": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {},
"role_at_organization": "engineering"
},
"joined_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"user_uuid": "7c4d2d7d-8620-4fb3-967a-4a621082cf1f"
}
]
}

Create roles role memberships

Role endpoints disclose member records, so they scope them the same way the members list does when the org restricts member list visibility.

Required API key scopes

organization:write

Path parameters

  • role_id
    string

Request parameters

  • user_uuid
    string

Response


Example request

POST /api/organizations/:organization_id/roles/:role_id/role_memberships
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl
-H 'Content-Type: application/json'\
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/organizations/:organization_id/roles/:role_id/role_memberships/\
-d user_uuid="string"

Example response

Status 201
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"role_id": "ac4e70c8-d5be-48af-93eb-760f58fc91a9",
"organization_member": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"user": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {},
"role_at_organization": "engineering"
},
"level": 1,
"joined_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"is_2fa_enabled": true,
"has_social_auth": true,
"last_login": "2019-08-24T14:15:22Z",
"search_match_type": "exact"
},
"user": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {},
"role_at_organization": "engineering"
},
"joined_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"user_uuid": "7c4d2d7d-8620-4fb3-967a-4a621082cf1f"
}

Retrieve roles role memberships

Role endpoints disclose member records, so they scope them the same way the members list does when the org restricts member list visibility.

Required API key scopes

organization:read

Path parameters

  • id
    string
  • role_id
    string

Response


Example request

GET /api/organizations/:organization_id/roles/:role_id/role_memberships/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/organizations/:organization_id/roles/:role_id/role_memberships/:id/

Example response

Status 200
RESPONSE
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"role_id": "ac4e70c8-d5be-48af-93eb-760f58fc91a9",
"organization_member": {
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"user": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {},
"role_at_organization": "engineering"
},
"level": 1,
"joined_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"is_2fa_enabled": true,
"has_social_auth": true,
"last_login": "2019-08-24T14:15:22Z",
"search_match_type": "exact"
},
"user": {
"id": 0,
"uuid": "095be615-a8ad-4c33-8e9c-c7612fbf6c9f",
"distinct_id": "string",
"first_name": "string",
"last_name": "string",
"email": "user@example.com",
"is_email_verified": true,
"hedgehog_config": {},
"role_at_organization": "engineering"
},
"joined_at": "2019-08-24T14:15:22Z",
"updated_at": "2019-08-24T14:15:22Z",
"user_uuid": "7c4d2d7d-8620-4fb3-967a-4a621082cf1f"
}

Delete roles role memberships

Role endpoints disclose member records, so they scope them the same way the members list does when the org restricts member list visibility.

Required API key scopes

organization:write

Path parameters

  • id
    string
  • role_id
    string

Example request

DELETE /api/organizations/:organization_id/roles/:role_id/role_memberships/:id
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl -X DELETE \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/organizations/:organization_id/roles/:role_id/role_memberships/:id/

Example response

Status 204 No response body

Retrieve welcome current

Aggregated payload for the invited-user welcome screen.

Response


Example request

GET /api/organizations/:organization_id/welcome/current
export POSTHOG_PERSONAL_API_KEY=[your personal api key]
curl \
-H "Authorization: Bearer $POSTHOG_PERSONAL_API_KEY" \
<ph_app_host>/api/organizations/:organization_id/welcome/current/

Example response

Status 200
RESPONSE
{
"organization_name": "string",
"inviter": {
"name": "string",
"email": "user@example.com"
},
"team_members": [
{
"name": "string",
"email": "user@example.com",
"avatar": "string",
"role": "string",
"last_active": "today"
}
],
"recent_activity": [
{
"type": "string",
"actor_name": "string",
"entity_name": "string",
"entity_url": "string",
"timestamp": "2019-08-24T14:15:22Z"
}
],
"popular_dashboards": [
{
"id": 0,
"name": "string",
"description": "string",
"team_id": 0,
"url": "string"
}
],
"products_in_use": [
"string"
],
"suggested_next_steps": [
{
"label": "string",
"href": "string",
"reason": "string",
"docs_href": "string",
"product_key": "string"
}
],
"is_organization_first_user": true
}
Status 404 Current organization not found