Skip to main content
The InstaPods API is a RESTful HTTP API that powers the dashboard, CLI, and third-party integrations.

Base URL

https://api.instapods.com

Authentication

The API supports two authentication methods:

Bearer Token

Include an Authorization header with your token:
curl https://api.instapods.com/api/pods \
  -H "Authorization: Bearer YOUR_TOKEN"
Obtain a token by logging in via the API:
curl -X POST https://api.instapods.com/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email": "[email protected]", "password": "your-password"}'
The dashboard uses session cookies (instapod_session) set at login. This is handled automatically by the browser.

Request Format

  • All request bodies must be JSON with Content-Type: application/json
  • All responses are JSON

Error Responses

Errors return an appropriate HTTP status code with a JSON body:
{
  "error": "Pod not found"
}
Common status codes:
CodeMeaning
400Bad request — invalid input
401Unauthorized — missing or invalid token
403Forbidden — insufficient permissions
404Not found
429Rate limited
500Internal server error

Rate Limits

EndpointLimit
POST /api/auth/login5/minute per IP
POST /api/auth/register3/minute per IP
POST /api/auth/forgot-password3/minute per IP
POST /api/pods50/hour per IP

Endpoints Summary

Authentication

MethodPathDescription
POST/api/auth/registerCreate a new account
POST/api/auth/loginLog in and get a session
POST/api/auth/logoutLog out
GET/api/auth/userGet current user
POST/api/auth/forgot-passwordRequest password reset
POST/api/auth/reset-passwordReset password with token
POST/api/auth/verify-emailVerify email address

Pods

MethodPathDescription
GET/api/podsList all pods
POST/api/podsCreate a pod
GET/api/pods/{name}Get pod details
DELETE/api/pods/{name}Delete a pod
POST/api/pods/{name}/startStart a pod
POST/api/pods/{name}/stopStop a pod
POST/api/pods/{name}/restartRestart a pod
POST/api/pods/{name}/resizeResize a pod
POST/api/pods/{name}/cloneClone a pod
GET/api/pods/{name}/presetGet pod’s preset config

Files

MethodPathDescription
GET/api/pods/{name}/filesList files in a directory
GET/api/pods/{name}/files/contentRead a file
PUT/api/pods/{name}/files/contentWrite/update a file
POST/api/pods/{name}/files/uploadUpload a file
DELETE/api/pods/{name}/filesDelete a file
POST/api/pods/{name}/foldersCreate a folder

SSH

MethodPathDescription
GET/api/pods/{name}/sshGet SSH connection info
GET/api/pods/{name}/ssh/keysList SSH keys
POST/api/pods/{name}/ssh/keysAdd an SSH key
DELETE/api/pods/{name}/ssh/keysRemove an SSH key

Services

MethodPathDescription
GET/api/pods/{name}/servicesList installed services
POST/api/pods/{name}/servicesInstall a service
DELETE/api/pods/{name}/services/{type}Remove a service
GET/api/pods/{name}/services/{type}/credentialsGet service credentials

Domains

MethodPathDescription
GET/api/pods/{name}/domainsList custom domains
POST/api/pods/{name}/domainsAdd a custom domain
DELETE/api/pods/{name}/domains/{id}Remove a domain
POST/api/pods/{name}/domains/{id}/verifyVerify domain DNS

Logs & Events

MethodPathDescription
GET/api/pods/{name}/logsGet pod logs
GET/api/pods/{name}/eventsList pod events
GET/api/pods/{name}/metricsGet current metrics
GET/api/pods/{name}/metrics/historyGet metrics history

Teams

MethodPathDescription
GET/api/teamsList your teams
POST/api/teamsCreate a team
POST/api/teams/switchSwitch active team
GET/api/teams/{id}Get team details
PUT/api/teams/{id}Update a team
DELETE/api/teams/{id}Delete a team
GET/api/teams/{id}/membersList team members
POST/api/teams/{id}/membersAdd a team member
DELETE/api/teams/{id}/members/{uid}Remove a member

Billing

MethodPathDescription
GET/api/billing/subscriptionGet current subscription
POST/api/billing/subscribeSubscribe to a plan
PUT/api/billing/subscription/planChange plan
POST/api/billing/subscription/cancelCancel subscription
GET/api/billing/invoicesList invoices
GET/api/billing/payment-methodsList payment methods
POST/api/billing/payment-methodsAdd payment method

Catalog

MethodPathDescription
GET/api/plansList available plans
GET/api/presetsList available presets
GET/api/regionsList available regions
GET/api/runtimesList available runtimes