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

# List Organization activity

> Lists who changed what in the Organization, newest first: membership, invitation, billing, Fabric configuration, and Run events, and denied requests. Pass `nextCursor` as `cursor` to get the next page.

Requires the GV.APIOwner application role, or a higher role (Owner > Contributor > Reader).



## OpenAPI

````yaml /api/openapi.json get /api/v1/organization-activity
openapi: 3.1.0
info:
  description: >-
    General Validation's API for Organization administration, Table Pair and
    Test authoring, Runs, and Result metadata. Microsoft Entra bearer tokens
    authorize every call.
  title: General Validation API
  version: 1.0.0
servers:
  - url: https://api.generalvalidation.com
security: []
tags:
  - description: >-
      Customer-owned Fabric references, immutable Runs, and safe Result
      summaries.
    name: Fabric
  - description: Organizations and verified membership.
    name: Organization
  - description: Subscriptions and entitlements.
    name: Billing
paths:
  /api/v1/organization-activity:
    get:
      tags:
        - Organization
      summary: List Organization activity
      description: >-
        Lists who changed what in the Organization, newest first: membership,
        invitation, billing, Fabric configuration, and Run events, and denied
        requests. Pass `nextCursor` as `cursor` to get the next page.


        Requires the GV.APIOwner application role, or a higher role (Owner >
        Contributor > Reader).
      operationId: list_organization_activity
      parameters:
        - description: Number of items to return.
          in: query
          name: limit
          required: false
          schema:
            default: 50
            description: Number of items to return.
            maximum: 100
            minimum: 1
            title: Limit
            type: integer
        - description: >-
            Opaque continuation cursor. Pass the nextCursor from the previous
            page of the same collection.
          in: query
          name: cursor
          required: false
          schema:
            anyOf:
              - maxLength: 2048
                type: string
              - type: 'null'
            description: >-
              Opaque continuation cursor. Pass the nextCursor from the previous
              page of the same collection.
            title: Cursor
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/V1OrganizationActivityPage'
          description: Successful Response
        '401':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/V1Problem'
          description: A valid Microsoft Entra bearer token is required.
        '403':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/V1Problem'
          description: The authenticated principal does not have the required role.
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/V1Problem'
          description: The request is syntactically valid but semantically invalid.
        '429':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/V1Problem'
          description: The bounded application request rate was exceeded.
          headers:
            Retry-After:
              description: Seconds to wait before retrying.
              schema:
                minimum: 1
                type: integer
        '503':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/V1Problem'
          description: A required dependency is temporarily unavailable.
          headers:
            Retry-After:
              description: Seconds to wait before retrying.
              schema:
                minimum: 1
                type: integer
      security:
        - entraApplication: []
components:
  schemas:
    V1OrganizationActivityPage:
      additionalProperties: false
      properties:
        items:
          items:
            $ref: '#/components/schemas/V1OrganizationActivity'
          title: Items
          type: array
        limit:
          description: The page size this response used.
          maximum: 100
          minimum: 1
          title: Limit
          type: integer
        nextCursor:
          anyOf:
            - type: string
            - type: 'null'
          description: Pass as `cursor` to get the next page. Null on the last page.
          title: Nextcursor
      required:
        - items
        - limit
      title: V1OrganizationActivityPage
      type: object
    V1Problem:
      additionalProperties: false
      properties:
        code:
          description: >-
            Stable machine-readable error code, such as `precondition.failed`.
            Branch on this value.
          title: Code
          type: string
        detail:
          description: What went wrong in this request, written for a person.
          title: Detail
          type: string
        diagnostics:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          default: null
          description: >-
            Extra details for some errors, such as `fieldErrors` for an invalid
            request or `requiredRole` for a denied one. Absent when there are
            none.
          title: Diagnostics
        instance:
          description: Path of the request that failed.
          title: Instance
          type: string
        requestId:
          description: >-
            This request's ID, also sent in the `X-Request-Id` response header.
            Quote it when you contact support. A request that sends an
            `X-Request-Id` of 1 to 64 letters, digits, or `_.:-` gets that value
            back.
          title: Requestid
          type: string
        status:
          description: The HTTP status code of this response.
          title: Status
          type: integer
        title:
          description: Short summary of the error code.
          title: Title
          type: string
        type:
          description: Link to the documentation page for this error code.
          title: Type
          type: string
      required:
        - type
        - title
        - status
        - code
        - detail
        - instance
        - requestId
      title: V1Problem
      type: object
    V1OrganizationActivity:
      additionalProperties: false
      properties:
        actor:
          $ref: '#/components/schemas/V1OrganizationActivityActor'
          description: Who made the change.
        createdAt:
          title: Createdat
          type: string
        detail:
          additionalProperties:
            type: string
          description: >-
            Fixed keys only: role, from_role, to_role, from_status, to_status,
            required_role, actual_role, source (entra for a change Microsoft
            Entra made, executor for a Run outcome its job reported), and
            active_owners (the active Owners left after an Entra change removed
            one).
          title: Detail
          type: object
        eventType:
          description: >-
            What happened, as `resource.action`, such as
            `membership.role_changed`, `organization_invitation.created`,
            `fabric.pair_created`, or `authz.denied`.
          title: Eventtype
          type: string
        outcome:
          description: '`success`, or `failure` for a denied request (`authz.denied`).'
          title: Outcome
          type: string
        requestId:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            ID of the request that made the change, or null. For a change a
            member or workload made through this API, it matches that response's
            `X-Request-Id` header.
          title: Requestid
        target:
          description: >-
            What the event acted on, as `type/id`, such as
            `organization_invitation/{invitationUuid}`. For `authz.denied`, the
            denied request's method and path.
          title: Target
          type: string
      required:
        - createdAt
        - eventType
        - outcome
        - target
        - requestId
        - actor
        - detail
      title: V1OrganizationActivity
      type: object
    V1OrganizationActivityActor:
      additionalProperties: false
      properties:
        displayName:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The member's name, or null for a workload, General Validation, or
            the system.
          title: Displayname
        objectId:
          anyOf:
            - type: string
            - type: 'null'
          description: Microsoft Entra object ID of the member or workload, or null.
          title: Objectid
        type:
          description: >-
            `user` is a member and `service_principal` a workload identity with
            an application token. `platform_admin` is a change General
            Validation made, and `system` an automatic change or a Run's job
            reporting its outcome.
          enum:
            - user
            - service_principal
            - platform_admin
            - system
          title: Type
          type: string
      required:
        - type
        - displayName
        - objectId
      title: V1OrganizationActivityActor
      type: object
  securitySchemes:
    entraApplication:
      bearerFormat: JWT
      description: >-
        Microsoft Entra application token issued by the caller's Organization
        tenant for this multitenant API. Request the .default scope and assign
        the application the required GV.APIReader, GV.APIContributor, or
        GV.APIOwner role.
      scheme: bearer
      type: http
      x-gv-app-roles:
        - GV.APIReader
        - GV.APIContributor
        - GV.APIOwner
      x-gv-audience: 78d5d8af-9dd6-49dd-b06c-38c3a3c707af
      x-gv-scope: api://78d5d8af-9dd6-49dd-b06c-38c3a3c707af/.default
      x-gv-token-url-template: https://login.microsoftonline.com/{tenantId}/oauth2/v2.0/token

````

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