Consul Connect website screenshot

Consul Connect

Consul Connect is the service mesh subsystem of HashiCorp Consul. Connect provides service identity, mTLS, traffic authorization via intentions, and L7 traffic management through Envoy sidecar proxies. Consul Connect ships with a built-in certificate authority that can also be backed by Vault or external PKI, supports mesh, terminating, ingress, and API gateways, and spans virtual machines, Kubernetes, AWS ECS, AWS Lambda, and Nomad runtimes. Operators interact with Connect through the consul CLI, the HTTP API, configuration entries, and Kubernetes Custom Resource Definitions.

3 APIs 0 Features
ConsulEnvoyHashiCorpIntentionsKubernetesmTLSService MeshSidecarZero Trust

APIs

Consul Connect HTTP API

The HTTP API exposed by Consul agents under /v1/connect for managing intentions, the Connect certificate authority, and related mesh operations. Connect-related endpoints also e...

Consul Connect Configuration Entries

Consul Connect configuration entries (service-defaults, service-resolver, service-router, service-splitter, service-intentions, mesh, proxy-defaults) that declaratively configur...

Consul Connect Gateways

Consul Connect supports four gateway types for traffic flowing into and out of the mesh: mesh gateways for cross-datacenter and cross-partition traffic, ingress gateways for Nor...

Collections

Pricing Plans

Rate Limits

Consul Connect Rate Limits

4 limits

RATE LIMITS

FinOps

Semantic Vocabularies

Consul Connect Context

0 classes · 4 properties

JSON-LD

API Governance Rules

Consul Connect API Rules

6 rules · 3 errors 3 warnings

SPECTRAL

Resources

🔗
Website
Website
🔗
JSONLD
JSONLD
🔗
JSONSchema
JSONSchema
🔗
Vocabulary
Vocabulary
🔗
SpectralRules
SpectralRules
🔗
Capability
Capability
🔗
Capability
Capability
🔗
Documentation
Documentation
🔗
Documentation
Documentation
👥
GitHubRepository
GitHubRepository
👥
GitHubOrganization
GitHubOrganization
🔗
Issue Tracker
Issue Tracker
📄
ChangeLog
ChangeLog
🔗
License
License

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: HashiCorp Consul Connect API
  version: 1.0.0
request:
  auth:
    type: apikey
    key: X-Consul-Token
    value: '{{X-Consul-Token}}'
    placement: header
items:
- info:
    name: Intentions
    type: folder
  items:
  - info:
      name: List all intentions
      type: http
    http:
      method: GET
      url: http://localhost:8500/v1/connect/intentions
      params:
      - name: ns
        value: ''
        type: query
        description: Namespace (Consul Enterprise)
      - name: partition
        value: ''
        type: query
        description: Admin partition (Consul Enterprise)
      - name: filter
        value: ''
        type: query
        description: Filter expression for intentions
    docs: List all intentions
  - info:
      name: Read intention by source and destination
      type: http
    http:
      method: GET
      url: http://localhost:8500/v1/connect/intentions/exact
      params:
      - name: source
        value: ''
        type: query
      - name: destination
        value: ''
        type: query
      - name: ns
        value: ''
        type: query
        description: Namespace (Consul Enterprise)
      - name: partition
        value: ''
        type: query
        description: Admin partition (Consul Enterprise)
    docs: Read intention by source and destination
  - info:
      name: Create or replace intention by source and destination
      type: http
    http:
      method: PUT
      url: http://localhost:8500/v1/connect/intentions/exact
      params:
      - name: source
        value: ''
        type: query
      - name: destination
        value: ''
        type: query
      body:
        type: json
        data: '{}'
    docs: Create or replace intention by source and destination
  - info:
      name: Delete intention by source and destination
      type: http
    http:
      method: DELETE
      url: http://localhost:8500/v1/connect/intentions/exact
      params:
      - name: source
        value: ''
        type: query
      - name: destination
        value: ''
        type: query
    docs: Delete intention by source and destination
  - info:
      name: Check if a connection would be authorized
      type: http
    http:
      method: GET
      url: http://localhost:8500/v1/connect/intentions/check
      params:
      - name: source
        value: ''
        type: query
      - name: destination
        value: ''
        type: query
    docs: Check if a connection would be authorized
  - info:
      name: List intentions matching a source or destination
      type: http
    http:
      method: GET
      url: http://localhost:8500/v1/connect/intentions/match
      params:
      - name: by
        value: ''
        type: query
      - name: name
        value: ''
        type: query
    docs: List intentions matching a source or destination
- info:
    name: CA
    type: folder
  items:
  - info:
      name: List CA root certificates
      type: http
    http:
      method: GET
      url: http://localhost:8500/v1/connect/ca/roots
      params:
      - name: pem
        value: ''
        type: query
    docs: List CA root certificates
  - info:
      name: Get CA configuration
      type: http
    http:
      method: GET
      url: http://localhost:8500/v1/connect/ca/configuration
    docs: Get CA configuration
  - info:
      name: Update CA configuration
      type: http
    http:
      method: PUT
      url: http://localhost:8500/v1/connect/ca/configuration
      params:
      - name: ForceWithoutCrossSigning
        value: ''
        type: query
      body:
        type: json
        data: '{}'
    docs: Update CA configuration
bundled: true