Skip to content
go sdk for Azure Cosmos DB
Go Other
  1. Go 99.0%
  2. Other 1.0%
Branch: master
Clone or download
Latest commit 978a901 Oct 28, 2019

go-cosmosdb Build Status

go sdk for Azure Cosmos DB


  • instantiate a config struct. Set the keys, url and some other parameters.

  • call the constructor New(cfg config)

  • cosmosdb follows the hierarchy of Cosmos DB. This means that you can operate on the resource the current type represents. The database struct can work with resources that belong to a cosmos database, the Collection type can work with resources that belong to a collection.

  • doc interface{} may seem weird in some contexts, e.g. DeleteDocument, why not use a signature like DeleteDocument(ctx context.Context, id string). The reason is that there are several ways to address the document. Either by self link, with or without _etag or by the id. All on collections with or without a partition key.

    • use _self if possible
    • if _etag is present, use it
    • otherwise use id
    • if neither exists -> error


Create Document

type Document struct {
    id string

newDoc, err := coll.CreateDocument(context.Background(), doc)


You can’t perform that action at this time.