» Config HTTP Endpoint
The /config endpoints create, update, delete and query central configuration
entries registered with Consul. See the
agent configuration
for more information on how to enable this functionality for centrally
configuring services.
» Apply Configuration
This endpoint creates or updates the given config entry.
| Method | Path | Produces |
|---|---|---|
PUT |
/config |
application/json |
The table below shows this endpoint's support for blocking queries, consistency modes, agent caching, and required ACLs.
| Blocking Queries | Consistency Modes | Agent Caching | ACL Required |
|---|---|---|---|
NO |
none |
none |
service:writeoperator:write1
|
1 The ACL required depends on the config entry kind being updated:
| Config Entry Kind | Required ACL |
|---|---|
| service-defaults | service:write |
| proxy-defaults | operator:write |
» Parameters
-
dc(string: "")- Specifies the datacenter to query. This will default to the datacenter of the agent being queried. This is specified as part of the URL as a query parameter. -
cas(int: 0)- Specifies to use a Check-And-Set operation. If the index is 0, Consul will only store the entry if it does not already exist. If the index is non-zero, the entry is only set if the current index matches theModifyIndexof that entry.
» Sample Payload
{
"Kind": "service-defaults",
"Name": "web",
"Protocol": "http",
"Connect": {
"SidecarProxy": false
}
}
» Sample Request
$ curl \
--request PUT \
--data @payload \
http://127.0.0.1:8500/v1/config
» Get Configuration
This endpoint returns a specific config entry.
| Method | Path | Produces |
|---|---|---|
GET |
/config/:kind/:name |
application/json |
The table below shows this endpoint's support for blocking queries, consistency modes, agent caching, and required ACLs.
| Blocking Queries | Consistency Modes | Agent Caching | ACL Required |
|---|---|---|---|
YES |
all |
none |
service:read1
|
1 The ACL required depends on the config entry kind being read:
| Config Entry Kind | Required ACL |
|---|---|
| service-defaults | service:read |
| proxy-defaults | <none> |
» Parameters
-
dc(string: "")- Specifies the datacenter to query. This will default to the datacenter of the agent being queried. This is specified as part of the URL as a query parameter. -
kind(string: <required>)- Specifies the kind of the entry to read. This is specified as part of the URL. -
name(string: <required>)- Specifies the name of the entry to read. This is specified as part of the URL.
» Sample Request
$ curl \
--request GET \
http://127.0.0.1:8500/v1/config/service-defaults/web
» Sample Response
{
"Kind": "service-defaults",
"Name": "web",
"Protocol": "http",
"Connect": {
"SidecarProxy": true
},
"CreateIndex": 15,
"ModifyIndex": 35
}
» List Configurations
This endpoint returns all config entries of the given kind.
| Method | Path | Produces |
|---|---|---|
GET |
/config/:kind |
application/json |
The table below shows this endpoint's support for blocking queries, consistency modes, agent caching, and required ACLs.
| Blocking Queries | Consistency Modes | Agent Caching | ACL Required |
|---|---|---|---|
YES |
all |
none |
service:read1
|
1 The ACL required depends on the config entry kind being read:
| Config Entry Kind | Required ACL |
|---|---|
| service-defaults | service:read |
| proxy-defaults | <none> |
» Parameters
-
dc(string: "")- Specifies the datacenter to query. This will default to the datacenter of the agent being queried. This is specified as part of the URL as a query parameter. -
kind(string: <required>)- Specifies the kind of the entry to list. This is specified as part of the URL.
» Sample Request
$ curl \
--request GET \
http://127.0.0.1:8500/v1/config/service-defaults
» Sample Response
[
{
"Kind": "service-defaults",
"Name": "db",
"Protocol": "tcp",
"Connect": {
"SidecarProxy": false
},
"CreateIndex": 16,
"ModifyIndex": 16
},
{
"Kind": "service-defaults",
"Name": "web",
"Protocol": "http",
"Connect": {
"SidecarProxy": true
},
"CreateIndex": 13,
"ModifyIndex": 13
}
]
» Delete Configuration
This endpoint creates or updates the given config entry.
| Method | Path | Produces |
|---|---|---|
DELETE |
/config/:kind/:name |
application/json |
The table below shows this endpoint's support for blocking queries, consistency modes, agent caching, and required ACLs.
| Blocking Queries | Consistency Modes | Agent Caching | ACL Required |
|---|---|---|---|
NO |
none |
none |
service:writeoperator:write1
|
1 The ACL required depends on the config entry kind being deleted:
| Config Entry Kind | Required ACL |
|---|---|
| service-defaults | service:write |
| proxy-defaults | operator:write |
» Parameters
-
dc(string: "")- Specifies the datacenter to query. This will default to the datacenter of the agent being queried. This is specified as part of the URL as a query parameter. -
kind(string: <required>)- Specifies the kind of the entry to delete. This is specified as part of the URL. -
name(string: <required>)- Specifies the name of the entry to delete. This is specified as part of the URL.
» Sample Request
$ curl \
--request DELETE \
http://127.0.0.1:8500/v1/config/service-defaults/web