B
StableEnrich
Preview responses and set spending limits for this service through use.mpp.land
Free budget controls, response samples, and reliability routing.
Compliance Checks
All paid ops declare 402 response
MUST
10pt
All x-payment-info valid
MUST
10pt
Challenge has Cache-Control: no-store
MUST
5pt
Challenge digest on POST
SHOULD
3pt
Challenge has expires
SHOULD
3pt
Challenge has Problem Details
SHOULD
2pt
Challenge has required params
MUST
5pt
Challenge has WWW-Authenticate
MUST
5pt
Challenge returns 402
MUST
10pt
Correct Content-Type
MUST
5pt
Has Cache-Control on discovery
SHOULD
5pt
Has input schemas
SHOULD
5pt
Has llms.txt
SHOULD
5pt
Has /openapi.json at root
MUST
10pt
Has required top-level fields
MUST
10pt
Served over HTTPS
MUST
10pt
Uses standard categories
SHOULD
2pt
1 issue
- OpenAPI doc exceeds 64KB limit (163761 bytes)
Paid Operations (30)
POST /api/exa/search dynamic
Exa Search - Neural search across the web
- Amount
- map[amount:0.010000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.010000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| additionalQueries | array | No | |
| category | string | No |
enum: company, research paper, news, pdf, github, tweet, personal site, linkedin profile, financial report |
| contents | object | No | |
| endCrawlDate | string | No | |
| endPublishedDate | string | No | |
| excludeDomains | array | No | |
| excludeText | array | No | |
| includeDomains | array | No | |
| includeText | array | No | |
| numResults | number | No |
default: 5
|
| query | string | Yes | The query string for the search |
| startCrawlDate | string | No | |
| startPublishedDate | string | No | |
| type | string | No |
enum: neural, fast, auto, deep default: auto
|
| userLocation | string | No |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| context | string | - |
| costDollars | object | - |
| requestId | string | - |
| resolvedSearchType | string | - |
| results | array[object] | - |
| searchType | string | - |
POST /api/firecrawl/scrape dynamic
Firecrawl Scrape - Scrape a URL with full JavaScript rendering. Use as a fallback when WebFetch returns empty/JS-only content or 403s.
- Amount
- map[amount:0.012600 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.012600 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| url | string (uri) | Yes | URL to scrape and extract content from |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| content | string | Page content as markdown |
| title | string | Page title |
| url | string | Final URL after redirects |
POST /api/apollo/people-search dynamic
Apollo People Search - Find prospects by filters
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| excludeFields | array | No | |
| organization_ids | array | No | |
| organization_industry_tag_ids | array | No | |
| organization_locations | array | No | |
| organization_num_employees_ranges | array | No | Ranges: '1,10', '11,50', '51,200', '201,500', '501,1000', '1001,5000', '5001,10000', '10001,' |
| page | number | No |
default: 1
|
| per_page | number | No |
default: 25
|
| person_locations | array | No | City, state, or country |
| person_not_titles | array | No | Job titles to exclude |
| person_seniorities | array | No | |
| person_titles | array | No | Job titles to match |
| q_keywords | string | No | Keywords to search across all fields |
| q_organization_domains | array | No | Company domains |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| pagination | object | - |
| people | array[object] | - |
POST /api/exa/contents dynamic
Exa Contents - Retrieve content from URLs
- Amount
- map[amount:0.002000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.002000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| extras | object | No | |
| highlights | object | No | |
| livecrawl | string | No |
enum: never, fallback, always, preferred |
| livecrawlTimeout | number | No | |
| subpageTarget | No | ||
| subpages | number | No | |
| summary | object | No | |
| text | No | ||
| urls | array | Yes | Array of URLs to crawl |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| context | string | - |
| costDollars | object | - |
| requestId | string | - |
| results | array[object] | - |
| statuses | array[object] | - |
POST /api/clado/contacts-enrich dynamic
Clado Contacts Enrichment - Enrich contact info from LinkedIn URL, email, or phone
- Amount
- map[amount:0.200000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.200000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| string | No | Email address to enrich | |
| email_enrichment | boolean | No | Request email enrichment (costs credits when found) |
| linkedin_url | string | No | LinkedIn profile URL to enrich |
| phone | string | No | Phone number to enrich |
| phone_enrichment | boolean | No | Request phone enrichment (costs credits when found) |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| data | array[object] | - |
POST /api/exa/find-similar dynamic
Exa Find Similar - Find pages similar to a given URL
- Amount
- map[amount:0.010000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.010000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| contents | object | No | |
| endCrawlDate | string | No | |
| endPublishedDate | string | No | |
| excludeDomains | array | No | |
| excludeText | array | No | |
| includeDomains | array | No | |
| includeText | array | No | |
| numResults | number | No |
default: 5
|
| startCrawlDate | string | No | |
| startPublishedDate | string | No | |
| url | string (uri) | Yes | The URL to find similar links to |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| context | string | - |
| costDollars | object | - |
| requestId | string | - |
| results | array[object] | - |
POST /api/exa/answer dynamic
Exa Answer - Get AI-generated answers with citations
- Amount
- map[amount:0.010000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.010000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | The question or query to answer |
| stream | boolean | No | |
| text | boolean | No |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| answer | string | The generated answer based on search results |
| citations | array[object] | - |
| costDollars | object | - |
POST /api/firecrawl/search dynamic
Firecrawl Search - Search the web
- Amount
- map[amount:0.025200 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.025200 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| limit | number | No |
Maximum number of results
default: 5
|
| query | string | Yes | Search query to find relevant web pages |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| query | string | - |
| resultCount | number | - |
| results | array[object] | - |
POST /api/google-maps/text-search/partial dynamic
Google Maps Text Search (Partial)
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| excludeFields | array | No |
default: [photos]
|
| includedType | string | No | |
| languageCode | string | No |
default: en
|
| locationBias | object | No | |
| maxResultCount | number | No |
default: 5
|
| minRating | number | No | |
| openNow | boolean | No | |
| pageToken | string | No | |
| priceLevels | array | No | |
| textQuery | string | Yes |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| nextPageToken | string | - |
| places | array[object] | - |
POST /api/google-maps/text-search/full dynamic
Google Maps Text Search (Full)
- Amount
- map[amount:0.080000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.080000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| excludeFields | array | No |
default: [photos]
|
| includedType | string | No | |
| languageCode | string | No |
default: en
|
| locationBias | object | No | |
| maxResultCount | number | No |
default: 5
|
| minRating | number | No | |
| openNow | boolean | No | |
| pageToken | string | No | |
| priceLevels | array | No | |
| textQuery | string | Yes |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| nextPageToken | string | - |
| places | array[object] | - |
POST /api/google-maps/nearby-search/partial dynamic
Google Maps Nearby Search (Partial)
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| excludeFields | array | No |
default: [photos]
|
| excludedTypes | array | No | |
| includedTypes | array | No | |
| languageCode | string | No |
default: en
|
| locationRestriction | object | Yes | |
| maxResultCount | number | No |
default: 5
|
| rankPreference | string | No |
enum: POPULARITY, DISTANCE default: POPULARITY
|
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| nextPageToken | string | - |
| places | array[object] | - |
POST /api/google-maps/nearby-search/full dynamic
Google Maps Nearby Search (Full)
- Amount
- map[amount:0.080000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.080000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| excludeFields | array | No |
default: [photos]
|
| excludedTypes | array | No | |
| includedTypes | array | No | |
| languageCode | string | No |
default: en
|
| locationRestriction | object | Yes | |
| maxResultCount | number | No |
default: 5
|
| rankPreference | string | No |
enum: POPULARITY, DISTANCE default: POPULARITY
|
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| nextPageToken | string | - |
| places | array[object] | - |
GET /api/google-maps/place-details/partial dynamic
Google Maps Place Details (Partial)
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| placeId | query | string | Yes | - |
| excludeFields | query | array | Yes | - |
| languageCode | query | string | No | - |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| accessibilityOptions | object | - |
| allowsDogs | boolean | - |
| businessStatus | string | - |
| curbsidePickup | boolean | - |
| currentOpeningHours | object | - |
| delivery | boolean | - |
| dineIn | boolean | - |
| displayName | object | - |
| editorialSummary | object | - |
| formattedAddress | string | - |
| goodForChildren | boolean | - |
| goodForGroups | boolean | - |
| goodForWatchingSports | boolean | - |
| googleMapsUri | string | - |
| id | string | - |
| internationalPhoneNumber | string | - |
| liveMusic | boolean | - |
| location | object | - |
| nationalPhoneNumber | string | - |
| outdoorSeating | boolean | - |
| parkingOptions | object | - |
| paymentOptions | object | - |
| photos | array[object] | - |
| priceLevel | string | - |
| priceRange | object | - |
| primaryType | string | - |
| rating | number | - |
| regularOpeningHours | object | - |
| reservable | boolean | - |
| restroom | boolean | - |
| reviews | array[object] | - |
| servesBeer | boolean | - |
| servesBreakfast | boolean | - |
| servesBrunch | boolean | - |
| servesCocktails | boolean | - |
| servesCoffee | boolean | - |
| servesDessert | boolean | - |
| servesDinner | boolean | - |
| servesLunch | boolean | - |
| servesVegetarianFood | boolean | - |
| servesWine | boolean | - |
| takeout | boolean | - |
| types | array[string] | - |
| userRatingCount | number | - |
| websiteUri | string | - |
GET /api/google-maps/place-details/full dynamic
Google Maps Place Details (Full)
- Amount
- map[amount:0.050000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.050000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| placeId | query | string | Yes | - |
| excludeFields | query | array | Yes | - |
| languageCode | query | string | No | - |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| accessibilityOptions | object | - |
| allowsDogs | boolean | - |
| businessStatus | string | - |
| curbsidePickup | boolean | - |
| currentOpeningHours | object | - |
| delivery | boolean | - |
| dineIn | boolean | - |
| displayName | object | - |
| editorialSummary | object | - |
| formattedAddress | string | - |
| goodForChildren | boolean | - |
| goodForGroups | boolean | - |
| goodForWatchingSports | boolean | - |
| googleMapsUri | string | - |
| id | string | - |
| internationalPhoneNumber | string | - |
| liveMusic | boolean | - |
| location | object | - |
| nationalPhoneNumber | string | - |
| outdoorSeating | boolean | - |
| parkingOptions | object | - |
| paymentOptions | object | - |
| photos | array[object] | - |
| priceLevel | string | - |
| priceRange | object | - |
| primaryType | string | - |
| rating | number | - |
| regularOpeningHours | object | - |
| reservable | boolean | - |
| restroom | boolean | - |
| reviews | array[object] | - |
| servesBeer | boolean | - |
| servesBreakfast | boolean | - |
| servesBrunch | boolean | - |
| servesCocktails | boolean | - |
| servesCoffee | boolean | - |
| servesDessert | boolean | - |
| servesDinner | boolean | - |
| servesLunch | boolean | - |
| servesVegetarianFood | boolean | - |
| servesWine | boolean | - |
| takeout | boolean | - |
| types | array[string] | - |
| userRatingCount | number | - |
| websiteUri | string | - |
POST /api/serper/news dynamic
Serper - Google News search
- Amount
- map[amount:0.040000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.040000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| gl | string | No | Country code (e.g. 'us') |
| hl | string | No | Language code (e.g. 'en') |
| location | string | No | Location (e.g. 'New York, NY') |
| num | integer | No | Number of results to return (Serper `num`) |
| q | string | Yes | Google search query |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| news | array[object] | - |
| searchParameters | object | - |
POST /api/serper/shopping dynamic
Serper - Google Shopping search
- Amount
- map[amount:0.040000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.040000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| gl | string | No | Country code (e.g. 'us') |
| hl | string | No | Language code (e.g. 'en') |
| location | string | No | Location (e.g. 'New York, NY') |
| num | integer | No | Number of results to return (Serper `num`) |
| q | string | Yes | Google search query |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| searchParameters | object | - |
| shopping | array[object] | - |
POST /api/whitepages/person-search dynamic
Whitepages Person Search - Find people by name, phone, address
- Amount
- map[amount:0.440000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.440000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| city | string | No | City name |
| excludeFields | array | No | |
| first_name | string | No | First name |
| include_historical_locations | boolean | No | Include historical addresses in radius search |
| last_name | string | No | Last name |
| max_age | number | No | Maximum age filter |
| min_age | number | No | Minimum age filter |
| name | string | No | Full name to search for |
| phone | string | No | Phone number |
| radius | number | No | Radius in miles from address (max 100) |
| state_code | string | No | Two-letter state code |
| street | string | No | Street address |
| zipcode | string | No | ZIP code |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| persons | array[object] | - |
POST /api/minerva/resolve dynamic
Minerva Resolve - Resolve person identity to a Minerva PID and LinkedIn URL. Supports fuzzy matching and reverse lookup by email or phone only.
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| match_condition_fields | array | No | Fields that must be present for a match to be returned. Valid options: "minerva_pid", "linkedin_url" |
| records | array | Yes | Array of person records to resolve. Maximum 1000 per request. |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| api_request_id | string | - |
| request_completed_at | string | - |
| results | array[object] | - |
POST /api/minerva/enrich dynamic
Minerva Enrich - Enrich person records with demographics, work history, education, contact info, addresses, and financial signals. Supports lookup by Minerva PID, LinkedIn URL, or name/email/phone.
- Amount
- map[amount:0.050000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.050000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| match_condition_fields | array | No | Fields that must be present for a match to be returned. Valid options: "linkedin_url", "gender", "estimated_income_range", "estimated_wealth_range", "email", "personal_email", "professional_email", "phone", "mobile_phone", "home_ownership_status" |
| records | array | Yes | Array of person records to enrich. Maximum 500 per request. |
| return_fields | array | No | Fields to return beyond base fields. Omit to return all fields. Example: ["full_name", "personal_emails", "phones", "work_experience"] |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| api_request_id | string | - |
| request_completed_at | string | - |
| results | array[object] | - |
POST /api/minerva/validate-emails dynamic
Minerva Validate Emails - Check if email addresses exist in the Minerva database and retrieve validation status and last seen timestamps.
- Amount
- map[amount:0.010000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.010000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| records | array | Yes | Array of email address strings to validate. Maximum 2000 per request. |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| api_request_id | string | - |
| request_completed_at | string | - |
| results | array[object] | - |
POST /api/cloudflare/crawl dynamic
Cloudflare Browser Rendering Crawl - Start a crawl job and return a token to poll for results. Respects robots.txt and supports pattern-based URL filtering.
- Amount
- map[amount:0.100000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.100000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| depth | number | No |
Maximum link depth from the starting URL (max 3)
default: 1
|
| formats | array | No |
Response formats for crawled pages
default: [markdown]
|
| limit | number | No |
Maximum number of pages to crawl (max 25)
default: 10
|
| options | object | No | Crawl scope options |
| render | boolean | No | Execute JavaScript when crawling (true = handles JS-rendered content, slower and costs more) |
| source | string | No |
URL discovery source: all, sitemaps only, or links only
enum: all, sitemaps, links |
| url | string (uri) | Yes | The starting URL to crawl |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| token | string | Signed JWT to poll /api/cloudflare/jobs |
POST /api/apollo/people-enrich dynamic
Apollo People Enrichment - Enrich single person by email/name/domain
- Amount
- map[amount:0.049500 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.049500 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| domain | string | No | Company domain |
| string | No | Best matching signal | |
| excludeFields | array | No | |
| first_name | string | No | |
| id | string | No | Apollo person ID |
| last_name | string | No | |
| linkedin_url | string | No | LinkedIn profile URL |
| name | string | No | Full name if first/last not available |
| organization_name | string | No | |
| reveal_personal_emails | boolean | No |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| person | - | |
| status | string | - |
POST /api/apollo/org-search dynamic
Apollo Organization Search - Find companies by filters
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| excludeFields | array | No | |
| organization_ids | array | No | |
| organization_industry_tag_ids | array | No | |
| organization_locations | array | No | |
| organization_num_employees_ranges | array | No | |
| page | number | No |
default: 1
|
| per_page | number | No |
default: 25
|
| q_keywords | string | No | |
| q_organization_domains | array | No |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| organizations | array[object] | - |
| pagination | object | - |
POST /api/apollo/org-enrich dynamic
Apollo Organization Enrichment - Enrich single company by domain
- Amount
- map[amount:0.049500 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.049500 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| domain | string | Yes | Company domain, e.g., 'apollo.io' |
| excludeFields | array | No |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| organization | - | |
| status | string | - |
POST /api/whitepages/property-search dynamic
Whitepages Property Search - Get property ownership and resident data
- Amount
- map[amount:0.440000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.440000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| city | string | No | City name |
| excludeFields | array | No | |
| state_code | string | No | Two-letter state code. This must be a valid two-letter state code such as CA, NY, etc. |
| street | string | Yes | Street address |
| zipcode | string | No | ZIP code |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| result | - |
POST /api/reddit/search dynamic
Reddit Search - Search Reddit posts
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| after | string | No | Pagination cursor |
| maxResults | number | No |
Maximum results to return
default: 10
|
| query | string | Yes | Search term for Reddit posts |
| sort | string | No |
Sort order for results
enum: relevance, new, top, comment_count default: relevance
|
| timeframe | string | No |
Time range filter
enum: all, day, week, month, year default: all
|
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| after | - | |
| posts | array[object] | - |
| searchContext | object | - |
POST /api/reddit/post-comments dynamic
Reddit Post Comments - Get post details and comments
- Amount
- map[amount:0.020000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.020000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| cursor | string | No | Pagination cursor for more comments |
| url | string (uri) | Yes | Full Reddit post URL |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| comments | array[object] | - |
| cursor | - | |
| hasMore | boolean | - |
| post | object | - |
POST /api/hunter/email-verifier dynamic
Hunter - Verify email deliverability
- Amount
- map[amount:0.030000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.030000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| string (email) | Yes | Email address to verify |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| accept_all | boolean | - |
| block | boolean | - |
| disposable | boolean | - |
| string | - | |
| gibberish | boolean | - |
| mx_records | boolean | - |
| regexp | boolean | - |
| score | number | - |
| smtp_check | boolean | - |
| smtp_server | boolean | - |
| sources | array[object] | - |
| status | string | - |
| webmail | boolean | - |
POST /api/influencer/enrich-by-email dynamic
Influencer Enrich by Email - Find social media profiles associated with an email address
- Amount
- map[amount:0.400000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.400000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| string (email) | Yes | Email address to enrich | |
| enrichment_mode | string | No |
Enrichment detail level
enum: raw, enhanced |
| excludeFields | array | No | |
| platform | string | No |
Specific platform to search (optional)
enum: instagram, tiktok, youtube, twitter, facebook |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| profiles | array[object] | - |
| status | string | - |
POST /api/influencer/enrich-by-social dynamic
Influencer Enrich by Social - Enrich social media profile with additional data including contact info
- Amount
- map[amount:0.400000 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.400000 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| email_required | string | No |
Email address requirement
enum: must_have, optional, not_required |
| enrichment_mode | string | No |
Enrichment detail level
enum: raw, enhanced |
| excludeFields | array | No | |
| platform | string | Yes |
Social media platform
enum: instagram, tiktok, youtube, twitter, facebook |
| username | string | Yes | Social media username or handle |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| profile | - | |
| status | string | - |
Payment Methods
- Methods
- tempo (from challenge)
- Intents
- charge (from challenge)
- Currencies (discovery)
- -
- Multiple Challenges
- No
Recipients
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
Per-endpoint breakdown
- GET /api/google-maps/place-details/partial
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/apollo/people-search
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/clado/contacts-enrich
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/exa/contents
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/exa/search
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/firecrawl/scrape
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
Security
- TLS Version
- TLSv1.3
- Challenge ID Unique
- Yes
- Challenge ID Length
- 43
- Digest Binding
- -
Uptime
- Discovery
- Reachable (379ms)
- Challenge
- Reachable (438ms)
- Last Checked
Schema Completeness
- Paid Operations
- 30
- With Input Schema
- 28
- With Description
- 30
2 missing schema
- GET /api/google-maps/place-details/partial
- GET /api/google-maps/place-details/full
Documentation
- Homepage
- -
- API Reference
- -
- llms.txt
- -
Discovery
- OpenAPI URL
- https://stableenrich.dev/openapi.json
- OpenAPI Version
- 3.1.0
- Service Version
- 1.0.0
- Document Size
- 163761 bytes
- Document Hash
- 05278678630950e9e93d897aa01c7b1c6ec73a118d09c4c26293e50934079569
Version History (2 snapshots)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- price changed on GET /api/google-maps/place-details/full: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.050000'}
- price changed on GET /api/google-maps/place-details/partial: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/apollo/org-enrich: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.049500'}
- price changed on POST /api/apollo/org-search: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/apollo/people-enrich: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.049500'}
- price changed on POST /api/apollo/people-search: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/clado/contacts-enrich: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.200000'}
- price changed on POST /api/cloudflare/crawl: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.100000'}
- price changed on POST /api/exa/answer: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.010000'}
- price changed on POST /api/exa/contents: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.002000'}
- price changed on POST /api/exa/find-similar: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.010000'}
- price changed on POST /api/exa/search: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.010000'}
- price changed on POST /api/firecrawl/scrape: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.012600'}
- price changed on POST /api/firecrawl/search: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.025200'}
- price changed on POST /api/google-maps/nearby-search/full: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.080000'}
- price changed on POST /api/google-maps/nearby-search/partial: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/google-maps/text-search/full: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.080000'}
- price changed on POST /api/google-maps/text-search/partial: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/hunter/email-verifier: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.030000'}
- price changed on POST /api/influencer/enrich-by-email: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.400000'}
- price changed on POST /api/influencer/enrich-by-social: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.400000'}
- price changed on POST /api/minerva/enrich: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.050000'}
- price changed on POST /api/minerva/resolve: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/minerva/validate-emails: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.010000'}
- price changed on POST /api/reddit/post-comments: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/reddit/search: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.020000'}
- price changed on POST /api/serper/news: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.040000'}
- price changed on POST /api/serper/shopping: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.040000'}
- price changed on POST /api/whitepages/person-search: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.440000'}
- price changed on POST /api/whitepages/property-search: None → {'mode': 'fixed', 'currency': 'USD', 'amount': '0.440000'}
- document hash changed (no semantic differences detected)
Scan snapshots
| Date | Grade | Score | Response | Status |
|---|---|---|---|---|
| 2026-04-06 | B | 81% | 443ms | Up |
| 2026-04-07 | B | 81% | 200ms | Up |