Google · Schema
VolumesResponse
Response containing a list of volumes from a search
AdvertisingCloudDevelopersGooglePlatformSearchT1Agentic CommerceUniversal Commerce ProtocolAP2A2A
Properties
| Name | Type | Description |
|---|---|---|
| kind | string | Resource type |
| totalItems | integer | Total number of volumes found. This might be greater than the number of volumes returned in this response if results have been paginated. |
| items | array | A list of volumes |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/google/main/json-schema/google-volumes-response-schema.json",
"title": "VolumesResponse",
"description": "Response containing a list of volumes from a search",
"x-generated": "2026-10-03",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/google-bookshelves-api-openapi.yml#/components/schemas/VolumesResponse",
"type": "object",
"required": [
"kind"
],
"properties": {
"kind": {
"type": "string",
"description": "Resource type",
"enum": [
"books#volumes"
]
},
"totalItems": {
"type": "integer",
"description": "Total number of volumes found. This might be greater than the number of volumes returned in this response if results have been paginated."
},
"items": {
"type": "array",
"description": "A list of volumes",
"items": {
"$ref": "#/$defs/Volume"
}
}
},
"$defs": {
"Volume": {
"type": "object",
"description": "A Volume represents information that Google Books hosts about a book or a magazine. It contains metadata, such as title and author, as well as personalized data, such as whether or not it has been purchased.",
"properties": {
"kind": {
"type": "string",
"description": "Resource type for a volume. (In LITE projection.)",
"enum": [
"books#volume"
]
},
"id": {
"type": "string",
"description": "Unique identifier for a volume. (In LITE projection.)"
},
"etag": {
"type": "string",
"description": "Opaque identifier for a specific version of a volume resource. (In LITE projection)"
},
"selfLink": {
"type": "string",
"format": "uri",
"description": "URL to this resource. (In LITE projection.)"
},
"volumeInfo": {
"type": "object",
"description": "General volume information.",
"properties": {
"title": {
"type": "string",
"description": "Volume title. (In LITE projection.)"
},
"subtitle": {
"type": "string",
"description": "Volume subtitle. (In LITE projection.)"
},
"authors": {
"type": "array",
"description": "The names of the authors and/or editors for this volume. (In LITE projection)",
"items": {
"type": "string"
}
},
"publisher": {
"type": "string",
"description": "Publisher of this volume. (In LITE projection.)"
},
"publishedDate": {
"type": "string",
"description": "Date of publication. (In LITE projection.)"
},
"description": {
"type": "string",
"description": "A synopsis of the volume. The text of the description is formatted in HTML and includes simple formatting elements, such as b, i, and br tags. (in LITE projection)"
},
"industryIdentifiers": {
"type": "array",
"description": "Industry standard identifiers for this volume.",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Identifier type. Possible values are ISBN_10, ISBN_13, ISSN and OTHER.",
"enum": [
"ISBN_10",
"ISBN_13",
"ISSN",
"OTHER"
]
},
"identifier": {
"type": "string",
"description": "Industry specific volume identifier."
}
}
}
},
"pageCount": {
"type": "integer",
"description": "Total number of pages."
},
"dimensions": {
"type": "object",
"description": "Physical dimensions of this volume.",
"properties": {
"height": {
"type": "string",
"description": "Height or length of this volume (in cm)."
},
"width": {
"type": "string",
"description": "Width of this volume (in cm)."
},
"thickness": {
"type": "string",
"description": "Thickness of this volume (in cm)."
}
}
},
"printType": {
"type": "string",
"description": "Type of publication of this volume. Possible values are BOOK or MAGAZINE.",
"enum": [
"BOOK",
"MAGAZINE"
]
},
"mainCategory": {
"type": "string",
"description": "The main category to which this volume belongs. It will be the category from the categories list returned below that has the highest weight."
},
"categories": {
"type": "array",
"description": "A list of subject categories, such as \"Fiction\", \"Suspense\", etc.",
"items": {
"type": "string"
}
},
"averageRating": {
"type": "number",
"format": "double",
"description": "The mean review rating for this volume. (min = 1.0, max = 5.0)",
"minimum": 1.0,
"maximum": 5.0
},
"ratingsCount": {
"type": "integer",
"description": "The number of review ratings for this volume."
},
"contentVersion": {
"type": "string",
"description": "An identifier for the version of the volume content (text & images). (In LITE projection)"
},
"imageLinks": {
"type": "object",
"description": "A list of image links for all the sizes that are available. (in LITE projection)",
"properties": {
"smallThumbnail": {
"type": "string",
"format": "uri",
"description": "Image link for small thumbnail size (width of ~80 pixels). (in LITE projection)"
},
"thumbnail": {
"type": "string",
"format": "uri",
"description": "Image link for thumbnail size (width of ~128 pixels). (in LITE projection)"
},
"small": {
"type": "string",
"format": "uri",
"description": "Image link for small size (width of ~300 pixels). (in LITE projection)"
},
"medium": {
"type": "string",
"format": "uri",
"description": "Image link for medium size (width of ~575 pixels). (in LITE projection)"
},
"large": {
"type": "string",
"format": "uri",
"description": "Image link for large size (width of ~800 pixels). (in LITE projection)"
},
"extraLarge": {
"type": "string",
"format": "uri",
"description": "Image link for extra large size (width of ~1280 pixels). (in LITE projection)"
}
}
},
"language": {
"type": "string",
"description": "Best language for this volume (based on content). It is the two-letter ISO 639-1 code such as 'fr', 'en', etc."
},
"previewLink": {
"type": "string",
"format": "uri",
"description": "URL to preview this volume on the Google Books site."
},
"infoLink": {
"type": "string",
"format": "uri",
"description": "URL to view information about this volume on the Google Books site. (In LITE projection)"
},
"canonicalVolumeLink": {
"type": "string",
"format": "uri",
"description": "Canonical URL for a volume. (In LITE projection.)"
}
}
},
"userInfo": {
"type": "object",
"description": "User specific information related to this volume. (e.g. page this user last read or whether they purchased this book)",
"properties": {
"review": {
"type": "object",
"description": "This user's review of this volume, if one exists."
},
"readingPosition": {
"type": "object",
"description": "The user's current reading position in the volume, if one is available. (In LITE projection.)"
},
"isPurchased": {
"type": "boolean",
"description": "Whether or not this volume was purchased by the authenticated user making the request. (In LITE projection.)"
},
"isPreordered": {
"type": "boolean",
"description": "Whether or not this volume was pre-ordered by the authenticated user making the request. (In LITE projection.)"
},
"updated": {
"type": "string",
"format": "date-time",
"description": "Timestamp when this volume was last modified by a user action, such as a reading position update, volume purchase or writing a review. (RFC 3339 UTC date-time format)."
}
}
},
"saleInfo": {
"type": "object",
"description": "Any information about a volume related to the eBookstore and/or purchaseability. This information can depend on the country where the request originates from (i.e. books may not be for sale in certain countries).",
"properties": {
"country": {
"type": "string",
"description": "The two-letter ISO_3166-1 country code for which this sale information is valid. (In LITE projection.)"
},
"saleability": {
"type": "string",
"description": "Whether or not this book is available for sale or offered for free in the Google eBookstore for the country listed above. Possible values are FOR_SALE, FREE, NOT_FOR_SALE, or FOR_PREORDER.",
"enum": [
"FOR_SALE",
"FREE",
"NOT_FOR_SALE",
"FOR_PREORDER"
]
},
"onSaleDate": {
"type": "string",
"format": "date-time",
"description": "The date on which this book is available for sale."
},
"isEbook": {
"type": "boolean",
"description": "Whether or not this volume is an eBook (can be added to the My eBooks shelf)."
},
"listPrice": {
"type": "object",
"description": "Suggested retail price. (in LITE projection)",
"properties": {
"amount": {
"type": "number",
"format": "double",
"description": "Amount in the currency listed below. (In LITE projection.)"
},
"currencyCode": {
"type": "string",
"description": "An ISO 4217, three-letter currency code. (In LITE projection.)"
}
}
},
"retailPrice": {
"type": "object",
"description": "The actual selling price of the book. This is the same as the suggested retail or list price unless there are offers or discounts on this volume. (in LITE projection)",
"properties": {
"amount": {
"type": "number",
"format": "double",
"description": "Amount in the currency listed below. (In LITE projection.)"
},
"currencyCode": {
"type": "string",
"description": "An ISO 4217, three-letter currency code. (In LITE projection.)"
}
}
},
"buyLink": {
"type": "string",
"format": "uri",
"description": "URL to purchase this volume on the Google Books site. (in LITE projection)"
}
}
},
"accessInfo": {
"type": "object",
"description": "Any information about a volume related to reading or obtaining that volume text. This information can depend on country (books may be public domain in one country but not in another, e.g.).",
"properties": {
"country": {
"type": "string",
"description": "The two-letter ISO_3166-1 country code for which this access information is valid. (In LITE projection.)"
},
"viewability": {
"type": "string",
"description": "The read access of a volume. Possible values are PARTIAL, ALL_PAGES, NO_PAGES or UNKNOWN. This value depends on the country listed above. A value of PARTIAL means that the publisher has allowed some portion of the volume to be viewed publicly, without purchase. This can apply to eBooks as well as non-eBooks. Public domain books will always have a value of ALL_PAGES.",
"enum": [
"PARTIAL",
"ALL_PAGES",
"NO_PAGES",
"UNKNOWN"
]
},
"embeddable": {
"type": "boolean",
"description": "Whether this volume can be embedded in a viewport using the Embedded Viewer API."
},
"publicDomain": {
"type": "boolean",
"description": "Whether or not this book is public domain in the country listed above."
},
"textToSpeechPermission": {
"type": "string",
"description": "Whether text-to-speech is permitted for this volume. Values can be ALLOWED, ALLOWED_FOR_ACCESSIBILITY, or NOT_ALLOWED.",
"enum": [
"ALLOWED",
"ALLOWED_FOR_ACCESSIBILITY",
"NOT_ALLOWED"
]
},
"epub": {
"type": "object",
"description": "Information about epub content. (in LITE projection)",
"properties": {
"isAvailable": {
"type": "boolean",
"description": "Is a flowing text epub available either as public domain or for purchase. (In LITE projection.)"
},
"downloadLink": {
"type": "string",
"format": "uri",
"description": "URL to download epub. (In LITE projection.)"
},
"acsTokenLink": {
"type": "string",
"format": "uri",
"description": "URL to retrieve ACS token for epub download. (In LITE projection.)"
}
}
},
"pdf": {
"type": "object",
"description": "Information about pdf content. (in LITE projection)",
"properties": {
"isAvailable": {
"type": "boolean",
"description": "Is a scanned image pdf available either as public domain or for purchase. (In LITE projection.)"
},
"downloadLink": {
"type": "string",
"format": "uri",
"description": "URL to download pdf. (In LITE projection.)"
},
"acsTokenLink": {
"type": "string",
"format": "uri",
"description": "URL to retrieve ACS token for pdf download. (In LITE projection.)"
}
}
},
"webReaderLink": {
"type": "string",
"format": "uri",
"description": "URL to read this volume on the Google Books site. Link will not allow users to read non-viewable volumes."
},
"accessViewStatus": {
"type": "string",
"description": "Combines the access and viewability of this volume into a single status field for this user. Values can be FULL_PURCHASED, FULL_PUBLIC_DOMAIN, SAMPLE or NONE. (In LITE projection.)",
"enum": [
"FULL_PURCHASED",
"FULL_PUBLIC_DOMAIN",
"SAMPLE",
"NONE"
]
},
"downloadAccess": {
"type": "object",
"description": "Information about a volume's download license access restrictions.",
"properties": {
"kind": {
"type": "string",
"description": "Resource type.",
"enum": [
"books#downloadAccessRestriction"
]
},
"volumeId": {
"type": "string",
"description": "Identifies the volume for which this entry applies."
},
"restricted": {
"type": "boolean",
"description": "Whether this volume has any download access restrictions."
},
"deviceAllowed": {
"type": "boolean",
"description": "If restricted, whether access is granted for this (user, device, volume)."
},
"justAcquired": {
"type": "boolean",
"description": "If deviceAllowed, whether access was just acquired with this request."
},
"maxDownloadDevices": {
"type": "integer",
"description": "If restricted, the maximum number of content download licenses for this volume."
},
"downloadsAcquired": {
"type": "integer",
"description": "If restricted, the number of content download licenses already acquired (including the requesting client, if licensed)."
},
"nonce": {
"type": "string",
"description": "Client nonce for verification. Download access and client-validation only."
},
"source": {
"type": "string",
"description": "Client app identifier for verification. Download access and client-validation only."
},
"reasonCode": {
"type": "string",
"description": "Error/warning reason code. Additional codes may be added in the future. 0 OK, 100 ACCESS_DENIED_PUBLISHER_LIMIT, 101 ACCESS_DENIED_LIMIT, 200 WARNING_USED_LAST_ACCESS"
},
"message": {
"type": "string",
"description": "Error/warning message."
},
"signature": {
"type": "string",
"description": "Response signature."
}
}
}
}
},
"searchInfo": {
"type": "object",
"description": "Search result information related to this volume.",
"properties": {
"textSnippet": {
"type": "string",
"description": "A text snippet containing the search query."
}
}
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/google-volumes-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.