Skip to main content

Consul.NET

.NET client library for the Consul HTTP API

Downloads
NuGet
CI
License
Contributors
Contribute with GitPod
.NET Framework: >= 4.6.1
.NET Core: >= 2.0.0
dotnet add package Consul

Curious about what's next? try the โšก preview version

Easy to Use

Consul.NET was designed by humans, for humans. It's meant to be intuitive, simple and easy to use.

Open-Source

Consul.NET is open-source and free to use. It's developed by the community and for the community.

Production Ready

Consul.NET is used in production by many companies and is battle-tested.

Supported APIs

Consul API: 1.7.14

This version indicates the version of Consul API that is fully supported. Recent versions may still work, but with some missing features.

โœ… supported ยท ๐Ÿšง in progress ยท โŒ not supported

GroupEndpointRouteStatus
Agent - BaseList MembersGET /v1/agent/membersโœ…
Read ConfigurationGET /v1/agent/selfโœ…
Reload AgentPUT /v1/agent/reloadโœ…
Enable Maintenance ModePUT /v1/agent/maintenanceโœ…
Join AgentGET /v1/agent/join/:idโœ…
Graceful Leave + ShutdownPUT /v1/agent/leaveโœ…
Force Leave + ShutdownPUT /v1/agent/force-leaveโœ…
Read Agent HostGET /v1/agent/hostโœ…
Read Agent HostGET /v1/agent/versionโœ…
Agent Health by Service IdGET /v1//agent/health/service/id/:service_idโœ…
Agent Health by Service NameGET /v1/agent/health/service/name/:nameโœ…
Force LeavePUT /v1/agent/force-leave/:nodeโœ…
Enable/Disable Service MaintenancePUT /v1/agent/service/maintenance/:serviceIdโœ…
Enable/Disable Node MaintenancePUT /v1/agent/maintenanceโœ…
Read Agent LogsGET /v1/agent/monitorโœ…
UpdateTokenOncePUT /v1/agent/token/:targetโœ…
Agent - ChecksList ChecksGET /v1/agent/checksโœ…
Register CheckPUT /v1/agent/check/registerโœ…
Deregister CheckPUT /v1/agent/check/deregister/:idโœ…
TLL Check PassGET /v1/agent/check/pass/:idโœ…
TLL Check WarnGET /v1/agent/check/warn/:idโœ…
TLL Check FailGET /v1/agent/check/fail/:idโœ…
TLL Check UpdateGET /v1/agent/check/update/:idโœ…
Agent - ServicesList ServicesGET /v1/agent/servicesโœ…
Register ServicePUT /v1/agent/service/registerโœ…
Deregister ServicePUT /v1/agent/service/deregister/:idโœ…
Enable Maintenance ModePUT /v1/agent/service/maintenance/:idโœ…
Get a locally registered serviceGET, /v1/agent/service/:serviceIdโœ…
CatalogList DatacentersGET /v1/catalog/datacentersโœ…
List Nodes in a given DCGET /v1/catalog/nodesโœ…
List Services in a given DCGET /v1/catalog/servicesโœ…
List Nodes for ServiceGET /v1/catalog/service/:idโœ…
List Services for NodeGET /v1/catalog/node/:idโœ…
Register Catalog ItemPUT /v1/catalog/registerโœ…
Deregister Catalog ItemPUT /v1/catalog/deregisterโœ…
Node Service ListGET, /v1/catalog/node-services/:nodeโœ…
CoordinatesRead WAN CoordinatesGET /v1/coordinates/datacentersโœ…
Read LAN CoordinatesGET /v1/coordinates/nodesโœ…
Read LAN Coordinates for a nodeGET /v1/coordinate/node/:nodeโœ…
EventsFire EventPUT /v1/event/fire/:nameโœ…
List EventsGET /v1/event/listโœ…
HealthList Checks for NodeGET /v1/health/node/:idโœ…
List Checks for ServiceGET /v1/health/checks/:idโœ…
List Nodes for ServiceGET /v1/health/service/:idโœ…
List Checks in StateGET /v1/health/state/:stateโœ…
List Nodes for connect-capable serviceGET /v1/health/connect/:serviceโœ…
KV StoreRead KeyGET /v1/kv/:keyโœ…
Create/Update KeyPUT /v1/kv/:keyโœ…
Delete KeyDELETE /v2/kv/:keyโœ…
NamespaceList NamespacesGET /v1/namespacesโœ…
Read NamespaceGET /v1/namespace/:nameโœ…
Create NamespacePUT /v1/namespaceโœ…
Update NamespacePUT /v1/namespace/:nameโœ…
Delete NamespaceDELETE /v1/namespace/:nameโœ…
SessionList SessionGET /v1/session/listโœ…
Create SessionPOST /v1/session/createโœ…
Destroy SessionPUT /v1/session/destroy/:idโœ…
Renew SessionPUT /v1/session/renew/:idโœ…
Info SessionGET /v1/session/node/:nodeโœ…
Destroy SessionPUT /v1/session/destroy/:idโœ…
List Sessions for NodeGET /v1/session/node/:nodeโœ…
StatusStatus of LeaderGET /v1/status/leaderโœ…
Status of PeersGET /v1/status/peersโœ…
TransactionTransactionPUT /v1/txnโœ…
ConfigRetrieve a specific configuration by kind and nameGET /v1/config/{kind}/{name}โœ…
List all configuration entries of a specific kindGET /v1/config/{kind}โœ…
Set a new configuration entryPUT /v1/configโœ…
Delete a specific configuration entry by kind and nameDELETE /v1/config/{kind}/{name}โœ