Quickstart
Get TAP running and your agent proxying requests in 5 minutes.
1. Sign up
Go to the dashboard and create an account. Your credentials are encrypted in hardware enclaves — keys never touch your machine.
Self-hosting? See Deployment for Docker Compose setup. After the proxy is running, open
http://localhost:3100/dashboardand follow the same steps below.
2. Add your credentials
In the dashboard, click Credentials and then + Add Credential.
TAP works with any API that uses key-based or token-based authentication. Most services follow the same pattern: select Standard API Key, give it a name, and paste the secret. Here are some common ones:
| Service | Where to find your key |
|---|---|
| OpenAI | platform.openai.com/api-keys |
| Anthropic | console.anthropic.com/settings/keys |
| GitHub | github.com/settings/tokens |
| Slack | api.slack.com/apps — Bot User OAuth Token |
| Stripe | dashboard.stripe.com/apikeys |
Any service with an API key or bearer token works the same way — just name it, paste the key, and your agent can use it. For OAuth-based services like Twitter/X and Google Workspace, the dashboard has dedicated forms that walk you through the flow. See Credential Setup Guides for the full list.
Add as many or as few credentials as you need. You can always add more later.
3. Create an agent
Go to Agents and click + Create Agent. Give it a name, select which credentials it can access, and click Create.
Copy the API key — it’s shown only once.
4. Connect your agent
In your project directory, install the TAP skills:
npx @nnsk/tapThen tell your agent:
/setup-tapIt will ask for your proxy URL and agent API key, configure the project, verify the connection, and list available credentials. Your agent can now make authenticated API calls through TAP.
5. Verify
After setup, your agent can list its available credentials:
curl -s "$TAP_PROXY_URL/agent/services" -H "X-TAP-Key: $TAP_AGENT_KEY"And make proxied requests:
curl -X POST "$TAP_PROXY_URL/forward" \
-H "X-TAP-Key: $TAP_AGENT_KEY" \
-H "X-TAP-Credential: openai" \
-H "X-TAP-Target: https://api.openai.com/v1/models" \
-H "X-TAP-Method: GET"By default, GET requests are auto-approved and write operations (POST, PUT, DELETE) require human approval via Telegram. You can customize this per credential in Policies & Approval.
Next steps
- Credential Setup Guides — add more services (Twitter, Google, Telegram, and others)
- Policies & Approval — customize which requests need human approval
- How It Works — understand the architecture and request flow