title: How to read data from Azure's CosmosDB in python
body: <p>I have a trial account with Azure and have uploaded some JSON files into CosmosDB. I am creating a python program to review the data but I am having trouble doing so. This is the code I have so far:</p>
  
  <pre><code>import pydocumentdb.documents as documents
  import pydocumentdb.document_client as document_client
  import pydocumentdb.errors as errors
  
  url = 'https://ronyazrak.documents.azure.com:443/'
  key = '' # primary key
  
  # Initialize the Python DocumentDB client
  client = document_client.DocumentClient(url, {'masterKey': key})
  
  collection_link = '/dbs/test1/colls/test1'
  
  collection = client.ReadCollection(collection_link)
  
  result_iterable = client.QueryDocuments(collection)
  
  query = { 'query': 'SELECT * FROM server s' }
  </code></pre>
  
  <p>I read somewhere that the key would be my primary key that I can find in my Azure account <a href="https://i.stack.imgur.com/g8aHr.png" rel="nofollow noreferrer">Keys</a>. I have filled the key string with my primary key shown in the image but key here is empty just for privacy purposes.</p>
  
  <p>I also read somewhere that the collection_link should be '/dbs/test1/colls/test1' if my data is in collection 'test1' <a href="https://i.stack.imgur.com/DpnrO.png" rel="nofollow noreferrer">Collections</a>.</p>
  
  <p>My code gets an error at the function client.ReadCollection().</p>
  
  <p>That's the error I have "pydocumentdb.errors.HTTPFailure: Status code: 401
  {"code":"Unauthorized","message":"The input authorization token can't serve the request. Please check that the expected payload is built as per the protocol, and check the key being used. Server used the following payload to sign: 'get\ncolls\ndbs/test1/colls/test1\nmon, 29 may 2017 19:47:28 gmt\n\n'\r\nActivityId: 03e13e74-8db4-4661-837a-f8d81a2804cc"}"</p>
  
  <p>Once this error is fixed, what is there left to do? I want to get the JSON files as a big dictionary so that I can review the data.</p>
  
  <p>Am I in the right path? Am I approaching this the wrong way? How can I read documents that are in my database? Thanks.</p>