{"id":590766,"name":"ipvolt","description":"ipvolt rents dedicated mobile proxies (a device on a carrier network, rented for 1 day or 30 days) that customers pay for from a prepaid USD balance. This agent is deterministic: it uses no language model. Without a credential it lists the live mobile proxy catalog and explains how an AI agent connects to a customer's account. With an agent access token the customer granted, it reads that account's balance, orders and rented proxies, and rents or renews proxies from the balance within the spending cap the customer chose.","card_url":"https://ipvolt.com/.well-known/agent-card.json","endpoint":"https://ipvolt.com/beta/a2a","protocol_version":"1.0","first_seen":"2026-11-10T16:42:44.481458+00:00","last_verified":"2026-11-10T22:43:46.982900+00:00","card":{"url":"https://ipvolt.com/beta/a2a","name":"ipvolt","skills":[{"id":"catalog","name":"Mobile proxy catalog","tags":["mobile proxies","catalog","pricing"],"examples":["{\"skill\":\"catalog\"}","{\"skill\":\"catalog\",\"input\":{\"countryCode\":\"GB\",\"period\":\"day\"}}","What mobile proxies can I rent, and at what price?"],"inputModes":["application/json","text/plain"],"description":"Mobile proxy offers you can rent right now, from the live checkout: country, carrier, period (1 day or 30 days), stock, price in US cents, and the offer id and version that renting needs. Availability changes; read it again before renting. No credential needed.","outputModes":["application/json","text/plain"]},{"id":"access","name":"Connect an agent to an ipvolt account","tags":["authentication","auth.md","onboarding"],"examples":["{\"skill\":\"access\"}"],"inputModes":["application/json"],"description":"How an AI agent gets an access token for a customer's ipvolt account (auth.md, service_auth): register with the customer's email address, the customer signs in and types a 6-digit code, and chooses view only or a spending cap of $10, $25, $50, $100 or $250. Returns the steps and endpoints. No credential needed.","outputModes":["application/json","text/plain"]},{"id":"grant","name":"This agent's access","tags":["account"],"examples":["{\"skill\":\"grant\"}"],"security":[{"agentToken":[]}],"inputModes":["application/json"],"description":"The scopes the customer granted this agent, its spending cap, the amount spent, what remains and when access ends. Needs an agent access token.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{}}}]},{"id":"balance","name":"Prepaid balance","tags":["account","balance"],"examples":["{\"skill\":\"balance\"}"],"security":[{"agentToken":["account:read"]}],"inputModes":["application/json"],"description":"Available and held prepaid balance of the customer's account, in US cents. Needs an agent access token with account:read.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["account:read"]}}}]},{"id":"orders","name":"Orders","tags":["account","orders"],"examples":["{\"skill\":\"orders\"}"],"security":[{"agentToken":["account:read"]}],"inputModes":["application/json"],"description":"The customer's latest 100 orders, newest first. Needs an agent access token with account:read.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["account:read"]}}}]},{"id":"proxies","name":"Rented mobile proxies","tags":["account","mobile proxies"],"examples":["{\"skill\":\"proxies\"}"],"security":[{"agentToken":["account:read"]}],"inputModes":["application/json"],"description":"The customer's rented mobile proxies with their connection details, which are secrets. Needs an agent access token with account:read.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["account:read"]}}}]},{"id":"renewal-quote","name":"Renewal quote","tags":["mobile proxies","renewal"],"examples":["{\"skill\":\"renewal-quote\",\"input\":{\"proxyId\":\"<proxy id from the proxies skill>\",\"days\":30}}"],"security":[{"agentToken":["proxies:buy"]}],"inputModes":["application/json"],"description":"A sealed price quote, valid for 2 minutes, to renew one rented proxy for 1 or 30 days. Spends nothing. Input: proxyId and days. Needs an agent access token with proxies:buy.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["proxies:buy"]}}}]},{"id":"purchase","name":"Rent mobile proxies","tags":["mobile proxies","purchase"],"examples":["{\"skill\":\"purchase\",\"input\":{\"intentId\":\"<new UUID>\",\"tariffId\":\"<offer id>\",\"quantity\":1,\"offerVersion\":0}}"],"security":[{"agentToken":["proxies:buy"]}],"inputModes":["application/json"],"description":"Rents mobile proxies from the customer's prepaid balance; the price counts against the spending cap the customer set. Structured input only: intentId (a new UUID; reuse it only to retry the same order), tariffId (the offer id) and offerVersion (the offer version, an integer) from the catalog, and quantity from 1 to 20. A retry never charges twice. Needs an agent access token with proxies:buy.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["proxies:buy"]}}}]},{"id":"traffic-purchase","name":"Buy a traffic pack","tags":["residential proxies","mobile proxies","traffic","purchase"],"examples":["{\"skill\":\"traffic-purchase\",\"input\":{\"intentId\":\"<new UUID>\",\"tariffId\":\"<pack id>\",\"offerVersion\":0}}"],"security":[{"agentToken":["proxies:buy"]}],"inputModes":["application/json"],"description":"Buys one prepaid traffic pack from the customer's balance; its price counts against the spending cap the customer set. A pack is GB of proxy traffic on one key that works on residential IPs and on mobile IPs from a shared pool; later packs add GB to the same key and nothing renews. Structured input only: intentId (a new UUID; reuse it only to retry the same order), tariffId (a pack id from the catalog skill's trafficPacks) and offerVersion (that pack's version). One pack per order. The purchase is under ipvolt's Terms and Payments and Refunds Policy. Needs an agent access token with proxies:buy.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["proxies:buy"]}}}]},{"id":"traffic","name":"Traffic key and locations","tags":["account","residential proxies","mobile proxies","traffic"],"examples":["{\"skill\":\"traffic\"}"],"security":[{"agentToken":["account:read"]}],"inputModes":["application/json"],"description":"The customer's per-GB traffic key: its status, GB bought, used and left, the gateway host and ports, and the countries that have residential and mobile IPs right now. No secret is returned. Needs an agent access token with account:read.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["account:read"]}}}]},{"id":"traffic-connection","name":"Traffic connection line","tags":["account","residential proxies","mobile proxies","traffic"],"examples":["{\"skill\":\"traffic-connection\",\"input\":{\"network\":\"mobile\",\"country\":\"US\"}}"],"security":[{"agentToken":["account:read"]}],"inputModes":["application/json"],"description":"One ready proxy connection for the customer's traffic key: host, port, username and the key as password, for a network (residential or mobile) and a country. It is a secret. Input: network, country (two letters) and optionally protocol (http or socks5). Needs an agent access token with account:read.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["account:read"]}}}]},{"id":"renew","name":"Renew a rented proxy","tags":["mobile proxies","renewal"],"examples":["{\"skill\":\"renew\",\"input\":{\"intentId\":\"<new UUID>\",\"quote\":\"<quote from renewal-quote>\"}}"],"security":[{"agentToken":["proxies:buy"]}],"inputModes":["application/json"],"description":"Renews a rented proxy from the balance at the price in a renewal quote, within the spending cap. Input: intentId (a new UUID) and quote. Needs an agent access token with proxies:buy.","outputModes":["application/json","text/plain"],"securityRequirements":[{"schemes":{"agentToken":{"list":["proxies:buy"]}}}]}],"version":"1.1.0","provider":{"url":"https://ipvolt.com","organization":"ipvolt"},"security":[{},{"agentToken":[]}],"description":"ipvolt rents dedicated mobile proxies (a device on a carrier network, rented for 1 day or 30 days) that customers pay for from a prepaid USD balance. This agent is deterministic: it uses no language model. Without a credential it lists the live mobile proxy catalog and explains how an AI agent connects to a customer's account. With an agent access token the customer granted, it reads that account's balance, orders and rented proxies, and rents or renews proxies from the balance within the spending cap the customer chose.","capabilities":{"streaming":false,"extensions":[{"uri":"https://github.com/google-agentic-commerce/ap2/tree/v0.1","params":{"roles":["merchant"]},"required":false,"description":"AP2 v0.1 merchant, paid only from the customer's prepaid USD balance within the spending cap the customer set for the agent. With an agent access token that has proxies:buy, send an IntentMandate whose skus name one offer id from the catalog skill (quantity in an optional \"ipvolt.quantity\" data part). The CartMandate comes back signed with ES256 (keys: https://ipvolt.com/beta/ap2/jwks.json). Pay it with a PaymentMandate in the same message as that CartMandate, with method_name https://ipvolt.com/ap2/prepaid-balance. AP2 here takes no cards or other payment methods."}],"extendedAgentCard":false,"pushNotifications":false},"protocolVersion":"0.3","securitySchemes":{"agentToken":{"type":"http","scheme":"Bearer","description":"An agent access token (ipvolt_at_…) the customer granted through https://ipvolt.com/auth.md. Send Authorization: Bearer <token>. Only the account skills need it.","httpAuthSecurityScheme":{"scheme":"Bearer","description":"An agent access token (ipvolt_at_…) the customer granted through https://ipvolt.com/auth.md. Send Authorization: Bearer <token>. Only the account skills need it."}}},"defaultInputModes":["application/json","text/plain"],"defaultOutputModes":["application/json","text/plain"],"preferredTransport":"JSONRPC","supportedInterfaces":[{"url":"https://ipvolt.com/beta/a2a","protocolBinding":"JSONRPC","protocolVersion":"1.0"},{"url":"https://ipvolt.com/beta/a2a","protocolBinding":"JSONRPC","protocolVersion":"0.3"}],"securityRequirements":[{},{"schemes":{"agentToken":{}}}]},"status":"verified","publisher_domain":"ipvolt.com","signature_status":"unsigned","signature_detail":"No card signature supplied","signature_key_url":null,"signature_checked_at":"2026-11-10T22:43:46.982900+00:00","domain_claimed_at":null,"domain_proof_checked_at":null,"source_name":"Publisher Agent Card","source_url":"https://ipvolt.com/.well-known/agent-card.json","last_check":{"checked_at":"2026-11-10T22:43:46.9829+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"also_published_at":[],"history_urls":["https://ipvolt.com/.well-known/agent-card.json"],"skills":[{"skill_id":"traffic-purchase","name":"Buy a traffic pack","description":"Buys one prepaid traffic pack from the customer's balance; its price counts against the spending cap the customer set. A pack is GB of proxy traffic on one key that works on residential IPs and on mobile IPs from a shared pool; later packs add GB to the same key and nothing renews. Structured input only: intentId (a new UUID; reuse it only to retry the same order), tariffId (a pack id from the catalog skill's trafficPacks) and offerVersion (that pack's version). One pack per order. The purchase is under ipvolt's Terms and Payments and Refunds Policy. Needs an agent access token with proxies:buy.","tags":["residential proxies","mobile proxies","traffic","purchase"],"quality_warning":false},{"skill_id":"access","name":"Connect an agent to an ipvolt account","description":"How an AI agent gets an access token for a customer's ipvolt account (auth.md, service_auth): register with the customer's email address, the customer signs in and types a 6-digit code, and chooses view only or a spending cap of $10, $25, $50, $100 or $250. Returns the steps and endpoints. No credential needed.","tags":["authentication","auth.md","onboarding"],"quality_warning":false},{"skill_id":"catalog","name":"Mobile proxy catalog","description":"Mobile proxy offers you can rent right now, from the live checkout: country, carrier, period (1 day or 30 days), stock, price in US cents, and the offer id and version that renting needs. Availability changes; read it again before renting. No credential needed.","tags":["mobile proxies","catalog","pricing"],"quality_warning":false},{"skill_id":"orders","name":"Orders","description":"The customer's latest 100 orders, newest first. Needs an agent access token with account:read.","tags":["account","orders"],"quality_warning":false},{"skill_id":"balance","name":"Prepaid balance","description":"Available and held prepaid balance of the customer's account, in US cents. Needs an agent access token with account:read.","tags":["account","balance"],"quality_warning":false},{"skill_id":"renew","name":"Renew a rented proxy","description":"Renews a rented proxy from the balance at the price in a renewal quote, within the spending cap. Input: intentId (a new UUID) and quote. Needs an agent access token with proxies:buy.","tags":["mobile proxies","renewal"],"quality_warning":false},{"skill_id":"renewal-quote","name":"Renewal quote","description":"A sealed price quote, valid for 2 minutes, to renew one rented proxy for 1 or 30 days. Spends nothing. Input: proxyId and days. Needs an agent access token with proxies:buy.","tags":["mobile proxies","renewal"],"quality_warning":false},{"skill_id":"purchase","name":"Rent mobile proxies","description":"Rents mobile proxies from the customer's prepaid balance; the price counts against the spending cap the customer set. Structured input only: intentId (a new UUID; reuse it only to retry the same order), tariffId (the offer id) and offerVersion (the offer version, an integer) from the catalog, and quantity from 1 to 20. A retry never charges twice. Needs an agent access token with proxies:buy.","tags":["mobile proxies","purchase"],"quality_warning":false},{"skill_id":"proxies","name":"Rented mobile proxies","description":"The customer's rented mobile proxies with their connection details, which are secrets. Needs an agent access token with account:read.","tags":["account","mobile proxies"],"quality_warning":false},{"skill_id":"grant","name":"This agent's access","description":"The scopes the customer granted this agent, its spending cap, the amount spent, what remains and when access ends. Needs an agent access token.","tags":["account"],"quality_warning":false},{"skill_id":"traffic-connection","name":"Traffic connection line","description":"One ready proxy connection for the customer's traffic key: host, port, username and the key as password, for a network (residential or mobile) and a country. It is a secret. Input: network, country (two letters) and optionally protocol (http or socks5). Needs an agent access token with account:read.","tags":["account","residential proxies","mobile proxies","traffic"],"quality_warning":false},{"skill_id":"traffic","name":"Traffic key and locations","description":"The customer's per-GB traffic key: its status, GB bought, used and left, the gateway host and ports, and the countries that have residential and mobile IPs right now. No secret is returned. Needs an agent access token with account:read.","tags":["account","residential proxies","mobile proxies","traffic"],"quality_warning":false}],"quality_flags":[],"check_history":{"checks":2,"passed":2},"recent_checks":[{"card_url":"https://ipvolt.com/.well-known/agent-card.json","checked_at":"2026-11-10T22:43:46.982900+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://ipvolt.com/.well-known/agent-card.json","checked_at":"2026-11-10T16:42:44.481458+00:00","success":true,"http_status":200,"detail":"Agent Card validated"}],"endpoint_tls_check":{"checked_at":"2026-11-10T22:43:46.982900+00:00","success":true,"detail":"Valid TLS connection to advertised endpoint host; no A2A request sent"},"protocol_check":{"checked_at":"2026-11-10T16:42:44.481458+00:00","endpoint":"https://ipvolt.com/beta/a2a","protocol_binding":"JSONRPC","protocol_version":"1.0","state":"a2a_response","http_status":200,"detail":"A2A task-not-found response to a read-only task lookup","request_diagnostics":{"requests":[{"path":"/beta/a2a","allow":[],"method":"POST","status":200,"version_header":"1.0","protocol_method":"GetTask","redirect_followed":false}],"capture_version":1}},"declared_primary_endpoint":"https://ipvolt.com/beta/a2a","selected_connection_interface":{"url":"https://ipvolt.com/beta/a2a","protocolBinding":"JSONRPC","protocolVersion":"1.0"},"protocol_interface_checks":[{"endpoint":"https://ipvolt.com/beta/a2a","protocol_binding":"JSONRPC","protocol_version":"1.0","selected":true,"state":"a2a_response","checked_at":"2026-11-10T16:42:44.481458+00:00","http_status":200,"detail":"A2A task-not-found response to a read-only task lookup","binding_recorded":true},{"endpoint":"https://ipvolt.com/beta/a2a","protocol_binding":"JSONRPC","protocol_version":"0.3","selected":false,"state":"a2a_response","checked_at":"2026-11-10T16:42:44.481458+00:00","http_status":200,"detail":"A2A task-not-found response to a read-only task lookup","binding_recorded":true}],"connection_selection_note":"The selected connection uses an address advertised in the publisher card. Read-only observations do not establish task quality or safety.","x402_price_check":null,"events":[],"relationships":[],"verification":{"agent_card_url":"https://ipvolt.com/.well-known/agent-card.json","last_successful_card_check":"2026-11-10T22:43:46.982900+00:00","latest_card_check":{"checked_at":"2026-11-10T22:43:46.9829+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"signature_status":"unsigned","signature_checked_at":"2026-11-10T22:43:46.982900+00:00","task_endpoint_tested":true,"task_execution_tested":false,"endpoint_tls_checked_at":"2026-11-10T22:43:46.982900+00:00","endpoint_tls_reachable":true,"protocol_check_state":"a2a_response","protocol_checked_at":"2026-11-10T16:42:44.481458+00:00","provider_identity_verified":false,"domain_claimed_at":null,"domain_proof_checked_at":null},"synthetic_capability_tests":{"agent_id":590766,"status":"not_tested","reason_code":"not_yet_tested","consent_status":"not_confirmed","latest_observation_status":null,"last_checked_at":null,"fixture_version":"1","reference_demonstration":false,"scope":"A publisher-authorized synthetic test of a dedicated free test endpoint. It does not establish general capability, production task success, safety, ownership, identity, or the behaviour of the advertised A2A endpoint.","methodology_url":"https://localmark.ai/capability-tests","history":[]},"repair_links":{"agent_repair_url":"https://localmark.ai/agents/590766/repair","publisher_report_url":"https://localmark.ai/publishers/ipvolt.com/repair","diagnostics_json_url":"https://localmark.ai/publishers/ipvolt.com/repair/diagnostics.json","diagnostics_csv_url":"https://localmark.ai/publishers/ipvolt.com/repair/diagnostics.csv"},"_localmark":{"contribution":{"optional":true,"directory_access":"free","operator_authorization_required":true,"affects_rankings":false,"message":"LocalMark is free. Optional contributions help fund ongoing checks.","support_url":"https://localmark.ai/support","metadata_url":"https://localmark.ai/api/v1/support/contributions"}}}