{
  "x402Version": 2,
  "id": 29405,
  "slug": "29405",
  "resource": "https://agente.revenuerecoveryai.app/v1/x402/diagnose",
  "description": "Why an x402 endpoint fails to charge or appear in the Bazaar: verifies the 402 (version, CAIP-2 network, currency, payTo, amount, window) and the discovery listing without paying. Score, findings with fixes, signed receipt. / Por qué un endpoint x402 no cobra o no aparece en el Bazaar: verifica el 402 (versión, red CAIP-2, moneda, destino, importe, ventana) y la ficha de discovery sin pagar. Puntuación, hallazgos con arreglo y recibo firmado.",
  "type": "http",
  "serviceName": "x402-endpoint-diagnostics",
  "resourceType": "Monitoring",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0x464374fB066F08273740e99Ad5c07B92d8aC665F",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "10000",
      "amountUsd": 0.01,
      "maxTimeoutSeconds": 300
    }
  ],
  "outputSchema": {
    "properties": {
      "example": {
        "properties": {
          "analysis_mode": {
            "title": "Analysis Mode",
            "type": "string"
          },
          "elapsed_ms": {
            "title": "Elapsed Ms",
            "type": "integer"
          },
          "findings": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "title": "Findings",
            "type": "array"
          },
          "grade": {
            "title": "Grade",
            "type": "string"
          },
          "observed": {
            "anyOf": [
              {
                "additionalProperties": true,
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Observed"
          },
          "receipt": {
            "anyOf": [
              {
                "additionalProperties": true,
                "type": "object"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Receipt"
          },
          "recommended_actions": {
            "items": {
              "additionalProperties": true,
              "type": "object"
            },
            "title": "Recommended Actions",
            "type": "array"
          },
          "report_hash": {
            "title": "Report Hash",
            "type": "string"
          },
          "rule_pack_version": {
            "title": "Rule Pack Version",
            "type": "string"
          },
          "rule_packs_applied": {
            "additionalProperties": {
              "type": "integer"
            },
            "title": "Rule Packs Applied",
            "type": "object"
          },
          "score": {
            "title": "Score",
            "type": "integer"
          },
          "summary": {
            "additionalProperties": {
              "type": "integer"
            },
            "title": "Summary",
            "type": "object"
          }
        },
        "required": [
          "score",
          "grade",
          "summary",
          "rule_pack_version",
          "rule_packs_applied",
          "findings",
          "recommended_actions",
          "report_hash",
          "analysis_mode",
          "elapsed_ms"
        ],
        "title": "RespuestaDiagnostico",
        "type": "object"
      },
      "type": {
        "type": "string"
      }
    },
    "required": [
      "type"
    ],
    "type": "object"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "body": {
            "modo": "completo",
            "url": "https://api.ejemplo.com/v1/datos"
          },
          "bodyType": "json",
          "method": "POST",
          "type": "http"
        },
        "output": {
          "example": {
            "analysis_mode": "live_probe",
            "elapsed_ms": 640,
            "findings": [
              {
                "detail": "La ficha no declara input.method. El validador la rechaza y el servicio NO se indexa.",
                "remediation": "Añade 'method' dentro de info.input con el verbo de la ruta.",
                "rule_id": "BZR-002",
                "severity": "ERROR",
                "title": "Declara el método HTTP en la ficha"
              }
            ],
            "grade": "B",
            "observed": {
              "amount": "10000",
              "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
              "http_status": 402,
              "http_status_get": 405,
              "latency_ms": 210,
              "network": "eip155:8453",
              "pay_to": "0x0000000000000000000000000000000000000001",
              "scheme": "exact",
              "url": "https://api.ejemplo.com/v1/datos",
              "x402_version": 2
            },
            "receipt": {
              "algorithm": "Ed25519",
              "endpoint": "/v1/x402/diagnose",
              "input_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
              "issued_at": "2026-08-06T12:00:00+00:00",
              "output_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
              "request_id": "00000000-0000-0000-0000-000000000000",
              "rule_pack_version": "2026.08.07.1",
              "signature": "...",
              "signed": true,
              "verification_key_id": "ajk_0000000000000000"
            },
            "recommended_actions": [
              {
                "action": "Añade 'method' dentro de info.input con el verbo de la ruta.",
                "rule_id": "BZR-002",
                "severity": "ERROR",
                "title": "Declara el método HTTP en la ficha"
              }
            ],
            "report_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
            "rule_pack_version": "2026.08.07.1",
            "rule_packs_applied": {
              "bazaar": 11,
              "x402": 11
            },
            "score": 82,
            "summary": {
              "errors": 1,
              "info": 0,
              "passed": 18,
              "unknown": 0,
              "warnings": 2
            }
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "body": {
                "description": "Se admite una URL viva o un 402 ya capturado. Al menos una de las dos.",
                "properties": {
                  "incluir_recibo": {
                    "default": true,
                    "description": "Adjunta un recibo firmado con el que verificar el informe.",
                    "title": "Incluir Recibo",
                    "type": "boolean"
                  },
                  "modo": {
                    "default": "completo",
                    "description": "'completo' sondea GET, POST y el ejemplo declarado. 'rapido' solo hace la llamada mínima.",
                    "enum": [
                      "rapido",
                      "completo"
                    ],
                    "title": "Modo",
                    "type": "string"
                  },
                  "payment_required": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "additionalProperties": true,
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "default": null,
                    "description": "Alternativa sin red: el contenido de la cabecera Payment-Required (base64 o JSON ya decodificado) de un 402 que ya capturaste. Más rápido y no toca el endpoint.",
                    "title": "Payment Required"
                  },
                  "url": {
                    "anyOf": [
                      {
                        "maxLength": 2048,
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "default": null,
                    "description": "URL del endpoint x402 a diagnosticar. Se le llama SIN pagar. Debe ser pública: las direcciones internas se rechazan.",
                    "title": "Url"
                  }
                },
                "title": "PeticionDiagnostico",
                "type": "object"
              },
              "bodyType": {
                "enum": [
                  "json",
                  "form-data",
                  "text"
                ],
                "type": "string"
              },
              "method": {
                "enum": [
                  "POST",
                  "PUT",
                  "PATCH"
                ],
                "type": "string"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method",
              "bodyType",
              "body"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "properties": {
                  "analysis_mode": {
                    "title": "Analysis Mode",
                    "type": "string"
                  },
                  "elapsed_ms": {
                    "title": "Elapsed Ms",
                    "type": "integer"
                  },
                  "findings": {
                    "items": {
                      "additionalProperties": true,
                      "type": "object"
                    },
                    "title": "Findings",
                    "type": "array"
                  },
                  "grade": {
                    "title": "Grade",
                    "type": "string"
                  },
                  "observed": {
                    "anyOf": [
                      {
                        "additionalProperties": true,
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "default": null,
                    "title": "Observed"
                  },
                  "receipt": {
                    "anyOf": [
                      {
                        "additionalProperties": true,
                        "type": "object"
                      },
                      {
                        "type": "null"
                      }
                    ],
                    "default": null,
                    "title": "Receipt"
                  },
                  "recommended_actions": {
                    "items": {
                      "additionalProperties": true,
                      "type": "object"
                    },
                    "title": "Recommended Actions",
                    "type": "array"
                  },
                  "report_hash": {
                    "title": "Report Hash",
                    "type": "string"
                  },
                  "rule_pack_version": {
                    "title": "Rule Pack Version",
                    "type": "string"
                  },
                  "rule_packs_applied": {
                    "additionalProperties": {
                      "type": "integer"
                    },
                    "title": "Rule Packs Applied",
                    "type": "object"
                  },
                  "score": {
                    "title": "Score",
                    "type": "integer"
                  },
                  "summary": {
                    "additionalProperties": {
                      "type": "integer"
                    },
                    "title": "Summary",
                    "type": "object"
                  }
                },
                "required": [
                  "score",
                  "grade",
                  "summary",
                  "rule_pack_version",
                  "rule_packs_applied",
                  "findings",
                  "recommended_actions",
                  "report_hash",
                  "analysis_mode",
                  "elapsed_ms"
                ],
                "title": "RespuestaDiagnostico",
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      }
    }
  },
  "tags": [
    "x402",
    "diagnostics",
    "payment-protocol",
    "bazaar",
    "discovery"
  ],
  "sourceHost": "agente.revenuerecoveryai.app",
  "lastUpdated": "2026-09-14T21:50:14.836Z",
  "quality": {
    "calls30d": 1,
    "uniquePayers30d": 1,
    "lastCalledAt": "2026-09-14T21:50:14.559Z"
  },
  "metadata": {
    "serviceName": "x402-endpoint-diagnostics",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "modo": "completo",
              "url": "https://api.ejemplo.com/v1/datos"
            },
            "bodyType": "json",
            "method": "POST",
            "type": "http"
          },
          "output": {
            "example": {
              "analysis_mode": "live_probe",
              "elapsed_ms": 640,
              "findings": [
                {
                  "detail": "La ficha no declara input.method. El validador la rechaza y el servicio NO se indexa.",
                  "remediation": "Añade 'method' dentro de info.input con el verbo de la ruta.",
                  "rule_id": "BZR-002",
                  "severity": "ERROR",
                  "title": "Declara el método HTTP en la ficha"
                }
              ],
              "grade": "B",
              "observed": {
                "amount": "10000",
                "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
                "http_status": 402,
                "http_status_get": 405,
                "latency_ms": 210,
                "network": "eip155:8453",
                "pay_to": "0x0000000000000000000000000000000000000001",
                "scheme": "exact",
                "url": "https://api.ejemplo.com/v1/datos",
                "x402_version": 2
              },
              "receipt": {
                "algorithm": "Ed25519",
                "endpoint": "/v1/x402/diagnose",
                "input_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
                "issued_at": "2026-08-06T12:00:00+00:00",
                "output_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
                "request_id": "00000000-0000-0000-0000-000000000000",
                "rule_pack_version": "2026.08.07.1",
                "signature": "...",
                "signed": true,
                "verification_key_id": "ajk_0000000000000000"
              },
              "recommended_actions": [
                {
                  "action": "Añade 'method' dentro de info.input con el verbo de la ruta.",
                  "rule_id": "BZR-002",
                  "severity": "ERROR",
                  "title": "Declara el método HTTP en la ficha"
                }
              ],
              "report_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
              "rule_pack_version": "2026.08.07.1",
              "rule_packs_applied": {
                "bazaar": 11,
                "x402": 11
              },
              "score": 82,
              "summary": {
                "errors": 1,
                "info": 0,
                "passed": 18,
                "unknown": 0,
                "warnings": 2
              }
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "body": {
                  "description": "Se admite una URL viva o un 402 ya capturado. Al menos una de las dos.",
                  "properties": {
                    "incluir_recibo": {
                      "default": true,
                      "description": "Adjunta un recibo firmado con el que verificar el informe.",
                      "title": "Incluir Recibo",
                      "type": "boolean"
                    },
                    "modo": {
                      "default": "completo",
                      "description": "'completo' sondea GET, POST y el ejemplo declarado. 'rapido' solo hace la llamada mínima.",
                      "enum": [
                        "rapido",
                        "completo"
                      ],
                      "title": "Modo",
                      "type": "string"
                    },
                    "payment_required": {
                      "anyOf": [
                        {
                          "type": "string"
                        },
                        {
                          "additionalProperties": true,
                          "type": "object"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "Alternativa sin red: el contenido de la cabecera Payment-Required (base64 o JSON ya decodificado) de un 402 que ya capturaste. Más rápido y no toca el endpoint.",
                      "title": "Payment Required"
                    },
                    "url": {
                      "anyOf": [
                        {
                          "maxLength": 2048,
                          "type": "string"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "description": "URL del endpoint x402 a diagnosticar. Se le llama SIN pagar. Debe ser pública: las direcciones internas se rechazan.",
                      "title": "Url"
                    }
                  },
                  "title": "PeticionDiagnostico",
                  "type": "object"
                },
                "bodyType": {
                  "enum": [
                    "json",
                    "form-data",
                    "text"
                  ],
                  "type": "string"
                },
                "method": {
                  "enum": [
                    "POST",
                    "PUT",
                    "PATCH"
                  ],
                  "type": "string"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method",
                "bodyType",
                "body"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "analysis_mode": {
                      "title": "Analysis Mode",
                      "type": "string"
                    },
                    "elapsed_ms": {
                      "title": "Elapsed Ms",
                      "type": "integer"
                    },
                    "findings": {
                      "items": {
                        "additionalProperties": true,
                        "type": "object"
                      },
                      "title": "Findings",
                      "type": "array"
                    },
                    "grade": {
                      "title": "Grade",
                      "type": "string"
                    },
                    "observed": {
                      "anyOf": [
                        {
                          "additionalProperties": true,
                          "type": "object"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "title": "Observed"
                    },
                    "receipt": {
                      "anyOf": [
                        {
                          "additionalProperties": true,
                          "type": "object"
                        },
                        {
                          "type": "null"
                        }
                      ],
                      "default": null,
                      "title": "Receipt"
                    },
                    "recommended_actions": {
                      "items": {
                        "additionalProperties": true,
                        "type": "object"
                      },
                      "title": "Recommended Actions",
                      "type": "array"
                    },
                    "report_hash": {
                      "title": "Report Hash",
                      "type": "string"
                    },
                    "rule_pack_version": {
                      "title": "Rule Pack Version",
                      "type": "string"
                    },
                    "rule_packs_applied": {
                      "additionalProperties": {
                        "type": "integer"
                      },
                      "title": "Rule Packs Applied",
                      "type": "object"
                    },
                    "score": {
                      "title": "Score",
                      "type": "integer"
                    },
                    "summary": {
                      "additionalProperties": {
                        "type": "integer"
                      },
                      "title": "Summary",
                      "type": "object"
                    }
                  },
                  "required": [
                    "score",
                    "grade",
                    "summary",
                    "rule_pack_version",
                    "rule_packs_applied",
                    "findings",
                    "recommended_actions",
                    "report_hash",
                    "analysis_mode",
                    "elapsed_ms"
                  ],
                  "title": "RespuestaDiagnostico",
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    }
  },
  "liveness": {
    "reliability": null
  },
  "verified": false,
  "featured": false,
  "provider": {
    "host": "agente.revenuerecoveryai.app",
    "manifest_name": "agente.revenuerecoveryai.app",
    "source": "cdp-mirror",
    "source_manifest_url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources",
    "submitted_at": "2026-10-14T01:15:01.050Z"
  },
  "exampleResponse": {
    "analysis_mode": "live_probe",
    "elapsed_ms": 640,
    "findings": [
      {
        "detail": "La ficha no declara input.method. El validador la rechaza y el servicio NO se indexa.",
        "remediation": "Añade 'method' dentro de info.input con el verbo de la ruta.",
        "rule_id": "BZR-002",
        "severity": "ERROR",
        "title": "Declara el método HTTP en la ficha"
      }
    ],
    "grade": "B",
    "observed": {
      "amount": "10000",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "http_status": 402,
      "http_status_get": 405,
      "latency_ms": 210,
      "network": "eip155:8453",
      "pay_to": "0x0000000000000000000000000000000000000001",
      "scheme": "exact",
      "url": "https://api.ejemplo.com/v1/datos",
      "x402_version": 2
    },
    "receipt": {
      "algorithm": "Ed25519",
      "endpoint": "/v1/x402/diagnose",
      "input_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
      "issued_at": "2026-08-06T12:00:00+00:00",
      "output_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
      "request_id": "00000000-0000-0000-0000-000000000000",
      "rule_pack_version": "2026.08.07.1",
      "signature": "...",
      "signed": true,
      "verification_key_id": "ajk_0000000000000000"
    },
    "recommended_actions": [
      {
        "action": "Añade 'method' dentro de info.input con el verbo de la ruta.",
        "rule_id": "BZR-002",
        "severity": "ERROR",
        "title": "Declara el método HTTP en la ficha"
      }
    ],
    "report_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
    "rule_pack_version": "2026.08.07.1",
    "rule_packs_applied": {
      "bazaar": 11,
      "x402": 11
    },
    "score": 82,
    "summary": {
      "errors": 1,
      "info": 0,
      "passed": 18,
      "unknown": 0,
      "warnings": 2
    }
  }
}