Engines
Agent engines and their versions.
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
OK
application/json- response
engines*array<>curl -X GET 'https://api.us.webagent.lookover.ai/v1/engines'{ "engines": [ { "id": "string", "name": "string", "description": "string", "icon": "string", "source": "builtin", "baseEngineId": "string", "latestVersion": "string", "isProjectDefault": true } ]}Create an engine of the project, first version 1.0.0: a fork of baseEngineId (a built-in or the project's), or, when it is omitted, one from scratch (empty instructions, starter defaults)
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
application/json- body
baseEngineId?string^eng_(us|in)_[0-9a-z]{24}$name*string1 <= length <= 100description?stringlength <= 500icon?string1 <= length <= 64OK
application/json- response
id*string^eng_(us|in)_[0-9a-z]{24}$name*string1 <= length <= 100description*stringlength <= 500icon?string1 <= length <= 64source*string"builtin""user"baseEngineId?string^eng_(us|in)_[0-9a-z]{24}$latestVersion*string^\d+\.\d+\.\d+$length <= 40isProjectDefault*booleanlatest*draft*|nullcurl -X POST 'https://api.us.webagent.lookover.ai/v1/engines' \ -H 'Content-Type: application/json' \ -d '{ "name": "string"}'{ "id": "string", "name": "string", "description": "string", "icon": "string", "source": "builtin", "baseEngineId": "string", "latestVersion": "string", "isProjectDefault": true, "latest": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }, "draft": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }}AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
id*string^eng_(us|in)_[0-9a-z]{24}$OK
application/json- response
id*string^eng_(us|in)_[0-9a-z]{24}$name*string1 <= length <= 100description*stringlength <= 500icon?string1 <= length <= 64source*string"builtin""user"baseEngineId?string^eng_(us|in)_[0-9a-z]{24}$latestVersion*string^\d+\.\d+\.\d+$length <= 40isProjectDefault*booleanlatest*draft*|nullcurl -X GET 'https://api.us.webagent.lookover.ai/v1/engines/string'{ "id": "string", "name": "string", "description": "string", "icon": "string", "source": "builtin", "baseEngineId": "string", "latestVersion": "string", "isProjectDefault": true, "latest": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }, "draft": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }}Delete one of the project's engines. 403 forbidden for a built-in, 409 conflict for the project default
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
id*string^eng_(us|in)_[0-9a-z]{24}$OK
application/json- response
deleted*booleancurl -X DELETE 'https://api.us.webagent.lookover.ai/v1/engines/string'{ "deleted": true}Edit the engine's draft (opened from the latest version on the first edit) and its name, description and icon. 403 forbidden for a built-in
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
id*string^eng_(us|in)_[0-9a-z]{24}$application/json- body
instructions?stringlength <= 8000limits?browserDefaults?guardrails?approvals?skills?array<>items <= 50mcpServerIds?array<>items <= 50memory?name?string1 <= length <= 100description?stringlength <= 500icon?|nullOK
application/json- response
id*string^eng_(us|in)_[0-9a-z]{24}$name*string1 <= length <= 100description*stringlength <= 500icon?string1 <= length <= 64source*string"builtin""user"baseEngineId?string^eng_(us|in)_[0-9a-z]{24}$latestVersion*string^\d+\.\d+\.\d+$length <= 40isProjectDefault*booleanlatest*draft*|nullcurl -X PATCH 'https://api.us.webagent.lookover.ai/v1/engines/string/draft' \ -H 'Content-Type: application/json' \ -d '{}'{ "id": "string", "name": "string", "description": "string", "icon": "string", "source": "builtin", "baseEngineId": "string", "latestVersion": "string", "isProjectDefault": true, "latest": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }, "draft": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }}Publish the draft as the next version (bump default patch). 409 conflict with no draft changes, 403 forbidden for a built-in
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
id*string^eng_(us|in)_[0-9a-z]{24}$application/json- body
bump?string"patch""patch""minor""major"OK
application/json- response
id*string^eng_(us|in)_[0-9a-z]{24}$name*string1 <= length <= 100description*stringlength <= 500icon?string1 <= length <= 64source*string"builtin""user"baseEngineId?string^eng_(us|in)_[0-9a-z]{24}$latestVersion*string^\d+\.\d+\.\d+$length <= 40isProjectDefault*booleanlatest*draft*|nullcurl -X POST 'https://api.us.webagent.lookover.ai/v1/engines/string/publish' \ -H 'Content-Type: application/json' \ -d '{}'{ "id": "string", "name": "string", "description": "string", "icon": "string", "source": "builtin", "baseEngineId": "string", "latestVersion": "string", "isProjectDefault": true, "latest": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }, "draft": { "instructions": "string", "limits": { "maxSteps": 1, "maxCostUsd": 1, "sessionCostCapUsd": 1, "maxMinutes": 1 }, "browserDefaults": { "browser": "chromium", "viewport": { "width": 200, "height": 200, "deviceScaleFactor": 0.5, "mobile": true }, "locale": "string", "profileId": "string", "proxyId": "string", "recordVideo": true }, "guardrails": { "allowHosts": [ "string" ], "blockHosts": [ "string" ], "allowDownloads": true }, "approvals": { "payments": "allow", "messages": "allow", "credentials": "allow", "submit": "allow" }, "skills": [ { "name": "string", "version": "string" } ], "mcpServerIds": [ "string" ], "memory": { "cache": "on", "scope": "engine" }, "version": "string", "status": "draft" }}Task numbers of an engine from the project's finished tasks, per version (newest first) and in total; sinceMs default the last 30 days. A built-in shows only the caller's own tasks on it
AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
id*string^eng_(us|in)_[0-9a-z]{24}$sinceMs?integer0 <= value <= 9007199254740991OK
application/json- response
engineId*string^eng_(us|in)_[0-9a-z]{24}$sinceMs*integer0 <= value <= 9007199254740991total*versions*array<>curl -X GET 'https://api.us.webagent.lookover.ai/v1/engines/string/stats'{ "engineId": "string", "sinceMs": 0, "total": { "tasks": 0, "succeeded": 0, "successRate": 0, "avgSteps": 0, "avgCostMicros": 0, "avgMs": 0, "stoppedBy": { "property1": 0, "property2": 0 } }, "versions": [ { "tasks": 0, "succeeded": 0, "successRate": 0, "avgSteps": 0, "avgCostMicros": 0, "avgMs": 0, "stoppedBy": { "property1": 0, "property2": 0 }, "version": "string" } ]}AuthorizationBearer <token>An API key (wa_<region>_…) or a dashboard access token.
application/json- body
engineId*string^eng_(us|in)_[0-9a-z]{24}$OK
application/json- response
engineId*string^eng_(us|in)_[0-9a-z]{24}$curl -X PUT 'https://api.us.webagent.lookover.ai/v1/engines/default' \ -H 'Content-Type: application/json' \ -d '{ "engineId": "string"}'{ "engineId": "string"}