{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://adcontextprotocol.org/schemas/3.3.0-beta.1/account/request-account-response.json",
  "title": "Request Account Response",
  "x-added-in": "3.3.0",
  "x-status": "experimental",
  "description": "Result of request_account (experimental, account.requests). A completed response always carries the request, whatever its state: an in_review or rejected request is a normal outcome, not a task failure. failed is reserved for calls the seller could not process, such as a malformed request or an unsupported billing value it rejects outright.",
  "type": "object",
  "allOf": [
    {
      "$ref": "https://adcontextprotocol.org/schemas/3.3.0-beta.1/core/version-envelope.json"
    },
    {
      "$ref": "https://adcontextprotocol.org/schemas/3.3.0-beta.1/core/protocol-envelope.json"
    }
  ],
  "discriminator": {
    "propertyName": "status"
  },
  "oneOf": [
    {
      "description": "The request was recorded, or an existing request for the same key was returned.",
      "required": [
        "status",
        "request"
      ],
      "properties": {
        "status": {
          "type": "string",
          "const": "completed"
        }
      },
      "not": {
        "required": [
          "adcp_error"
        ]
      }
    },
    {
      "description": "The call could not be processed. Both envelope and payload error layers are present.",
      "required": [
        "status",
        "adcp_error",
        "errors"
      ],
      "properties": {
        "status": {
          "type": "string",
          "const": "failed"
        },
        "errors": {
          "minItems": 1
        }
      }
    }
  ],
  "properties": {
    "request": {
      "$ref": "https://adcontextprotocol.org/schemas/3.3.0-beta.1/core/account-request-record.json"
    },
    "errors": {
      "type": "array",
      "items": {
        "$ref": "https://adcontextprotocol.org/schemas/3.3.0-beta.1/core/error.json"
      }
    },
    "context": {
      "$ref": "https://adcontextprotocol.org/schemas/3.3.0-beta.1/core/context.json"
    },
    "ext": {
      "$ref": "https://adcontextprotocol.org/schemas/3.3.0-beta.1/core/ext.json"
    }
  },
  "additionalProperties": true,
  "examples": [
    {
      "description": "Recorded; the seller is reviewing",
      "data": {
        "status": "completed",
        "request": {
          "request_id": "areq_01K4F8M2Q7",
          "state": "in_review",
          "requested": {
            "brand": {
              "domain": "renault.fr",
              "countries": [
                "FR"
              ]
            },
            "operator": "wppmedia.fr",
            "currency": "EUR",
            "billing": "operator"
          },
          "pending_action": {
            "waiting_on": "seller",
            "kind": "review",
            "message": "Checking for an existing Renault France relationship."
          },
          "created_at": "2026-10-18T09:00:00Z",
          "updated_at": "2026-10-18T09:00:00Z"
        }
      }
    },
    {
      "description": "An open seller resolves on the spot",
      "data": {
        "status": "completed",
        "request": {
          "request_id": "areq_01K4F9A0Z1",
          "state": "resolved",
          "requested": {
            "brand": {
              "domain": "nova-athletics.example"
            },
            "operator": "pinnacle-media.example",
            "billing": "agent"
          },
          "account_id": "acc_nova_pinnacle",
          "resolution": "created",
          "created_at": "2026-10-18T09:05:00Z",
          "updated_at": "2026-10-18T09:05:00Z"
        }
      }
    }
  ]
}
