{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-drive/json-schema/google-drive-access-proposal-schema.json",
  "title": "AccessProposal",
  "description": "Manage outstanding access proposals on a file.",
  "x-generated": "2026-11-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-drive-accessproposals-api-openapi.yml#/components/schemas/AccessProposal",
  "type": "object",
  "properties": {
    "rolesAndViews": {
      "type": "array",
      "description": "A wrapper for the role and view of an access proposal. For more information, see [Roles and permissions](https://developers.google.com/workspace/drive/api/guides/ref-roles).",
      "items": {
        "$ref": "#/$defs/AccessProposalRoleAndView"
      }
    },
    "createTime": {
      "type": "string",
      "description": "The creation time.",
      "format": "google-datetime"
    },
    "requestMessage": {
      "type": "string",
      "description": "The message that the requester added to the proposal."
    },
    "fileId": {
      "type": "string",
      "description": "The file ID that the proposal for access is on."
    },
    "requesterEmailAddress": {
      "type": "string",
      "description": "The email address of the requesting user."
    },
    "recipientEmailAddress": {
      "type": "string",
      "description": "The email address of the user that will receive permissions, if accepted."
    },
    "proposalId": {
      "type": "string",
      "description": "The ID of the access proposal."
    }
  },
  "$defs": {
    "AccessProposalRoleAndView": {
      "type": "object",
      "description": "A wrapper for the role and view of an access proposal. For more information, see [Roles and permissions](https://developers.google.com/workspace/drive/api/guides/ref-roles).",
      "properties": {
        "role": {
          "type": "string",
          "description": "The role that was proposed by the requester. The supported values are: * `writer` * `commenter` * `reader`"
        },
        "view": {
          "type": "string",
          "description": "Indicates the view for this access proposal. Only populated for proposals that belong to a view. Only `published` is supported."
        }
      }
    }
  }
}