> ## Documentation Index
> Fetch the complete documentation index at: https://ngrok.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Get

> Get the status of a tunnel by ID




## OpenAPI

````yaml https://raw.githubusercontent.com/ngrok/ngrok-openapi/refs/heads/main/ngrok.yaml get /tunnels/{id}
openapi: 3.0.0
info:
  title: ngrok OpenAPI
  version: 1.0.0
servers:
  - url: https://api.ngrok.com
security:
  - authentication: []
paths:
  /tunnels/{id}:
    get:
      tags:
        - Tunnels
      summary: Get
      description: |
        Get the status of a tunnel by ID
      operationId: TunnelsGet
      parameters:
        - $ref: '#/components/parameters/ngrokVersion'
        - name: id
          description: |
            a resource identifier
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: |
            Get the status of a tunnel by ID
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tunnel'
components:
  parameters:
    ngrokVersion:
      name: ngrok-version
      in: header
      required: true
      schema:
        type: integer
        default: 2
  schemas:
    Tunnel:
      type: object
      properties:
        id:
          description: |
            unique tunnel resource identifier
          type: string
        public_url:
          description: |
            URL of the ephemeral tunnel's public endpoint
          type: string
        started_at:
          description: |
            timestamp when the tunnel was initiated in RFC 3339 format
          type: string
        metadata:
          description: >
            user-supplied metadata for the tunnel defined in the ngrok
            configuration file. See the tunnel [metadata configuration
            option](https://ngrok.com/docs/secure-tunnels/ngrok-agent/reference/config#common-tunnel-configuration-properties)
            In API version 0, this value was instead pulled from the top-level
            [metadata configuration
            option](https://ngrok.com/docs/secure-tunnels/ngrok-agent/reference/config#metadata).
          type: string
        proto:
          description: >
            tunnel protocol for ephemeral tunnels. one of `http`, `https`, `tcp`
            or `tls`
          type: string
        region:
          description: |
            identifier of tune region where the tunnel is running
          type: string
        tunnel_session:
          $ref: '#/components/schemas/Ref'
          description: >
            reference object pointing to the tunnel session on which this tunnel
            was started
        endpoint:
          $ref: '#/components/schemas/Ref'
          description: >
            the ephemeral endpoint this tunnel is associated with, if this is an
            agent-initiated tunnel
        labels:
          description: >
            the labels the tunnel group backends will match against, if this is
            a backend tunnel
          type: object
        backends:
          description: |
            tunnel group backends served by this backend tunnel
          type: array
          items:
            $ref: '#/components/schemas/Ref'
        forwards_to:
          description: >
            upstream address the ngrok agent forwards traffic over this tunnel
            to. this may be expressed as a URL or a network address.
          type: string
    Ref:
      type: object
      properties:
        id:
          description: |
            a resource identifier
          type: string
        uri:
          description: |
            a uri for locating a resource
          type: string
  securitySchemes:
    authentication:
      type: http
      scheme: bearer

````