restic/vendor/google.golang.org/api/vault/v1/vault-api.json

964 lines
32 KiB
JSON

{
"name": "vault",
"batchPath": "batch",
"revision": "20170720",
"id": "vault:v1",
"documentationLink": "https://apps.google.com/products/vault/",
"title": "Google Vault API",
"ownerName": "Google",
"discoveryVersion": "v1",
"version_module": "True",
"resources": {
"matters": {
"methods": {
"create": {
"request": {
"$ref": "Matter"
},
"description": "Creates a new matter. Returns created matter with default view.",
"response": {
"$ref": "Matter"
},
"parameterOrder": [],
"httpMethod": "POST",
"parameters": {},
"flatPath": "v1/matters",
"id": "vault.matters.create",
"path": "v1/matters"
},
"reopen": {
"request": {
"$ref": "ReopenMatterRequest"
},
"description": "Reopens the specified matter. Returns matter with updated state.",
"httpMethod": "POST",
"parameterOrder": [
"matterId"
],
"response": {
"$ref": "ReopenMatterResponse"
},
"parameters": {
"matterId": {
"description": "The matter ID.",
"type": "string",
"required": true,
"location": "path"
}
},
"flatPath": "v1/matters/{matterId}:reopen",
"path": "v1/matters/{matterId}:reopen",
"id": "vault.matters.reopen"
},
"removePermissions": {
"flatPath": "v1/matters/{matterId}:removePermissions",
"id": "vault.matters.removePermissions",
"path": "v1/matters/{matterId}:removePermissions",
"request": {
"$ref": "RemoveMatterPermissionsRequest"
},
"description": "Removes an account as a matter collaborator.",
"response": {
"$ref": "Empty"
},
"parameterOrder": [
"matterId"
],
"httpMethod": "POST",
"parameters": {
"matterId": {
"location": "path",
"description": "The matter ID.",
"type": "string",
"required": true
}
}
},
"undelete": {
"httpMethod": "POST",
"parameterOrder": [
"matterId"
],
"response": {
"$ref": "Matter"
},
"parameters": {
"matterId": {
"location": "path",
"description": "The matter ID.",
"type": "string",
"required": true
}
},
"flatPath": "v1/matters/{matterId}:undelete",
"path": "v1/matters/{matterId}:undelete",
"id": "vault.matters.undelete",
"description": "Undeletes the specified matter. Returns matter with updated state.",
"request": {
"$ref": "UndeleteMatterRequest"
}
},
"get": {
"description": "Gets the specified matter.",
"httpMethod": "GET",
"response": {
"$ref": "Matter"
},
"parameterOrder": [
"matterId"
],
"parameters": {
"view": {
"location": "query",
"enum": [
"VIEW_UNSPECIFIED",
"BASIC",
"FULL"
],
"description": "Specifies which parts of the Matter to return in the response.",
"type": "string"
},
"matterId": {
"type": "string",
"required": true,
"location": "path",
"description": "The matter ID."
}
},
"flatPath": "v1/matters/{matterId}",
"path": "v1/matters/{matterId}",
"id": "vault.matters.get"
},
"close": {
"flatPath": "v1/matters/{matterId}:close",
"id": "vault.matters.close",
"path": "v1/matters/{matterId}:close",
"request": {
"$ref": "CloseMatterRequest"
},
"description": "Closes the specified matter. Returns matter with updated state.",
"response": {
"$ref": "CloseMatterResponse"
},
"parameterOrder": [
"matterId"
],
"httpMethod": "POST",
"parameters": {
"matterId": {
"location": "path",
"description": "The matter ID.",
"type": "string",
"required": true
}
}
},
"update": {
"response": {
"$ref": "Matter"
},
"parameterOrder": [
"matterId"
],
"httpMethod": "PUT",
"parameters": {
"matterId": {
"description": "The matter ID.",
"type": "string",
"required": true,
"location": "path"
}
},
"flatPath": "v1/matters/{matterId}",
"id": "vault.matters.update",
"path": "v1/matters/{matterId}",
"description": "Updates the specified matter.\nThis updates only the name and description of the matter, identified by\nmatter id. Changes to any other fields are ignored.\nReturns the default view of the matter.",
"request": {
"$ref": "Matter"
}
},
"delete": {
"parameters": {
"matterId": {
"description": "The matter ID",
"type": "string",
"required": true,
"location": "path"
}
},
"flatPath": "v1/matters/{matterId}",
"id": "vault.matters.delete",
"path": "v1/matters/{matterId}",
"description": "Deletes the specified matter. Returns matter with updated state.",
"response": {
"$ref": "Matter"
},
"parameterOrder": [
"matterId"
],
"httpMethod": "DELETE"
},
"list": {
"httpMethod": "GET",
"parameterOrder": [],
"response": {
"$ref": "ListMattersResponse"
},
"parameters": {
"pageToken": {
"location": "query",
"description": "The pagination token as returned in the response.",
"type": "string"
},
"pageSize": {
"location": "query",
"format": "int32",
"description": "The number of matters to return in the response.\nDefault and maximum are 100.",
"type": "integer"
},
"view": {
"description": "Specifies which parts of the matter to return in response.",
"type": "string",
"location": "query",
"enum": [
"VIEW_UNSPECIFIED",
"BASIC",
"FULL"
]
}
},
"flatPath": "v1/matters",
"path": "v1/matters",
"id": "vault.matters.list",
"description": "Lists matters the user has access to."
},
"addPermissions": {
"request": {
"$ref": "AddMatterPermissionsRequest"
},
"description": "Adds an account as a matter collaborator.",
"httpMethod": "POST",
"parameterOrder": [
"matterId"
],
"response": {
"$ref": "MatterPermission"
},
"parameters": {
"matterId": {
"description": "The matter ID.",
"type": "string",
"required": true,
"location": "path"
}
},
"flatPath": "v1/matters/{matterId}:addPermissions",
"path": "v1/matters/{matterId}:addPermissions",
"id": "vault.matters.addPermissions"
}
},
"resources": {
"holds": {
"methods": {
"delete": {
"description": "Removes a hold by ID. This will release any HeldAccounts on this Hold.",
"response": {
"$ref": "Empty"
},
"parameterOrder": [
"matterId",
"holdId"
],
"httpMethod": "DELETE",
"parameters": {
"matterId": {
"type": "string",
"required": true,
"location": "path",
"description": "The matter ID."
},
"holdId": {
"type": "string",
"required": true,
"location": "path",
"description": "The hold ID."
}
},
"flatPath": "v1/matters/{matterId}/holds/{holdId}",
"id": "vault.matters.holds.delete",
"path": "v1/matters/{matterId}/holds/{holdId}"
},
"list": {
"id": "vault.matters.holds.list",
"path": "v1/matters/{matterId}/holds",
"description": "Lists holds within a matter. An empty page token in ListHoldsResponse\ndenotes no more holds to list.",
"response": {
"$ref": "ListHoldsResponse"
},
"parameterOrder": [
"matterId"
],
"httpMethod": "GET",
"parameters": {
"matterId": {
"description": "The matter ID.",
"type": "string",
"required": true,
"location": "path"
},
"pageToken": {
"description": "The pagination token as returned in the response.\nAn empty token means start from the beginning.",
"type": "string",
"location": "query"
},
"pageSize": {
"type": "integer",
"location": "query",
"format": "int32",
"description": "The number of holds to return in the response, between 0 and 100 inclusive.\nLeaving this empty, or as 0, is the same as page_size = 100."
}
},
"flatPath": "v1/matters/{matterId}/holds"
},
"get": {
"httpMethod": "GET",
"parameterOrder": [
"matterId",
"holdId"
],
"response": {
"$ref": "Hold"
},
"parameters": {
"matterId": {
"location": "path",
"description": "The matter ID.",
"type": "string",
"required": true
},
"holdId": {
"location": "path",
"description": "The hold ID.",
"type": "string",
"required": true
}
},
"flatPath": "v1/matters/{matterId}/holds/{holdId}",
"path": "v1/matters/{matterId}/holds/{holdId}",
"id": "vault.matters.holds.get",
"description": "Gets a hold by ID."
},
"update": {
"request": {
"$ref": "Hold"
},
"description": "Updates the OU and/or query parameters of a hold. You cannot add accounts\nto a hold that covers an OU, nor can you add OUs to a hold that covers\nindividual accounts. Accounts listed in the hold will be ignored.",
"response": {
"$ref": "Hold"
},
"parameterOrder": [
"matterId",
"holdId"
],
"httpMethod": "PUT",
"parameters": {
"holdId": {
"location": "path",
"description": "The ID of the hold.",
"type": "string",
"required": true
},
"matterId": {
"location": "path",
"description": "The matter ID.",
"type": "string",
"required": true
}
},
"flatPath": "v1/matters/{matterId}/holds/{holdId}",
"id": "vault.matters.holds.update",
"path": "v1/matters/{matterId}/holds/{holdId}"
},
"create": {
"request": {
"$ref": "Hold"
},
"description": "Creates a hold in the given matter.",
"response": {
"$ref": "Hold"
},
"parameterOrder": [
"matterId"
],
"httpMethod": "POST",
"parameters": {
"matterId": {
"description": "The matter ID.",
"type": "string",
"required": true,
"location": "path"
}
},
"flatPath": "v1/matters/{matterId}/holds",
"id": "vault.matters.holds.create",
"path": "v1/matters/{matterId}/holds"
}
},
"resources": {
"accounts": {
"methods": {
"delete": {
"response": {
"$ref": "Empty"
},
"parameterOrder": [
"matterId",
"holdId",
"accountId"
],
"httpMethod": "DELETE",
"parameters": {
"accountId": {
"location": "path",
"description": "The ID of the account to remove from the hold.",
"type": "string",
"required": true
},
"matterId": {
"location": "path",
"description": "The matter ID.",
"type": "string",
"required": true
},
"holdId": {
"description": "The hold ID.",
"type": "string",
"required": true,
"location": "path"
}
},
"flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}",
"id": "vault.matters.holds.accounts.delete",
"path": "v1/matters/{matterId}/holds/{holdId}/accounts/{accountId}",
"description": "Removes a HeldAccount from a hold. If this request leaves the hold with\nno held accounts, the hold will not apply to any accounts."
},
"list": {
"flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts",
"id": "vault.matters.holds.accounts.list",
"path": "v1/matters/{matterId}/holds/{holdId}/accounts",
"description": "Lists HeldAccounts for a hold. This will only list individually specified\nheld accounts. If the hold is on an OU, then use the \u003cahref=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e\nto enumerate its members.",
"response": {
"$ref": "ListHeldAccountsResponse"
},
"parameterOrder": [
"matterId",
"holdId"
],
"httpMethod": "GET",
"parameters": {
"holdId": {
"location": "path",
"description": "The hold ID.",
"type": "string",
"required": true
},
"matterId": {
"description": "The matter ID.",
"type": "string",
"required": true,
"location": "path"
}
}
},
"create": {
"httpMethod": "POST",
"parameterOrder": [
"matterId",
"holdId"
],
"response": {
"$ref": "HeldAccount"
},
"parameters": {
"matterId": {
"location": "path",
"description": "The matter ID.",
"type": "string",
"required": true
},
"holdId": {
"type": "string",
"required": true,
"location": "path",
"description": "The hold ID."
}
},
"flatPath": "v1/matters/{matterId}/holds/{holdId}/accounts",
"path": "v1/matters/{matterId}/holds/{holdId}/accounts",
"id": "vault.matters.holds.accounts.create",
"description": "Adds a HeldAccount to a hold. Accounts can only be added to a hold that\nhas no held_org_unit set. Attempting to add an account to an OU-based\nhold will result in an error.",
"request": {
"$ref": "HeldAccount"
}
}
}
}
}
}
}
}
},
"parameters": {
"access_token": {
"type": "string",
"location": "query",
"description": "OAuth access token."
},
"key": {
"type": "string",
"location": "query",
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token."
},
"quotaUser": {
"type": "string",
"location": "query",
"description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters."
},
"pp": {
"location": "query",
"description": "Pretty-print response.",
"default": "true",
"type": "boolean"
},
"bearer_token": {
"description": "OAuth bearer token.",
"type": "string",
"location": "query"
},
"oauth_token": {
"description": "OAuth 2.0 token for the current user.",
"type": "string",
"location": "query"
},
"upload_protocol": {
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string",
"location": "query"
},
"prettyPrint": {
"location": "query",
"description": "Returns response with indentations and line breaks.",
"default": "true",
"type": "boolean"
},
"uploadType": {
"location": "query",
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string"
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
"type": "string",
"location": "query"
},
"$.xgafv": {
"type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
],
"location": "query",
"enum": [
"1",
"2"
],
"description": "V1 error format."
},
"callback": {
"location": "query",
"description": "JSONP",
"type": "string"
},
"alt": {
"default": "json",
"enum": [
"json",
"media",
"proto"
],
"type": "string",
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
"location": "query",
"description": "Data format for response."
}
},
"schemas": {
"HeldMailQuery": {
"description": "Query options for mail holds.",
"type": "object",
"properties": {
"endTime": {
"format": "google-datetime",
"description": "The end date range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.",
"type": "string"
},
"startTime": {
"format": "google-datetime",
"description": "The start date range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.",
"type": "string"
},
"terms": {
"description": "The search terms for the hold.",
"type": "string"
}
},
"id": "HeldMailQuery"
},
"CloseMatterResponse": {
"description": "Response to a CloseMatterRequest.",
"type": "object",
"properties": {
"matter": {
"$ref": "Matter",
"description": "The updated matter, with state CLOSED."
}
},
"id": "CloseMatterResponse"
},
"HeldDriveQuery": {
"id": "HeldDriveQuery",
"description": "Query options for drive holds.",
"type": "object",
"properties": {
"includeTeamDriveFiles": {
"description": "If true, include files in Team Drives in the hold.",
"type": "boolean"
}
}
},
"HeldGroupsQuery": {
"description": "Query options for group holds.",
"type": "object",
"properties": {
"endTime": {
"format": "google-datetime",
"description": "The end date range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.",
"type": "string"
},
"startTime": {
"format": "google-datetime",
"description": "The start date range for the search query. These timestamps are in GMT and\nrounded down to the start of the given date.",
"type": "string"
},
"terms": {
"description": "The search terms for the hold.",
"type": "string"
}
},
"id": "HeldGroupsQuery"
},
"HeldOrgUnit": {
"description": "A organizational unit being held in a particular hold.\nThis structure is immutable.",
"type": "object",
"properties": {
"holdTime": {
"format": "google-datetime",
"description": "When the org unit was put on hold. This property is immutable.",
"type": "string"
},
"orgUnitId": {
"type": "string",
"description": "The org unit's immutable ID as provided by the admin SDK."
}
},
"id": "HeldOrgUnit"
},
"AddMatterPermissionsRequest": {
"description": "Add an account with the permission specified. The role cannot be owner.\nIf an account already has a role in the matter, it will be\noverwritten.",
"type": "object",
"properties": {
"sendEmails": {
"description": "True to send notification email to the added account.\nFalse to not send notification email.",
"type": "boolean"
},
"matterPermission": {
"$ref": "MatterPermission",
"description": "The MatterPermission to add."
},
"ccMe": {
"description": "Only relevant if send_emails is true.\nTrue to CC requestor in the email message.\nFalse to not CC requestor.",
"type": "boolean"
}
},
"id": "AddMatterPermissionsRequest"
},
"Matter": {
"description": "Represents a matter.",
"type": "object",
"properties": {
"state": {
"enumDescriptions": [
"The matter has no specified state.",
"This matter is open.",
"This matter is closed.",
"This matter is deleted."
],
"enum": [
"STATE_UNSPECIFIED",
"OPEN",
"CLOSED",
"DELETED"
],
"description": "The state of the matter.",
"type": "string"
},
"matterPermissions": {
"description": "List of users and access to the matter. Currently there is no programmer\ndefined limit on the number of permissions a matter can have.",
"items": {
"$ref": "MatterPermission"
},
"type": "array"
},
"name": {
"description": "The name of the matter.",
"type": "string"
},
"description": {
"description": "The description of the matter.",
"type": "string"
},
"matterId": {
"description": "The matter ID which is generated by the server.\nShould be blank when creating a new matter.",
"type": "string"
}
},
"id": "Matter"
},
"HeldAccount": {
"type": "object",
"properties": {
"holdTime": {
"format": "google-datetime",
"description": "When the account was put on hold.",
"type": "string"
},
"accountId": {
"description": "The account's ID as provided by the \u003ca\nhref=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.",
"type": "string"
}
},
"id": "HeldAccount",
"description": "An account being held in a particular hold. This structure is immutable.\nThis can be either a single user or a google group, depending on the corpus."
},
"ReopenMatterResponse": {
"description": "Response to a ReopenMatterRequest.",
"type": "object",
"properties": {
"matter": {
"$ref": "Matter",
"description": "The updated matter, with state OPEN."
}
},
"id": "ReopenMatterResponse"
},
"CorpusQuery": {
"description": "Corpus specific queries.",
"type": "object",
"properties": {
"groupsQuery": {
"$ref": "HeldGroupsQuery",
"description": "Details pertaining to Groups holds. If set, corpus must be Groups."
},
"mailQuery": {
"description": "Details pertaining to mail holds. If set, corpus must be mail.",
"$ref": "HeldMailQuery"
},
"driveQuery": {
"description": "Details pertaining to Drive holds. If set, corpus must be Drive.",
"$ref": "HeldDriveQuery"
}
},
"id": "CorpusQuery"
},
"Hold": {
"type": "object",
"properties": {
"accounts": {
"description": "If set, the hold applies to the enumerated accounts and org_unit must be\nempty.",
"items": {
"$ref": "HeldAccount"
},
"type": "array"
},
"orgUnit": {
"$ref": "HeldOrgUnit",
"description": "If set, the hold applies to all members of the organizational unit and\naccounts must be empty. This property is mutable. For groups holds,\nset the accounts field."
},
"query": {
"description": "The corpus-specific query. If set, the corpusQuery must match corpus\ntype.",
"$ref": "CorpusQuery"
},
"corpus": {
"type": "string",
"enumDescriptions": [
"No corpus specified.",
"Drive.",
"Mail.",
"Groups."
],
"enum": [
"CORPUS_TYPE_UNSPECIFIED",
"DRIVE",
"MAIL",
"GROUPS"
],
"description": "The corpus to be searched."
},
"updateTime": {
"format": "google-datetime",
"description": "The last time this hold was modified.",
"type": "string"
},
"name": {
"description": "The name of the hold.",
"type": "string"
},
"holdId": {
"description": "The unique immutable ID of the hold. Assigned during creation.",
"type": "string"
}
},
"id": "Hold",
"description": "Represents a hold within Vault. A hold restricts purging of\nartifacts based on the combination of the query and accounts restrictions.\nA hold can be configured to either apply to an explicitly configured set\nof accounts, or can be applied to all members of an organizational unit."
},
"ListHoldsResponse": {
"description": "The holds for a matter.",
"type": "object",
"properties": {
"nextPageToken": {
"description": "Page token to retrieve the next page of results in the list.\nIf this is empty, then there are no more holds to list.",
"type": "string"
},
"holds": {
"items": {
"$ref": "Hold"
},
"type": "array",
"description": "The list of holds."
}
},
"id": "ListHoldsResponse"
},
"ListHeldAccountsResponse": {
"type": "object",
"properties": {
"accounts": {
"items": {
"$ref": "HeldAccount"
},
"type": "array",
"description": "The held accounts on a hold."
}
},
"id": "ListHeldAccountsResponse",
"description": "Returns a list of held accounts for a hold."
},
"UndeleteMatterRequest": {
"id": "UndeleteMatterRequest",
"description": "Undelete a matter by ID.",
"type": "object",
"properties": {}
},
"Empty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
"type": "object",
"properties": {},
"id": "Empty"
},
"CloseMatterRequest": {
"description": "Close a matter by ID.",
"type": "object",
"properties": {},
"id": "CloseMatterRequest"
},
"ReopenMatterRequest": {
"type": "object",
"properties": {},
"id": "ReopenMatterRequest",
"description": "Reopen a matter by ID."
},
"RemoveMatterPermissionsRequest": {
"properties": {
"accountId": {
"description": "The account ID.",
"type": "string"
}
},
"id": "RemoveMatterPermissionsRequest",
"description": "Remove an account as a matter collaborator.",
"type": "object"
},
"MatterPermission": {
"description": "Currently each matter only has one owner, and all others are collaborators.\nWhen an account is purged, its corresponding MatterPermission resources\ncease to exist.",
"type": "object",
"properties": {
"role": {
"enumDescriptions": [
"No role assigned.",
"A collaborator to the matter.",
"The owner of the matter."
],
"enum": [
"ROLE_UNSPECIFIED",
"COLLABORATOR",
"OWNER"
],
"description": "The user's role in this matter.",
"type": "string"
},
"accountId": {
"description": "The account id, as provided by \u003ca href=\"https://developers.google.com/admin-sdk/\"\u003eAdmin SDK\u003c/a\u003e.",
"type": "string"
}
},
"id": "MatterPermission"
},
"ListMattersResponse": {
"properties": {
"nextPageToken": {
"description": "Page token to retrieve the next page of results in the list.",
"type": "string"
},
"matters": {
"description": "List of matters.",
"items": {
"$ref": "Matter"
},
"type": "array"
}
},
"id": "ListMattersResponse",
"description": "Provides the list of matters.",
"type": "object"
}
},
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
"protocol": "rest",
"version": "v1",
"baseUrl": "https://vault.googleapis.com/",
"canonicalName": "Vault",
"servicePath": "",
"description": "",
"kind": "discovery#restDescription",
"rootUrl": "https://vault.googleapis.com/",
"basePath": "",
"ownerDomain": "google.com"
}