kp0yi2k4.nx.link
No description published for this endpoint.
The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.
Asset 0x833589fcd6edb6e08f4c7c32d4f71b54bda02913
The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.
Live 402 challenge
Captured by the enrichment pass, not read just now. Prices can change — always read the 402 the endpoint answers with.
{
"error": "Payment header is required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2",
"nexusPathId": "587ca530-60ab-43bd-bc46-d9fa9ed3fdcd",
"primaryType": "TransferWithAuthorization",
"recipientAddress": "0xBe045dFB1e2A94720858372309aF4D1d4257b6f5",
"facilitatorAddress": "0x758D2532FF6A304D1A0c2FdF46264590E4Ef0637"
},
"payTo": "0x758D2532FF6A304D1A0c2FdF46264590E4Ef0637",
"scheme": "exact",
"network": "eip155:8453",
"mimeType": "application/json",
"resource": "https://api.browser-use.com/api/v3/sessions",
"description": "Browser Use Public API v3: list_sessions_sessions_get - List Sessions",
"outputSchema": {
"input": {
"type": "http",
"method": "GET",
"discoverable": true
}
},
"maxAmountRequired": "1000",
"maxTimeoutSeconds": 86400
}
],
"x402Version": 1
}Accepts
The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.
That figure is in the token’s smallest units. Roundhouse does not hold this contract’s decimals, so it is shown as published rather than converted.
- Paid to
- 0xBe04…7b6f5
- USD Coin contract
- 0x8335…02913
- Payment window
- 24 hours
- Buys
- Browser Use Public API v3 https://api.browser-use.com/api/v3 - POST Create Session
- Returns
- application/json
The catalog’s raw entry
[
{
"asset": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"payTo": "0xBe045dFB1e2A94720858372309aF4D1d4257b6f5",
"scheme": "exact",
"network": "eip155:8453",
"mimeType": "application/json",
"resource": "https://kp0yi2k4.nx.link/sessions",
"description": "Browser Use Public API v3 https://api.browser-use.com/api/v3 - POST Create Session",
"outputSchema": {
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"title": "SessionResponse",
"required": [
"id",
"status",
"model",
"createdAt",
"updatedAt"
],
"properties": {
"id": {
"type": "string",
"title": "Id",
"format": "uuid",
"description": "Unique session identifier."
},
"model": {
"enum": [
"bu-mini",
"bu-max",
"bu-ultra",
"gemini-3-flash",
"claude-sonnet-4.6",
"claude-opus-4.6",
"claude-opus-4.7",
"gpt-5.4-mini"
],
"type": "string",
"title": "BuModel",
"description": "The model tier used for this session."
},
"title": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Title",
"description": "Auto-generated short title summarizing the task. Available after the task starts running."
},
"output": {
"anyOf": [
{},
{
"type": "null"
}
],
"title": "Output",
"description": "The agent's final output. If `codeMode` was true, this will be an object with `text` (summary), `code` (Python source), and optionally `output` (execution result). If `outputSchema` was provided, this will be structured data conforming to that schema. Otherwise it may be a free-form string or null."
},
"status": {
"enum": [
"created",
"idle",
"running",
"stopped",
"timed_out",
"error"
],
"type": "string",
"title": "BuAgentSessionStatus",
"description": "Current session lifecycle status. Progresses through: `created` (sandbox starting) → `idle` (ready, waiting for task) → `running` (task executing) → `stopped` / `timed_out` / `error`. Poll this field to track progress."
},
"liveUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Liveurl",
"description": "URL to view the live browser session. Available immediately on session creation — can be embedded in an iframe to show the browser in real time."
},
"createdAt": {
"type": "string",
"title": "Createdat",
"format": "date-time",
"description": "When the session was created."
},
"profileId": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Profileid",
"description": "ID of the browser profile loaded in this session, if any."
},
"stepCount": {
"type": "integer",
"title": "Stepcount",
"default": 0,
"description": "Number of steps the agent has executed so far."
},
"updatedAt": {
"type": "string",
"title": "Updatedat",
"format": "date-time",
"description": "When the session was last updated."
},
"llmCostUsd": {
"type": "string",
"title": "Llmcostusd",
"default": "0",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"description": "Cost of LLM usage in USD."
},
"maxCostUsd": {
"anyOf": [
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
},
{
"type": "null"
}
],
"title": "Maxcostusd",
"description": "Maximum cost limit in USD set for this session."
},
"proxyUsedMb": {
"type": "string",
"title": "Proxyusedmb",
"default": "0",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"description": "Proxy bandwidth used in megabytes."
},
"workspaceId": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Workspaceid",
"description": "ID of the workspace attached to this session, if any."
},
"outputSchema": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"title": "Outputschema",
"description": "The JSON Schema that was requested for structured output, if any."
},
"proxyCostUsd": {
"type": "string",
"title": "Proxycostusd",
"default": "0",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"description": "Cost of proxy bandwidth in USD."
},
"totalCostUsd": {
"type": "string",
"title": "Totalcostusd",
"default": "0",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"description": "Total session cost in USD (LLM + proxy + browser)."
},
"recordingUrls": {
"type": "array",
"items": {
"type": "string"
},
"title": "Recordingurls",
"default": [],
"description": "URLs to download session recordings. Only populated if `enableRecording` was set to true and the task has completed."
},
"screenshotUrl": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Screenshoturl",
"description": "URL of the latest browser screenshot. This is a presigned URL that expires after 5 minutes. A new URL is generated each time you fetch the session."
},
"agentmailEmail": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Agentmailemail",
"description": "Temporary email address provisioned for this session (via AgentMail). Only present if `agentmail` was enabled."
},
"browserCostUsd": {
"type": "string",
"title": "Browsercostusd",
"default": "0",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$",
"description": "Cost of browser compute time in USD."
},
"lastStepSummary": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Laststepsummary",
"description": "Human-readable summary of the most recent agent step (e.g. \"Clicking the Submit button\"). Useful for showing real-time progress."
},
"integrationsUsed": {
"type": "array",
"items": {
"type": "string"
},
"title": "Integrationsused",
"description": "List of integration providers used during this session (e.g. [\"gmail\", \"slack\", \"agentmail\"])."
},
"isTaskSuccessful": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Istasksuccessful",
"description": "Whether the task completed successfully. `true` if the agent achieved the goal, `false` if it failed or gave up, `null` if the task is still running or no task was dispatched."
},
"proxyCountryCode": {
"anyOf": [
{
"enum": [
"ad",
"ae",
"af",
"ag",
"ai",
"al",
"am",
"an",
"ao",
"aq",
"ar",
"as",
"at",
"au",
"aw",
"az",
"ba",
"bb",
"bd",
"be",
"bf",
"bg",
"bh",
"bi",
"bj",
"bl",
"bm",
"bn",
"bo",
"bq",
"br",
"bs",
"bt",
"bv",
"bw",
"by",
"bz",
"ca",
"cc",
"cd",
"cf",
"cg",
"ch",
"ck",
"cl",
"cm",
"co",
"cr",
"cs",
"cu",
"cv",
"cw",
"cx",
"cy",
"cz",
"de",
"dj",
"dk",
"dm",
"do",
"dz",
"ec",
"ee",
"eg",
"eh",
"er",
"es",
"et",
"fi",
"fj",
"fk",
"fm",
"fo",
"fr",
"ga",
"gd",
"ge",
"gf",
"gg",
"gh",
"gi",
"gl",
"gm",
"gn",
"gp",
"gq",
"gr",
"gs",
"gt",
"gu",
"gw",
"gy",
"hk",
"hm",
"hn",
"hr",
"ht",
"hu",
"id",
"ie",
"il",
"im",
"in",
"iq",
"ir",
"is",
"it",
"je",
"jm",
"jo",
"jp",
"ke",
"kg",
"kh",
"ki",
"km",
"kn",
"kp",
"kr",
"kw",
"ky",
"kz",
"la",
"lb",
"lc",
"li",
"lk",
"lr",
"ls",
"lt",
"lu",
"lv",
"ly",
"ma",
"mc",
"md",
"me",
"mf",
"mg",
"mh",
"mk",
"ml",
"mm",
"mn",
"mo",
"mp",
"mq",
"mr",
"ms",
"mt",
"mu",
"mv",
"mw",
"mx",
"my",
"mz",
"na",
"nc",
"ne",
"nf",
"ng",
"ni",
"nl",
"no",
"np",
"nr",
"nu",
"nz",
"om",
"pa",
"pe",
"pf",
"pg",
"ph",
"pk",
"pl",
"pm",
"pn",
"pr",
"ps",
"pt",
"pw",
"py",
"qa",
"re",
"ro",
"rs",
"ru",
"rw",
"sa",
"sb",
"sc",
"sd",
"se",
"sg",
"sh",
"si",
"sj",
"sk",
"sl",
"sm",
"sn",
"so",
"sr",
"ss",
"st",
"sv",
"sx",
"sy",
"sz",
"tc",
"td",
"tf",
"tg",
"th",
"tj",
"tk",
"tl",
"tm",
"tn",
"to",
"tr",
"tt",
"tv",
"tw",
"tz",
"ua",
"ug",
"uk",
"us",
"uy",
"uz",
"va",
"vc",
"ve",
"vg",
"vi",
"vn",
"vu",
"wf",
"ws",
"xk",
"ye",
"yt",
"za",
"zm",
"zw"
],
"type": "string",
"title": "ProxyCountryCode"
},
{
"type": "null"
}
],
"description": "Country code of the proxy used for this session, or null if no proxy."
},
"totalInputTokens": {
"type": "integer",
"title": "Totalinputtokens",
"default": 0,
"description": "Total LLM input tokens consumed by this session."
},
"totalOutputTokens": {
"type": "integer",
"title": "Totaloutputtokens",
"default": 0,
"description": "Total LLM output tokens consumed by this session."
}
},
"description": "Represents a session and its current state.\n\nPoll this endpoint to track task progress. The `status` field indicates the session lifecycle stage,\nand `output` contains the agent's structured result once the task completes."
}
}
},
"description": "Successful Response"
},
"422": {
"content": {
"application/json": {
"schema": {
"type": "object",
"title": "HTTPValidationError",
"properties": {
"detail": {
"type": "array",
"items": {
"type": "object",
"title": "ValidationError",
"required": [
"loc",
"msg",
"type"
],
"properties": {
"loc": {
"type": "array",
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"title": "Location"
},
"msg": {
"type": "string",
"title": "Message"
},
"type": {
"type": "string",
"title": "Error Type"
}
}
},
"title": "Detail"
}
}
}
}
},
"description": "Validation Error"
}
},
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"title": "RunTaskRequest",
"properties": {
"task": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Task",
"description": "The natural-language instruction for the agent to execute (e.g. \"Go to amazon.com and find the best-rated wireless mouse under $50\"). Required when dispatching to an existing session."
},
"model": {
"enum": [
"bu-mini",
"bu-max",
"bu-ultra",
"gemini-3-flash",
"claude-sonnet-4.6",
"claude-opus-4.6",
"claude-opus-4.7",
"gpt-5.4-mini"
],
"type": "string",
"title": "BuModel",
"default": "claude-opus-4.7",
"description": "The model to use. \"gemini-3-flash\" is fast and cheap, \"claude-sonnet-4.6\" is balanced, \"claude-opus-4.7\" is most capable (default). See BuModel for details."
},
"skills": {
"type": "boolean",
"title": "Skills",
"default": true,
"description": "If true, enables built-in agent skills like Google Sheets integration and file management. Set to false to restrict the agent to browser-only actions."
},
"autoHeal": {
"type": "boolean",
"title": "Autoheal",
"default": true,
"description": "When cache_script is active, controls whether a lightweight LLM validates the cached script output. If the output looks incorrect (empty, error, wrong structure), the system automatically re-triggers the full agent to generate a new version of the script. Set to false to disable validation and always return the raw script output."
},
"codeMode": {
"type": "boolean",
"title": "Codemode",
"default": false,
"description": "When true, the agent returns structured output with `text` (summary) and `code` (validated Python source) fields instead of free-form text."
},
"agentmail": {
"type": "boolean",
"title": "Agentmail",
"default": true,
"description": "If true, provisions a temporary email inbox (via AgentMail) for the session. The email address is available in the `agentmailEmail` field of the session response. Useful for tasks that require email verification or sign-ups."
},
"keepAlive": {
"type": "boolean",
"title": "Keepalive",
"default": false,
"description": "If true, the session stays alive in idle state after the task completes instead of automatically stopping. This lets you dispatch follow-up tasks to the same session, preserving browser state and files."
},
"profileId": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Profileid",
"description": "ID of a browser profile to load into the session. Profiles persist cookies, local storage, and other browser state across sessions. Create profiles via the Profiles API."
},
"sessionId": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Sessionid",
"description": "ID of an existing idle session to dispatch the task to. If omitted, a new session is created."
},
"useOwnKey": {
"type": "boolean",
"title": "Useownkey",
"default": false,
"description": "If true, uses your own LLM API key (configured in project settings) instead of Browser Use managed keys. You pay your provider directly for inference; Browser Use charges a reduced orchestration fee (0.2× of provider list prices). If no key is configured for the model's provider, the request is rejected."
},
"maxCostUsd": {
"anyOf": [
{
"type": "number"
},
{
"type": "string",
"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$"
},
{
"type": "null"
}
],
"title": "Maxcostusd",
"description": "Maximum total cost in USD allowed for this session. The task will be stopped if this limit is reached. If omitted, a default limit applies (capped by your available balance)."
},
"cacheScript": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"title": "Cachescript",
"description": "Controls deterministic script caching. `null` (default): auto-detected — enabled when the task contains `@{{value}}` brackets and a workspace is attached. `true`: force-enable script caching even without brackets (caches the exact task). `false`: force-disable, even if brackets are present. When active, the first call runs the full agent and saves a reusable script. Subsequent calls with the same task template execute the cached script with $0 LLM cost. Requires workspace_id when enabled. Example: \"Get prices from @{{https://example.com}} for @{{electronics}}\"."
},
"workspaceId": {
"anyOf": [
{
"type": "string",
"format": "uuid"
},
{
"type": "null"
}
],
"title": "Workspaceid",
"description": "ID of a workspace to attach to the session. Workspaces provide persistent file storage that carries across sessions. Create workspaces via the Workspaces API."
},
"outputSchema": {
"anyOf": [
{
"type": "object",
"additionalProperties": true
},
{
"type": "null"
}
],
"title": "Outputschema",
"description": "A JSON Schema that the agent's final output must conform to. When set, the agent will return structured data matching this schema in the `output` field of the response. Example: {\"type\": \"object\", \"properties\": {\"price\": {\"type\": \"number\"}, \"title\": {\"type\": \"string\"}}}."
},
"sensitiveData": {
"anyOf": [
{
"type": "object",
"additionalProperties": {
"type": "string"
}
},
{
"type": "null"
}
],
"title": "Sensitivedata",
"description": "Key-value pairs of sensitive data (e.g. passwords, API keys) that the agent can use via secure placeholders. Keys are exposed to the LLM; values are never shown. The agent uses `<secret>key</secret>` placeholders in browser_type_text to securely enter values."
},
"enableRecording": {
"type": "boolean",
"title": "Enablerecording",
"default": false,
"description": "If true, records a video of the browser session. The recording URLs will be available in the `recordingUrls` field of the session response after the task completes."
},
"proxyCountryCode": {
"anyOf": [
{
"enum": [
"ad",
"ae",
"af",
"ag",
"ai",
"al",
"am",
"an",
"ao",
"aq",
"ar",
"as",
"at",
"au",
"aw",
"az",
"ba",
"bb",
"bd",
"be",
"bf",
"bg",
"bh",
"bi",
"bj",
"bl",
"bm",
"bn",
"bo",
"bq",
"br",
"bs",
"bt",
"bv",
"bw",
"by",
"bz",
"ca",
"cc",
"cd",
"cf",
"cg",
"ch",
"ck",
"cl",
"cm",
"co",
"cr",
"cs",
"cu",
"cv",
"cw",
"cx",
"cy",
"cz",
"de",
"dj",
"dk",
"dm",
"do",
"dz",
"ec",
"ee",
"eg",
"eh",
"er",
"es",
"et",
"fi",
"fj",
"fk",
"fm",
"fo",
"fr",
"ga",
"gd",
"ge",
"gf",
"gg",
"gh",
"gi",
"gl",
"gm",
"gn",
"gp",
"gq",
"gr",
"gs",
"gt",
"gu",
"gw",
"gy",
"hk",
"hm",
"hn",
"hr",
"ht",
"hu",
"id",
"ie",
"il",
"im",
"in",
"iq",
"ir",
"is",
"it",
"je",
"jm",
"jo",
"jp",
"ke",
"kg",
"kh",
"ki",
"km",
"kn",
"kp",
"kr",
"kw",
"ky",
"kz",
"la",
"lb",
"lc",
"li",
"lk",
"lr",
"ls",
"lt",
"lu",
"lv",
"ly",
"ma",
"mc",
"md",
"me",
"mf",
"mg",
"mh",
"mk",
"ml",
"mm",
"mn",
"mo",
"mp",
"mq",
"mr",
"ms",
"mt",
"mu",
"mv",
"mw",
"mx",
"my",
"mz",
"na",
"nc",
"ne",
"nf",
"ng",
"ni",
"nl",
"no",
"np",
"nr",
"nu",
"nz",
"om",
"pa",
"pe",
"pf",
"pg",
"ph",
"pk",
"pl",
"pm",
"pn",
"pr",
"ps",
"pt",
"pw",
"py",
"qa",
"re",
"ro",
"rs",
"ru",
"rw",
"sa",
"sb",
"sc",
"sd",
"se",
"sg",
"sh",
"si",
"sj",
"sk",
"sl",
"sm",
"sn",
"so",
"sr",
"ss",
"st",
"sv",
"sx",
"sy",
"sz",
"tc",
"td",
"tf",
"tg",
"th",
"tj",
"tk",
"tl",
"tm",
"tn",
"to",
"tr",
"tt",
"tv",
"tw",
"tz",
"ua",
"ug",
"uk",
"us",
"uy",
"uz",
"va",
"vc",
"ve",
"vg",
"vi",
"vn",
"vu",
"wf",
"ws",
"xk",
"ye",
"yt",
"za",
"zm",
"zw"
],
"type": "string",
"title": "ProxyCountryCode"
},
{
"type": "null"
}
],
"default": "us",
"description": "Country code for the browser proxy (e.g. \"US\", \"DE\", \"JP\"). Set to null to disable the proxy. The proxy routes browser traffic through the specified country, useful for accessing geo-restricted content."
},
"enableScheduledTasks": {
"type": "boolean",
"title": "Enablescheduledtasks",
"default": false,
"description": "If true, the agent can create scheduled tasks that run on a recurring basis (e.g. \"every Monday morning, check my inbox and summarize new emails\"). Scheduled tasks are tied to your project and persist beyond the session. Note: all scheduled tasks are visible project-wide, so avoid enabling this in multi-user setups where task isolation is needed."
}
},
"description": "Create a new session, dispatch a task, or both.\n\n- **No `sessionId` + no `task`**: creates an idle session (useful for uploading files before running a task).\n- **No `sessionId` + `task`**: creates a new session and immediately runs the task.\n- **`sessionId` + `task`**: dispatches the task to an existing idle session.\n- **`sessionId` + no `task`**: returns 422 — a task is required when targeting an existing session."
}
}
},
"required": true
}
},
"maxAmountRequired": "0.001",
"maxTimeoutSeconds": 86400
}
]Provenance
- Seen in the source catalog
- 2026-04-25 04:54Z
- Last indexed by Roundhouse
- 2026-09-24 08:45Z
- Last enriched (probe, favicon, geo)
- 2026-09-21 00:15Z
- x402 version
- 1
- Max timeout
- 86400s
- Liveness probe
- HTTP 402
Hand this page to an agent
Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.
GET api.roundhouseai.io/v0/endpoints
Nothing indexed for this service or its provider yet. Not a claim that it is unused — only that we hold no record. Verified volume counts only settlements with an on-chain EIP-3009 marker.
Show the promptHide the prompt
Using Roundhouse, look up the x402 service kp0yi2k4.nx.link and tell me whether it is worth paying: what a call costs, whether the endpoint answered when last probed, and what its payment record actually shows. curl -s 'https://api.roundhouseai.io/v0/endpoints?q=kp0yi2k4.nx.link' curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>' Then call it: read the price from the live 402 at https://kp0yi2k4.nx.link/sessions, never from a cached figure, and pay with an x402 client. The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except /v0/unified* and /v0/endpoints. Mint a personal key for $0.01 at GET https://api.roundhouseai.io/v0/test/x402, or use an organization key from https://roundhouseai.io/dashboard/team. If you do not have Roundhouse tools or skills installed, read https://roundhouseai.io/skill.md first — it is the whole procedure.