recoup-api.vercel.app
https://recoup-api.vercel.app/api/x402/image/generateShares a payout wallet with 2 other endpoints — its adoption is attributed from that shared wallet's traffic, not earned exclusively.
Generate an image from a text prompt using AI
Reliability & health
Uptime and response time from our own unpaid probes, plus the reliability score built from them.
Uptime
100.0% avgResponse time
p50 85ms · p95 875msData table
| Bucket | Uptime | Probes | Response time |
|---|---|---|---|
| 8/14/2026, 4:00:00 AM | 100% | 1 | 835ms |
| 8/14/2026, 5:00:00 AM | 100% | 1 | 755ms |
| 8/14/2026, 6:00:00 AM | 100% | 1 | 752ms |
| 8/14/2026, 7:00:00 AM | 100% | 1 | 813ms |
| 8/14/2026, 8:00:00 AM | 100% | 1 | 782ms |
| 8/14/2026, 10:00:00 AM | 100% | 1 | 877ms |
| 8/14/2026, 11:00:00 AM | 100% | 1 | 779ms |
| 8/14/2026, 12:00:00 PM | 100% | 1 | 841ms |
| 8/14/2026, 1:00:00 PM | 100% | 1 | 873ms |
| 8/14/2026, 3:00:00 PM | 100% | 1 | 62ms |
| 8/14/2026, 4:00:00 PM | 100% | 1 | 55ms |
| 8/14/2026, 5:00:00 PM | 100% | 1 | 902ms |
| 8/14/2026, 6:00:00 PM | 100% | 1 | 51ms |
| 8/14/2026, 7:00:00 PM | 100% | 1 | 770ms |
| 8/14/2026, 8:00:00 PM | 100% | 1 | 63ms |
| 8/14/2026, 9:00:00 PM | 100% | 1 | 747ms |
| 8/14/2026, 11:00:00 PM | 100% | 1 | 46ms |
| 8/15/2026, 12:00:00 AM | 100% | 1 | 787ms |
| 8/15/2026, 1:00:00 AM | 100% | 1 | 790ms |
| 8/15/2026, 2:00:00 AM | 100% | 1 | 743ms |
| 8/15/2026, 3:00:00 AM | 100% | 1 | 862ms |
| 8/15/2026, 4:00:00 AM | 100% | 1 | 779ms |
| 8/15/2026, 6:00:00 AM | 100% | 1 | 771ms |
| 8/15/2026, 7:00:00 AM | 100% | 1 | 756ms |
| 8/15/2026, 8:00:00 AM | 100% | 1 | 776ms |
| 8/15/2026, 9:00:00 AM | 100% | 1 | 804ms |
| 8/15/2026, 10:00:00 AM | 100% | 1 | 742ms |
| 8/15/2026, 11:00:00 AM | 100% | 1 | 781ms |
| 8/15/2026, 12:00:00 PM | 100% | 1 | 55ms |
| 8/15/2026, 1:00:00 PM | 100% | 1 | 741ms |
| 8/15/2026, 3:00:00 PM | 100% | 1 | 60ms |
| 8/15/2026, 4:00:00 PM | 100% | 1 | 821ms |
| 8/15/2026, 5:00:00 PM | 100% | 1 | 745ms |
| 8/15/2026, 6:00:00 PM | 100% | 1 | 790ms |
| 8/15/2026, 7:00:00 PM | 100% | 1 | 49ms |
| 8/15/2026, 8:00:00 PM | 100% | 1 | 772ms |
| 8/15/2026, 10:00:00 PM | 100% | 1 | 814ms |
| 8/15/2026, 11:00:00 PM | 100% | 1 | 94ms |
| 8/16/2026, 12:00:00 AM | 100% | 1 | 51ms |
| 8/16/2026, 1:00:00 AM | 100% | 1 | 88ms |
| 8/16/2026, 2:00:00 AM | 100% | 1 | 730ms |
| 8/16/2026, 3:00:00 AM | 100% | 1 | 928ms |
| 8/16/2026, 5:00:00 AM | 100% | 1 | 797ms |
| 8/16/2026, 6:00:00 AM | 100% | 1 | 70ms |
| 8/16/2026, 7:00:00 AM | 100% | 1 | 59ms |
| 8/16/2026, 8:00:00 AM | 100% | 1 | 65ms |
| 8/16/2026, 9:00:00 AM | 100% | 1 | 66ms |
| 8/16/2026, 10:00:00 AM | 100% | 1 | 73ms |
| 8/16/2026, 12:00:00 PM | 100% | 1 | 78ms |
| 8/16/2026, 1:00:00 PM | 100% | 1 | 48ms |
| 8/16/2026, 2:00:00 PM | 100% | 1 | 90ms |
| 8/16/2026, 3:00:00 PM | 100% | 1 | 85ms |
| 8/16/2026, 4:00:00 PM | 100% | 1 | 67ms |
| 8/16/2026, 5:00:00 PM | 100% | 1 | 56ms |
| 8/16/2026, 7:00:00 PM | 100% | 1 | 80ms |
| 8/16/2026, 8:00:00 PM | 100% | 1 | 67ms |
| 8/16/2026, 9:00:00 PM | 100% | 1 | 873ms |
| 8/16/2026, 10:00:00 PM | 100% | 1 | 876ms |
| 8/16/2026, 11:00:00 PM | 100% | 1 | 886ms |
| 8/17/2026, 12:00:00 AM | 100% | 1 | 74ms |
| 8/17/2026, 2:00:00 AM | 100% | 1 | 56ms |
| 8/17/2026, 3:00:00 AM | 100% | 1 | 74ms |
| 8/17/2026, 4:00:00 AM | 100% | 1 | 72ms |
| 8/17/2026, 5:00:00 AM | 100% | 1 | 785ms |
| 8/17/2026, 6:00:00 AM | 100% | 1 | 214ms |
| 8/17/2026, 7:00:00 AM | 100% | 1 | 53ms |
| 8/17/2026, 9:00:00 AM | 100% | 1 | 96ms |
| 8/17/2026, 10:00:00 AM | 100% | 1 | 67ms |
| 8/17/2026, 11:00:00 AM | 100% | 1 | 112ms |
| 8/17/2026, 12:00:00 PM | 100% | 1 | 64ms |
| 8/17/2026, 1:00:00 PM | 100% | 1 | 68ms |
| 8/17/2026, 2:00:00 PM | 100% | 1 | 78ms |
| 8/17/2026, 4:00:00 PM | 100% | 1 | 77ms |
| 8/17/2026, 5:00:00 PM | 100% | 1 | 82ms |
| 8/17/2026, 6:00:00 PM | 100% | 1 | 67ms |
| 8/17/2026, 7:00:00 PM | 100% | 1 | 41ms |
| 8/17/2026, 8:00:00 PM | 100% | 1 | 428ms |
| 8/17/2026, 9:00:00 PM | 100% | 1 | 44ms |
| 8/17/2026, 11:00:00 PM | 100% | 1 | 44ms |
| 8/18/2026, 12:00:00 AM | 100% | 1 | 388ms |
| 8/18/2026, 1:00:00 AM | 100% | 1 | 75ms |
| 8/18/2026, 2:00:00 AM | 100% | 1 | 54ms |
| 8/18/2026, 3:00:00 AM | 100% | 1 | 89ms |
| 8/18/2026, 4:00:00 AM | 100% | 1 | 65ms |
| 8/18/2026, 6:00:00 AM | 100% | 1 | 60ms |
| 8/18/2026, 7:00:00 AM | 100% | 1 | 152ms |
| 8/18/2026, 8:00:00 AM | 100% | 1 | 51ms |
| 8/18/2026, 9:00:00 AM | 100% | 1 | 52ms |
| 8/18/2026, 10:00:00 AM | 100% | 1 | 62ms |
| 8/18/2026, 11:00:00 AM | 100% | 1 | 80ms |
| 8/18/2026, 1:00:00 PM | 100% | 1 | 344ms |
| 8/18/2026, 2:00:00 PM | 100% | 1 | 53ms |
| 8/18/2026, 3:00:00 PM | 100% | 1 | 65ms |
| 8/18/2026, 4:00:00 PM | 100% | 1 | 67ms |
| 8/18/2026, 5:00:00 PM | 100% | 1 | 129ms |
| 8/18/2026, 6:00:00 PM | 100% | 1 | 58ms |
| 8/18/2026, 8:00:00 PM | 100% | 1 | 62ms |
| 8/18/2026, 9:00:00 PM | 100% | 1 | 243ms |
| 8/18/2026, 10:00:00 PM | 100% | 1 | 63ms |
| 8/18/2026, 11:00:00 PM | 100% | 1 | 60ms |
| 8/19/2026, 12:00:00 AM | 100% | 1 | 53ms |
| 8/19/2026, 1:00:00 AM | 100% | 1 | 57ms |
| 8/19/2026, 3:00:00 AM | 100% | 1 | 53ms |
| 8/19/2026, 4:00:00 AM | 100% | 1 | 58ms |
| 8/19/2026, 5:00:00 AM | 100% | 1 | 82ms |
| 8/19/2026, 6:00:00 AM | 100% | 1 | 56ms |
| 8/19/2026, 7:00:00 AM | 100% | 1 | 60ms |
| 8/19/2026, 8:00:00 AM | 100% | 1 | 743ms |
| 8/19/2026, 10:00:00 AM | 100% | 1 | 53ms |
| 8/19/2026, 11:00:00 AM | 100% | 1 | 67ms |
| 8/19/2026, 12:00:00 PM | 100% | 1 | 300ms |
| 8/19/2026, 1:00:00 PM | 100% | 1 | 51ms |
| 8/19/2026, 2:00:00 PM | 100% | 1 | 45ms |
| 8/19/2026, 3:00:00 PM | 100% | 1 | 48ms |
| 8/19/2026, 4:00:00 PM | 100% | 1 | 62ms |
| 8/19/2026, 6:00:00 PM | 100% | 1 | 56ms |
| 8/19/2026, 7:00:00 PM | 100% | 1 | 59ms |
| 8/19/2026, 8:00:00 PM | 100% | 1 | 76ms |
| 8/19/2026, 9:00:00 PM | 100% | 1 | 46ms |
| 8/19/2026, 10:00:00 PM | 100% | 1 | 69ms |
| 8/19/2026, 11:00:00 PM | 100% | 1 | 46ms |
| 8/20/2026, 1:00:00 AM | 100% | 1 | 773ms |
| 8/20/2026, 2:00:00 AM | 100% | 1 | 60ms |
| 8/20/2026, 3:00:00 AM | 100% | 1 | 49ms |
| 8/20/2026, 4:00:00 AM | 100% | 1 | 723ms |
| 8/20/2026, 5:00:00 AM | 100% | 1 | 734ms |
| 8/20/2026, 6:00:00 AM | 100% | 1 | 821ms |
| 8/20/2026, 8:00:00 AM | 100% | 1 | 899ms |
| 8/20/2026, 9:00:00 AM | 100% | 1 | 769ms |
| 8/20/2026, 10:00:00 AM | 100% | 1 | 848ms |
| 8/20/2026, 11:00:00 AM | 100% | 1 | 870ms |
| 8/20/2026, 12:00:00 PM | 100% | 1 | 830ms |
| 8/20/2026, 1:00:00 PM | 100% | 1 | 828ms |
| 8/20/2026, 3:00:00 PM | 100% | 1 | 821ms |
| 8/20/2026, 4:00:00 PM | 100% | 1 | 472ms |
| 8/20/2026, 5:00:00 PM | 100% | 1 | 895ms |
| 8/20/2026, 6:00:00 PM | 100% | 1 | 907ms |
| 8/20/2026, 7:00:00 PM | 100% | 1 | 799ms |
| 8/20/2026, 8:00:00 PM | 100% | 1 | 861ms |
| 8/20/2026, 10:00:00 PM | 100% | 1 | 65ms |
| 8/20/2026, 11:00:00 PM | 100% | 1 | 762ms |
| 8/21/2026, 12:00:00 AM | 100% | 1 | 348ms |
| 8/21/2026, 1:00:00 AM | 100% | 1 | 107ms |
| 8/21/2026, 2:00:00 AM | 100% | 1 | 313ms |
| 8/21/2026, 3:00:00 AM | 100% | 1 | 275ms |
- Availability
- 100
- Latency
- 100
- Security
- 100
- Transparency
- 61
- Activity
- 6
How often it was reachable when we probed it (weight 35%).
How quickly it answers when it is up — fast scores high (weight 20%).
Whether it serves over working TLS / https (weight 15%).
Whether the operator disclosed what it does — description, schema, identity (weight 15%).
Observed on-chain payments to this endpoint's wallet — transactions, volume, and distinct paying wallets over the last month (weight 15%; not yet measured when we have not seen its wallet settle).
Confidence 100% — how much probe evidence backs this score. A thin history is flagged, not hidden.
See the scoring methodology for exactly how each number is computed.
Payment
- Currencies
- USDC
- Networks
- base
- Facilitator
- unknown
- SDK
- unknown
Operator
- Company
- inferred — unknown
- Jurisdiction
- —
- Registrar
- Tucows Domains Inc
- Domain registered
- 2020-01-28
- Hosting network
- VERCEL-12
- Hosting country
- —
Operator context is derived from public RDAP/TLS records and unverified. Company and country are only available for endpoints that publish them (an OV/EV TLS certificate or a non-redacted domain record); most endpoints are CDN-fronted and disclose neither.
On-chain activity (base)
Payments per day
last payment 8/18/2026Data table
| Day | Payments | Volume (USD) | Paying wallets |
|---|---|---|---|
| 8/4/2026 | 1 | 0.15 | 1 |
| 8/12/2026 | 1 | 0.15 | 1 |
| 8/18/2026 | 4 | 0.6 | 2 |
This payout wallet is shared: figures cover all 3 endpoints paid at it, since payments cannot be attributed to one of them. Only payments settled on chains and facilitators we index.
Linked by wallet — likely same operator
On-chain agent identity and the x402 endpoint that shares its settlement wallet.
Response schema
{
"input": {
"discoverable": true,
"method": "GET",
"queryParams": {
"files": "Optional pipe-separated list of files. Format: url1:mediaType1|url2:mediaType2. Example: https://example.com/image.png:image/png|https://example.com/file.jpg:image/jpeg",
"prompt": "Text prompt describing the image to generate"
},
"type": "http"
},
"output": {
"description": "GenerateImageResult containing the generated image and metadata",
"properties": {
"arweaveError": {
"description": "Error message if Arweave upload failed (optional)",
"type": "string"
},
"arweaveResult": {
"description": "Arweave transaction result (nullable)",
"type": "object"
},
"image": {
"description": "Generated image file",
"properties": {
"base64": {
"description": "Image as base64 encoded string",
"type": "string"
},
"mediaType": {
"description": "IANA media type of the image",
"type": "string"
}
},
"type": "object"
},
"imageUrl": {
"description": "Fetchable URL for the uploaded image (nullable)",
"type": "string"
},
"moment": {
"description": "In Process moment creation result (nullable)",
"type": "object"
},
"usage": {
"description": "Token usage information for the image generation",
"properties": {
"inputTokens": {
"description": "Number of tokens used for the prompt",
"type": "number"
},
"outputTokens": {
"description": "Number of tokens used for the output",
"type": "number"
},
"reasoningTokens": {
"description": "Number of tokens used for the reasoning",
"type": "number"
},
"totalTokens": {
"description": "Number of tokens used for the total",
"type": "number"
}
},
"type": "object"
}
},
"type": "object"
}
}