open-consul/api
Armon Dadgar 6f48e58014 api: Refactoring into shared write logic 2015-02-18 15:15:02 -08:00
..
README.md api: initial import from armon/consul-api 2015-01-06 10:40:00 -08:00
acl.go Revert "fixed: body not closed for non HTTP 200 responses" 2015-01-19 11:51:51 +09:00
acl_test.go api: add harnessing for tests 2015-01-06 15:52:06 -08:00
agent.go api: allow timeout field to be specified for checks 2015-02-05 23:34:30 -08:00
agent_test.go CHANGELOG update, gofmt 2015-01-22 13:42:22 -08:00
api.go api: Refactoring into shared write logic 2015-02-18 15:15:02 -08:00
api_test.go Fixing merge conflict 2015-01-20 13:01:13 -08:00
catalog.go Revert "fixed: body not closed for non HTTP 200 responses" 2015-01-19 11:51:51 +09:00
catalog_test.go api: improve reliability of catalog endpoint tests 2015-01-07 18:29:42 -08:00
event.go Revert "fixed: body not closed for non HTTP 200 responses" 2015-01-19 11:51:51 +09:00
event_test.go api: add harnessing for tests 2015-01-06 15:52:06 -08:00
health.go Revert "fixed: body not closed for non HTTP 200 responses" 2015-01-19 11:51:51 +09:00
health_test.go api: make node health test more reliable 2015-01-13 11:25:32 -08:00
kv.go Revert "fixed: body not closed for non HTTP 200 responses" 2015-01-19 11:51:51 +09:00
kv_test.go api: Add support for DeleteCAS 2015-01-13 13:57:48 -08:00
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
raw.go api: Refactoring into shared write logic 2015-02-18 15:15:02 -08: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: Refactoring into shared write logic 2015-02-18 15:15:02 -08:00
session_test.go api: add harnessing for tests 2015-01-06 15:52:06 -08:00
status.go Revert "fixed: body not closed for non HTTP 200 responses" 2015-01-19 11:51:51 +09:00
status_test.go api: simple test for unix socket connectivity 2015-01-16 10:56:47 -08:00

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)