| { |
| "auth": { |
| "oauth2": { |
| "scopes": { |
| "https://www.googleapis.com/auth/chromewebstore": { |
| "description": "See, edit, update, or publish your Chrome Web Store extensions, themes, apps, and licences you have access to" |
| }, |
| "https://www.googleapis.com/auth/chromewebstore.readonly": { |
| "description": "See and download your Chrome Web Store extensions and apps, and see licenses you have access to" |
| } |
| } |
| } |
| }, |
| "basePath": "", |
| "baseUrl": "https://chromewebstore.googleapis.com/", |
| "batchPath": "batch", |
| "canonicalName": "Chromewebstore", |
| "description": "The Chrome Web Store API provides access to data about apps and extensions, as well as developer tools for managing them.", |
| "discoveryVersion": "v1", |
| "documentationLink": "https://developer.chrome.com/docs/webstore/api", |
| "icons": { |
| "x16": "http://www.google.com/images/icons/product/search-16.gif", |
| "x32": "http://www.google.com/images/icons/product/search-32.gif" |
| }, |
| "id": "chromewebstore:v2", |
| "kind": "discovery#restDescription", |
| "name": "chromewebstore", |
| "ownerDomain": "google.com", |
| "ownerName": "Google", |
| "protocol": "rest", |
| "revision": "20251026", |
| "rootUrl": "https://chromewebstore.googleapis.com/", |
| "servicePath": "", |
| "title": "Chrome Web Store API", |
| "version": "v2", |
| "version_module": true, |
| "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" |
| } |
| }, |
| "resources": { |
| "media": { |
| "methods": { |
| "upload": { |
| "description": "Upload a new package to an existing item.", |
| "flatPath": "v2/publishers/{publishersId}/items/{itemsId}:upload", |
| "httpMethod": "POST", |
| "id": "chromewebstore.media.upload", |
| "mediaUpload": { |
| "accept": [ |
| "*/*" |
| ], |
| "maxSize": "2147483648", |
| "protocols": { |
| "simple": { |
| "multipart": true, |
| "path": "/upload/v2/{+name}:upload" |
| } |
| } |
| }, |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "name": { |
| "description": "Required. Name of the item to upload the new package to in the form `publishers/{publisherId}/items/{itemId}`", |
| "location": "path", |
| "pattern": "^publishers/[^/]+/items/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v2/{+name}:upload", |
| "request": { |
| "$ref": "UploadItemPackageRequest" |
| }, |
| "response": { |
| "$ref": "UploadItemPackageResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/chromewebstore" |
| ], |
| "supportsMediaUpload": true |
| } |
| } |
| }, |
| "publishers": { |
| "resources": { |
| "items": { |
| "methods": { |
| "cancelSubmission": { |
| "description": "Cancel the current active submission of an item if present. This can be used to cancel the review of a pending submission.", |
| "flatPath": "v2/publishers/{publishersId}/items/{itemsId}:cancelSubmission", |
| "httpMethod": "POST", |
| "id": "chromewebstore.publishers.items.cancelSubmission", |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "name": { |
| "description": "Required. Name of the item to cancel the submission of in the form `publishers/{publisherId}/items/{itemId}`", |
| "location": "path", |
| "pattern": "^publishers/[^/]+/items/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v2/{+name}:cancelSubmission", |
| "request": { |
| "$ref": "CancelSubmissionRequest" |
| }, |
| "response": { |
| "$ref": "CancelSubmissionResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/chromewebstore" |
| ] |
| }, |
| "fetchStatus": { |
| "description": "Fetch the status of an item.", |
| "flatPath": "v2/publishers/{publishersId}/items/{itemsId}:fetchStatus", |
| "httpMethod": "GET", |
| "id": "chromewebstore.publishers.items.fetchStatus", |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "name": { |
| "description": "Required. Name of the item to retrieve the status of in the form `publishers/{publisherId}/items/{itemId}`", |
| "location": "path", |
| "pattern": "^publishers/[^/]+/items/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v2/{+name}:fetchStatus", |
| "response": { |
| "$ref": "FetchItemStatusResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/chromewebstore", |
| "https://www.googleapis.com/auth/chromewebstore.readonly" |
| ] |
| }, |
| "publish": { |
| "description": "Submit the item to be published in the store. The item will be submitted for review unless `skip_review` is set to true, or the item is staged from a previous submission with `publish_type` set to `STAGED_PUBLISH`.", |
| "flatPath": "v2/publishers/{publishersId}/items/{itemsId}:publish", |
| "httpMethod": "POST", |
| "id": "chromewebstore.publishers.items.publish", |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "name": { |
| "description": "Required. Name of the item in the form `publishers/{publisherId}/items/{itemId}`", |
| "location": "path", |
| "pattern": "^publishers/[^/]+/items/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v2/{+name}:publish", |
| "request": { |
| "$ref": "PublishItemRequest" |
| }, |
| "response": { |
| "$ref": "PublishItemResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/chromewebstore" |
| ] |
| }, |
| "setPublishedDeployPercentage": { |
| "description": "Set a higher target deploy percentage for the item's published revision. This will be updated without the item being submitted for review. This is only available to items with over 10,000 seven-day active users.", |
| "flatPath": "v2/publishers/{publishersId}/items/{itemsId}:setPublishedDeployPercentage", |
| "httpMethod": "POST", |
| "id": "chromewebstore.publishers.items.setPublishedDeployPercentage", |
| "parameterOrder": [ |
| "name" |
| ], |
| "parameters": { |
| "name": { |
| "description": "Required. Name of the item to update the published revision of in the form `publishers/{publisherId}/items/{itemId}`", |
| "location": "path", |
| "pattern": "^publishers/[^/]+/items/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v2/{+name}:setPublishedDeployPercentage", |
| "request": { |
| "$ref": "SetPublishedDeployPercentageRequest" |
| }, |
| "response": { |
| "$ref": "SetPublishedDeployPercentageResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/chromewebstore" |
| ] |
| } |
| } |
| } |
| } |
| } |
| }, |
| "schemas": { |
| "CancelSubmissionRequest": { |
| "description": "Request message for CancelSubmission.", |
| "id": "CancelSubmissionRequest", |
| "properties": {}, |
| "type": "object" |
| }, |
| "CancelSubmissionResponse": { |
| "description": "Response message for `CancelSubmission`.", |
| "id": "CancelSubmissionResponse", |
| "properties": {}, |
| "type": "object" |
| }, |
| "DeployInfo": { |
| "description": "Deployment information for a specific release channel. Used in requests to update deployment parameters.", |
| "id": "DeployInfo", |
| "properties": { |
| "deployPercentage": { |
| "description": "Required. The current deploy percentage for the release channel (nonnegative number between 0 and 100).", |
| "format": "int32", |
| "type": "integer" |
| } |
| }, |
| "type": "object" |
| }, |
| "DistributionChannel": { |
| "description": "Deployment information for a specific release channel", |
| "id": "DistributionChannel", |
| "properties": { |
| "crxVersion": { |
| "description": "The extension version provided in the manifest of the uploaded package.", |
| "type": "string" |
| }, |
| "deployPercentage": { |
| "description": "The current deploy percentage for the release channel (nonnegative number between 0 and 100).", |
| "format": "int32", |
| "type": "integer" |
| } |
| }, |
| "type": "object" |
| }, |
| "FetchItemStatusResponse": { |
| "description": "Response message for `FetchItemStatus`.", |
| "id": "FetchItemStatusResponse", |
| "properties": { |
| "itemId": { |
| "description": "Output only. The ID of the item.", |
| "readOnly": true, |
| "type": "string" |
| }, |
| "lastAsyncUploadState": { |
| "description": "Output only. The state of the last async upload for an item. Only set when there has been an async upload for the item in the past 24 hours.", |
| "enum": [ |
| "UPLOAD_STATE_UNSPECIFIED", |
| "SUCCEEDED", |
| "IN_PROGRESS", |
| "FAILED", |
| "NOT_FOUND" |
| ], |
| "enumDescriptions": [ |
| "The default value.", |
| "The upload succeeded.", |
| "The upload is currently being processed.", |
| "The upload failed.", |
| "Used as the value of `lastAsyncUploadState` in a `fetchStatus` response indicating that an upload attempt was not found." |
| ], |
| "readOnly": true, |
| "type": "string" |
| }, |
| "name": { |
| "description": "The name of the requested item.", |
| "type": "string" |
| }, |
| "publicKey": { |
| "description": "The public key of the item, which may be generated by the store.", |
| "type": "string" |
| }, |
| "publishedItemRevisionStatus": { |
| "$ref": "ItemRevisionStatus", |
| "description": "Output only. Status of the current published revision of the item. Will be unset if the item is not published.", |
| "readOnly": true |
| }, |
| "submittedItemRevisionStatus": { |
| "$ref": "ItemRevisionStatus", |
| "description": "Status of the item revision submitted to be published. Will be unset if the item has not been submitted for publishing since the last successful publish." |
| }, |
| "takenDown": { |
| "description": "If true, the item has been taken down for a policy violation. Check the developer dashboard for details.", |
| "type": "boolean" |
| }, |
| "warned": { |
| "description": "If true, the item has been warned for a policy violation and will be taken down if not resolved. Check the developer dashboard for details.", |
| "type": "boolean" |
| } |
| }, |
| "type": "object" |
| }, |
| "ItemRevisionStatus": { |
| "description": "Details on the status of an item revision.", |
| "id": "ItemRevisionStatus", |
| "properties": { |
| "distributionChannels": { |
| "description": "Details on the package of the item", |
| "items": { |
| "$ref": "DistributionChannel" |
| }, |
| "type": "array" |
| }, |
| "state": { |
| "description": "Output only. Current state of the item", |
| "enum": [ |
| "ITEM_STATE_UNSPECIFIED", |
| "PENDING_REVIEW", |
| "STAGED", |
| "PUBLISHED", |
| "PUBLISHED_TO_TESTERS", |
| "REJECTED", |
| "CANCELLED" |
| ], |
| "enumDescriptions": [ |
| "Default value. This value is unused.", |
| "The item is pending review.", |
| "The item has been approved and is ready to be published.", |
| "The item is published publicly.", |
| "The item is published to trusted testers.", |
| "The item has been rejected for publishing.", |
| "The item submission has been cancelled." |
| ], |
| "readOnly": true, |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "PublishItemRequest": { |
| "description": "Request message for PublishItem.", |
| "id": "PublishItemRequest", |
| "properties": { |
| "deployInfos": { |
| "description": "Optional. Additional deploy information including the desired initial percentage rollout. Defaults to the current value saved in the developer dashboard if unset.", |
| "items": { |
| "$ref": "DeployInfo" |
| }, |
| "type": "array" |
| }, |
| "publishType": { |
| "description": "Optional. Use this to control if the item is published immediately on approval or staged for publishing in the future. Defaults to `DEFAULT_PUBLISH` if unset.", |
| "enum": [ |
| "PUBLISH_TYPE_UNSPECIFIED", |
| "DEFAULT_PUBLISH", |
| "STAGED_PUBLISH" |
| ], |
| "enumDescriptions": [ |
| "Default value. This is the same as DEFAULT_PUBLISH.", |
| "The submission will be published immediately after being approved.", |
| "After approval the submission will be staged and can then be published by the developer." |
| ], |
| "type": "string" |
| }, |
| "skipReview": { |
| "description": "Optional. Whether to attempt to skip item review. The API will validate if the item qualifies and return a validation error if the item requires review. Defaults to `false` if unset.", |
| "type": "boolean" |
| } |
| }, |
| "type": "object" |
| }, |
| "PublishItemResponse": { |
| "description": "Response message for `PublishItem`.", |
| "id": "PublishItemResponse", |
| "properties": { |
| "itemId": { |
| "description": "Output only. The ID of the item.", |
| "readOnly": true, |
| "type": "string" |
| }, |
| "name": { |
| "description": "The name of the item that was submitted", |
| "type": "string" |
| }, |
| "state": { |
| "description": "Output only. The current state of the submission.", |
| "enum": [ |
| "ITEM_STATE_UNSPECIFIED", |
| "PENDING_REVIEW", |
| "STAGED", |
| "PUBLISHED", |
| "PUBLISHED_TO_TESTERS", |
| "REJECTED", |
| "CANCELLED" |
| ], |
| "enumDescriptions": [ |
| "Default value. This value is unused.", |
| "The item is pending review.", |
| "The item has been approved and is ready to be published.", |
| "The item is published publicly.", |
| "The item is published to trusted testers.", |
| "The item has been rejected for publishing.", |
| "The item submission has been cancelled." |
| ], |
| "readOnly": true, |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "SetPublishedDeployPercentageRequest": { |
| "description": "Request message for SetPublishedDeployPercentage.", |
| "id": "SetPublishedDeployPercentageRequest", |
| "properties": { |
| "deployPercentage": { |
| "description": "Required. Unscaled percentage value for the publised revision (nonnegative number between 0 and 100). It must be larger than the existing target percentage.", |
| "format": "int32", |
| "type": "integer" |
| } |
| }, |
| "type": "object" |
| }, |
| "SetPublishedDeployPercentageResponse": { |
| "description": "Response message for `SetPublishedDeployPercentage`.", |
| "id": "SetPublishedDeployPercentageResponse", |
| "properties": {}, |
| "type": "object" |
| }, |
| "UploadItemPackageRequest": { |
| "description": "Request message for UploadItemPackage.", |
| "id": "UploadItemPackageRequest", |
| "properties": {}, |
| "type": "object" |
| }, |
| "UploadItemPackageResponse": { |
| "description": "Response message for `UploadItemPackage`.", |
| "id": "UploadItemPackageResponse", |
| "properties": { |
| "crxVersion": { |
| "description": "The extension version provided in the manifest of the uploaded package. This will not be set if the upload is still in progress (`upload_state` is `UPLOAD_IN_PROGRESS`).", |
| "type": "string" |
| }, |
| "itemId": { |
| "description": "Output only. The ID of the item the package was uploaded to.", |
| "readOnly": true, |
| "type": "string" |
| }, |
| "name": { |
| "description": "The name of the item the package was uploaded to.", |
| "type": "string" |
| }, |
| "uploadState": { |
| "description": "Output only. The state of the upload. If `upload_state` is `UPLOAD_IN_PROGRESS`, you can poll for updates using the fetchStatus method.", |
| "enum": [ |
| "UPLOAD_STATE_UNSPECIFIED", |
| "SUCCEEDED", |
| "IN_PROGRESS", |
| "FAILED", |
| "NOT_FOUND" |
| ], |
| "enumDescriptions": [ |
| "The default value.", |
| "The upload succeeded.", |
| "The upload is currently being processed.", |
| "The upload failed.", |
| "Used as the value of `lastAsyncUploadState` in a `fetchStatus` response indicating that an upload attempt was not found." |
| ], |
| "readOnly": true, |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| } |
| } |
| } |