openapi: 3.1.0 info: title: ExpressTech Systems API version: '2026-10-18' description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-10-18: 25 operation(s) read from 40 public documentation page(s) (each operation names its page in x-source). This is not the provider''s published contract; ExpressTech Systems has published no machine-readable contract that the pipeline could find. Engine: anthropic.' x-evidence-tiers: code-example: 25 documentation: 0 pages-with-code: 23 pages-read: 40 x-generated-from: documentation x-provenance: generated x-authored-by: API Evangelist x-generated: '2026-10-18' x-generator: generate-contract-from-docs.py x-engine: anthropic x-sources: - https://docs.instapods.com/api-reference/git.md - https://docs.instapods.com/api-reference/pods.md - https://docs.instapods.com/api-reference/files.md - https://docs.instapods.com/api-reference/overview - https://docs.instapods.com/api-reference/teams.md - https://docs.instapods.com/api-reference/billing.md - https://docs.instapods.com/api-reference/imports.md - https://docs.instapods.com/api-reference/feedback.md - https://docs.instapods.com/api-reference/overview.md - https://docs.instapods.com/api-reference/services.md - https://docs.instapods.com/api-reference/ssh-keys.md - https://docs.instapods.com/api-reference/affiliate.md - https://docs.instapods.com/api-reference/api-tokens.md - https://docs.instapods.com/quickstart.md - https://docs.instapods.com/guides/operations.md - https://docs.instapods.com/guides/one-click-apps.md - https://docs.instapods.com/quickstart - https://docs.instapods.com/getting-started/concepts.md - https://docs.instapods.com/getting-started/managing-pods.md - https://docs.instapods.com/getting-started/creating-a-pod.md - https://docs.instapods.com/cli/installation.md - https://docs.instapods.com/cli/authentication.md - https://docs.instapods.com/api-reference/pods - https://docs.instapods.com/api-reference/imports - https://docs.instapods.com/api-reference/git - https://docs.instapods.com/api-reference/files - https://docs.instapods.com/api-reference/services - https://docs.instapods.com/api-reference/ssh-keys - https://docs.instapods.com/api-reference/feedback - https://docs.instapods.com/api-reference/teams - https://docs.instapods.com/api-reference/billing - https://docs.instapods.com/api-reference/api-tokens - https://docs.instapods.com/api-reference/affiliate - https://docs.instapods.com/introduction - https://docs.instapods.com/cli/installation - https://docs.instapods.com/getting-started/concepts - https://docs.instapods.com/getting-started/creating-a-pod - https://docs.instapods.com/getting-started/managing-pods - https://docs.instapods.com/dashboard/backups - https://docs.instapods.com/dashboard/account-settings servers: - url: https://app.instapods.com paths: /api/account/delete: post: operationId: post_api_account_delete tags: - Api summary: POST /api/account/delete x-source: https://docs.instapods.com/dashboard/account-settings requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiAccountDeleteRequest' responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl -X POST https://app.instapods.com/api/account/delete -H "Authorization: Bearer YOUR_TOKEN" -H "Content-Type: application/json" -d ''{"password": "your-password"}'' ' /api/account/deletion-preview: get: operationId: get_api_account_deletion_preview tags: - Api summary: GET /api/account/deletion-preview x-source: https://docs.instapods.com/dashboard/account-settings responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl https://app.instapods.com/api/account/deletion-preview -H "Authorization: Bearer YOUR_TOKEN" ' /api/account/sessions: get: operationId: get_api_account_sessions tags: - Api summary: GET /api/account/sessions x-source: https://docs.instapods.com/dashboard/account-settings responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl https://app.instapods.com/api/account/sessions -H "Authorization: Bearer YOUR_TOKEN" ' /api/account/sessions/{sessionid}: delete: operationId: delete_api_account_sessions_sessionid tags: - Api summary: DELETE /api/account/sessions/{sessionId} x-source: https://docs.instapods.com/dashboard/account-settings parameters: - name: sessionid in: path required: true schema: type: string responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X DELETE https://app.instapods.com/api/account/sessions/SESSION_ID -H \"Authorization: Bearer YOUR_TOKEN\" \n Session\ \ tokens are never returned by the list — only where each session came from and when. \n ​ Deleting Your Account \n You can delete your\ \ own account from Account → Danger Zone . Nobody has to do it for you and\nthere’s no ticket to file. \n Deletion is permanent and\ \ immediate. Every p" /api/auth/login: post: operationId: post_api_auth_login tags: - Api summary: POST /api/auth/login x-source: https://docs.instapods.com/api-reference/overview requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiAuthLoginRequest' responses: '201': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/PostApiAuthLoginResponse' x-evidence: kind: code-example language: curl snippet: "curl -X POST https://app.instapods.com/api/auth/login -H \"Content-Type: application/json\" -d '{\"email\": \"you@example.com\"\ , \"password\": \"your-password\"}' \n Manage API tokens over the API too: \n Method Path Description GET /api/api-tokens List your\ \ tokens (metadata only) POST /api/api-tokens Create a token - returns the raw value once DELETE /api/api-tokens/{id} Revoke a token\ \ \n ​ Session Cookie \n" /api/imports: post: operationId: post_api_imports tags: - Api summary: POST /api/imports x-source: https://docs.instapods.com/api-reference/imports.md requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiImportsRequest' responses: '201': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/PostApiImportsResponse' x-evidence: kind: code-example language: curl snippet: 'curl -X POST https://app.instapods.com/api/imports -H "Authorization: Bearer YOUR_TOKEN" -H "Content-Type: application/json" -d ''{"url": "https://example.com", "mode": "site", "max_pages": 25}'' ```' /api/pods: get: operationId: get_api_pods tags: - Api summary: GET /api/pods x-source: https://docs.instapods.com/api-reference/overview responses: '200': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/GetApiPodsResponse' x-evidence: kind: code-example language: curl snippet: "curl https://app.instapods.com/api/pods -H \"Authorization: Bearer YOUR_TOKEN\" \n For anything unattended, use an API token\ \ . Create one in the dashboard under Settings → API Tokens ; it starts with ipk_ , is shown only once, and doesn’t expire unless you\ \ give it an expiry. It is bound to the team that was active when you created it, so it always acts on the same team. " post: operationId: post_api_pods tags: - Api summary: POST /api/pods x-source: https://docs.instapods.com/quickstart.md requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiPodsRequest' responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X POST https://app.instapods.com/api/pods -H \"Authorization: Bearer YOUR_TOKEN\" -H \"Content-Type: application/json\"\ \ -d '{\n \"name\": \"my-first-app\",\n \"preset\": \"nodejs\",\n \"plan_slug\": \"launch\"\n }'\n ```\n\ \ \n" /api/pods/from-zip: post: operationId: post_api_pods_from_zip tags: - Api summary: POST /api/pods/from-zip x-source: https://docs.instapods.com/api-reference/pods.md responses: '201': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/PostApiPodsFromZipResponse' x-evidence: kind: code-example language: curl snippet: 'curl -X POST https://app.instapods.com/api/pods/from-zip -H "Authorization: Bearer YOUR_TOKEN" -F "zip=@my-project.zip" -F "name=my-app" ```' /api/pods/my-app: delete: operationId: delete_api_pods_my_app tags: - Api summary: DELETE /api/pods/my-app x-source: https://docs.instapods.com/getting-started/managing-pods.md responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X DELETE https://app.instapods.com/api/pods/my-app -H \"Authorization: Bearer YOUR_TOKEN\"\n ```\n \n" get: operationId: get_api_pods_my_app tags: - Api summary: GET /api/pods/my-app x-source: https://docs.instapods.com/getting-started/managing-pods.md responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl https://app.instapods.com/api/pods/my-app -H \"Authorization: Bearer YOUR_TOKEN\"\n ```\n \n" /api/pods/my-app/apps/crm/setup: get: operationId: get_api_pods_my_app_apps_crm_setup tags: - Api summary: GET /api/pods/my-app/apps/crm/setup x-source: https://docs.instapods.com/guides/one-click-apps.md responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl https://app.instapods.com/api/pods/my-app/apps/crm/setup -H "Authorization: Bearer YOUR_TOKEN"' post: operationId: post_api_pods_my_app_apps_crm_setup tags: - Api summary: POST /api/pods/my-app/apps/crm/setup x-source: https://docs.instapods.com/guides/one-click-apps.md requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiPodsMyAppAppsCrmSetupRequest' responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl -X POST https://app.instapods.com/api/pods/my-app/apps/crm/setup -H "Authorization: Bearer YOUR_TOKEN" -H "Content-Type: application/json" -d ''{"vars": {"GOOGLE_CLIENT_ID": "...", "GOOGLE_CLIENT_SECRET": "..."}}'' ```' /api/pods/my-app/apps/n8n/update: post: operationId: post_api_pods_my_app_apps_n8n_update tags: - Api summary: POST /api/pods/my-app/apps/n8n/update x-source: https://docs.instapods.com/guides/one-click-apps.md responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X POST https://app.instapods.com/api/pods/my-app/apps/n8n/update -H \"Authorization: Bearer YOUR_TOKEN\"\n ```" /api/pods/my-app/apps/vaultwarden/credentials: get: operationId: get_api_pods_my_app_apps_vaultwarden_credentials tags: - Api summary: GET /api/pods/my-app/apps/vaultwarden/credentials x-source: https://docs.instapods.com/guides/one-click-apps.md responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl https://app.instapods.com/api/pods/my-app/apps/vaultwarden/credentials -H "Authorization: Bearer YOUR_TOKEN" ```' /api/pods/my-app/backups: post: operationId: post_api_pods_my_app_backups tags: - Api summary: POST /api/pods/my-app/backups x-source: https://docs.instapods.com/dashboard/backups requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiPodsMyAppBackupsRequest' responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X POST https://app.instapods.com/api/pods/my-app/backups -H \"Authorization: Bearer YOUR_TOKEN\" -H \"Content-Type:\ \ application/json\" -d '{\"note\": \"before the v2 upgrade\"}' \n Returns 202 Accepted with the backup record. Poll GET /api/pods/my-app/backups/{backupId}\ \ until status is completed . \n ​ Restoring \n Restoring rewinds the pod’s data to the moment the backup was taken. \n A restore is\ \ d" /api/pods/my-app/backups/import: post: operationId: post_api_pods_my_app_backups_import tags: - Api summary: POST /api/pods/my-app/backups/import x-source: https://docs.instapods.com/dashboard/backups responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X POST https://app.instapods.com/api/pods/my-app/backups/import -H \"Authorization: Bearer YOUR_TOKEN\" -F \"file=@my-app-backup.tar.gz\"\ \ -F \"note=Imported from staging\" \n Uploads are capped at 2 GB and count against your plan’s retention limit. \n Import the archive\ \ into a pod of the same shape as the one it came from. A backup only carries the paths its source pod used, so restoring a Node.j" /api/pods/my-app/events: get: operationId: get_api_pods_my_app_events tags: - Api summary: GET /api/pods/my-app/events x-source: https://docs.instapods.com/api-reference/pods.md responses: '200': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/GetApiPodsMyAppEventsResponse' x-evidence: kind: code-example language: curl snippet: 'curl -s -H "Authorization: Bearer $INSTAPOD_TOKEN" https://app.instapods.com/api/pods/my-app/events | jq -r ''.[] | select(.type=="deploy_failed") | (.metadata | fromjson).class'' | sort | uniq -c ```' /api/pods/my-app/files/upload-archive: post: operationId: post_api_pods_my_app_files_upload_archive tags: - Api summary: POST /api/pods/my-app/files/upload-archive x-source: https://docs.instapods.com/api-reference/files.md responses: '201': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/PostApiPodsMyAppFilesUploadArchiveResponse' x-evidence: kind: code-example language: curl snippet: 'curl -X POST https://app.instapods.com/api/pods/my-app/files/upload-archive -H "Authorization: Bearer YOUR_TOKEN" -F "archive=@changed.tar.gz" ```' /api/pods/my-app/metrics/history: get: operationId: get_api_pods_my_app_metrics_history tags: - Api summary: GET /api/pods/my-app/metrics/history x-source: https://docs.instapods.com/api-reference/pods.md parameters: - name: since in: query required: false schema: type: string responses: '200': description: Success (shape read from the example response on the page) content: application/json: schema: $ref: '#/components/schemas/GetApiPodsMyAppMetricsHistoryResponse' x-evidence: kind: code-example language: curl snippet: 'curl "https://app.instapods.com/api/pods/my-app/metrics/history?since=2026-02-19T00:00:00Z" -H "Authorization: Bearer YOUR_TOKEN" ```' /api/pods/my-app/resize: post: operationId: post_api_pods_my_app_resize tags: - Api summary: POST /api/pods/my-app/resize x-source: https://docs.instapods.com/getting-started/managing-pods.md requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PostApiPodsMyAppResizeRequest' responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X POST https://app.instapods.com/api/pods/my-app/resize -H \"Authorization: Bearer YOUR_TOKEN\" -H \"Content-Type: application/json\"\ \ -d '{\"plan_slug\": \"build\"}'\n ```\n \n" /api/pods/my-app/restart: post: operationId: post_api_pods_my_app_restart tags: - Api summary: POST /api/pods/my-app/restart x-source: https://docs.instapods.com/getting-started/managing-pods.md responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -X POST https://app.instapods.com/api/pods/my-app/restart -H \"Authorization: Bearer YOUR_TOKEN\"\n ```\n \n\ " /api/pods/my-app/start: post: operationId: post_api_pods_my_app_start tags: - Api summary: POST /api/pods/my-app/start x-source: https://docs.instapods.com/getting-started/managing-pods.md responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl -X POST https://app.instapods.com/api/pods/my-app/start -H "Authorization: Bearer YOUR_TOKEN"' /api/pods/my-app/stop: post: operationId: post_api_pods_my_app_stop tags: - Api summary: POST /api/pods/my-app/stop x-source: https://docs.instapods.com/getting-started/managing-pods.md responses: '201': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: 'curl -X POST https://app.instapods.com/api/pods/my-app/stop -H "Authorization: Bearer YOUR_TOKEN"' /collections/memories: delete: operationId: delete_collections_memories tags: - Collections summary: DELETE /collections/memories x-source: https://docs.instapods.com/guides/one-click-apps.md responses: '200': description: Success (status as documented) x-evidence: kind: code-example language: curl snippet: "curl -fsS -X DELETE http://127.0.0.1:6333/collections/memories && systemctl restart automem.target\"\n ```\n" components: schemas: PostApiAccountDeleteRequest: type: object properties: password: type: string PostApiAuthLoginRequest: type: object properties: email: type: string password: type: string PostApiAuthLoginResponse: type: object properties: error: type: string PostApiImportsRequest: type: object properties: url: type: string mode: type: string max_pages: type: integer PostApiImportsResponse: type: object properties: artifact: type: object properties: source: type: string source_url: type: string title: type: string slug: type: string type: type: string preset: type: string files: type: array items: type: object properties: path: type: string size: type: integer transfer: type: object properties: headline: type: string transfers: type: array items: {} does_not_transfer: type: array items: {} notes: type: array items: {} pod: type: object properties: name: type: string status: type: string message: type: string GetApiPodsResponse: type: object properties: error: type: string PostApiPodsRequest: type: object properties: name: type: string preset: type: string plan_slug: type: string PostApiPodsFromZipResponse: type: object properties: pods: type: array items: type: object total: type: integer limit: type: integer offset: type: integer status_counts: type: object properties: running: type: integer stopped: type: integer creating: type: integer PostApiPodsMyAppAppsCrmSetupRequest: type: object properties: vars: type: object properties: GOOGLE_CLIENT_ID: type: string GOOGLE_CLIENT_SECRET: type: string PostApiPodsMyAppBackupsRequest: type: object properties: note: type: string GetApiPodsMyAppEventsResponse: type: object properties: id: type: string pod_name: type: string cpu_usage: type: number memory_usage: type: number storage_used: type: integer network_in: type: integer network_out: type: integer request_count: type: integer recorded_at: type: string format: date-time PostApiPodsMyAppFilesUploadArchiveResponse: type: object properties: status: type: string path: type: string GetApiPodsMyAppMetricsHistoryResponse: type: object properties: status: type: string PostApiPodsMyAppResizeRequest: type: object properties: plan_slug: type: string securitySchemes: bearer: type: http scheme: bearer security: - bearer: [] tags: - name: Api - name: Collections