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

# List event actions

> Returns one page of the actions an event subscription can select, ordered by topic and then by name. Pass their names in an event subscription's `actions`. Every account can use event subscriptions. In an account whose Macs your organization manages, they need the events capability.

Service accounts can call it with the `compute:ListEventActions` permission.



## OpenAPI

````yaml /api-reference/openapi/compute.json get /compute/v2/eventactions
openapi: 3.0.3
info:
  title: Mount Thor Compute API
  version: 02a4a30e3ecb
  description: >-
    Create, list, inspect and delete virtual machines and bare-metal Macs, read
    the image and machine-class catalogs, see your reserved capacity and your
    account's compute profile, report machine problems to Mount Thor, and
    subscribe to machine events. Service-account credentials can list, create
    and delete machines, read the catalogs and the compute profile, and use
    event subscriptions. In an account whose Macs your organization manages,
    they can also read a Mac and use problem reports, and every one of these
    only as far as the account's capabilities allow. The other compute
    operations are for people using the `mthr` CLI or the portal. In an account
    whose Macs your organization manages, an operation outside its capabilities
    (see Get compute profile) answers 400 `tenant_compute_customer_managed`.
    Mount Thor names each machine. To change a machine's class or image, delete
    it and create a new one. Lists return one page at a time: pass
    `nextPageToken` back as `pageToken` until it comes back empty.
servers:
  - url: https://customer-api.mountthor.com
security:
  - bearerAuth: []
paths:
  /compute/v2/eventactions:
    get:
      summary: List event actions
      description: >-
        Returns one page of the actions an event subscription can select,
        ordered by topic and then by name. Pass their names in an event
        subscription's `actions`. Every account can use event subscriptions. In
        an account whose Macs your organization manages, they need the events
        capability.


        Service accounts can call it with the `compute:ListEventActions`
        permission.
      operationId: ComputeService_ListEventActions
      parameters:
        - name: pageSize
          in: query
          description: >-
            The most actions to return. 100 when omitted or 0; values above 1000
            return 1000.
          schema:
            type: integer
            format: uint32
        - name: pageToken
          in: query
          description: >-
            The `nextPageToken` of the previous page. Omit it for the first
            page.
          schema:
            type: string
        - name: topic
          in: query
          description: >-
            Optional. Returns only this topic's actions. Omit it for every
            topic. Your Macs' events are under `EVENT_TOPIC_BARE_METAL_MACHINE`.
          schema:
            enum:
              - EVENT_TOPIC_UNSPECIFIED
              - EVENT_TOPIC_BARE_METAL_MACHINE
              - EVENT_TOPIC_VIRTUAL_MACHINE
            type: string
            format: enum
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListEventActionsResponse'
        '400':
          description: >-
            `pageToken` is invalid (`invalid_page_token`), or `topic` is not a
            supported topic (`invalid_argument`).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The credential is missing, invalid or expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: >-
            The credential does not allow this operation. `error.reason` is
            `machine_credential_not_supported` when the operation refuses
            service accounts.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: >-
            Too many requests for now. Event subscription operations are limited
            per account; retry after the number of seconds in `Retry-After`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '501':
          description: >-
            Event subscriptions are not available yet (`unimplemented`); retry
            later.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: Compute is temporarily unable to complete the request; retry later.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    ListEventActionsResponse:
      type: object
      properties:
        actions:
          type: array
          items:
            $ref: '#/components/schemas/EventAction'
          description: Up to `pageSize` actions, ordered by topic and then by name.
        nextPageToken:
          type: string
          description: Pass it as `pageToken` to get the next page. Empty on the last page.
      description: A page of event actions.
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: integer
              description: The HTTP status code.
            status:
              type: string
              description: >-
                A short category name, for example `NotFound`, `InvalidArgument`
                or `FailedPrecondition`.
            reason:
              type: string
              description: >-
                A stable, machine-readable reason when one applies, for example
                `insufficient_funds` when a launch is refused for billing.
                Branch on this, not on `message`.
            message:
              type: string
              description: A human-readable explanation. Its wording can change.
    EventAction:
      type: object
      properties:
        name:
          readOnly: true
          type: string
          description: >-
            The action's name, to pass in an event subscription's `actions`.
            Unique within its topic.
        topic:
          readOnly: true
          enum:
            - EVENT_TOPIC_UNSPECIFIED
            - EVENT_TOPIC_BARE_METAL_MACHINE
            - EVENT_TOPIC_VIRTUAL_MACHINE
          type: string
          description: The topic the action belongs to.
          format: enum
        description:
          readOnly: true
          type: string
          description: What the action reports.
      description: An action an event subscription can select.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Send `Authorization: Bearer <credential>` to
        https://customer-api.mountthor.com. People use the session that `mthr
        login` stores (a token starting `mt_session_`, valid for up to 12
        hours). Automation uses a service-account credential (starting
        `mt_sa_v1_`, valid for 90 days) from Create credential. Each operation
        names the permission it needs. Service accounts hold permissions through
        custom roles, and some operations refuse them; those operations say so.

````

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