open-consul/api
2016-07-02 16:05:41 -07:00
..
acl.go
acl_test.go
agent.go Correct a small typo 2016-04-23 20:18:19 -07:00
agent_test.go Update Check API to use constants 2016-04-23 16:01:59 -07:00
api.go Improves the comment for the Address field. 2016-03-24 11:33:44 -07:00
api_test.go Adds TLS config helper to API client. 2016-03-24 11:24:18 -07:00
catalog.go Adds support for EnableTagOverride to the API client. 2016-02-16 11:45:29 -08:00
catalog_test.go Update Check API to use constants 2016-04-23 16:01:59 -07:00
coordinate.go
coordinate_test.go
event.go
event_test.go
health.go Added some constants in the api for check health statuses 2016-03-24 11:26:07 -07:00
health_test.go
kv.go Adds a get-tree verb to KV transaction operations. 2016-05-13 16:57:39 -07:00
kv_test.go Adds a read-only optimized path for transactions. 2016-05-13 00:34:05 -07:00
lock.go Use HTTPS + www. where appropriate 2016-01-13 17:44:01 -05:00
lock_test.go
prepared_query.go api: add query templates 2016-07-02 16:05:41 -07:00
prepared_query_test.go
raw.go
README.md Use HTTPS + www. where appropriate 2016-01-13 17:44:01 -05:00
semaphore.go Factors server error checking into a new function. 2016-01-06 11:35:16 -08:00
semaphore_test.go
session.go
session_test.go
status.go
status_test.go

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)