| { |
| "auth": { |
| "oauth2": { |
| "scopes": { |
| "https://www.googleapis.com/auth/keep": { |
| "description": "See, edit, create and permanently delete all your Google Keep data" |
| }, |
| "https://www.googleapis.com/auth/keep.readonly": { |
| "description": "View all your Google Keep data" |
| } |
| } |
| } |
| }, |
| "basePath": "", |
| "baseUrl": "https://keep.googleapis.com/", |
| "batchPath": "batch", |
| "canonicalName": "Keep", |
| "description": "This API is an enterprise-only API used to create and manage the Keep notes within your domain, including resolving issues identified by CASB software.", |
| "discoveryVersion": "v1", |
| "documentationLink": "https://developers.google.com/keep/api", |
| "fullyEncodeReservedExpansion": true, |
| "icons": { |
| "x16": "http://www.google.com/images/icons/product/search-16.gif", |
| "x32": "http://www.google.com/images/icons/product/search-32.gif" |
| }, |
| "id": "keep:v1", |
| "kind": "discovery#restDescription", |
| "mtlsRootUrl": "https://keep.mtls.googleapis.com/", |
| "name": "keep", |
| "ownerDomain": "google.com", |
| "ownerName": "Google", |
| "parameters": { |
| "$.xgafv": { |
| "description": "V1 error format.", |
| "enum": [ |
| "1", |
| "2" |
| ], |
| "enumDescriptions": [ |
| "v1 error format", |
| "v2 error format" |
| ], |
| "location": "query", |
| "type": "string" |
| }, |
| "access_token": { |
| "description": "OAuth access token.", |
| "location": "query", |
| "type": "string" |
| }, |
| "alt": { |
| "default": "json", |
| "description": "Data format for response.", |
| "enum": [ |
| "json", |
| "media", |
| "proto" |
| ], |
| "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", |
| "type": "string" |
| }, |
| "callback": { |
| "description": "JSONP", |
| "location": "query", |
| "type": "string" |
| }, |
| "fields": { |
| "description": "Selector specifying which fields to include in a partial response.", |
| "location": "query", |
| "type": "string" |
| }, |
| "key": { |
| "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.", |
| "location": "query", |
| "type": "string" |
| }, |
| "oauth_token": { |
| "description": "OAuth 2.0 token for the current user.", |
| "location": "query", |
| "type": "string" |
| }, |
| "prettyPrint": { |
| "default": "true", |
| "description": "Returns response with indentations and line breaks.", |
| "location": "query", |
| "type": "boolean" |
| }, |
| "quotaUser": { |
| "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.", |
| "location": "query", |
| "type": "string" |
| }, |
| "uploadType": { |
| "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", |
| "location": "query", |
| "type": "string" |
| }, |
| "upload_protocol": { |
| "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", |
| "location": "query", |
| "type": "string" |
| } |
| }, |
| "protocol": "rest", |
| "resources": { |
| "media": { |
| "methods": { |
| "download": { |
| "description": "Gets an attachment. To download attachment media via REST requires the alt=media query parameter. Returns a 400 bad request error if attachment media is not available in the requested MIME type.", |
| "flatPath": "v1/notes/{notesId}/attachments/{attachmentsId}", |
| "httpMethod": "GET", |
| "id": "keep.media.download", |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "mimeType": { |
| "description": "The IANA MIME type format requested. The requested MIME type must be one specified in the attachment.mime_type. Required when downloading attachment media and ignored otherwise.", |
| "location": "query", |
| "type": "string" |
| }, |
| "name": { |
| "description": "Required. The name of the attachment.", |
| "location": "path", |
| "pattern": "^notes/[^/]+/attachments/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v1/{+name}", |
| "response": { |
| "$ref": "Attachment" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/keep", |
| "https://www.googleapis.com/auth/keep.readonly" |
| ], |
| "supportsMediaDownload": true, |
| "useMediaDownloadService": true |
| } |
| } |
| }, |
| "notes": { |
| "methods": { |
| "create": { |
| "description": "Creates a new note.", |
| "flatPath": "v1/notes", |
| "httpMethod": "POST", |
| "id": "keep.notes.create", |
| "parameterOrder": [], |
| "parameters": {}, |
| "path": "v1/notes", |
| "request": { |
| "$ref": "Note" |
| }, |
| "response": { |
| "$ref": "Note" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/keep" |
| ] |
| }, |
| "delete": { |
| "description": "Deletes a note. Caller must have the `OWNER` role on the note to delete. Deleting a note removes the resource immediately and cannot be undone. Any collaborators will lose access to the note.", |
| "flatPath": "v1/notes/{notesId}", |
| "httpMethod": "DELETE", |
| "id": "keep.notes.delete", |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "name": { |
| "description": "Required. Name of the note to delete.", |
| "location": "path", |
| "pattern": "^notes/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v1/{+name}", |
| "response": { |
| "$ref": "Empty" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/keep" |
| ] |
| }, |
| "get": { |
| "description": "Gets a note.", |
| "flatPath": "v1/notes/{notesId}", |
| "httpMethod": "GET", |
| "id": "keep.notes.get", |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "name": { |
| "description": "Required. Name of the resource.", |
| "location": "path", |
| "pattern": "^notes/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v1/{+name}", |
| "response": { |
| "$ref": "Note" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/keep", |
| "https://www.googleapis.com/auth/keep.readonly" |
| ] |
| }, |
| "list": { |
| "description": "Lists notes. Every list call returns a page of results with `page_size` as the upper bound of returned items. A `page_size` of zero allows the server to choose the upper bound. The ListNotesResponse contains at most `page_size` entries. If there are more things left to list, it provides a `next_page_token` value. (Page tokens are opaque values.) To get the next page of results, copy the result's `next_page_token` into the next request's `page_token`. Repeat until the `next_page_token` returned with a page of results is empty. ListNotes return consistent results in the face of concurrent changes, or signals that it cannot with an ABORTED error.", |
| "flatPath": "v1/notes", |
| "httpMethod": "GET", |
| "id": "keep.notes.list", |
| "parameterOrder": [], |
| "parameters": { |
| "filter": { |
| "description": "Filter for list results. If no filter is supplied, the `trashed` filter is applied by default. Valid fields to filter by are: `create_time`, `update_time`, `trash_time`, and `trashed`. Filter syntax follows the [Google AIP filtering spec](https://aip.dev/160).", |
| "location": "query", |
| "type": "string" |
| }, |
| "pageSize": { |
| "description": "The maximum number of results to return.", |
| "format": "int32", |
| "location": "query", |
| "type": "integer" |
| }, |
| "pageToken": { |
| "description": "The previous page's `next_page_token` field.", |
| "location": "query", |
| "type": "string" |
| } |
| }, |
| "path": "v1/notes", |
| "response": { |
| "$ref": "ListNotesResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/keep", |
| "https://www.googleapis.com/auth/keep.readonly" |
| ] |
| } |
| }, |
| "resources": { |
| "permissions": { |
| "methods": { |
| "batchCreate": { |
| "description": "Creates one or more permissions on the note. Only permissions with the `WRITER` role may be created. If adding any permission fails, then the entire request fails and no changes are made.", |
| "flatPath": "v1/notes/{notesId}/permissions:batchCreate", |
| "httpMethod": "POST", |
| "id": "keep.notes.permissions.batchCreate", |
| "parameterOrder": [ |
| "parent" |
| ], |
| "parameters": { |
| "parent": { |
| "description": "The parent resource shared by all Permissions being created. Format: `notes/{note}` If this is set, the parent field in the CreatePermission messages must either be empty or match this field.", |
| "location": "path", |
| "pattern": "^notes/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v1/{+parent}/permissions:batchCreate", |
| "request": { |
| "$ref": "BatchCreatePermissionsRequest" |
| }, |
| "response": { |
| "$ref": "BatchCreatePermissionsResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/keep" |
| ] |
| }, |
| "batchDelete": { |
| "description": "Deletes one or more permissions on the note. The specified entities will immediately lose access. A permission with the `OWNER` role can't be removed. If removing a permission fails, then the entire request fails and no changes are made. Returns a 400 bad request error if a specified permission does not exist on the note.", |
| "flatPath": "v1/notes/{notesId}/permissions:batchDelete", |
| "httpMethod": "POST", |
| "id": "keep.notes.permissions.batchDelete", |
| "parameterOrder": [ |
| "parent" |
| ], |
| "parameters": { |
| "parent": { |
| "description": "The parent resource shared by all permissions being deleted. Format: `notes/{note}` If this is set, the parent of all of the permissions specified in the DeletePermissionRequest messages must match this field.", |
| "location": "path", |
| "pattern": "^notes/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v1/{+parent}/permissions:batchDelete", |
| "request": { |
| "$ref": "BatchDeletePermissionsRequest" |
| }, |
| "response": { |
| "$ref": "Empty" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/keep" |
| ] |
| } |
| } |
| } |
| } |
| } |
| }, |
| "revision": "20211018", |
| "rootUrl": "https://keep.googleapis.com/", |
| "schemas": { |
| "Attachment": { |
| "description": "An attachment to a note.", |
| "id": "Attachment", |
| "properties": { |
| "mimeType": { |
| "description": "The MIME types (IANA media types) in which the attachment is available.", |
| "items": { |
| "type": "string" |
| }, |
| "type": "array" |
| }, |
| "name": { |
| "description": "The resource name;", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "BatchCreatePermissionsRequest": { |
| "description": "The request to add one or more permissions on the note. Currently, only the `WRITER` role may be specified. If adding a permission fails, then the entire request fails and no changes are made.", |
| "id": "BatchCreatePermissionsRequest", |
| "properties": { |
| "requests": { |
| "description": "The request message specifying the resources to create.", |
| "items": { |
| "$ref": "CreatePermissionRequest" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "BatchCreatePermissionsResponse": { |
| "description": "The response for creating permissions on a note.", |
| "id": "BatchCreatePermissionsResponse", |
| "properties": { |
| "permissions": { |
| "description": "Permissions created.", |
| "items": { |
| "$ref": "Permission" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "BatchDeletePermissionsRequest": { |
| "description": "The request to remove one or more permissions from a note. A permission with the `OWNER` role can't be removed. If removing a permission fails, then the entire request fails and no changes are made. Returns a 400 bad request error if a specified permission does not exist on the note.", |
| "id": "BatchDeletePermissionsRequest", |
| "properties": { |
| "names": { |
| "description": "Required. The names of the permissions to delete. Format: `notes/{note}/permissions/{permission}`", |
| "items": { |
| "type": "string" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "CreatePermissionRequest": { |
| "description": "The request to add a single permission on the note.", |
| "id": "CreatePermissionRequest", |
| "properties": { |
| "parent": { |
| "description": "Required. The parent note where this permission will be created. Format: `notes/{note}`", |
| "type": "string" |
| }, |
| "permission": { |
| "$ref": "Permission", |
| "description": "Required. The permission to create. One of Permission.email, User.email or Group.email must be supplied." |
| } |
| }, |
| "type": "object" |
| }, |
| "Empty": { |
| "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.", |
| "id": "Empty", |
| "properties": {}, |
| "type": "object" |
| }, |
| "Family": { |
| "description": "Describes a single Google Family.", |
| "id": "Family", |
| "properties": {}, |
| "type": "object" |
| }, |
| "Group": { |
| "description": "Describes a single Group.", |
| "id": "Group", |
| "properties": { |
| "email": { |
| "description": "The group email.", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "ListContent": { |
| "description": "The list of items for a single list note.", |
| "id": "ListContent", |
| "properties": { |
| "listItems": { |
| "description": "The items in the list. The number of items must be less than 1,000.", |
| "items": { |
| "$ref": "ListItem" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "ListItem": { |
| "description": "A single list item in a note's list.", |
| "id": "ListItem", |
| "properties": { |
| "checked": { |
| "description": "Whether this item has been checked off or not.", |
| "type": "boolean" |
| }, |
| "childListItems": { |
| "description": "If set, list of list items nested under this list item. Only one level of nesting is allowed.", |
| "items": { |
| "$ref": "ListItem" |
| }, |
| "type": "array" |
| }, |
| "text": { |
| "$ref": "TextContent", |
| "description": "The text of this item. Length must be less than 1,000 characters." |
| } |
| }, |
| "type": "object" |
| }, |
| "ListNotesResponse": { |
| "description": "The response when listing a page of notes.", |
| "id": "ListNotesResponse", |
| "properties": { |
| "nextPageToken": { |
| "description": "Next page's `page_token` field.", |
| "type": "string" |
| }, |
| "notes": { |
| "description": "A page of notes.", |
| "items": { |
| "$ref": "Note" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "Note": { |
| "description": "A single note.", |
| "id": "Note", |
| "properties": { |
| "attachments": { |
| "description": "Output only. The attachments attached to this note.", |
| "items": { |
| "$ref": "Attachment" |
| }, |
| "readOnly": true, |
| "type": "array" |
| }, |
| "body": { |
| "$ref": "Section", |
| "description": "The body of the note." |
| }, |
| "createTime": { |
| "description": "Output only. When this note was created.", |
| "format": "google-datetime", |
| "readOnly": true, |
| "type": "string" |
| }, |
| "name": { |
| "description": "Output only. The resource name of this note. See general note on identifiers in KeepService.", |
| "readOnly": true, |
| "type": "string" |
| }, |
| "permissions": { |
| "description": "Output only. The list of permissions set on the note. Contains at least one entry for the note owner.", |
| "items": { |
| "$ref": "Permission" |
| }, |
| "readOnly": true, |
| "type": "array" |
| }, |
| "title": { |
| "description": "The title of the note. Length must be less than 1,000 characters.", |
| "type": "string" |
| }, |
| "trashTime": { |
| "description": "Output only. When this note was trashed. If `trashed`, the note is eventually deleted. If the note is not trashed, this field is not set (and the trashed field is `false`).", |
| "format": "google-datetime", |
| "readOnly": true, |
| "type": "string" |
| }, |
| "trashed": { |
| "description": "Output only. `true` if this note has been trashed. If trashed, the note is eventually deleted.", |
| "readOnly": true, |
| "type": "boolean" |
| }, |
| "updateTime": { |
| "description": "Output only. When this note was last modified.", |
| "format": "google-datetime", |
| "readOnly": true, |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "Permission": { |
| "description": "A single permission on the note. Associates a `member` with a `role`.", |
| "id": "Permission", |
| "properties": { |
| "deleted": { |
| "description": "Output only. Whether this member has been deleted. If the member is recovered, this value is set to false and the recovered member retains the role on the note.", |
| "readOnly": true, |
| "type": "boolean" |
| }, |
| "email": { |
| "description": "The email associated with the member. If set on create, the `email` field in the `User` or `Group` message must either be empty or match this field. On read, may be unset if the member does not have an associated email.", |
| "type": "string" |
| }, |
| "family": { |
| "$ref": "Family", |
| "description": "Output only. The Google Family to which this role applies.", |
| "readOnly": true |
| }, |
| "group": { |
| "$ref": "Group", |
| "description": "Output only. The group to which this role applies.", |
| "readOnly": true |
| }, |
| "name": { |
| "description": "Output only. The resource name.", |
| "readOnly": true, |
| "type": "string" |
| }, |
| "role": { |
| "description": "The role granted by this permission. The role determines the entity\u2019s ability to read, write, and share notes.", |
| "enum": [ |
| "ROLE_UNSPECIFIED", |
| "OWNER", |
| "WRITER" |
| ], |
| "enumDescriptions": [ |
| "An undefined role.", |
| "A role granting full access. This role cannot be added or removed. Defined by the creator of the note.", |
| "A role granting the ability to contribute content and modify note permissions." |
| ], |
| "type": "string" |
| }, |
| "user": { |
| "$ref": "User", |
| "description": "Output only. The user to whom this role applies.", |
| "readOnly": true |
| } |
| }, |
| "type": "object" |
| }, |
| "Section": { |
| "description": "The content of the note.", |
| "id": "Section", |
| "properties": { |
| "list": { |
| "$ref": "ListContent", |
| "description": "Used if this section's content is a list." |
| }, |
| "text": { |
| "$ref": "TextContent", |
| "description": "Used if this section's content is a block of text. The length of the text content must be less than 20,000 characters." |
| } |
| }, |
| "type": "object" |
| }, |
| "TextContent": { |
| "description": "The block of text for a single text section or list item.", |
| "id": "TextContent", |
| "properties": { |
| "text": { |
| "description": "The text of the note. The limits on this vary with the specific field using this type.", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "User": { |
| "description": "Describes a single user.", |
| "id": "User", |
| "properties": { |
| "email": { |
| "description": "The user's email.", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| } |
| }, |
| "servicePath": "", |
| "title": "Google Keep API", |
| "version": "v1", |
| "version_module": true |
| } |