---
title: "The session's exposed ports, oldest first [read]"
method: GET
path: "/sessions/{id}/ports"
---

# The session's exposed ports, oldest first \[read\]

`GET /sessions/{id}/ports`

## Request

- Base URL: `https://api.agentsky.dev/v1`
- URL: `https://api.agentsky.dev/v1/sessions/{id}/ports`
- Auth: HTTP bearer

Every local server the agent runs inside the pod that has been exposed on an origin of its own.

## Path parameters

- `id` string, required

## Response `200`

OK

- SessionPortList
  - `ports` SessionPort[], required
    - `port` integer, required: What the app listens on inside the pod
    - `id` string, required: Names the origin; not a credential
    - `url` string, required: https://app-<id>.agentsky.dev/ — stable for the port's life
    - `visibility` 'private' | 'public', required
    - `created_at` string, date-time, required

## Other responses

- `default`: Error — { error: { code, message, request_id } }

## Changes

- **2026-11-02** `e5e8f0229a99`: 4 info
  - added the optional property `error/request_id` to the response with the `default` status
  - the response property `error` became required for the status `default`
  - the response property `error/code` became required for the status `default`
  - the response property `error/message` became required for the status `default`

[Operation history](https://skmtc.dev/agentsky/apis/agentsky-developer-api/changes/sessions/:id/ports/get.md)

---

[API](https://skmtc.dev/agentsky/apis/agentsky-developer-api.md) - [All operations](https://skmtc.dev/agentsky/apis/agentsky-developer-api/llms.txt) - [OpenAPI document](https://skmtc.dev/agentsky/apis/agentsky-developer-api/revisions/0d435187cd55?raw)
