---
title: "List activity"
method: GET
path: "/api/v1/organizations/{organizationId}/activity"
tags: ["Organizations"]
---

# List activity

`GET /api/v1/organizations/{organizationId}/activity`

## Request

- Base URL: `https://app.easyscraper.com`
- URL: `https://app.easyscraper.com/api/v1/organizations/{organizationId}/activity`
- Auth: API key in cookie `better-auth.session_token`

The organization's activity log, newest first: members invited, added, removed or leaving, role changes, settings changes, plan changes and API keys created or revoked. Filter by `category`. `actor` is `null` for changes no member made (e.g. Stripe ending a subscription) and for deleted users, `target` for events not about a member. `total` is how many match. Events are kept for a number of days the app sets. Requires the `activity: ["read"]` permission (owners and admins). Accepts API keys

## Path parameters

- `organizationId` string, uuid, required

## Query parameters

- `category` 'organization' | 'members' | 'invitations' | 'billing' | 'apiKeys' | 'security'
- `limit` integer
- `offset` integer

## Response `200`

OK

- object
  - `events` object[], required
    - `id` string, uuid, required
    - `organizationId` string, uuid, required
    - `actorUserId` string, uuid, nullable, required
    - `action` 'organization.created' | 'organization.updated' | 'member.added' | 'member.removed' | 'member.left' | 'member.role-updated' | 'invitation.created' | 'invitation.canceled' | 'invitation.accepted' | 'invitation.rejected' | 'billing.subscribed' | 'billing.plan-changed' | 'billing.cancel-scheduled' | 'billing.cancel-undone' | 'billing.subscription-ended' | 'billing.purchased' | 'billing.refunded' | 'api-key.created' | 'api-key.deleted' | 'sso.connection-added' | 'sso.connection-removed' | 'sso.domain-verified' | 'security-policy.updated', required
    - `targetUserId` string, uuid, nullable, required
    - `metadata` object, nullable, required
    - `createdAt` string, date-time, required
    - `actor` object, nullable, required
      - `id` string, uuid, required
      - `name` string, required
      - `email` string, required
    - `target` object, nullable, required
      - `id` string, uuid, required
      - `name` string, required
      - `email` string, required
  - `total` number, required

## Other responses

- `400`: 400
- `401`: 401
- `403`: 403
- `404`: 404
- `429`: 429

## Changes

- **2026-11-02** `a12cef98c52b`: 1 info
  - added the non-success response with the status `400`
- **2026-10-31** `3e642e95991a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/easyscraper/apis/easy-scraper-api/changes/api/v1/organizations/:organizationId/activity/get.md)

---

[API](https://skmtc.dev/easyscraper/apis/easy-scraper-api.md) - [All operations](https://skmtc.dev/easyscraper/apis/easy-scraper-api/llms.txt) - [OpenAPI document](https://skmtc.dev/easyscraper/apis/easy-scraper-api/revisions/a12cef98c52b?raw)
