B
Cloudflare API — MPP Grade B
Preview responses and set spending limits for this service through use.mpp.land
Free budget controls, response samples, and reliability routing.
On-chain Activity
38
Total txs
38
7d txs
$1.85
7d volume
$1.85
Total volume
1
Unique payers
0
Unique clients
7-day activity
▁▁▁▁▁▁█
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
- POST endpoint challenge missing digest parameter (SHOULD per spec)
Paid Operations (14)
POST /api/replicate/predictions/create-image dynamic
Run an official image model on Replicate (generation, editing, upscaling, etc.). $0.10 per request.
- Amount
- map[amount:0.10 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.10 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| input | object | Yes | Model input parameters |
| model | string | Yes | Model identifier as owner/name (e.g. 'black-forest-labs/flux-schnell'). Must be an official Replicate model. |
| webhook | string (uri) | No | Webhook URL for completion |
| webhook_events_filter | array | No | Which webhook events to send |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| id | string | - |
| model | string | - |
| status | string | - |
| urls | object | - |
POST /api/replicate/predictions/create-video dynamic
Run an official video model on Replicate (generation, editing, animation, lipsync, image-to-video). $1.00 per request. For audio/music/TTS use /api/replicate/predictions/create-audio instead. Input schemas vary per model — call /api/replicate/models/get first and validate against latest_version.openapi_schema. Failed predictions are NOT refunded.
- Amount
- map[amount:1.00 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:1.00 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| input | object | Yes | Model input parameters |
| model | string | Yes | Model identifier as owner/name (e.g. 'black-forest-labs/flux-schnell'). Must be an official Replicate model. |
| webhook | string (uri) | No | Webhook URL for completion |
| webhook_events_filter | array | No | Which webhook events to send |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| id | string | - |
| model | string | - |
| status | string | - |
| urls | object | - |
POST /api/replicate/predictions/create-audio dynamic
Run an official audio model on Replicate (text-to-speech, music generation, voice cloning, etc.). $1.00 per request. Input schemas vary per model — call /api/replicate/models/get first and validate against latest_version.openapi_schema. Hidden constraints like 'audio ≤15s' live in parameter description fields. Failed predictions are NOT refunded.
- Amount
- map[amount:1.00 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:1.00 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| input | object | Yes | Model input parameters |
| model | string | Yes | Model identifier as owner/name (e.g. 'black-forest-labs/flux-schnell'). Must be an official Replicate model. |
| webhook | string (uri) | No | Webhook URL for completion |
| webhook_events_filter | array | No | Which webhook events to send |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| id | string | - |
| model | string | - |
| status | string | - |
| urls | object | - |
POST /api/replicate/predictions/create-text dynamic
Run an official language model on Replicate (LLMs, speech-to-text, embeddings, etc.). $0.05 per request.
- Amount
- map[amount:0.05 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.05 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| input | object | Yes | Model input parameters |
| model | string | Yes | Model identifier as owner/name (e.g. 'black-forest-labs/flux-schnell'). Must be an official Replicate model. |
| webhook | string (uri) | No | Webhook URL for completion |
| webhook_events_filter | array | No | Which webhook events to send |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| id | string | - |
| model | string | - |
| status | string | - |
| urls | object | - |
POST /api/browser/screenshot dynamic
Capture a screenshot of any URL or HTML. Returns a PNG or JPEG image. Supports full-page, element selection, custom viewport.
- Amount
- map[amount:0.05 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.05 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| authenticate | object | No | |
| cookies | array | No | |
| gotoOptions | object | No | |
| html | string | No | HTML content to render instead of URL |
| screenshotOptions | object | No | |
| selector | string | No | CSS selector to screenshot a specific element |
| setExtraHTTPHeaders | object | No | |
| url | string (uri) | No | URL to render |
| userAgent | string | No | |
| viewport | object | No | |
| waitForSelector | string | No | CSS selector to wait for |
POST /api/browser/pdf dynamic
Render any URL or HTML as a PDF. Supports custom paper size, margins, landscape, and background printing.
- Amount
- map[amount:0.05 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.05 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| authenticate | object | No | |
| cookies | array | No | |
| gotoOptions | object | No | |
| html | string | No | HTML content to render instead of URL |
| pdfOptions | object | No | |
| setExtraHTTPHeaders | object | No | |
| url | string (uri) | No | URL to render |
| userAgent | string | No | |
| viewport | object | No | |
| waitForSelector | string | No | CSS selector to wait for |
POST /api/browser/markdown dynamic
Extract clean Markdown from any URL. Renders JavaScript before extraction.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| authenticate | object | No | |
| cookies | array | No | |
| gotoOptions | object | No | |
| html | string | No | HTML content to render instead of URL |
| setExtraHTTPHeaders | object | No | |
| url | string (uri) | No | URL to render |
| userAgent | string | No | |
| waitForSelector | string | No | CSS selector to wait for |
Response Schema (200)
{
"additionalProperties": {},
"propertyNames": {
"type": "string"
},
"type": "object"
}
POST /api/browser/json dynamic
Extract structured data from any URL using AI. Provide a natural language prompt or JSON schema to define the output shape.
- Amount
- map[amount:0.05 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.05 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| authenticate | object | No | |
| cookies | array | No | |
| gotoOptions | object | No | |
| html | string | No | HTML content to render instead of URL |
| prompt | string | No | Natural language prompt for AI extraction |
| response_format | object | No | JSON schema for structured extraction |
| setExtraHTTPHeaders | object | No | |
| url | string (uri) | No | URL to render |
| userAgent | string | No | |
| waitForSelector | string | No | CSS selector to wait for |
Response Schema (200)
{
"additionalProperties": {},
"propertyNames": {
"type": "string"
},
"type": "object"
}
POST /api/browser/scrape dynamic
Scrape specific HTML elements from any URL by CSS selector. Returns text, HTML, attributes, and element dimensions.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| authenticate | object | No | |
| cookies | array | No | |
| elements | array | Yes | CSS selectors to scrape |
| gotoOptions | object | No | |
| html | string | No | HTML content to render instead of URL |
| setExtraHTTPHeaders | object | No | |
| url | string (uri) | No | URL to render |
| userAgent | string | No | |
| waitForSelector | string | No | CSS selector to wait for |
Response Schema (200)
{
"additionalProperties": {},
"propertyNames": {
"type": "string"
},
"type": "object"
}
POST /api/browser/content dynamic
Fetch the fully rendered HTML of any URL after JavaScript execution.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| authenticate | object | No | |
| cookies | array | No | |
| gotoOptions | object | No | |
| html | string | No | HTML content to render instead of URL |
| rejectResourceTypes | array | No | Resource types to block (e.g. image, font) |
| setExtraHTTPHeaders | object | No | |
| url | string (uri) | No | URL to render |
| userAgent | string | No | |
| waitForSelector | string | No | CSS selector to wait for |
Response Schema (200)
{
"additionalProperties": {},
"propertyNames": {
"type": "string"
},
"type": "object"
}
POST /api/browser/links dynamic
Extract all links from any URL. Optionally filter to visible-only or same-domain links.
- Amount
- map[amount:0.02 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.02 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| authenticate | object | No | |
| cookies | array | No | |
| excludeExternalLinks | boolean | No | |
| gotoOptions | object | No | |
| html | string | No | HTML content to render instead of URL |
| setExtraHTTPHeaders | object | No | |
| url | string (uri) | No | URL to render |
| userAgent | string | No | |
| visibleLinksOnly | boolean | No | |
| waitForSelector | string | No | CSS selector to wait for |
Response Schema (200)
{
"additionalProperties": {},
"propertyNames": {
"type": "string"
},
"type": "object"
}
POST /api/browser/crawl dynamic
Start an async crawl job. Returns a JWT token to poll /api/browser/crawl/poll for results. Supports up to 25 pages, markdown/html/json output.
- Amount
- map[amount:0.10 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.10 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 | |
| render | boolean | No | Execute JavaScript when crawling (slower, costs more) |
| source | string | No |
URL discovery source
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/browser/crawl/poll |
POST /api/images/upload dynamic
Upload an image by URL to Cloudflare Images. Returns image ID and delivery URLs. Use the ID with /api/images/transform to generate variant URLs.
- Amount
- map[amount:0.01 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.01 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| metadata | object | No | Custom key-value metadata for the image |
| requireSignedURLs | boolean | No | Restrict access to signed URLs only |
| url | string (uri) | Yes | Public URL of the image to upload |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| filename | string | - |
| id | string | - |
| meta | object | - |
| uploaded | string | - |
| variants | array[string] | - |
POST /api/images/transform dynamic
Generate a Cloudflare Images delivery URL with on-the-fly transforms. Supports resize, crop, format conversion, blur, sharpen, rotate, and more. The image must have been uploaded via /api/images/upload first.
- Amount
- map[amount:0.01 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
price: map[amount:0.01 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20c0000000000000000000000000000000000001 intent:charge method:tempo]]]
Input Schema
| Field | Type | Required | Description |
|---|---|---|---|
| blur | number | No | |
| brightness | number | No | |
| contrast | number | No | |
| dpr | number | No | Device pixel ratio |
| fit | string | No |
Resize mode
enum: scale-down, contain, cover, crop, pad |
| format | string | No |
Output format
enum: auto, webp, avif, jpeg, png |
| gravity | string | No | Crop anchor: auto, face, left, right, top, bottom |
| height | number | No | Target height in pixels |
| image_id | string | Yes | Cloudflare Images image ID (from upload) |
| metadata | string | No |
enum: copyright, keep, none |
| quality | number | No | Output quality |
| rotate | number | No | Rotation degrees (90, 180, 270) |
| sharpen | number | No | |
| width | number | No | Target width in pixels |
Response Schema (200)
| Field | Type | Description |
|---|---|---|
| image_id | string | - |
| transforms | string | Transform string applied |
| url | string | Delivery URL with transforms applied |
Payment Methods
- Methods
- tempo (from challenge)
- Intents
- charge (from challenge)
- Currencies (discovery)
- -
- Currency (challenge)
- USDC.e on Tempo (Tempo)
- Multiple Challenges
- No
Recipients
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
Per-endpoint breakdown
- POST /api/browser/pdf
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/browser/screenshot
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/replicate/predictions/create-audio
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/replicate/predictions/create-image
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/replicate/predictions/create-text
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
- POST /api/replicate/predictions/create-video
- 0x325bdF6F7efAB24a2210c48c1b64cAb2eAe1d430
Security
- TLS Version
- TLSv1.3
- Challenge ID Unique
- Yes
- Challenge ID Length
- 43
- Digest Binding
- -
Uptime
- Discovery
- Reachable (157ms)
- Challenge
- Reachable (168ms)
- Last Checked
Schema Completeness
- Paid Operations
- 14
- With Input Schema
- 14
- With Description
- 14
Documentation
- Homepage
- -
- API Reference
- -
- llms.txt
- -
Discovery
- OpenAPI URL
- https://stableflare.dev/openapi.json
- OpenAPI Version
- 3.1.0
- Service Version
- 1.0.0
- Document Size
- 44086 bytes
- Document Hash
- 6ae7ecb717054a71f3671cf9f025ef9cc6471833fcf412b79f2627f88c6fcf92
Version History (1 snapshots)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
Scan snapshots
| Date | Grade | Score | Response | Status |
|---|---|---|---|---|
| 2026-04-21 | B | 79% | 385ms | Up |