{"type":"api","title":"List Tunnels","meta":{"id":"/apps/pubhub/media/Meraki-Dashboard-API-v1-Documentation/426c8f7edc2cc0036fbe8fd4ce0d3ec2eda7fa14/de857a95-32cb-3f3c-8d64-0bf8514993f9","info":{"title":"Meraki Integrated API for Secure Connect","description":"The Cisco Meraki Integrated API for Secure Connect is a modern REST API based on the OpenAPI specification.\n ---\n\n [API Documentation](https://meraki.io/api)\n\n [Meraki Homepage](https://www.meraki.com)\n","version":"1.8.0","contact":{"name":"Meraki Developer Community","url":"https://meraki.io/community"}},"security":[{"meraki_api_key":[]},{"bearerAuth":[]}],"tags":[{"name":"Reports"},{"name":"Activity"},{"name":"Top Categories"},{"name":"Organization Requests by Timerange and Category"},{"name":"Total Requests"},{"name":"Summary"},{"name":"Applications"},{"name":"Deployments"},{"name":"Data Center"},{"name":"Network Devices"},{"name":"Organization Tunnel"},{"name":"Policy"},{"name":"Firewall Applications"},{"name":"Policies"},{"name":"Destination Lists"},{"name":"Destinations"}],"x-parser-conf":{"theme":"meraki","expand":2,"exampleAsDefault":true,"groupBy":{"$remoteModule":"config/group_api_tag.js"}},"openapi":"3.0.0","servers":[{"url":"https://api.meraki.com/{basePath}","variables":{"basePath":{"default":"api/secureConnect/v1"}}}],"securitySchemes":{"meraki_api_key":{"type":"apiKey","name":"X-Cisco-Meraki-API-Key","in":"header"},"bearerAuth":{"type":"apiKey","name":"Authorization","in":"header"}}},"spec":{"summary":"List Tunnels","operationId":"listTunnels","description":"List the tunnels for an organization.","security":[{"meraki_api_key":[]}],"tags":["Deployments","Organization Tunnel"],"parameters":[{"name":"organizationId","in":"path","description":"Organization ID associated with this resource.","required":true,"schema":{"type":"integer"}},{"in":"query","name":"includeState","schema":{"default":false,"type":"boolean"},"description":"Specify whether to include the tunnel state information in the response.","required":false},{"in":"query","name":"limit","description":"The number of items to return in the collection. If not set, all tunnels are returned.","required":false,"schema":{"type":"integer"}},{"in":"query","name":"startKey","description":"Specify where to start reading in the tunnel collection (`startKey` correlates to the first tunnel to return).\nIf the `startKey` query parameter is not included in the API request, Umbrella reads the collection from the first available tunnel.\nWhen the API request includes the `limit` query parameter and you have more tunnels to read,\nUmbrella returns the value of `startKey` for the next tunnel in the hypermedia Link header.","required":false,"schema":{"type":"string"}},{"in":"query","name":"filters","description":"Filters the tunnel list by tunnel name, device type, service type, status, data center, or site origin ID.\nFor example:\n```\n{\n \"name\": \"test\",\n \"deviceType\": \"ISR\",\n \"serviceType\": \"SIG\",\n \"status\": \"UP\",\n \"dataCenter\": \"pao1.edc\",\n \"siteOriginId\": 123\n}\n```","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"OKs","headers":{"Content-Type":{"schema":{"type":"string"},"description":"The MIME content type of the response body.","example":"application/json"},"Date":{"schema":{"type":"string","pattern":"^[0-90-90-90-9-0-90-9-0-90-9T0-90-9:0-90-9:0-90-9Z]+$"},"description":"The timestamp of the response.","example":"2023-03-14T18:34:25Z"},"Total-Item-Count":{"schema":{"type":"string"},"description":"The total number of active, inactive, and unestablished tunnels in the organization.","example":"500"},"Total-Distinct-DC-Count":{"schema":{"type":"string"},"description":"The number of distinct data centers in the organization.","example":"2"},"Total-Active-Item-Count":{"schema":{"type":"string"},"description":"The total number of active tunnels in the organization.","example":"5"},"Total-Inactive-Item-Count":{"schema":{"type":"string"},"description":"The total number of inactive tunnels in the organization.","example":"10"},"Link":{"schema":{"type":"string"},"description":"The hypermedia links are formatted as a string. Use to provide parameters for pagination.\nOnly available if request limits the number of tunnels returned.\nThe link is a relative path. The `rel` value is always `next` (pagination moves forward)."}},"content":{"application/json":{"schema":{"type":"array","items":{"type":"object","description":"Get the information about the tunnel in the organization.\nTo include the tunnel state information in the response, set the `includeState` request query parameter to `true`.","properties":{"id":{"type":"integer","readOnly":true,"description":"The tunnel resource ID. Use this ID as a reference for subsequent requests.","example":1122321},"uri":{"type":"string","description":"Resource URI","readOnly":true,"example":"/organization/2345432/tunnels/1122321"},"name":{"type":"string","description":"The display name of the tunnel. The tunnel name is required, cannot exceed 50 characters in length,\nand cannot have any special characters other than spaces and hyphens.","example":"Site01Tunnel"},"siteOriginId":{"type":"integer","description":"Site Origin ID to associate with the tunnel","example":123456},"client":{"type":"object","description":"The tunnel client's configuration metadata.","properties":{"deviceType":{"type":"string","description":"The type of device where the tunnel originates. The default value is `other`.","enum":["ASA","FTD","ISR","Meraki MX","Viptela cEdge","Viptela vEdge","other"]},"authentication":{"type":"object","description":"The authentication context of the client.","properties":{"type":{"type":"string","enum":["PSK"],"example":"PSK","readOnly":true},"parameters":{"type":"object","properties":{"id":{"type":"string","description":"The PSK ID. If an IP address is used as the ID, the IP address is the value of this field.","readOnly":true,"example":"admin@2561066-237952254-umbrella.com"},"modifiedAt":{"type":"string","format":"date-time","description":"The date and time (timestamp) that Umbrella updated the tag on the roaming computer.\nThe timestamp is an ISO 8601 formatted string. For example: `2023-04-12T23:20:50.52Z`.","example":"2022-04-12T23:20:50.52Z"}}}}}}},"transport":{"type":"object","properties":{"protocol":{"description":"The tunnel transport protocol. The default is IPSec.","type":"string","enum":["IPSec"],"readOnly":true,"example":"IPSec"}}},"serviceType":{"type":"string","description":"The type of service to associate with the tunnel. The default value is `SIG`.","enum":["SIG","Private Access"],"example":"SIG"},"networkCIDRs":{"type":"array","description":"Enter IPv4 ranges and CIDR addresses.\nIf `serviceType` is SIG, add all public and private address ranges used internally\nby your organization. Overrides Umbrella's default behavior,\nwhich allows traffic that is destined for RFC-1918 addresses to return through the tunnel.\nIf `serviceType` is Private Access, this field is required.\nThe 0.0.0.0/0 address range is not allowed.","items":{"type":"string","description":"An IPv4 CIDR range.","example":"111.222.39.1/32"},"example":["123.111.222.25/24","111.222.39.1/32"]},"meta":{"type":"object","description":"The metadata for the tunnel object that relates to service internals.","readOnly":true,"properties":{"state":{"title":"tunnelState","description":"The tunnel state information.","properties":{"tunnelId":{"type":"string","readOnly":true,"description":"The tunnel ID.","example":"163367136"},"status":{"type":"string","readOnly":true,"description":"The high-level tunnel status:\n* up - the tunnel is active\n* down - the tunnel is inactive\n* failed - the tunnel is in a failed state\n* unknown - the status is unknown and pending updated information\n","enum":["UP","DOWN","FAILED","UNKNOWN"],"example":"UP"},"dc":{"type":"string","readOnly":true,"description":"The domain name that is associate with the data center.","example":"chi1.edc"},"dcName":{"type":"string","readOnly":true,"description":"The name of the data center.","example":"Equinix Chicago"},"dcDesc":{"type":"string","readOnly":true,"description":"The city and country or region of the data center.","example":"Chicago, Illinois - US"},"ikeState":{"type":"string","readOnly":true,"description":"IKE SA State:\n * CREATED\n * CONNECTING\n * ESTABLISHED\n * PASSIVE\n * REKEYING\n * REKEYED\n * DELETING\n * DESTROYING\n","enum":["CREATED","CONNECTING","ESTABLISHED","PASSIVE","REKEYING","REKEYED","DELETING","DESTROYING"],"example":"ESTABLISHED"},"ipsecState":{"type":"string","readOnly":true,"description":"IPSec/Child SA State:\n * CREATED\n * ROUTED\n * INSTALLING\n * INSTALLED\n * UPDATING\n * REKEYING\n * REKEYED\n * RETRYING\n * DELETING\n * DELETED\n * DESTROYING\n","enum":["CREATED","ROUTED","INSTALLING","INSTALLED","UPDATING","REKEYING","REKEYED","RETRYING","DELETING","DELETED","DESTROYING"],"example":"INSTALLED"},"peerId":{"type":"string","readOnly":true,"description":"The remote peer IKE ID.","example":"unique-value@1234567-234567812-umbrella.com"},"peerIp":{"type":"string","readOnly":true,"description":"The remote peer IP.","example":"198.18.195.1"},"localIp":{"type":"string","readOnly":true,"description":"The public IP address, which is assigned to an endpoint device (ISR, Viptela).","example":"198.25.43.19"},"peerPort":{"type":"string","readOnly":true,"description":"The port number of the remote peer.","example":"4500"},"ike":{"title":"tunnelIKEState","description":"The tunnel IKE session state.","properties":{"age":{"type":"string","readOnly":true,"description":"The age of the established state in seconds.","example":"6194"},"dhGroup":{"type":"string","readOnly":true,"description":"The IKE Diffie-Hellman group.","example":"MODP_2048"},"prfAlgo":{"type":"string","readOnly":true,"description":"The IKE pseudo random function.","example":"PRF_HMAC_SHA1"},"encAlgo":{"type":"string","readOnly":true,"description":"The IKE encryption algorithm.","example":"AES_CBC"},"initiatorSpi":{"type":"string","readOnly":true,"description":"The hex encoded initiator SPI or cookie.","example":"cf065c564a511834"},"responderSpi":{"type":"string","readOnly":true,"description":"The hex encoded responder SPI or cookie.","example":"a3cd5c8533c80069"}}},"ipsec":{"title":"tunnelIPSecState","description":"The tunnel IPsec session state.","properties":{"age":{"type":"string","readOnly":true,"description":"The age of the installed state in seconds.","example":"6194"},"integrityAlgo":{"type":"string","readOnly":true,"description":"The ESP or AH integrity algorithm name.","example":"HMAC_SHA1_96"},"encAlgo":{"type":"string","readOnly":true,"description":"The ESP encryption algorithm name.","example":"NULL"},"encKeySize":{"type":"string","readOnly":true,"description":"The ESP encryption key size (optional field; not available with NULL encryption.","example":"128"},"spiIn":{"type":"string","readOnly":true,"description":"The hex encoded inbound SPI.","example":"c6ef7503"},"spiOut":{"type":"string","readOnly":true,"description":"The hex encoded outbound SPI.","example":"00010102"},"peerSelectors":{"type":"array","readOnly":true,"description":"The peer traffic selectors.","items":{"type":"string","description":"The selector expression.","example":"0.0.0.0/0"}}}},"data":{"title":"tunnelDataState","description":"The state of the tunnel's data plane.","properties":{"packetsIn":{"type":"string","readOnly":true,"description":"The number of processed input packets (tunnel ingress).","example":"10"},"bytesIn":{"type":"string","readOnly":true,"description":"The number of processed input bytes (tunnel ingress).","example":"1000"},"idleTimeIn":{"type":"string","readOnly":true,"description":"The idle time (seconds since last inbound packet).","example":"100"},"packetsOut":{"type":"string","readOnly":true,"description":"The number of processed output packets (tunnel egress).","example":"10"},"bytesOut":{"type":"string","readOnly":true,"description":"The number of processed output bytes (tunnel egress).","example":"1000"},"idleTimeOut":{"type":"string","readOnly":true,"description":"The idle time (seconds since last outbound packet).","example":"100"},"initialized":{"type":"string","readOnly":true,"description":"The time when packet and byte counters were initialized to 0.","example":"2023-10-19T22:15:12.765623734Z"}}},"modifiedAt":{"type":"string","readOnly":true,"format":"date-time","description":"The date and time (UTC time with milliseconds) when the tunnel's state was last updated.","example":"2018-06-13T16:07:07.222Z"}}}}},"createdAt":{"type":"string","format":"date-time","description":"The date and n time (UTC time with milliseconds) when the tunnel was created.","readOnly":true,"example":"2018-06-13T16:07:07.222Z"},"modifiedAt":{"type":"string","format":"date-time","description":"The date and time (timestamp) that Umbrella updated the tag on the roaming computer.\nThe timestamp is an ISO 8601 formatted string. For example: `2023-04-12T23:20:50.52Z`.","example":"2022-04-12T23:20:50.52Z"}}}},"example":[{"id":1122321,"uri":"/tunnels/1122321","name":"Site01Tunnel","siteOriginId":123456,"client":{"deviceType":"ASA","authentication":{"type":"PSK","parameters":{"id":"admin@2561066-237952254-umbrella.com","modifiedAt":"2018-06-13T16:07:07.222Z"}}},"transport":{"protocol":"IPSec"},"serviceType":"SIG","networkCIDRs":["123.111.222.25/24","111.222.39.1/32"],"meta":{},"createdAt":"2018-06-13T16:07:07.222Z","modifiedAt":"2018-06-13T16:07:07.222Z"}]}}},"400":{"description":"Bad Request","headers":{"Content-Type":{"schema":{"type":"string"},"description":"The MIME content type of the response body.","example":"application/json"},"Date":{"schema":{"type":"string","pattern":"^[0-90-90-90-9-0-90-9-0-90-9T0-90-9:0-90-9:0-90-9Z]+$"},"description":"The timestamp of the response.","example":"2023-03-14T18:34:25Z"}},"content":{"application/json":{"schema":{"type":"object","minProperties":3,"required":["statusCode","error","txId"],"properties":{"statusCode":{"type":"integer","example":400,"description":"HTTP status code"},"error":{"type":"string","example":"Validation Error","description":"a brief description of the error"},"txId":{"type":"string","example":"86e189a6-0124-47d3-a32c-25ff3f07deaf","description":"a unique hex number that can be used for debugging"},"validationErrors":{"type":"object","properties":{"someProperty":{"type":"string","example":"must not be empty","description":"the name of the property failing validation."}}}}}}}},"401":{"description":"Unauthorized","headers":{"Content-Type":{"schema":{"type":"string"},"description":"The MIME content type of the response body.","example":"application/json"},"Date":{"schema":{"type":"string","pattern":"^[0-90-90-90-9-0-90-9-0-90-9T0-90-9:0-90-9:0-90-9Z]+$"},"description":"The timestamp of the response.","example":"2023-03-14T18:34:25Z"}},"content":{"application/json":{"schema":{"description":"Unauthorized","type":"object","properties":{"statusCode":{"type":"integer","example":401,"description":"HTTP status code"},"error":{"type":"string","example":"Unauthorized","description":"The authorization header is missing or the token is unauthorized"},"message":{"type":"string","description":"Detailed error message"}}}}}},"403":{"description":"Forbidden","headers":{"Content-Type":{"schema":{"type":"string"},"description":"The MIME content type of the response body.","example":"application/json"},"Date":{"schema":{"type":"string","pattern":"^[0-90-90-90-9-0-90-9-0-90-9T0-90-9:0-90-9:0-90-9Z]+$"},"description":"The timestamp of the response.","example":"2023-03-14T18:34:25Z"}},"content":{"application/json":{"schema":{"description":"Forbidden","type":"object","properties":{"statusCode":{"type":"integer","example":403,"description":"HTTP status code"},"error":{"type":"string","example":"Forbidden, Invalid authentication credentials","description":"a brief description of the error"},"message":{"type":"string","description":"Detailed error message"}}}}}},"404":{"description":"Not found","headers":{"Content-Type":{"schema":{"type":"string"},"description":"The MIME content type of the response body.","example":"application/json"},"Date":{"schema":{"type":"string","pattern":"^[0-90-90-90-9-0-90-9-0-90-9T0-90-9:0-90-9:0-90-9Z]+$"},"description":"The timestamp of the response.","example":"2023-03-14T18:34:25Z"}},"content":{"application/json":{"schema":{"description":"Not Found","type":"object","properties":{"statusCode":{"type":"integer","example":404,"description":"HTTP status code"},"error":{"type":"string","example":"Not Found","description":"A brief description of the error"},"message":{"type":"string","description":"Detailed error message"}}}}}},"500":{"description":"Internal Server Error","headers":{"Content-Type":{"schema":{"type":"string"},"description":"The MIME content type of the response body.","example":"application/json"},"Date":{"schema":{"type":"string","pattern":"^[0-90-90-90-9-0-90-9-0-90-9T0-90-9:0-90-9:0-90-9Z]+$"},"description":"The timestamp of the response.","example":"2023-03-14T18:34:25Z"}},"content":{"application/json":{"schema":{"type":"object","minProperties":3,"required":["statusCode","error","txId"],"properties":{"statusCode":{"type":"integer","example":500,"description":"HTTP status code"},"error":{"type":"string","example":"Internal Server Error","description":"a brief description of the error"},"txId":{"type":"string","example":"86e189a6-0124-47d3-a32c-25ff3f07deaf","description":"a unique hex number that can be used for debugging"}}}}}}},"__originalOperationId":"listTunnels","method":"get","path":"/organizations/{organizationId}/tunnels"}}