open-consul/api
Preetha 8dacb12c79
Merge pull request #3881 from pierresouchay/service_metadata
Feature Request: Support key-value attributes for services
2018-03-27 16:33:57 -05:00
..
acl.go Spelling (#3958) 2018-03-19 16:56:00 +00:00
acl_test.go
agent.go Merge remote-tracking branch 'origin/master' into service_metadata 2018-02-11 13:20:49 +01:00
agent_test.go Added CheckID and Name to AgentServiceCheck struct 2018-01-08 15:59:55 -05:00
api.go Spelling (#3958) 2018-03-19 16:56:00 +00:00
api_test.go
catalog.go Added support for Service Metadata 2018-02-07 01:54:42 +01:00
catalog_test.go
coordinate.go
coordinate_test.go Move check definition to a sub-struct 2017-11-01 14:54:46 -07:00
event.go
event_test.go
health.go Move check definition to a sub-struct 2017-11-01 14:54:46 -07:00
health_test.go
kv.go
kv_test.go
lock.go
lock_test.go
operator.go
operator_area.go
operator_autopilot.go
operator_autopilot_test.go
operator_keyring.go
operator_keyring_test.go
operator_raft.go
operator_raft_test.go
operator_segment.go
prepared_query.go Spelling (#3958) 2018-03-19 16:56:00 +00:00
prepared_query_test.go
raw.go
README.md
semaphore.go
semaphore_test.go
session.go
session_test.go Tightens up the API test verification. 2017-12-14 09:07:57 -08:00
snapshot.go
snapshot_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)