70trust / 100

Catalog

by api.melvea.com in AI models & inference

x402 APIFailing, checked 2 h ago

Structured varietal data and verifiable research provenance for 150+ honey varieties, including the obscure long tail foundation models get wrong. Every compositional datum resolves to a real, published source (DOI/PMID). Per variety: color grade (USDA Pfund band with measured or estimated source), intensity, flavor profile, texture, use cases, best-for pairing tags, primary and secondary countries, and a citation_count pointing to the paid citations endpoint. Melvea IP only.

GET
https://api.melvea.com/v1/catalog
Price
$0.05
per call in USDC
Uptime
97.7%
last 30 days
Response time
1.3 s
2.5 s slowest 5%
Last check
Failed
2 h ago, next any minute now

Run a free test callHow to call it

Reliability

All checks passedSome failedAll failedNot checked

Latest check failed 2 h ago: Timed out

Status and outage history · Atom feed · Watch with other listings

How to call it

GET https://api.melvea.com/v1/catalog

Each call costs $0.05 in USDC on Base, paid with the request over x402.

Run a free test callOne unpaid request, the way an agent sends it. You see the payment challenge it gets back. Nothing is charged.

Example request

From the listing.

GET https://api.melvea.com/v1/catalog

Example response

The provider's example. We can't check it without paying.

Example response, 32 lines
{
  "varieties": [
    {
      "best_for": [
        "raw",
        "toast"
      ],
      "citation_count": 5,
      "citations_endpoint": "/v1/varieties/manuka/citations",
      "color_grade": "Amber",
      "color_gradeable": true,
      "flavor_profile_enum": "complex",
      "intensity_level": "bold",
      "name": "Manuka",
      "origin_regions": [
        "New Zealand"
      ],
      "pfund_source": "measured",
      "pfund_value": 95,
      "primary_countries": [
        "NZL"
      ],
      "secondary_countries": [],
      "slug": "manuka",
      "texture": "liquid",
      "use_cases": [
        "raw",
        "wellness"
      ]
    }
  ]
}

Call it from code

The curl command shows the payment challenge. The JavaScript and Python versions pay and call, and never pay more than $0.05.

curl: see the payment challenge
# bash or zsh: see the payment challenge. Nothing is charged.
curl -sS -g -i 'https://api.melvea.com/v1/catalog'

# x402 v2 sends the challenge base64-encoded in the PAYMENT-REQUIRED header (v1 sends it in the body).
# To read the header:
curl -sS -g -o /dev/null -D - 'https://api.melvea.com/v1/catalog' \
  | grep -i '^payment-required:' | cut -d' ' -f2 | tr -d '\r' | base64 --decode
JavaScript: pay and call
// npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

// Pays at most $0.05 per call.
const client = new x402Client().setSpendControls({ maxAmountPerPayment: "$0.05" });
registerExactEvmScheme(client, { signer: privateKeyToAccount(process.env.EVM_PRIVATE_KEY) });
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? ToolVet checks it first for $0.005. Pay for that from a separate
// client: this one is capped at $0.05 per payment. GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fapi.melvea.com%2Fv1%2Fcatalog
const res = await pay("https://api.melvea.com/v1/catalog");
console.log(res.status, await res.text());
Python: pay and call
# pip install "x402[requests,evm]"
import os
from eth_account import Account
from x402 import x402ClientSync
from x402.http.clients import x402_requests
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client

# Pays at most $0.05 per call.
client = x402ClientSync().set_spend_controls({"max_amount_per_payment": "$0.05"})
register_exact_evm_client(client, EthAccountSigner(Account.from_key(os.environ["EVM_PRIVATE_KEY"])))

with x402_requests(client) as session:
    res = session.get("https://api.melvea.com/v1/catalog")
    print(res.status_code, res.text)

Security scan

1 finding

  • Payment address changed recently in payment
    Payment address changed from 0x7fD326d67b5E0CFd795d355016596404E0ee6EBD to 0xEAeC005E1220c75dF196C93dA5833e6aEe1F93E3

Recent checks

WhenResultHTTPTimePrice
2 h agoTimed out---
9 h agoPassed402821 ms$0.05
16 h agoPassed4021.5 s$0.05
23 h agoPassed4021.3 s$0.05
30 h agoPassed402718 ms$0.05
Show 10 older checks
36 h agoPassed4021.5 s$0.05
43 h agoPassed402956 ms$0.05
2 days agoPassed4021.2 s$0.05
2 days agoPassed4021.5 s$0.05
3 days agoPassed4021.3 s$0.05
3 days agoPassed4021.3 s$0.05
3 days agoPassed4021.1 s$0.05
3 days agoPassed402826 ms$0.05
3 days agoPassed4021.6 s$0.05
4 days agoPassed402977 ms$0.05

History

26 Oct 2026Payment address changed from 0x7fD326d67b5E0CFd795d355016596404E0ee6EBD to 0xEAeC005E1220c75dF196C93dA5833e6aEe1F93E3
26 Oct 2026Payment address changed from 0x3140F4220aC994C15655FdBb8Ab5Be3AB17bf04D to 0x7fD326d67b5E0CFd795d355016596404E0ee6EBD
26 Oct 2026Payment address changed from 0xC7828a38b535a3ef8225C040824A7A62123aF8Ac to 0x3140F4220aC994C15655FdBb8Ab5Be3AB17bf04D
26 Oct 2026Payment address changed from 0x0B62fD86Edac3471256159Ee21D390f45977d58C to 0xC7828a38b535a3ef8225C040824A7A62123aF8Ac
25 Oct 2026Payment address changed from 0x0a3aEfdE3AB1eD8c08Be452BbbD4Adc46B750369 to 0x0B62fD86Edac3471256159Ee21D390f45977d58C
25 Oct 2026Payment address changed from 0xDe9c4B00E20803DA0bf60217291e981eAe60E7D4 to 0x0a3aEfdE3AB1eD8c08Be452BbbD4Adc46B750369
25 Oct 2026Payment address changed from 0x582615293A747C019164c69347bc9a86af7db12E to 0xDe9c4B00E20803DA0bf60217291e981eAe60E7D4
25 Oct 2026Payment address changed from 0x3021cDbb628539b9761B2cbB7da1c64a997B05f3 to 0x582615293A747C019164c69347bc9a86af7db12E
24 Oct 2026Payment address changed from 0xD11893FEeED22CCA3d076FBA4416B4C35926725B to 0x3021cDbb628539b9761B2cbB7da1c64a997B05f3
24 Oct 2026Payment address changed from 0x72d855Abe8c3f854047b27971D1101C98Cb95995 to 0xD11893FEeED22CCA3d076FBA4416B4C35926725B
24 Oct 2026Payment address changed from 0xd377708A95a51A09e5917bd6C750bF00BD9D8916 to 0x72d855Abe8c3f854047b27971D1101C98Cb95995
24 Oct 2026Payment address changed from 0x4B9E51B74972FADba2b5373cd12Bfff26CE91920 to 0xd377708A95a51A09e5917bd6C750bF00BD9D8916
23 Oct 2026Payment address changed from 0x5481E363361Ee1af2E2c852c5BF0C19E97e6FaA5 to 0x4B9E51B74972FADba2b5373cd12Bfff26CE91920
23 Oct 2026Payment address changed from 0xaaf53EA334D2595d73134aD5cc2B5B63b8E69782 to 0x5481E363361Ee1af2E2c852c5BF0C19E97e6FaA5
23 Oct 2026Payment address changed from 0xFB42Ac9223F0eC31e709Be2cBfEDbC188816AcC0 to 0xaaf53EA334D2595d73134aD5cc2B5B63b8E69782