<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="books_v1.html">Books API</a> . <a href="books_v1.personalizedstream.html">personalizedstream</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#get">get(source=None, locale=None, maxAllowedMaturityRating=None)</a></code></p>
<p class="firstline">Returns a stream of personalized book clusters</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="get">get(source=None, locale=None, maxAllowedMaturityRating=None)</code>
  <pre>Returns a stream of personalized book clusters

Args:
  source: string, String to identify the originator of this request.
  locale: string, ISO-639-1 language and ISO-3166-1 country code. Ex: 'en_US'. Used for generating recommendations.
  maxAllowedMaturityRating: string, The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.
    Allowed values
      mature - Show books which are rated mature or lower.
      not-mature - Show books which are rated not mature.

Returns:
  An object of the form:

    {
    "clusters": [
      {
        "totalVolumes": 42,
        "subTitle": "A String",
        "uid": "A String",
        "title": "A String",
        "banner_with_content_container": {
          "moreButtonText": "A String",
          "textColorArgb": "A String",
          "imageUrl": "A String",
          "fillColorArgb": "A String",
          "maskColorArgb": "A String",
          "moreButtonUrl": "A String",
        },
        "volumes": [
          {
            "kind": "books#volume", # Resource type for a volume. (In LITE projection.)
            "accessInfo": { # 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.).
              "webReaderLink": "A String", # URL to read this volume on the Google Books site. Link will not allow users to read non-viewable volumes.
              "publicDomain": True or False, # Whether or not this book is public domain in the country listed above.
              "embeddable": True or False, # Whether this volume can be embedded in a viewport using the Embedded Viewer API.
              "downloadAccess": { # Information about a volume's download license access restrictions.
                "nonce": "A String", # Client nonce for verification. Download access and client-validation only.
                "kind": "books#downloadAccessRestriction", # Resource type.
                "justAcquired": True or False, # If deviceAllowed, whether access was just acquired with this request.
                "maxDownloadDevices": 42, # If restricted, the maximum number of content download licenses for this volume.
                "downloadsAcquired": 42, # If restricted, the number of content download licenses already acquired (including the requesting client, if licensed).
                "signature": "A String", # Response signature.
                "volumeId": "A String", # Identifies the volume for which this entry applies.
                "deviceAllowed": True or False, # If restricted, whether access is granted for this (user, device, volume).
                "source": "A String", # Client app identifier for verification. Download access and client-validation only.
                "restricted": True or False, # Whether this volume has any download access restrictions.
                "reasonCode": "A String", # 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": "A String", # Error/warning message.
              },
              "country": "A String", # The two-letter ISO_3166-1 country code for which this access information is valid. (In LITE projection.)
              "quoteSharingAllowed": True or False, # Whether quote sharing is allowed for this volume.
              "viewOrderUrl": "A String", # For ordered but not yet processed orders, we give a URL that can be used to go to the appropriate Google Wallet page.
              "textToSpeechPermission": "A String", # Whether text-to-speech is permitted for this volume. Values can be ALLOWED, ALLOWED_FOR_ACCESSIBILITY, or NOT_ALLOWED.
              "driveImportedContentLink": "A String", # URL to the Google Drive viewer if this volume is uploaded by the user by selecting the file from Google Drive.
              "pdf": { # Information about pdf content. (In LITE projection.)
                "isAvailable": True or False, # Is a scanned image pdf available either as public domain or for purchase. (In LITE projection.)
                "downloadLink": "A String", # URL to download pdf. (In LITE projection.)
                "acsTokenLink": "A String", # URL to retrieve ACS token for pdf download. (In LITE projection.)
              },
              "explicitOfflineLicenseManagement": True or False, # Whether this volume requires that the client explicitly request offline download license rather than have it done automatically when loading the content, if the client supports it.
              "viewability": "A String", # 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.
              "epub": { # Information about epub content. (In LITE projection.)
                "isAvailable": True or False, # Is a flowing text epub available either as public domain or for purchase. (In LITE projection.)
                "downloadLink": "A String", # URL to download epub. (In LITE projection.)
                "acsTokenLink": "A String", # URL to retrieve ACS token for epub download. (In LITE projection.)
              },
              "accessViewStatus": "A String", # 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.)
            },
            "searchInfo": { # Search result information related to this volume.
              "textSnippet": "A String", # A text snippet containing the search query.
            },
            "saleInfo": { # 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).
              "country": "A String", # The two-letter ISO_3166-1 country code for which this sale information is valid. (In LITE projection.)
              "retailPrice": { # 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.)
                "amount": 3.14, # Amount in the currency listed below. (In LITE projection.)
                "currencyCode": "A String", # An ISO 4217, three-letter currency code. (In LITE projection.)
              },
              "isEbook": True or False, # Whether or not this volume is an eBook (can be added to the My eBooks shelf).
              "offers": [ # Offers available for this volume (sales and rentals).
                {
                  "rentalDuration": { # The rental duration (for rental offers only).
                    "count": 3.14,
                    "unit": "A String",
                  },
                  "retailPrice": { # Offer retail (=discounted) price in Micros
                    "currencyCode": "A String",
                    "amountInMicros": 3.14,
                  },
                  "listPrice": { # Offer list (=undiscounted) price in Micros.
                    "currencyCode": "A String",
                    "amountInMicros": 3.14,
                  },
                  "finskyOfferType": 42, # The finsky offer type (e.g., PURCHASE=0 RENTAL=3)
                },
              ],
              "saleability": "A String", # 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, FOR_RENTAL_ONLY, FOR_SALE_AND_RENTAL, FREE, NOT_FOR_SALE, or FOR_PREORDER.
              "buyLink": "A String", # URL to purchase this volume on the Google Books site. (In LITE projection)
              "onSaleDate": "A String", # The date on which this book is available for sale.
              "listPrice": { # Suggested retail price. (In LITE projection.)
                "amount": 3.14, # Amount in the currency listed below. (In LITE projection.)
                "currencyCode": "A String", # An ISO 4217, three-letter currency code. (In LITE projection.)
              },
            },
            "etag": "A String", # Opaque identifier for a specific version of a volume resource. (In LITE projection)
            "selfLink": "A String", # URL to this resource. (In LITE projection.)
            "volumeInfo": { # General volume information.
              "subtitle": "A String", # Volume subtitle. (In LITE projection.)
              "pageCount": 42, # Total number of pages as per publisher metadata.
              "mainCategory": "A String", # The main category to which this volume belongs. It will be the category from the categories list returned below that has the highest weight.
              "seriesInfo": {
                "bookDisplayNumber": "A String", # The display number string. This should be used only for display purposes and the actual sequence should be inferred from the below orderNumber.
                "kind": "books#volume_series_info", # Resource type.
                "shortSeriesBookTitle": "A String", # Short book title in the context of the series.
                "volumeSeries": [
                  {
                    "orderNumber": 42, # The book order number in the series.
                    "seriesId": "A String", # The series id.
                    "issue": [ # List of issues. Applicable only for Collection Edition and Omnibus.
                      {
                        "issueOrderNumber": 42,
                        "issueDisplayNumber": "A String",
                      },
                    ],
                    "seriesBookType": "A String", # The book type in the context of series. Examples - Single Issue, Collection Edition, etc.
                  },
                ],
              },
              "dimensions": { # Physical dimensions of this volume.
                "width": "A String", # Width of this volume (in cm).
                "thickness": "A String", # Thickness of this volume (in cm).
                "height": "A String", # Height or length of this volume (in cm).
              },
              "previewLink": "A String", # URL to preview this volume on the Google Books site.
              "contentVersion": "A String", # An identifier for the version of the volume content (text & images). (In LITE projection)
              "industryIdentifiers": [ # Industry standard identifiers for this volume.
                {
                  "identifier": "A String", # Industry specific volume identifier.
                  "type": "A String", # Identifier type. Possible values are ISBN_10, ISBN_13, ISSN and OTHER.
                },
              ],
              "canonicalVolumeLink": "A String", # Canonical URL for a volume. (In LITE projection.)
              "description": "A String", # 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.)
              "publishedDate": "A String", # Date of publication. (In LITE projection.)
              "imageLinks": { # A list of image links for all the sizes that are available. (In LITE projection.)
                "medium": "A String", # Image link for medium size (width of ~575 pixels). (In LITE projection)
                "smallThumbnail": "A String", # Image link for small thumbnail size (width of ~80 pixels). (In LITE projection)
                "large": "A String", # Image link for large size (width of ~800 pixels). (In LITE projection)
                "extraLarge": "A String", # Image link for extra large size (width of ~1280 pixels). (In LITE projection)
                "small": "A String", # Image link for small size (width of ~300 pixels). (In LITE projection)
                "thumbnail": "A String", # Image link for thumbnail size (width of ~128 pixels). (In LITE projection)
              },
              "authors": [ # The names of the authors and/or editors for this volume. (In LITE projection)
                "A String",
              ],
              "categories": [ # A list of subject categories, such as "Fiction", "Suspense", etc.
                "A String",
              ],
              "publisher": "A String", # Publisher of this volume. (In LITE projection.)
              "language": "A String", # Best language for this volume (based on content). It is the two-letter ISO 639-1 code such as 'fr', 'en', etc.
              "readingModes": "", # The reading modes available for this volume.
              "allowAnonLogging": True or False, # Whether anonymous logging should be allowed.
              "title": "A String", # Volume title. (In LITE projection.)
              "printType": "A String", # Type of publication of this volume. Possible values are BOOK or MAGAZINE.
              "samplePageCount": 42, # Total number of sample pages as per publisher metadata.
              "maturityRating": "A String",
              "printedPageCount": 42, # Total number of printed pages in generated pdf representation.
              "averageRating": 3.14, # The mean review rating for this volume. (min = 1.0, max = 5.0)
              "infoLink": "A String", # URL to view information about this volume on the Google Books site. (In LITE projection)
              "ratingsCount": 42, # The number of review ratings for this volume.
            },
            "recommendedInfo": { # Recommendation related information for this volume.
              "explanation": "A String", # A text explaining why this volume is recommended.
            },
            "id": "A String", # Unique identifier for a volume. (In LITE projection.)
            "layerInfo": { # What layers exist in this volume and high level information about them.
              "layers": [ # A layer should appear here if and only if the layer exists for this book.
                {
                  "volumeAnnotationsVersion": "A String", # The current version of this layer's volume annotations. Note that this version applies only to the data in the books.layers.volumeAnnotations.* responses. The actual annotation data is versioned separately.
                  "layerId": "A String", # The layer id of this layer (e.g. "geo").
                },
              ],
            },
            "userInfo": { # User specific information related to this volume. (e.g. page this user last read or whether they purchased this book)
              "isFamilySharedFromUser": True or False, # Whether or not the user shared this volume with the family.
              "isInMyBooks": True or False, # Whether or not this volume is currently in "my books."
              "acquisitionType": 42, # How this volume was acquired.
              "updated": "A String", # 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).
              "userUploadedVolumeInfo": {
                "processingState": "A String",
              },
              "rentalPeriod": { # Period during this book is/was a valid rental.
                "startUtcSec": "A String",
                "endUtcSec": "A String",
              },
              "familySharing": { # Information on the ability to share with the family.
                "isSharingDisabledByFop": True or False, # Whether or not sharing this volume is temporarily disabled due to issues with the Family Wallet.
                "familyRole": "A String", # The role of the user in the family.
                "isSharingAllowed": True or False, # Whether or not this volume can be shared with the family by the user. This includes sharing eligibility of both the volume and the user. If the value is true, the user can initiate a family sharing action.
              },
              "rentalState": "A String", # Whether this book is an active or an expired rental.
              "isPurchased": True or False, # Whether or not this volume was purchased by the authenticated user making the request. (In LITE projection.)
              "readingPosition": { # The user's current reading position in the volume, if one is available. (In LITE projection.)
                "kind": "books#readingPosition", # Resource type for a reading position.
                "gbImagePosition": "A String", # Position in a volume for image-based content.
                "epubCfiPosition": "A String", # Position in an EPUB as a CFI.
                "updated": "A String", # Timestamp when this reading position was last updated (formatted UTC timestamp with millisecond resolution).
                "volumeId": "A String", # Volume id associated with this reading position.
                "pdfPosition": "A String", # Position in a PDF file.
                "gbTextPosition": "A String", # Position in a volume for text-based content.
              },
              "isPreordered": True or False, # Whether or not this volume was pre-ordered by the authenticated user making the request. (In LITE projection.)
              "isFamilySharingAllowed": True or False, # Deprecated: Replaced by familySharing.
              "review": { # This user's review of this volume, if one exists.
                "rating": "A String", # Star rating for this review. Possible values are ONE, TWO, THREE, FOUR, FIVE or NOT_RATED.
                "kind": "books#review", # Resource type for a review.
                "author": { # Author of this review.
                  "displayName": "A String", # Name of this person.
                },
                "title": "A String", # Title for this review.
                "volumeId": "A String", # Volume that this review is for.
                "content": "A String", # Review text.
                "source": { # Information regarding the source of this review, when the review is not from a Google Books user.
                  "extraDescription": "A String", # Extra text about the source of the review.
                  "url": "A String", # URL of the source of the review.
                  "description": "A String", # Name of the source.
                },
                "date": "A String", # Date of this review.
                "type": "A String", # Source type for this review. Possible values are EDITORIAL, WEB_USER or GOOGLE_USER.
                "fullTextUrl": "A String", # URL for the full review text, for reviews gathered from the web.
              },
              "isFamilySharedToUser": True or False, # Whether or not the user received this volume through family sharing.
              "entitlementType": 42, # Whether this volume is purchased, sample, pd download etc.
              "copy": { # Copy/Paste accounting information.
                "limitType": "A String",
                "remainingCharacterCount": 42,
                "updated": "A String",
                "allowedCharacterCount": 42,
              },
              "isFamilySharingDisabledByFop": True or False, # Deprecated: Replaced by familySharing.
              "isUploaded": True or False, # Whether or not this volume was user uploaded.
              "acquiredTime": "A String", # Timestamp when this volume was acquired by the user. (RFC 3339 UTC date-time format) Acquiring includes purchase, user upload, receiving family sharing, etc.
            },
          },
        ],
      },
    ],
    "kind": "books#discovery#clusters", # Resorce type.
    "totalClusters": 42,
  }</pre>
</div>

</body></html>