> ## Documentation Index
> Fetch the complete documentation index at: https://www.rootset.app/llms.txt
> Use this file to discover all available pages before exploring further.

# List activity

> Search bounded record, schema and job activity under current permissions. Cursors preserve a fixed cutoff; refresh to include newer events.



## OpenAPI

````yaml api-reference/openapi.json GET /v1/orgs/{orgId}/activity
openapi: 3.1.2
info:
  title: Rootset public API
  version: 0.2.2
  description: >-
    Typed MDM storage. Temporal values are UTC only; IDs are opaque ULIDs.
    Runtime table definitions are discovered through the schema endpoint.
servers:
  - url: http://localhost:4310
security: []
paths:
  /v1/orgs/{orgId}/activity:
    get:
      tags:
        - accounts
      summary: >-
        Search bounded record, schema and job activity under current
        permissions. Cursors preserve a fixed cutoff; refresh to include newer
        events.
      operationId: listActivity
      parameters:
        - name: orgId
          in: path
          required: true
          schema:
            type: string
            pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
          example: 01K6J7B8000000000000000000
        - name: databaseId
          in: query
          required: false
          schema:
            type: string
            pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
        - name: tableId
          in: query
          required: false
          schema:
            type: string
            pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
        - name: category
          in: query
          required: false
          schema:
            type: string
            enum:
              - records
              - schema
              - imports
              - exports
              - backups
              - restores
        - name: event
          in: query
          required: false
          schema:
            type: string
            enum:
              - job.testBackupDestination.cancelled
              - job.testBackupDestination.succeeded
              - job.testBackupDestination.failed
              - job.testBackupDestination.partially_completed
              - job.testBackupDestination.queued
              - job.saveBackupSchedule.cancelled
              - job.saveBackupSchedule.failed
              - job.saveBackupSchedule.partially_completed
              - job.saveBackupSchedule.queued
              - backup.failed.detected
              - backup.failed.resolved
              - backup.overdue.detected
              - backup.overdue.resolved
              - database.backup.prune
              - database.backup_policy.update
              - database.backup_schedule.update
              - database.backup_schedule.delete
              - job.previewDatabaseRestore.cancelled
              - job.previewDatabaseRestore.succeeded
              - job.previewDatabaseRestore.failed
              - job.previewDatabaseRestore.partially_completed
              - job.previewDatabaseRestore.queued
              - job.runDatabaseBackup.cancelled
              - job.runDatabaseBackup.succeeded
              - job.runDatabaseBackup.failed
              - job.runDatabaseBackup.partially_completed
              - job.runDatabaseBackup.queued
              - database.create
              - database.delete
              - job.deleteDatabase.cancelled
              - job.deleteDatabase.failed
              - job.deleteDatabase.partially_completed
              - job.deleteDatabase.queued
              - job.exportDatabase.cancelled
              - job.exportDatabase.succeeded
              - job.exportDatabase.failed
              - job.exportDatabase.partially_completed
              - job.exportDatabase.queued
              - job.restoreDatabaseBackup.cancelled
              - job.restoreDatabaseBackup.failed
              - job.restoreDatabaseBackup.partially_completed
              - job.restoreDatabaseBackup.queued
              - database.restore
              - database.update
              - field.create
              - field.convert
              - job.createField.cancelled
              - job.createField.failed
              - job.createField.partially_completed
              - job.createField.queued
              - field.delete
              - job.deleteField.cancelled
              - job.deleteField.failed
              - job.deleteField.partially_completed
              - job.deleteField.queued
              - job.reorderFields.cancelled
              - job.reorderFields.failed
              - job.reorderFields.partially_completed
              - job.reorderFields.queued
              - job.updateField.cancelled
              - job.updateField.failed
              - job.updateField.partially_completed
              - job.updateField.queued
              - field.update
              - fields.reorder
              - job.previewImportRows.cancelled
              - job.previewImportRows.succeeded
              - job.previewImportRows.failed
              - job.previewImportRows.partially_completed
              - job.previewImportRows.queued
              - job.importRows.cancelled
              - job.importRows.succeeded
              - job.importRows.failed
              - job.importRows.partially_completed
              - job.importRows.queued
              - records.changed
              - job.applySchemaChange.cancelled
              - job.applySchemaChange.failed
              - job.applySchemaChange.partially_completed
              - job.applySchemaChange.queued
              - table.create
              - job.createTable.cancelled
              - job.createTable.failed
              - job.createTable.partially_completed
              - job.createTable.queued
              - table.delete
              - job.deleteTable.cancelled
              - job.deleteTable.failed
              - job.deleteTable.partially_completed
              - job.deleteTable.queued
              - job.exportRows.cancelled
              - job.exportRows.succeeded
              - job.exportRows.failed
              - job.exportRows.partially_completed
              - job.exportRows.queued
              - foreign-key.create
              - job.createForeignKey.cancelled
              - job.createForeignKey.failed
              - job.createForeignKey.partially_completed
              - job.createForeignKey.queued
              - foreign-key.delete
              - job.deleteForeignKey.cancelled
              - job.deleteForeignKey.failed
              - job.deleteForeignKey.partially_completed
              - job.deleteForeignKey.queued
              - job.updateTable.cancelled
              - job.updateTable.failed
              - job.updateTable.partially_completed
              - job.updateTable.queued
              - table.update
              - rule.create
              - job.createUniqueRule.cancelled
              - job.createUniqueRule.failed
              - job.createUniqueRule.partially_completed
              - job.createUniqueRule.queued
              - rule.delete
              - job.deleteUniqueRule.cancelled
              - job.deleteUniqueRule.failed
              - job.deleteUniqueRule.partially_completed
              - job.deleteUniqueRule.queued
              - job.exportView.cancelled
              - job.exportView.succeeded
              - job.exportView.failed
              - job.exportView.partially_completed
              - job.exportView.queued
        - name: actor
          in: query
          required: false
          schema:
            type: string
            minLength: 1
            maxLength: 256
        - name: resource
          in: query
          required: false
          schema:
            type: string
            pattern: ^(database|table):[0-9A-HJKMNP-TV-Z]{26}$
        - name: q
          in: query
          required: false
          schema:
            type: string
            maxLength: 200
        - name: from
          in: query
          required: false
          schema:
            type: string
            pattern: >-
              ^(?!0000)\d{4}-\d{2}-\d{2}T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{3}Z$
        - name: to
          in: query
          required: false
          schema:
            type: string
            pattern: >-
              ^(?!0000)\d{4}-\d{2}-\d{2}T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{3}Z$
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
        - name: cursor
          in: query
          required: false
          content:
            application/json:
              schema:
                anyOf:
                  - type: string
                    maxLength: 131200
                  - type: 'null'
      responses:
        '200':
          description: Authorised operation result.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/listActivityOutput'
        '400':
          description: Malformed request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '401':
          description: Missing, expired, revoked or wrong-audience credential.
          headers:
            WWW-Authenticate:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '403':
          description: Insufficient current authority.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '404':
          description: Unknown or undisclosed target.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '408':
          description: >-
            Ordinary JSON request body did not finish within its bounded read
            deadline.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '409':
          description: Revision, schema, uniqueness or idempotency conflict.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '413':
          description: Payload or output budget exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '422':
          description: Typed validation failure.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '429':
          description: Rate, concurrency or admission limit.
          headers:
            Retry-After:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '500':
          description: Redacted internal failure.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '502':
          description: A required upstream service is unavailable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
        '503':
          description: >-
            A required service is unavailable. Check service configuration
            before retrying.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorEnvelope'
      security:
        - apiKey: []
        - oauth:
            - history:read
components:
  schemas:
    listActivityOutput:
      type: object
      properties:
        data:
          maxItems: 100
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              category:
                type: string
                enum:
                  - records
                  - schema
                  - imports
                  - exports
                  - backups
                  - restores
              occurredAt:
                type: string
                pattern: >-
                  ^(?!0000)\d{4}-\d{2}-\d{2}T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{3}Z$
              summary:
                type: string
              event:
                type: string
                enum:
                  - job.testBackupDestination.cancelled
                  - job.testBackupDestination.succeeded
                  - job.testBackupDestination.failed
                  - job.testBackupDestination.partially_completed
                  - job.testBackupDestination.queued
                  - job.saveBackupSchedule.cancelled
                  - job.saveBackupSchedule.failed
                  - job.saveBackupSchedule.partially_completed
                  - job.saveBackupSchedule.queued
                  - backup.failed.detected
                  - backup.failed.resolved
                  - backup.overdue.detected
                  - backup.overdue.resolved
                  - database.backup.prune
                  - database.backup_policy.update
                  - database.backup_schedule.update
                  - database.backup_schedule.delete
                  - job.previewDatabaseRestore.cancelled
                  - job.previewDatabaseRestore.succeeded
                  - job.previewDatabaseRestore.failed
                  - job.previewDatabaseRestore.partially_completed
                  - job.previewDatabaseRestore.queued
                  - job.runDatabaseBackup.cancelled
                  - job.runDatabaseBackup.succeeded
                  - job.runDatabaseBackup.failed
                  - job.runDatabaseBackup.partially_completed
                  - job.runDatabaseBackup.queued
                  - database.create
                  - database.delete
                  - job.deleteDatabase.cancelled
                  - job.deleteDatabase.failed
                  - job.deleteDatabase.partially_completed
                  - job.deleteDatabase.queued
                  - job.exportDatabase.cancelled
                  - job.exportDatabase.succeeded
                  - job.exportDatabase.failed
                  - job.exportDatabase.partially_completed
                  - job.exportDatabase.queued
                  - job.restoreDatabaseBackup.cancelled
                  - job.restoreDatabaseBackup.failed
                  - job.restoreDatabaseBackup.partially_completed
                  - job.restoreDatabaseBackup.queued
                  - database.restore
                  - database.update
                  - field.create
                  - field.convert
                  - job.createField.cancelled
                  - job.createField.failed
                  - job.createField.partially_completed
                  - job.createField.queued
                  - field.delete
                  - job.deleteField.cancelled
                  - job.deleteField.failed
                  - job.deleteField.partially_completed
                  - job.deleteField.queued
                  - job.reorderFields.cancelled
                  - job.reorderFields.failed
                  - job.reorderFields.partially_completed
                  - job.reorderFields.queued
                  - job.updateField.cancelled
                  - job.updateField.failed
                  - job.updateField.partially_completed
                  - job.updateField.queued
                  - field.update
                  - fields.reorder
                  - job.previewImportRows.cancelled
                  - job.previewImportRows.succeeded
                  - job.previewImportRows.failed
                  - job.previewImportRows.partially_completed
                  - job.previewImportRows.queued
                  - job.importRows.cancelled
                  - job.importRows.succeeded
                  - job.importRows.failed
                  - job.importRows.partially_completed
                  - job.importRows.queued
                  - records.changed
                  - job.applySchemaChange.cancelled
                  - job.applySchemaChange.failed
                  - job.applySchemaChange.partially_completed
                  - job.applySchemaChange.queued
                  - table.create
                  - job.createTable.cancelled
                  - job.createTable.failed
                  - job.createTable.partially_completed
                  - job.createTable.queued
                  - table.delete
                  - job.deleteTable.cancelled
                  - job.deleteTable.failed
                  - job.deleteTable.partially_completed
                  - job.deleteTable.queued
                  - job.exportRows.cancelled
                  - job.exportRows.succeeded
                  - job.exportRows.failed
                  - job.exportRows.partially_completed
                  - job.exportRows.queued
                  - foreign-key.create
                  - job.createForeignKey.cancelled
                  - job.createForeignKey.failed
                  - job.createForeignKey.partially_completed
                  - job.createForeignKey.queued
                  - foreign-key.delete
                  - job.deleteForeignKey.cancelled
                  - job.deleteForeignKey.failed
                  - job.deleteForeignKey.partially_completed
                  - job.deleteForeignKey.queued
                  - job.updateTable.cancelled
                  - job.updateTable.failed
                  - job.updateTable.partially_completed
                  - job.updateTable.queued
                  - table.update
                  - rule.create
                  - job.createUniqueRule.cancelled
                  - job.createUniqueRule.failed
                  - job.createUniqueRule.partially_completed
                  - job.createUniqueRule.queued
                  - rule.delete
                  - job.deleteUniqueRule.cancelled
                  - job.deleteUniqueRule.failed
                  - job.deleteUniqueRule.partially_completed
                  - job.deleteUniqueRule.queued
                  - job.exportView.cancelled
                  - job.exportView.succeeded
                  - job.exportView.failed
                  - job.exportView.partially_completed
                  - job.exportView.queued
              status:
                type: string
                enum:
                  - requested
                  - succeeded
                  - failed
                  - cancelled
                  - partially_completed
                  - resolved
              actor:
                type: object
                properties:
                  id:
                    type:
                      - string
                      - 'null'
                  key:
                    type: string
                  kind:
                    type: string
                  name:
                    type: string
                  avatarUrl:
                    anyOf:
                      - type: string
                        format: uri
                      - type: 'null'
                required:
                  - id
                  - key
                  - kind
                  - name
                  - avatarUrl
                additionalProperties: false
              database:
                anyOf:
                  - type: object
                    properties:
                      id:
                        type: string
                        pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
                      name:
                        type: string
                      state:
                        type: string
                        enum:
                          - active
                          - maintenance
                          - deleted
                    required:
                      - id
                      - name
                      - state
                    additionalProperties: false
                  - type: 'null'
              table:
                anyOf:
                  - type: object
                    properties:
                      id:
                        type: string
                        pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
                      name:
                        type: string
                      state:
                        type: string
                        enum:
                          - active
                          - maintenance
                          - deleted
                    required:
                      - id
                      - name
                      - state
                    additionalProperties: false
                  - type: 'null'
              rowId:
                anyOf:
                  - type: string
                    pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
                  - type: 'null'
              affectedRows:
                anyOf:
                  - type: integer
                    minimum: 0
                    maximum: 9007199254740991
                  - type: 'null'
              jobId:
                anyOf:
                  - type: string
                    pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
                  - type: 'null'
              fileName:
                type:
                  - string
                  - 'null'
              destination:
                anyOf:
                  - type: string
                    enum:
                      - record
                      - table
                      - database
                      - imports
                      - exports
                      - database-exports
                      - backup-history
                      - backup-schedule
                  - type: 'null'
            required:
              - id
              - category
              - occurredAt
              - summary
              - event
              - status
              - actor
              - database
              - table
              - rowId
              - affectedRows
              - jobId
              - fileName
              - destination
            additionalProperties: false
        asOf:
          type: string
          pattern: >-
            ^(?!0000)\d{4}-\d{2}-\d{2}T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d\.\d{3}Z$
        startCursor:
          type: string
        nextCursor:
          type:
            - string
            - 'null'
        hasMore:
          type: boolean
        availableCategories:
          type: array
          items:
            type: string
            enum:
              - records
              - schema
              - imports
              - exports
              - backups
              - restores
        scope:
          type: object
          properties:
            database:
              anyOf:
                - type: object
                  properties:
                    id:
                      type: string
                      pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
                    name:
                      type: string
                    state:
                      type: string
                      enum:
                        - active
                        - maintenance
                        - deleted
                  required:
                    - id
                    - name
                    - state
                  additionalProperties: false
                - type: 'null'
            table:
              anyOf:
                - type: object
                  properties:
                    id:
                      type: string
                      pattern: ^[0-7][0-9A-HJKMNP-TV-Z]{25}$
                    name:
                      type: string
                    state:
                      type: string
                      enum:
                        - active
                        - maintenance
                        - deleted
                  required:
                    - id
                    - name
                    - state
                  additionalProperties: false
                - type: 'null'
          required:
            - database
            - table
          additionalProperties: false
      required:
        - data
        - asOf
        - startCursor
        - nextCursor
        - hasMore
        - availableCategories
        - scope
      additionalProperties: false
    ErrorEnvelope:
      type: object
      required:
        - error
      additionalProperties: false
      properties:
        error:
          type: object
          required:
            - code
            - message
            - requestId
          additionalProperties: false
          properties:
            code:
              type: string
              description: >-
                Known domain codes are published in ErrorCode; unknown future
                codes remain valid.
              x-rootset-known-error-codes:
                - VALIDATION_FAILED
                - UNAUTHENTICATED
                - ACCESS_DENIED
                - FORBIDDEN
                - LAST_ADMIN
                - INSUFFICIENT_SCOPE
                - PERSONAL_IDENTITY_REQUIRED
                - DELEGATION_EXCEEDS_AUTHORITY
                - RESOURCE_NOT_FOUND
                - ROW_VERSION_CONFLICT
                - SCHEMA_VERSION_CONFLICT
                - UNIQUE_CONFLICT
                - FOREIGN_KEY_CONFLICT
                - AUTO_INCREMENT_EXHAUSTED
                - ROW_SIZE_LIMIT
                - ROW_LIMIT_REACHED
                - PAYLOAD_TOO_LARGE
                - REQUEST_TIMEOUT
                - QUERY_TIMEOUT
                - CURSOR_INVALID
                - STEP_UP_REQUIRED
                - IDEMPOTENCY_CONFLICT
                - JOB_FAILED
                - RATE_LIMITED
                - CAPACITY_LIMIT
                - SCHEMA_MAINTENANCE
                - ARTIFACT_UNVERIFIED
                - ARTIFACT_EXPIRED
                - CONFIGURATION_INVALID
                - DEPENDENCY_UNAVAILABLE
                - INTERNAL_ERROR
            message:
              type: string
            requestId:
              type: string
            details: {}
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      bearerFormat: Rootset personal API key
    oauth:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: http://localhost:4310/oauth/authorize
          tokenUrl: http://localhost:4310/oauth/token
          scopes:
            profile:manage: >-
              Current profile:manage authority; the live role ceiling still
              applies.
            account:security: >-
              Current account:security authority; the live role ceiling still
              applies.
            org:read: Current org:read authority; the live role ceiling still applies.
            org:manage: Current org:manage authority; the live role ceiling still applies.
            members:read: >-
              Current members:read authority; the live role ceiling still
              applies.
            members:manage: >-
              Current members:manage authority; the live role ceiling still
              applies.
            keys:manage: >-
              Current keys:manage authority; the live role ceiling still
              applies.
            team-keys:manage: >-
              Current team-keys:manage authority; the live role ceiling still
              applies.
            databases:read: >-
              Current databases:read authority; the live role ceiling still
              applies.
            databases:manage: >-
              Current databases:manage authority; the live role ceiling still
              applies.
            tables:read: >-
              Current tables:read authority; the live role ceiling still
              applies.
            tables:manage: >-
              Current tables:manage authority; the live role ceiling still
              applies.
            schema:manage: >-
              Current schema:manage authority; the live role ceiling still
              applies.
            rows:read: Current rows:read authority; the live role ceiling still applies.
            schema:read: >-
              Current schema:read authority; the live role ceiling still
              applies.
            rows:write: Current rows:write authority; the live role ceiling still applies.
            history:read: >-
              Current history:read authority; the live role ceiling still
              applies.
            exports:read: >-
              Current exports:read authority; the live role ceiling still
              applies.
            jobs:read: Current jobs:read authority; the live role ceiling still applies.
            jobs:cancel: >-
              Current jobs:cancel authority; the live role ceiling still
              applies.
            jobs:retry: Current jobs:retry authority; the live role ceiling still applies.
            backups:read: >-
              Current backups:read authority; the live role ceiling still
              applies.
            backups:manage: >-
              Current backups:manage authority; the live role ceiling still
              applies.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.