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

# List actions

> Read persisted Actions data for an account available to this workspace key. An unbound key selects account_id; a bound key stays limited to its own account.



## OpenAPI

````yaml https://plainrouter.com/openapi.json get /agent/workspaces/{workspace}/actions
openapi: 3.1.0
info:
  title: Plainrouter Conversion API
  version: 0.5.0
  description: Plainrouter public Signals Conversion API.
servers:
  - url: https://plainrouter.com/api/v1
    description: Production
security:
  - workspaceSecret: []
paths:
  /agent/workspaces/{workspace}/actions:
    get:
      tags:
        - ActionReadApi
      summary: List actions
      description: >-
        Read persisted Actions data for an account available to this workspace
        key. An unbound key selects account_id; a bound key stays limited to its
        own account.
      operationId: actions.api.index
      parameters:
        - name: workspace
          in: path
          required: true
          description: The workspace ID
          schema:
            type: integer
        - name: status
          in: query
          schema:
            type: string
            enum:
              - pending
              - approved_without_execution
              - rejected
              - executing
              - executed_pending_verification
              - compensating
              - measuring
              - verified
              - failed
              - execution_uncertain
              - rolled_back
              - blocked
        - name: page
          in: query
          schema:
            minimum: 1
            type: integer
        - name: account_id
          in: query
          description: >-
            Optional positive account ID. A bound key may name only its own
            account; any other value returns 422. An unbound key may name only
            an active account with an active connection in its workspace, and
            must name one when the workspace has more than one.
          schema:
            minimum: 1
            type: integer
      responses:
        '200':
          description: Authorized Actions resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActionListRead'
        '401':
          description: Missing, invalid, or expired workspace key.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '403':
          description: The key lacks the propose-actions grant.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '404':
          description: Workspace, account, or Actions resource not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
        '422':
          description: Request validation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ValidationError'
      security:
        - workspaceActionKey: []
components:
  schemas:
    ActionListRead:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/ActionReadItem'
        meta:
          type: object
          properties:
            current_page:
              type: integer
            last_page:
              type: integer
            per_page:
              type: integer
            total:
              type: integer
          required:
            - current_page
            - last_page
            - per_page
            - total
      required:
        - data
        - meta
      title: ActionListRead
    ErrorMessage:
      type: object
      properties:
        message:
          type: string
      required:
        - message
      title: ErrorMessage
    ValidationError:
      type: object
      properties:
        message:
          type: string
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
      required:
        - message
        - errors
      title: ValidationError
    ActionReadItem:
      type: object
      properties:
        id:
          type: string
        batch_id:
          type: string
        workspace_id:
          type: integer
        type:
          type: string
          enum:
            - increase_budget
            - decrease_budget
            - pause
            - resume
            - replace_creative
            - shift_spend
            - rollback
            - create_campaign
            - create_ad_set
            - create_ad
            - upload_asset
            - adjust_budget
            - set_status
            - duplicate_ad_with_creative
            - duplicate_adset
            - duplicate_ad_with_creative_v2
        target_entity_type:
          type: string
        target_entity_id:
          type: string
        target_entity_name:
          type:
            - string
            - 'null'
        params:
          anyOf:
            - type: object
              additionalProperties: {}
            - type: array
              items: {}
        rationale:
          type: string
        status:
          type: string
          enum:
            - pending
            - approved_without_execution
            - rejected
            - executing
            - executed_pending_verification
            - compensating
            - measuring
            - verified
            - failed
            - execution_uncertain
            - rolled_back
            - blocked
        batch_status:
          type: string
          enum:
            - pending
            - approved
            - approved_without_execution
            - auto_approved
            - rejected
            - executing
            - executed_pending_verification
            - compensating
            - measuring
            - completed
            - failed
            - rolled_back
            - rollback_incomplete
            - blocked
            - halted
        disposition:
          $ref: '#/components/schemas/ActionCurrentDisposition'
        policy_decision:
          type:
            - string
            - 'null'
          enum:
            - allow
            - require_approval
            - block
            - null
        policy_reasons:
          type: array
          items:
            type: string
      required:
        - id
        - batch_id
        - workspace_id
        - type
        - target_entity_type
        - target_entity_id
        - target_entity_name
        - params
        - rationale
        - status
        - batch_status
        - disposition
        - policy_decision
        - policy_reasons
      title: ActionReadItem
    ActionCurrentDisposition:
      type: object
      properties:
        receipt_status:
          type:
            - string
            - 'null'
          enum:
            - pending
            - attempting
            - reconciliation_required
            - committed
            - executed_pending_verification
            - measuring
            - verified
            - compensating
            - compensated
            - compensation_failed
            - irreversible
            - failed
            - reconciliation_exhausted
            - null
        outcome_status:
          type:
            - string
            - 'null'
          enum:
            - measurable
            - not_measurable
            - unavailable
            - null
        outcome_reason_code:
          type:
            - string
            - 'null'
        outcome_checked_at:
          type:
            - string
            - 'null'
          format: date-time
        compensation_reason_code:
          type:
            - string
            - 'null'
        recovery_disposition:
          type:
            - string
            - 'null'
          enum:
            - no_compensation
            - restored
            - unrestored
            - contradictory
            - irreversible
            - uncertain
            - null
        late_restored:
          type: boolean
      required:
        - receipt_status
        - outcome_status
        - outcome_reason_code
        - outcome_checked_at
        - compensation_reason_code
        - recovery_disposition
        - late_restored
      title: ActionCurrentDisposition
  securitySchemes:
    workspaceSecret:
      type: http
      description: >-
        Per-workspace Server secret. It authenticates only the Signals workspace
        represented by the credential.
      scheme: bearer
    workspaceActionKey:
      type: http
      description: >-
        Workspace execution key with the propose-actions grant. Unbound keys
        select an available advertising account with account_id.
      scheme: bearer

````