1Consul API client 2================= 3 4This package provides the `api` package which attempts to 5provide programmatic access to the full Consul API. 6 7Currently, all of the Consul APIs included in version 0.6.0 are supported. 8 9Documentation 10============= 11 12The full documentation is available on [Godoc](https://godoc.org/github.com/hashicorp/consul/api) 13 14Usage 15===== 16 17Below is an example of using the Consul client: 18 19```go 20package main 21 22import "github.com/hashicorp/consul/api" 23import "fmt" 24 25func main() { 26 // Get a new client 27 client, err := api.NewClient(api.DefaultConfig()) 28 if err != nil { 29 panic(err) 30 } 31 32 // Get a handle to the KV API 33 kv := client.KV() 34 35 // PUT a new KV pair 36 p := &api.KVPair{Key: "REDIS_MAXCLIENTS", Value: []byte("1000")} 37 _, err = kv.Put(p, nil) 38 if err != nil { 39 panic(err) 40 } 41 42 // Lookup the pair 43 pair, _, err := kv.Get("REDIS_MAXCLIENTS", nil) 44 if err != nil { 45 panic(err) 46 } 47 fmt.Printf("KV: %v %s\n", pair.Key, pair.Value) 48} 49``` 50 51To run this example, start a Consul server: 52 53```bash 54consul agent -dev 55``` 56 57Copy the code above into a file such as `main.go`. 58 59Install and run. You'll see a key (`REDIS_MAXCLIENTS`) and value (`1000`) printed. 60 61```bash 62$ go get 63$ go run main.go 64KV: REDIS_MAXCLIENTS 1000 65``` 66 67After running the code, you can also view the values in the Consul UI on your local machine at http://localhost:8500/ui/dc1/kv 68