code: def get_product_order_book(self, product_id, level=1):
          
          params = {'level': level}
          return self._send_message('get',
                                    '/products/{}/book'.format(product_id),
                                    params=params)
docs: Get a list of open orders for a product.
  
          The amount of detail shown can be customized with the `level`
          parameter:
          * 1: Only the best bid and ask
          * 2: Top 50 bids and asks (aggregated)
          * 3: Full order book (non aggregated)
  
          Level 1 and Level 2 are recommended for polling. For the most
          up-to-date data, consider using the websocket stream.
  
          **Caution**: Level 3 is only recommended for users wishing to
          maintain a full real-time order book using the websocket
          stream. Abuse of Level 3 via polling will cause your access to
          be limited or blocked.
  
          Args:
              product_id (str): Product
              level (Optional[int]): Order book level (1, 2, or 3).
                  Default is 1.
  
          Returns:
              dict: Order book. Example for level 1::
                  {
                      "sequence": "3",
                      "bids": [
                          [ price, size, num-orders ],
                      ],
                      "asks": [
                          [ price, size, num-orders ],
                      ]
                  }