open-consul/api
James Phillips 09478b68ed Builds the insecure SSL transport off the clean default transport. 2015-12-17 12:15:18 -08:00
..
README.md Updates API docs for version 0.6.0. 2015-11-28 20:04:29 -08:00
acl.go
acl_test.go
agent.go Adds Docker checks support to client API. 2015-11-18 07:40:02 -08:00
agent_test.go Adds Docker checks support to client API. 2015-11-18 07:40:02 -08:00
api.go Builds the insecure SSL transport off the clean default transport. 2015-12-17 12:15:18 -08:00
api_test.go Revert "Adds client and transport pooling in the API so we don't leak connections." 2015-12-17 10:56:50 -05:00
catalog.go
catalog_test.go
coordinate.go
coordinate_test.go
event.go
event_test.go
health.go
health_test.go
kv.go
kv_test.go
lock.go Adds custom retry time for lock monitors. 2015-11-30 20:16:22 -08:00
lock_test.go Adds a unit test for lock monitor retries. 2015-11-30 20:16:40 -08:00
prepared_query.go Removes a useless empty import and fixes some stale comments. 2015-11-17 08:29:20 -08:00
prepared_query_test.go
raw.go
semaphore.go
semaphore_test.go
session.go
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.6.0 are supported.

Documentation

The full documentation is available on Godoc

Usage

Below is an example of using the Consul client:

// Get a new client
client, err := api.NewClient(api.DefaultConfig())
if err != nil {
    panic(err)
}

// Get a handle to the KV API
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)