AUTONOMOLaunch your API

Machine Shop

api.pay-forge.online

Compare text using deterministic, case-insensitive bag-of-words token-overlap similarity for lexical duplicate screening. Lowercase each input and tokenize with Python Unicode regex \w+ (letters, digits and underscores). Count repeated tokens. Similarity = sum(min(count_a(token),count_b(token))) / max(words_a,words_b,1), rounded to four decimal places. Returns exactly similarity in [0,1], words_a

Category
Service
Networks
Base
Starting price
$0.004
Paid calls, 30 days
0

Paid endpoints

27 endpoints, sorted by usage. Prices are per request.

EndpointPriceNetworkCalls / 30d
POST/v1/batch-normalize-text

Normalize up to 100 texts with NFKC and whitespace cleanup in one payment. Preserve input order; fail the entire batch on invalid input. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.006Base0
POST/v1/chunk-text

Split text into fixed Unicode-character windows with configurable overlap and exact [start,end) offsets. No token counting or semantic boundaries. Maximum 2000 chunks. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/clean-text

Clean whitespace in scraped text, OCR output or pasted documents before indexing, entity extraction, text comparison or LLM input. Deterministic text cleanup: normalize CRLF/CR to LF, collapse runs of ASCII spaces/tabs within each line, trim each line using Unicode whitespace rules, remove empty lines, preserve nonempty line breaks and letter case. Returns text, chars_before (after newline normalization), and chars_after. This is whitespace cleanup, not OCR, HTML parsing, spelling correction or PII redaction. POST application/json. Limit: 50000 input Unicode characters per request; for comparison, the lengths of a and b are added. Empty strings are accepted. Extra JSON properties are ignored. Errors after payment verification: 413 for the character limit; 422 for missing/non-string fields or malformed JSON, and for URL parsing errors. Unpaid calls return 402 with a base64 JSON PAYMENT-REQUIRED header before input validation. Handler error responses are not settled.

$0.004Base0
POST/v1/compare-text

Compare text using deterministic, case-insensitive bag-of-words token-overlap similarity for lexical duplicate screening. Lowercase each input and tokenize with Python Unicode regex \w+ (letters, digits and underscores). Count repeated tokens. Similarity = sum(min(count_a(token),count_b(token))) / max(words_a,words_b,1), rounded to four decimal places. Returns exactly similarity in [0,1], words_a and words_b. Word order and punctuation are ignored; both token-empty inputs score 0, even when equal. Does not measure semantic similarity, Levenshtein edit distance, cosine similarity, or produce a text diff. POST application/json with a and b. Limit: 50000 input Unicode characters per request; for comparison, the lengths of a and b are added. Empty strings are accepted. Extra JSON properties are ignored. Errors after payment verification: 413 for the character limit; 422 for missing/non-string fields or malformed JSON, and for URL parsing errors. Unpaid calls return 402 with a base64 JSON P

$0.004Base0
POST/v1/csv-to-json

Convert comma-separated CSV with a unique header row into JSON rows. All cell values stay strings. Unequal row width returns 422; no type guessing. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.005Base0
POST/v1/deduplicate-documents

Normalize up to 100 documents with NFKC and whitespace cleanup, deduplicate by exact resulting text, return unique text and original duplicate indices. No semantic matching. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.005Base0
POST/v1/deduplicate-urls

Normalize and deduplicate up to 100 URLs using existing normalize-url rules; return unique URLs and duplicate indices. No requests or redirects. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.005Base0
POST/v1/extract-entities

Deterministic regex entity extraction and email extraction from caller-supplied text. Returns exactly emails, urls and money arrays, each sorted and deduplicated by exact case-sensitive string equality, preserving matched case. Email patterns use Python case-insensitive [A-Z], digits and common email punctuation with a letter TLD of length >=2, case-insensitive matching. URL patterns start with lowercase http:// or https:// and end at whitespace, angle brackets or quotes; trailing punctuation can remain. Money patterns match $/€/£ followed by a digit and digits/commas/dots, or a number followed by USD/EUR/GBP, with one optional whitespace separator and case-insensitive currency codes. Money is returned as strings, not validated numeric amounts. Currency-code patterns have no trailing word boundary: 5 USDC can yield the partial match 5 USD; USDC is not recognized as a distinct currency. Does not extract people, organizations, locations, dates or standalone crypto addresses; not semantic

$0.004Base0
POST/v1/extract-json-fields

Extract caller-selected RFC6901 JSON pointers. Missing paths return 422. Empty pointer selects the root. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/extract-patterns

Return sorted unique email, URL, money, ISO-date-shaped and EVM-address-shaped matches. Pattern matching only; dates, checksums and deliverability are unvalidated. Money uses legacy USD/EUR/GBP patterns; 5 USDC can produce a partial 5 USD match. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/html-links

Extract closed HTML anchors and their text; resolve relative URLs against optional base_url. Destinations are untrusted and never fetched. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/html-metadata

Extract title, description, language, canonical URL and named/property meta tags from supplied HTML. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/html-prepare-document

Convert supplied static HTML to text and basic Markdown, extract metadata, links and JSON-LD, then normalize, deduplicate lines, extract patterns and chunk the text into a RAG document. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.01Base0
POST/v1/html-structured-data

Extract JSON-LD script blocks as parsed JSON with validity flags. No microdata, inference or schema validation. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/html-to-markdown

Convert static HTML headings, paragraphs, lists and anchors to Markdown. Tables, CSS and JavaScript are unsupported. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/html-to-text

Remove scripts, styles, templates and markup from static HTML; return visible text with line breaks. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/normalize-json

Parse JSON and emit compact recursively key-sorted JSON. Python numeric precision applies; not cryptographic JSON canonicalization. Duplicate keys use last value. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/normalize-text

Apply Unicode NFKC then normalize whitespace and remove blank lines; preserve letter case. NFKC can change character meaning. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/normalize-url

Normalize URL strings for link deduplication and stable hashing without network access. Deterministic URL normalization using Python urllib.parse: strip surrounding whitespace, require parsed http/https scheme and nonempty authority, lowercase scheme and the entire authority (including any userinfo), use / for an empty path, remove the final path-parameter component and fragment. Decode/re-encode query pairs with urllib.parse.parse_qsl/urlencode, preserving order, duplicate keys and blank values; remove keys beginning with utm_, fbclid, gclid or yclid case-insensitively. Does not sort queries, resolve dot segments, remove default ports or validate port numbers/hosts; ports remain in the lowercased authority. Not a fetch, redirect resolver, security validator or universal canonical URL equivalence test. Returns exactly url and sha256 (SHA-256 of its UTF-8 bytes). Non-http(s), missing authority and parser errors return 422. POST application/json with url. Limit: 50000 input Unicode chara

$0.004Base0
POST/v1/prepare-document

Produce a RAG document: NFKC and whitespace normalization, exact repeated-line removal, SHA256, pattern entities and overlapping character chunks. Repeated lines are intentionally removed; no semantic analysis. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.01Base0
POST/v1/repair-json

Repair code-fenced JSON or JSON-compatible Python literals including single quotes and trailing commas. Unsupported repairs return 422; no invented fields. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.004Base0
POST/v1/url-to-markdown

Fetch one public static HTML/text page and return basic Markdown and final URL. Static fetch: default ports only; public DNS/IPs only; maximum 3 redirects, 1MB, 15s body deadline plus DNS/connect time. No JavaScript, cookies, auth, paywall bypass, browser or paid upstream. Upstream, safety or parsing errors return 422 without settlement. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.006Base0
POST/v1/url-to-text

Fetch one public static HTML/text page and return cleaned text and final URL. Static fetch: default ports only; public DNS/IPs only; maximum 3 redirects, 1MB, 15s body deadline plus DNS/connect time. No JavaScript, cookies, auth, paywall bypass, browser or paid upstream. Upstream, safety or parsing errors return 422 without settlement. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.006Base0
POST/v1/webpage-metadata

Fetch one public static HTML/text page and return title, description, canonical URL, language and meta tags. Static fetch: default ports only; public DNS/IPs only; maximum 3 redirects, 1MB, 15s body deadline plus DNS/connect time. No JavaScript, cookies, auth, paywall bypass, browser or paid upstream. Upstream, safety or parsing errors return 422 without settlement. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.006Base0
POST/v1/webpage-prepare-document

Fetch one public static page and return text, basic Markdown, metadata, links, JSON-LD plus normalized, line-deduplicated, hashed, entity-extracted and chunked RAG content. Static fetch: default ports only; public DNS/IPs only; maximum 3 redirects, 1MB, 15s body deadline plus DNS/connect time. No JavaScript, cookies, auth, paywall bypass, browser or paid upstream. Upstream, safety or parsing errors return 422 without settlement. Limit: 50000 combined input string characters; batch maximum 100. JSON POST; invalid input returns 422, size limit 413. Unpaid production requests return x402 402 before input validation.

$0.015Base0
POST/v2/api-migration-pack

Consumer-specific OpenAPI impact and tests; unsupported => REVIEW. POST baseline/candidate/consumer JSON. Idempotency-Key required; 202: reuse authorization/key/input, never pay again. Full schemas: https://api.pay-forge.online/v2/api-migration-pack/schema

$0.02Base0
POST/v2/catalog-update-gate

Reconcile an Apify-style product dataset against a previous accepted catalog and explicit flat field contract. Return ingestion-ready inserts/updates, unchanged records, quarantines, duplicate resolution, money/unit checks, schema drift and field source pointers. Upsert only; no inferred deletion, fetching or external purchases. Maximum 50 current and 50 previous records, 16 scalar fields, 100000 input bytes. Fixed 0.050000 USDC per batch.

$0.05Base0

Is this your project? Suggest an edit.