-</code></pre>
-</notextile>
-
-Set up an API client user agent:
-
-<notextile>
-<pre><code class="userinput"> arv, err := arvadosclient.MakeArvadosClient()
- if err != nil {
- log.Fatalf("Error setting up arvados client %s", err.Error())
- }
-</code></pre>
-</notextile>
-
-Get the User object for the current user:
-
-<notextile>
-<pre><code class="userinput"> type user struct {
- Uuid string `json:"uuid"`
- FullName string `json:"full_name"`
- }
-
- var u user
- err := arv.Call("GET", "users", "", "current", nil, &u)
-
- if err != nil {
- return err
- }
-
- log.Printf("Logged in as %s (uuid %s)", user.Uuid, user.FullName)
-</code></pre>
-</notextile>
-
-Print all returned fields for collections:
-
-<notextile>
-<pre><code class="userinput"> var collections map[string]interface{}
-
- params := arvadosclient.Dict{"limit": 10}
-
- err = arv.Call("GET", "collections", "", "", params, &collections)
- if err != nil {
- log.Fatalf("error querying collections", err.Error())
- }
-
- for key, value := range collections {
- if key == "items" {
- items := value.([]interface{})
- for index, item := range items {
- fmt.Println("=========== ", index, " ===========")
- item_map := item.(map[string]interface{})
- if len(item_map) == 0 {
- fmt.Println("item", index, ": empty map")
- } else {
- for k,v := range item_map {
- fmt.Println(index, k, ":", v)
- }
- }
- }
- } else {
- fmt.Println(key, ":", value)
- }
- }
-</code></pre>
-</notextile>