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

# List refused submissions

> Returns submissions this service refused before they became intents: those blocked by the organization's trading controls, and those turned down for permission or entitlement. Newest first. The counterpart to listing intent actions, which returns what was accepted.



## OpenAPI

````yaml /api-reference/intents.openapi.json get /v1/intents/rejections
openapi: 3.1.0
info:
  title: intents
  description: ''
  license:
    name: ''
  version: 0.1.0
servers:
  - url: https://api.anthid.com
    description: Production
security: []
tags:
  - name: Intents
    description: Submit create, replace, and cancel commands
  - name: Intents
    description: Read intent actions and their dispatch state
  - name: Intents
    description: Read aggregate intent activity
paths:
  /v1/intents/rejections:
    get:
      tags:
        - Intents
      summary: List refused submissions
      description: >-
        Returns submissions this service refused before they became intents:
        those blocked by the organization's trading controls, and those turned
        down for permission or entitlement. Newest first. The counterpart to
        listing intent actions, which returns what was accepted.
      operationId: listIntentRejections
      parameters:
        - name: trading_account_id
          in: query
          description: Narrow to one trading account
          required: false
          schema:
            type: string
            format: uuid
          example: 550e8400-e29b-41d4-a716-446655440000
        - name: stage
          in: query
          description: >-
            Narrow to one refusal stage. CONTROLS is the supervisory review;
            AUTHORIZATION and ENTITLEMENT are the access review.
          required: false
          schema:
            $ref: '#/components/schemas/RejectionStage'
          example: CONTROLS
        - name: days
          in: query
          description: >-
            Trailing window in whole days. Omitted returns the whole retained
            history. Clamped to the six-year retention period.
          required: false
          schema:
            type: integer
            format: int32
            minimum: 0
          example: 90
        - name: limit
          in: query
          description: Page size. Defaults to 100 and is clamped to 1 through 100.
          required: false
          schema:
            type: integer
            minimum: 0
          example: 50
        - name: next_cursor
          in: query
          description: Cursor returned by the previous page
          required: false
          schema:
            type: string
        - name: x-organization-id
          in: header
          description: Organization ID required for service-account credentials
          required: false
          schema:
            type:
              - string
              - 'null'
            format: uuid
          example: 550e8400-e29b-41d4-a716-446655440222
      responses:
        '200':
          description: Refused submissions retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListIntentRejectionsResult'
              example:
                data:
                  - account_id: 550e8400-e29b-41d4-a716-446655440000
                    action_type: CREATE
                    created_at: '2026-08-05T16:20:00Z'
                    idempotency_key: null
                    organization_id: 550e8400-e29b-41d4-a716-446655440222
                    principal_id: an_3Kd91mQ0xVb7LpZs
                    principal_name: null
                    principal_type: API_KEY
                    reason: '[{"control":"symbol_risk","limit":"max_notional"}]'
                    received_at: '2026-08-05T16:20:00Z'
                    ref_intent_id: null
                    rejection_id: 019eecb9-adaf-71d2-b439-f06a96a1c2d4
                    request_id: 01930000-0000-7000-8000-000000000000
                    requested:
                      client_reference_id: order-20260805-001
                      command:
                        payload:
                          order_side: BUY
                          symbol: AAPL
                        type: CREATE
                      trading_account_id: 550e8400-e29b-41d4-a716-446655440000
                    source_ip: 203.0.113.42
                    stage: CONTROLS
                next_cursor: null
        '400':
          description: Query parameters or cursor are invalid
          content:
            text/plain:
              schema:
                type: string
        '401':
          description: Missing or invalid authentication credentials
          content:
            text/plain:
              schema:
                type: string
        '403':
          description: Caller lacks read permission or organization access
          content:
            text/plain:
              schema:
                type: string
        '429':
          description: Caller exceeded the request rate limit
          content:
            text/plain:
              schema:
                type: string
        '500':
          description: Unexpected server error while reading refusals
          content:
            text/plain:
              schema:
                type: string
      security:
        - bearerAuth: []
        - clientCredentials: []
        - apiKeyAuth: []
components:
  schemas:
    RejectionStage:
      type: string
      description: Which gate refused a submission.
      enum:
        - AUTHORIZATION
        - ENTITLEMENT
        - CONTROLS
    ListIntentRejectionsResult:
      type: object
      required:
        - data
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/IntentRejection'
        next_cursor:
          type:
            - string
            - 'null'
    IntentRejection:
      type: object
      description: >-
        A submission that was refused before it became an intent.


        The counterpart to [`IntentActionWithState`]: that is what was accepted,

        this is what was not. Both carry the same attribution, so "everything
        this

        credential submitted" is answerable across the pair.
      required:
        - rejection_id
        - organization_id
        - account_id
        - action_type
        - requested
        - stage
        - reason
        - principal_type
        - principal_id
        - request_id
        - received_at
        - created_at
      properties:
        account_id:
          type: string
          format: uuid
        action_type:
          $ref: '#/components/schemas/ActionType'
        created_at:
          type: string
          format: date-time
        idempotency_key:
          type:
            - string
            - 'null'
        organization_id:
          type: string
          format: uuid
        principal_id:
          type: string
        principal_name:
          type:
            - string
            - 'null'
          description: >-
            Who was refused, by name, where the credential belongs to a person.
            See

            [`IntentActionWithState::principal_name`] for when this is `None`.
        principal_type:
          $ref: '#/components/schemas/PrincipalType'
        reason:
          type: string
          description: >-
            Refusal detail. For `CONTROLS` this is the set of triggered
            controls, the

            same content the original 403 carried.
        received_at:
          type: string
          format: date-time
        ref_intent_id:
          type:
            - string
            - 'null'
          format: uuid
          description: >-
            The intent a replace or cancel was commanding. Null for a create,
            which

            refers to nothing that exists.
        rejection_id:
          type: string
          format: uuid
        request_id:
          type: string
        requested:
          description: The submission as received.
        source_ip:
          type:
            - string
            - 'null'
        stage:
          $ref: '#/components/schemas/RejectionStage'
    ActionType:
      type: string
      enum:
        - CREATE
        - REPLACE
        - CANCEL
    PrincipalType:
      type: string
      description: >-
        Class of credential behind an instruction.


        An order placed with an organization's API key, one placed by a person

        signed in to the dashboard, and one placed by an Anthid service acting
        on

        the organization's behalf are three different claims once an order is

        disputed. Recording only the organization cannot tell them apart.
      enum:
        - API_KEY
        - USER
        - SERVICE
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
    clientCredentials:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Machine bearer token minted via the client_credentials grant.
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````