API reference
Projects
Projects inside an organization.
GET
header
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
orgId*stringMatch
^ten_(us|in)_[0-9a-z]{24}$OK
application/json- response
projects*array<>curl -X GET 'https://api.us.webagent.lookover.ai/v1/orgs/string/projects'Example Response
{ "projects": [ { "id": "string", "tenantId": "string", "name": "string", "isDefault": true, "createdAt": 0 } ]}POST
header
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
orgId*stringMatch
^ten_(us|in)_[0-9a-z]{24}$application/json- body
name*stringLength
1 <= length <= 100OK
application/json- response
id*stringMatch
^prj_(us|in)_[0-9a-z]{24}$tenantId*stringMatch
^ten_(us|in)_[0-9a-z]{24}$name*stringLength
1 <= length <= 100isDefault*booleancreatedAt*integerRange
0 <= value <= 9007199254740991curl -X POST 'https://api.us.webagent.lookover.ai/v1/orgs/string/projects' \ -H 'Content-Type: application/json' \ -d '{ "name": "string"}'Example Response
{ "id": "string", "tenantId": "string", "name": "string", "isDefault": true, "createdAt": 0}PATCH
header
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
orgId*stringMatch
^ten_(us|in)_[0-9a-z]{24}$projectId*stringMatch
^prj_(us|in)_[0-9a-z]{24}$application/json- body
name*stringLength
1 <= length <= 100OK
application/json- response
id*stringMatch
^prj_(us|in)_[0-9a-z]{24}$tenantId*stringMatch
^ten_(us|in)_[0-9a-z]{24}$name*stringLength
1 <= length <= 100isDefault*booleancreatedAt*integerRange
0 <= value <= 9007199254740991curl -X PATCH 'https://api.us.webagent.lookover.ai/v1/orgs/string/projects/string' \ -H 'Content-Type: application/json' \ -d '{ "name": "string"}'Example Response
{ "id": "string", "tenantId": "string", "name": "string", "isDefault": true, "createdAt": 0}DELETE
Delete a project (admin). Refused (409 conflict) for the default project and while it still holds anything (active keys, sessions, skill runs, webhooks, schedules, MCP servers, installed skills, credentials, profiles, inboxes); details has reason: not_empty and a count per kind
header
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
orgId*stringMatch
^ten_(us|in)_[0-9a-z]{24}$projectId*stringMatch
^prj_(us|in)_[0-9a-z]{24}$OK
application/json- response
deleted*booleancurl -X DELETE 'https://api.us.webagent.lookover.ai/v1/orgs/string/projects/string'Example Response
{ "deleted": true}