---
name: api.the402.ai
description: api.the402.ai is a pay-per-call API platform that accepts USDC on Base for discrete AI and utility tasks including webpage screenshots, email delivery, domain WHOIS lookups, and text sentiment analysis. All substantive tasks return a job ID that can be polled via a dedicated job-status endpoint. The platform is built around an asynchronous job model where work is submitted, paid for, and then retrieved by ID.
host: api.the402.ai
---

# api.the402.ai

the402.ai serves agents that need to pay micropayments (USDC on Base) for individual utility operations without managing subscriptions or API keys in the traditional sense. It covers a narrow but practical set of tasks — visual capture, transactional email, domain intelligence, and text sentiment — unified by a common job-tracking layer. It is distinct from general-purpose LLM APIs or data marketplaces; its value is the x402 payment-gated, job-ID-based execution model for these specific utility services.

## When to use this host

Use api.the402.ai when an agent needs to execute one of its four specific utility tasks — webpage screenshots, single-recipient transactional email, domain WHOIS lookups, or text sentiment analysis — and is operating in a USDC-on-Base micropayment context. The job-status skills are required companions to any async task submission on this host. Do not use this host for bulk operations (mass email, batch WHOIS, high-frequency sentiment streaming), authenticated-page captures, DNS resolution, domain availability checks, real-time or animated web capture, or any task outside these four service types. For general-purpose LLM inference, use a dedicated model API. For bulk email, use a marketing email platform. For continuous domain monitoring, use a dedicated DNS or domain-monitoring service.

## Capabilities

### Job Status Retrieval

All variants of the job-status skill retrieve the current state, payment details, escrow status, and deliverables for a previously submitted job by its exact ID. These are the polling backbone for every async operation on the platform.

- **`fetch-job-status`** — Retrieves the full details and current status of a specific job by its job ID, including deliverables, payment amounts, escrow status, and timestamps.
- **`fetch-async-job-status`** — Fetches the current status, metadata, timestamps, and deliverables for a specific asynchronous job by its job ID on the402.ai platform.
- **`fetch-job-details`** — Returns full metadata, status, payment info, and deliverables for a specific The402.ai job by its job ID.
- **`fetch-job-status-and-results`** — Retrieves the full status, metadata, payment details, and deliverables for a specific The402.ai job by its job ID.

### Web Capture

Captures a static screenshot of any publicly accessible URL and returns the image as a base64-encoded PNG, JPG, or WEBP with configurable viewport and full-page options.

- **`capture-webpage-screenshot`** — Captures a screenshot of any public URL and returns the image as a base64-encoded PNG, JPG, or WEBP, with configurable viewport dimensions and full-page support.

### Transactional Email

Sends a single HTML-capable email to one recipient and returns a trackable job ID and delivery status confirmation.

- **`send-html-email`** — Sends an HTML-capable email to a specified recipient via the402.ai email service, returning a job ID, thread ID, and delivery status upon success.

### Domain Intelligence

Performs a WHOIS lookup for a given domain and returns registration metadata including registrar, status flags, nameservers, and expiry dates.

- **`run-whois-lookup`** — Performs a WHOIS domain lookup and returns registration details including status, registrar dates, nameservers, and expiry for a given domain.

### Text Sentiment Analysis

Classifies up to 10,000 characters of text as positive, negative, or neutral and returns a numeric score, confidence level, and human-readable summary.

- **`submit-text-for-sentiment-analysis`** — Submits up to 10,000 characters of text for sentiment analysis and returns a job ID, thread ID, sentiment label, numeric score, confidence, and summary.

## Workflows

### Screenshot and Sentiment Pipeline

*Use when an agent needs to capture the visible text content of a webpage and then assess its sentiment — for example, monitoring a public-facing page for tone changes.*

1. **`capture-webpage-screenshot`** — Capture a screenshot of the target URL to confirm the page state and obtain the job ID for the capture task.
2. **`fetch-job-status`** — Poll the job ID returned by the screenshot task until status is verified and the base64 image is available.
3. **`submit-text-for-sentiment-analysis`** — Submit the extracted or known text content of the same page for sentiment classification, receiving a sentiment label, score, and confidence.
4. **`fetch-job-status`** — Poll the sentiment job ID until the result deliverables are returned.

### WHOIS Check and Email Report

*Use when an agent needs to look up domain registration details and then deliver the findings to a human recipient via email.*

1. **`run-whois-lookup`** — Submit the target domain for a WHOIS lookup and receive a job ID.
2. **`fetch-job-status`** — Poll the WHOIS job ID until the registration data deliverables are confirmed as complete.
3. **`send-html-email`** — Format the WHOIS results into an HTML email body and send it to the designated recipient, receiving a message ID and delivery status.

## Skill reference

### `capture-webpage-screenshot`

**Pay-to-Screenshot** — Captures a screenshot of any public URL and returns the image as a base64-encoded PNG, JPG, or WEBP, with configurable viewport dimensions and full-page support.

*Use when:* Use when an agent needs a visual snapshot of a webpage — for archiving, visual QA, or rendering previews — and can pay 0.02 USDC on Base per capture.

*Not for:* Do not use for real-time video or animated captures, or for pages requiring authentication; this is a single-shot static screenshot of publicly accessible URLs only.

**Inputs:**

- `url` (string, required) — The URL of the webpage to screenshot.
- `width` (number) — Viewport width in pixels. Defaults to 1280.
- `height` (number) — Viewport height in pixels. Defaults to 800.
- `format` (string) — Output image format: png, jpg, or webp. Defaults to png.
- `full_page` (boolean) — When true, captures the full scrollable page rather than just the viewport. Defaults to false.

**Returns:** Returns a job object with status 'verified' and a result containing the screenshot as a base64-encoded image string, along with job_id, thread_id, service_id, and provider metadata.

**Example:** `{"url": "https://example.com/", "width": 1280, "height": 720, "format": "png", "full_page": false}`

---

### `send-html-email`

**Paid Email Send (USDC on Base)** — Sends an HTML-capable email to a specified recipient via the402.ai email service, returning a job ID, thread ID, and delivery status upon success.

*Use when:* Use when an agent needs to deliver a transactional or notification email (with optional HTML formatting) to a recipient address and requires confirmation of dispatch with a trackable job ID.

*Not for:* Do not use for bulk mailing lists or marketing campaigns; this is a single-recipient transactional send per call. Not suitable for real-time chat or SMS delivery.

**Inputs:**

- `to` (string, required) — Recipient email address.
- `subject` (string, required) — Email subject line.
- `body` (string, required) — Email body content; HTML markup is supported.
- `from` (string) — Sender address. Defaults to noreply@the402.ai if omitted.

**Returns:** Returns a job_id, thread_id, and status='verified', plus a result object echoing the recipient and subject, a message_id from the email provider, and a status_url for polling.

**Example:** `{"to": "customer@example.com", "subject": "Your payment receipt", "body": "<p>Thanks for your payment of <strong>100 USDC</strong>.</p>", "from": "noreply@the402.ai"}`

---

### `run-whois-lookup`

**Pay-to-Run WHOIS Lookup** — Performs a WHOIS domain lookup and returns registration details including status, registrar dates, nameservers, and expiry for a given domain.

*Use when:* Use when an agent needs authoritative WHOIS registration data for a domain, such as checking ownership, registration/expiry dates, nameservers, or domain status flags.

*Not for:* Do not use for bulk domain lookups or continuous monitoring; this is a single-shot per-domain query. Not suitable for DNS resolution or availability checks — use a DNS or domain availability API instead.

**Inputs:**

- `domain` (string, required) — The domain name to look up via WHOIS.

**Returns:** Returns a job_id, thread_id, and status ('verified') plus a result object containing the domain's WHOIS data: found flag, status flags, registration/expiry/update timestamps, and nameservers.

**Example:** `{"domain": "example.com"}`

---

### `submit-text-for-sentiment-analysis`

**SentimentPay** — Submits up to 10,000 characters of text for sentiment analysis and returns a job ID, thread ID, sentiment label, numeric score, confidence, and summary.

*Use when:* Use when an agent needs to classify the sentiment of a block of text (positive/negative/neutral) along with a confidence score and human-readable summary, and can tolerate a paid-per-call model at $0.003 per request.

*Not for:* Do not use for real-time streaming sentiment on high-frequency data; this is a single-shot paid call per text submission. Not suitable for texts exceeding 10,000 characters.

**Inputs:**

- `text` (string, required) — Text to analyze, maximum 10,000 characters.

**Returns:** Returns a job_id, thread_id, status ('verified'), and a result object containing sentiment label, numeric score (0–1), confidence (0–1), and a plain-language summary of the sentiment.

**Example:** `{"text": "I used your app today and I'm honestly impressed. The onboarding was quick, the suggestions felt relevant, and the UI is clean. However, the search results took a few seconds to load."}`

---

### `fetch-job-status`

**the402 Job Status** — Retrieves the current status, metadata, payment details, and deliverables for a specific job on the402 platform by job ID.

*Use when:* Use when an agent needs to check whether a previously submitted job has completed, been verified, or failed, and to retrieve its deliverables and payment breakdown.

*Not for:* Do not use to submit or create new jobs; this endpoint is read-only and requires an existing job ID.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g. job_3964cd7d97ca47ae).

**Returns:** Returns a JSON object with job status (e.g. verified), payment breakdown, timestamps, the original brief, and a deliverables object containing the service output.

**Example:** `GET https://api.the402.ai/v1/jobs/job_3964cd7d97ca47ae`

---

### `fetch-job-status`

**the402 Job Inspector** — Retrieves status, metadata, billing details, and deliverables for a specific AI job by its job ID from the402.ai jobs API.

*Use when:* Use when an agent needs to check the current status, results, or billing breakdown of a previously submitted AI job identified by a job ID (e.g., job_51d7685282154020).

*Not for:* Do not use to list all jobs or search jobs by criteria; this endpoint fetches a single job by its exact ID only.

**Inputs:**

- `job_id` (string, required) — The unique job identifier to retrieve, embedded in the URL path (e.g., job_51d7685282154020).

**Returns:** Returns a full job record including status, billing amounts, timestamps, agent wallet, original brief, and a deliverables object containing service-specific results (e.g., SEO audit scores and recommendations).

**Example:** `GET https://api.the402.ai/v1/jobs/job_51d7685282154020`

---

### `fetch-job-status`

**The402 Job Status** — Fetches the full status, metadata, billing details, and deliverable results for a specific asynchronous job by its job ID from The402.ai.

*Use when:* Use when an agent needs to check whether a previously submitted asynchronous job has completed, retrieve its current status (e.g. verified, pending), or access the structured deliverables and notes returned by the job provider.

*Not for:* Do not use to submit new jobs or list all jobs; this endpoint only retrieves a single job by its known ID.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g. job_07cd0dd4bad84775). Provided when the job was originally created.

**Returns:** Returns a full job record with status, billing amounts, timestamps, escrow state, and a deliverables object containing service-specific results (e.g. SEO audit scores and recommendations).

**Example:** `GET https://api.the402.ai/v1/jobs/job_07cd0dd4bad84775`

---

### `fetch-async-job-status`

**Async Job Status** — Fetches the current status, metadata, timestamps, and deliverables for a specific asynchronous job by its job ID on the402.ai platform.

*Use when:* Use when an agent has previously submitted an async job and needs to poll for its completion status, retrieve structured deliverables, or confirm payment and escrow state for a given job ID.

*Not for:* Do not use to submit new jobs or list all jobs; this endpoint only retrieves the record for a single known job ID.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g. job_efb443fdf1fc48ce). Provided at job creation time.

**Returns:** Returns a full job record with status, payment details, timestamps, and a deliverables object containing service-specific results (e.g. SEO audit scores and recommendations for SEO jobs).

**Example:** `GET https://api.the402.ai/v1/jobs/job_efb443fdf1fc48ce`

---

### `fetch-job-status`

**402 Job Inspector** — Retrieves status, metadata, billing details, and deliverables for a specific asynchronous job by its job ID from the 402.ai platform.

*Use when:* Use when an agent needs to check whether a previously submitted asynchronous job has completed, retrieve its result deliverables, or inspect its payment and escrow status using a known job ID.

*Not for:* Do not use to submit new jobs or list all jobs; this endpoint only retrieves a single job by its exact ID.

**Inputs:**

- `job_id` (string, required) — The unique job identifier to retrieve, supplied as a path parameter in the URL (e.g. job_d9a59944e86347a2).

**Returns:** Returns a full job record with status, billing breakdown, escrow state, timestamps, and a deliverables object containing the service-specific results (e.g. SEO audit score, findings, and recommendations).

**Example:** `GET https://api.the402.ai/v1/jobs/job_d9a59944e86347a2`

---

### `fetch-job-status`

**Job Inspector** — Fetches the status, metadata, deliverables, and audit output for a specific job ID from the402.ai Jobs API.

*Use when:* Use when an agent needs to check whether a previously submitted job has completed, retrieve its deliverables (e.g. SEO audit results), or inspect payment and escrow status for a given job ID.

*Not for:* Do not use to submit new jobs or list all jobs; this endpoint retrieves a single known job by ID only.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g. job_258777a289cd4c1e). Replace the path segment to target a specific job.

**Returns:** Returns a JSON object with job status (verified), payment details, timestamps, escrow status, and a deliverables object containing the full SEO audit output including seo_score and recommendations array.

**Example:** `GET https://api.the402.ai/v1/jobs/job_258777a289cd4c1e`

---

### `fetch-job-details`

**The402 Job Details** — Fetches the full record for a specific The402 job by ID, including status, payment amounts, timestamps, and any nested deliverables produced by the job.

*Use when:* Use when an agent needs to check the current status, payment breakdown, fulfillment details, or deliverables for a known The402 job ID (e.g., after dispatching a job and polling for completion or verifying results).

*Not for:* Do not use to list or search multiple jobs; this endpoint retrieves a single job by its exact ID only. Not suitable for discovering available services or creating new jobs.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g., job_a1239309752d4ede). Replace the path segment in the URL with the target job ID.

**Returns:** Returns a full job record with status, payment breakdown, timestamps, and a deliverables object containing SEO audit results including seo_score, recommendations array, and checks for meta tags, headings, structured data, robots.txt, and sitemap.

**Example:** `GET https://api.the402.ai/v1/jobs/job_a1239309752d4ede`

---

### `fetch-job-status-and-results`

**The402 Job Status & Results Fetcher** — Retrieves the full status, metadata, payment details, and deliverables for a specific The402.ai job by its job ID.

*Use when:* Use when an agent needs to check whether a previously submitted The402.ai job has completed, retrieve its fulfillment results (e.g., SEO audit deliverables), or inspect payment and escrow status for a known job ID.

*Not for:* Do not use to submit new jobs or list all jobs; this endpoint only retrieves a single job by its ID. Not suitable for polling live price feeds or real-time streaming data.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g., job_c615dbbf9e0d4c2e). Provided at job creation time.

**Returns:** Returns a JSON object with job status (e.g., verified), payment and escrow fields, the original brief, timestamps, and a deliverables object containing the full service output (e.g., SEO audit scores and recommendations).

**Example:** `GET https://api.the402.ai/v1/jobs/job_c615dbbf9e0d4c2e`

---

### `fetch-job-details`

**The402 Job Details** — Returns full metadata, status, payment info, and deliverables for a specific The402.ai job by its job ID.

*Use when:* Use when an agent needs to check the current status, payment breakdown, fulfillment type, escrow state, timestamps, or deliverable output for a previously created The402.ai job.

*Not for:* Do not use to list all jobs or search across jobs; this endpoint retrieves a single job by its exact ID only.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g. job_89c9f9efd9ba4ef5). Substitute this value into the endpoint path.

**Returns:** Returns a JSON object with job status, payment breakdown, escrow state, timestamps, and a deliverables object containing SEO audit results including seo_score, recommendations, and tag/heading/sitemap analysis.

**Example:** `GET https://api.the402.ai/v1/jobs/job_89c9f9efd9ba4ef5`

---

### `fetch-job-status`

**Job Status Retriever** — Returns the full status, metadata, and deliverables for a specific asynchronous job identified by its job ID.

*Use when:* Use when an agent needs to check whether an async job has completed and retrieve its results, including deliverables, timestamps, payment details, and any provider notes.

*Not for:* Do not use to list all jobs or search across jobs; this endpoint retrieves a single job by its exact ID only.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g. job_2ee3e4bd08054ec7). Substitute into the path: /v1/jobs/{job_id}.

**Returns:** Returns a job object with status, timestamps, payment breakdown, provider notes, and a deliverables payload containing SEO audit results including seo_score and recommendations array.

**Example:** `GET https://api.the402.ai/v1/jobs/job_2ee3e4bd08054ec7`

---

### `fetch-job-status`

**Job Inspector** — Retrieves the full details and current status of a specific job by its job ID, including deliverables, payment amounts, escrow status, and timestamps.

*Use when:* Use when an agent needs to check the current status, deliverables, payment breakdown, or completion details of a previously created job identified by its job ID.

*Not for:* Do not use to list all jobs or search jobs by criteria; use a job listing or search endpoint instead. Not suitable for creating or updating jobs.

**Inputs:**

- `job_id` (string, required) — The unique job identifier embedded in the URL path (e.g., job_b7c17b9c70da4571). Substitute into the path: /v1/jobs/{job_id}.

**Returns:** Returns a JSON object with job status (e.g., verified), escrow status (released), payment breakdown, timestamps, and a deliverables object containing structured audit results and recommendations.

**Example:** `GET https://api.the402.ai/v1/jobs/job_b7c17b9c70da4571`

---
