PDF ACCESS CLOUD / Documentation
Documentation
Everything you need to put a local HTTP application online.
Quick start
Before you begin
You need Node.js 22.13 or newer and an HTTP app running locally. Create an account, then create a tunnel in the dashboard. Save the connector token when it is shown; it cannot be retrieved later.
Start a tunnelKeep the connector token private
Set PAC_CONNECTOR_TOKEN in your shell, then run the downloaded connector. The token is separate from an API key and belongs to one tunnel. Rotate it in the dashboard if it is lost or exposed.
Download connector ↓# Set the token returned when you create a tunnel
read -rs PAC_CONNECTOR_TOKEN
export PAC_CONNECTOR_TOKEN
node connect.mjs --port 3000# Set the token returned when you create a tunnel
$secureToken = Read-Host 'Connector token' -AsSecureString
$env:PAC_CONNECTOR_TOKEN = [Net.NetworkCredential]::new('', $secureToken).Password
node connect.mjs --port 3000API reference
Create an API key in the dashboard. Send it in the Authorization header. API keys can manage your account’s tunnels and keys; protect them like a password. Connector tokens are only used by the connector.
curl https://pdf-access-cloud.com/api/tunnels \
-H "Authorization: Bearer $PAC_API_KEY"| Method | Endpoint | Purpose |
|---|---|---|
GET | /api/tunnels | List your tunnels |
POST | /api/tunnels | Create a tunnel; return token once |
DELETE | /api/tunnels/:id | Delete a tunnel and disconnect it |
POST | /api/tunnels/:id/token | Rotate a connector token |
GET | /api/keys | List API key metadata |
POST | /api/keys | Create an API key; return token once |
DELETE | /api/keys/:id | Revoke an API key |
POST /api/tunnels
Content-Type: application/json
{"name": "my-preview"}
201 Created
{
"tunnel": {
"id": "…",
"name": "my-preview",
"slug": "…",
"url": "https://….tunnel.pdf-access-cloud.com",
"status": "offline",
"requests": 0
},
"connectorToken": "…"
}Errors
Errors return JSON with an error message. 401 means missing or invalid credentials; 403 means the request is forbidden; 404 means the resource is unavailable; 409 means an account conflict; 429 means a limit was reached. Disconnected tunnels return 503.
OpenAPI 3.1 JSONScope and limits
The beta forwards HTTP requests and responses. It does not forward application WebSocket connections, arbitrary TCP/UDP, or live response streams. Request bodies are limited to 2 MiB, responses to 4 MiB, with a 30-second timeout. Your connector must stay running.
Up to 5 tunnels and 10 API keys per account. HTTP request bodies are limited to 2 MiB and response bodies to 4 MiB and requests time out after 30 seconds. WebSocket apps and streaming responses are not supported in this release.