{"openapi":"3.1.0","info":{"title":"Bot Store","version":"0.1.0","description":"Machine-readable description of the Bot Store. Payments are disabled. The guide does not grant permission to spend, post, install, or delete."},"servers":[{"url":"https://buybots.app"}],"paths":{"/healthz":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/skill.md":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/agents.md":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/openapi.json":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/site":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/search":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/categories":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/tags":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/releases":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/releases/{version}":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/releases/{version}/manifest.json":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/releases/{version}/manifest.sig":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/releases/{version}/artifacts/{kind}":{"get":{"summary":"public or preview","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/signing-keys":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/auth/magic-link":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/auth/consume":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/auth/logout":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/auth/device-authorizations":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/auth/device-authorizations/{id}/approve":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/auth/token":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/auth/revoke":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/me":{"get":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}},"delete":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/me/access":{"get":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/membership-interest":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/membership-interest/{id}":{"delete":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/preview-access":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/me/installations":{"get":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/installations":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/installations/{id}":{"patch":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/update-check":{"get":{"summary":"preview sync","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/installations/{id}/update-proposals":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/installations/{id}/approvals":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/installations/{id}/results":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/installations/{id}/rollback-proposals":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/bots/{slug}/feedback":{"post":{"summary":"preview","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/me/feedback":{"get":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/security-reports":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/payment-capabilities":{"get":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/checkout-quotes":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/checkout-sessions":{"post":{"summary":"public","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/memberships/{id}/cancel":{"post":{"summary":"user","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/webhooks/payments/{provider}":{"post":{"summary":"disabled","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/overview":{"get":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/audit":{"get":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/bots":{"post":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/bots/{id}":{"patch":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/bots/{id}/releases":{"post":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/releases/{id}/artifacts":{"post":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/releases/{id}/validate":{"post":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/releases/{id}/approve":{"post":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/releases/{id}/publish":{"post":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/releases/{id}/withdraw":{"post":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/bots/{id}/template-link":{"patch":{"summary":"publisher","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/signing-keys":{"post":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/signing-keys/{id}/revoke":{"post":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/category-proposals":{"get":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/category-jobs":{"post":{"summary":"admin or taxonomy:classify","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/category-proposals/{id}/decide":{"post":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/category-proposals/{id}/apply":{"post":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/category-decisions/{id}/undo":{"post":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/taxonomy-policy":{"patch":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/categories":{"post":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/tags":{"post":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/categories/{id}":{"patch":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/tags/{id}":{"patch":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/categories/{id}/merge":{"post":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/bots/{id}/classification":{"patch":{"summary":"reviewer","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/feedback":{"get":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/security-reports":{"get":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/feedback/{id}":{"patch":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/security-reports/{id}":{"patch":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/access-grants":{"post":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/access-grants/{id}/revoke":{"post":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/jobs":{"get":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/health":{"get":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}},"/api/v1/admin/jobs/{id}/retry":{"post":{"summary":"admin","responses":{"200":{"description":"Success"},"400":{"description":"Invalid request"},"401":{"description":"Sign-in required"},"403":{"description":"Not allowed"},"404":{"description":"Not found"}}}}},"components":{"schemas":{"Error":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message","request_id"],"properties":{"code":{"type":"string"},"message":{"type":"string"},"request_id":{"type":"string"}}}}}}}}