open-consul/api
Armon Dadgar f4543ffc78 CHANGELOG update, gofmt 2015-01-22 13:42:22 -08:00
..
README.md
acl.go
acl_test.go
agent.go Merge pull request #625 from hashicorp/f-maintcmd 2015-01-22 11:56:49 -08:00
agent_test.go CHANGELOG update, gofmt 2015-01-22 13:42:22 -08:00
api.go Merge pull request #608 from imkira/fixBodyLeak 2015-01-19 09:33:06 -08:00
api_test.go Fixing merge conflict 2015-01-20 13:01:13 -08:00
catalog.go
catalog_test.go
event.go
event_test.go
health.go
health_test.go
kv.go
kv_test.go
lock.go api: Fixing some comments 2015-01-20 12:58:09 -08:00
lock_test.go api: Detect conflicting existing values for lock/semaphore 2015-01-19 15:32:19 -10:00
semaphore.go api: Refactor to share session renew code 2015-01-19 16:53:47 -10:00
semaphore_test.go api: Detect conflicting existing values for lock/semaphore 2015-01-19 15:32:19 -10:00
session.go api: Refactor to share session renew code 2015-01-19 16:53:47 -10:00
session_test.go
status.go
status_test.go

README.md

Consul API client

This package provides the api package which attempts to provide programmatic access to the full Consul API.

Currently, all of the Consul APIs included in version 0.3 are supported.

Documentation

The full documentation is available on Godoc

Usage

Below is an example of using the Consul client:

// Get a new client, with KV endpoints
client, _ := api.NewClient(api.DefaultConfig())
kv := client.KV()

// PUT a new KV pair
p := &api.KVPair{Key: "foo", Value: []byte("test")}
_, err := kv.Put(p, nil)
if err != nil {
    panic(err)
}

// Lookup the pair
pair, _, err := kv.Get("foo", nil)
if err != nil {
    panic(err)
}
fmt.Printf("KV: %v", pair)