{
  "x402Version": 2,
  "id": 40324,
  "slug": "40324",
  "resource": "https://api.dripmetrics.ai/metrics/cvd",
  "description": "DripMetricsAI (api description at https://dripmetrics.ai/) provides on-demand market microstructure and risk metrics for agents and developers. Agents can pay per request via x402 and receive structured JSON metrics without subscriptions or API keys. Cumulative Volume Delta tracks net buy versus sell volume over a specified window. Discovery examples use the latest 30m window.",
  "type": "http",
  "resourceType": "Agent Service",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0xc9b70D8d342609437bc87Ec3C877911a306d3e6A",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "50000",
      "amountUsd": 0.05,
      "maxTimeoutSeconds": 300
    }
  ],
  "outputSchema": {
    "properties": {
      "example": {
        "additionalProperties": false,
        "properties": {
          "benchmarkCoverage": {
            "additionalProperties": false,
            "properties": {
              "completeFetch": {
                "type": "boolean"
              },
              "coverageRatio": {
                "maximum": 1,
                "minimum": 0,
                "type": "number"
              },
              "effectiveWindowMinutes": {
                "minimum": 0,
                "type": "number"
              },
              "errorMessage": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "partialData": {
                "type": "boolean"
              },
              "requestedWindowMinutes": {
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "requestedWindowMinutes",
              "effectiveWindowMinutes",
              "coverageRatio",
              "partialData",
              "completeFetch",
              "errorMessage"
            ],
            "type": "object"
          },
          "components": {
            "additionalProperties": {
              "type": "number"
            },
            "type": "object"
          },
          "computedAt": {
            "format": "date-time",
            "type": "string"
          },
          "coverage": {
            "additionalProperties": false,
            "properties": {
              "completeFetch": {
                "type": "boolean"
              },
              "coverageRatio": {
                "maximum": 1,
                "minimum": 0,
                "type": "number"
              },
              "effectiveWindowMinutes": {
                "minimum": 0,
                "type": "number"
              },
              "errorMessage": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "partialData": {
                "type": "boolean"
              },
              "requestedWindowMinutes": {
                "minimum": 0,
                "type": "number"
              }
            },
            "required": [
              "requestedWindowMinutes",
              "effectiveWindowMinutes",
              "coverageRatio",
              "partialData",
              "completeFetch",
              "errorMessage"
            ],
            "type": "object"
          },
          "exchange": {
            "enum": [
              "binance",
              "coinbase",
              "hyperliquid"
            ],
            "type": "string"
          },
          "firstTradeTime": {
            "format": "date-time",
            "type": "string"
          },
          "lastTradeTime": {
            "format": "date-time",
            "type": "string"
          },
          "metric": {
            "type": "string"
          },
          "pair": {
            "type": "string"
          },
          "tradeCount": {
            "minimum": 1,
            "type": "integer"
          },
          "value": {
            "type": "number"
          },
          "window": {
            "enum": [
              "30m",
              "1h",
              "2h",
              "3h"
            ],
            "type": "string"
          }
        },
        "required": [
          "metric",
          "pair",
          "exchange",
          "window",
          "value",
          "computedAt",
          "tradeCount",
          "firstTradeTime",
          "lastTradeTime",
          "coverage"
        ],
        "type": "object"
      },
      "type": {
        "type": "string"
      }
    },
    "required": [
      "type"
    ],
    "type": "object"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "method": "GET",
          "queryParams": {
            "exchange": "coinbase",
            "pair": "BTC-USD",
            "window": "30m"
          },
          "type": "http"
        },
        "output": {
          "example": {
            "components": {},
            "computedAt": "2026-05-23T14:00:00.000Z",
            "coverage": {
              "completeFetch": true,
              "coverageRatio": 1,
              "effectiveWindowMinutes": 30,
              "errorMessage": null,
              "partialData": false,
              "requestedWindowMinutes": 30
            },
            "exchange": "coinbase",
            "firstTradeTime": "2026-05-23T13:00:02.000Z",
            "lastTradeTime": "2026-05-23T13:59:58.000Z",
            "metric": "cvd",
            "pair": "BTC-USD",
            "tradeCount": 428,
            "value": 186.4421,
            "window": "30m"
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "method": {
                "enum": [
                  "GET"
                ],
                "type": "string"
              },
              "queryParams": {
                "additionalProperties": false,
                "properties": {
                  "exchange": {
                    "description": "Exchange adapter to source recent trades from.",
                    "enum": [
                      "binance",
                      "coinbase",
                      "hyperliquid"
                    ],
                    "type": "string"
                  },
                  "pair": {
                    "description": "Exchange-native trading pair symbol such as BTCUSDT, ETH-USD, BTC, or xyz:TSLA.",
                    "type": "string"
                  },
                  "window": {
                    "description": "Lookback window. Hyperliquid supports 30m and 1h; 2h and 3h are currently BTCUSDT/BTC-USD only.",
                    "enum": [
                      "30m",
                      "1h",
                      "2h",
                      "3h"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "pair",
                  "exchange",
                  "window"
                ],
                "type": "object"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "additionalProperties": false,
                "properties": {
                  "benchmarkCoverage": {
                    "additionalProperties": false,
                    "properties": {
                      "completeFetch": {
                        "type": "boolean"
                      },
                      "coverageRatio": {
                        "maximum": 1,
                        "minimum": 0,
                        "type": "number"
                      },
                      "effectiveWindowMinutes": {
                        "minimum": 0,
                        "type": "number"
                      },
                      "errorMessage": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "partialData": {
                        "type": "boolean"
                      },
                      "requestedWindowMinutes": {
                        "minimum": 0,
                        "type": "number"
                      }
                    },
                    "required": [
                      "requestedWindowMinutes",
                      "effectiveWindowMinutes",
                      "coverageRatio",
                      "partialData",
                      "completeFetch",
                      "errorMessage"
                    ],
                    "type": "object"
                  },
                  "components": {
                    "additionalProperties": {
                      "type": "number"
                    },
                    "type": "object"
                  },
                  "computedAt": {
                    "format": "date-time",
                    "type": "string"
                  },
                  "coverage": {
                    "additionalProperties": false,
                    "properties": {
                      "completeFetch": {
                        "type": "boolean"
                      },
                      "coverageRatio": {
                        "maximum": 1,
                        "minimum": 0,
                        "type": "number"
                      },
                      "effectiveWindowMinutes": {
                        "minimum": 0,
                        "type": "number"
                      },
                      "errorMessage": {
                        "type": [
                          "string",
                          "null"
                        ]
                      },
                      "partialData": {
                        "type": "boolean"
                      },
                      "requestedWindowMinutes": {
                        "minimum": 0,
                        "type": "number"
                      }
                    },
                    "required": [
                      "requestedWindowMinutes",
                      "effectiveWindowMinutes",
                      "coverageRatio",
                      "partialData",
                      "completeFetch",
                      "errorMessage"
                    ],
                    "type": "object"
                  },
                  "exchange": {
                    "enum": [
                      "binance",
                      "coinbase",
                      "hyperliquid"
                    ],
                    "type": "string"
                  },
                  "firstTradeTime": {
                    "format": "date-time",
                    "type": "string"
                  },
                  "lastTradeTime": {
                    "format": "date-time",
                    "type": "string"
                  },
                  "metric": {
                    "type": "string"
                  },
                  "pair": {
                    "type": "string"
                  },
                  "tradeCount": {
                    "minimum": 1,
                    "type": "integer"
                  },
                  "value": {
                    "type": "number"
                  },
                  "window": {
                    "enum": [
                      "30m",
                      "1h",
                      "2h",
                      "3h"
                    ],
                    "type": "string"
                  }
                },
                "required": [
                  "metric",
                  "pair",
                  "exchange",
                  "window",
                  "value",
                  "computedAt",
                  "tradeCount",
                  "firstTradeTime",
                  "lastTradeTime",
                  "coverage"
                ],
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      }
    }
  },
  "tags": [
    "bazaar"
  ],
  "sourceHost": "api.dripmetrics.ai",
  "lastUpdated": "2026-10-07T15:31:08.387Z",
  "quality": {
    "calls30d": 10,
    "uniquePayers30d": 3,
    "lastCalledAt": "2026-10-07T15:31:07.195Z"
  },
  "metadata": {
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "exchange": "coinbase",
              "pair": "BTC-USD",
              "window": "30m"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "components": {},
              "computedAt": "2026-05-23T14:00:00.000Z",
              "coverage": {
                "completeFetch": true,
                "coverageRatio": 1,
                "effectiveWindowMinutes": 30,
                "errorMessage": null,
                "partialData": false,
                "requestedWindowMinutes": 30
              },
              "exchange": "coinbase",
              "firstTradeTime": "2026-05-23T13:00:02.000Z",
              "lastTradeTime": "2026-05-23T13:59:58.000Z",
              "metric": "cvd",
              "pair": "BTC-USD",
              "tradeCount": 428,
              "value": 186.4421,
              "window": "30m"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "additionalProperties": false,
                  "properties": {
                    "exchange": {
                      "description": "Exchange adapter to source recent trades from.",
                      "enum": [
                        "binance",
                        "coinbase",
                        "hyperliquid"
                      ],
                      "type": "string"
                    },
                    "pair": {
                      "description": "Exchange-native trading pair symbol such as BTCUSDT, ETH-USD, BTC, or xyz:TSLA.",
                      "type": "string"
                    },
                    "window": {
                      "description": "Lookback window. Hyperliquid supports 30m and 1h; 2h and 3h are currently BTCUSDT/BTC-USD only.",
                      "enum": [
                        "30m",
                        "1h",
                        "2h",
                        "3h"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "pair",
                    "exchange",
                    "window"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "additionalProperties": false,
                  "properties": {
                    "benchmarkCoverage": {
                      "additionalProperties": false,
                      "properties": {
                        "completeFetch": {
                          "type": "boolean"
                        },
                        "coverageRatio": {
                          "maximum": 1,
                          "minimum": 0,
                          "type": "number"
                        },
                        "effectiveWindowMinutes": {
                          "minimum": 0,
                          "type": "number"
                        },
                        "errorMessage": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "partialData": {
                          "type": "boolean"
                        },
                        "requestedWindowMinutes": {
                          "minimum": 0,
                          "type": "number"
                        }
                      },
                      "required": [
                        "requestedWindowMinutes",
                        "effectiveWindowMinutes",
                        "coverageRatio",
                        "partialData",
                        "completeFetch",
                        "errorMessage"
                      ],
                      "type": "object"
                    },
                    "components": {
                      "additionalProperties": {
                        "type": "number"
                      },
                      "type": "object"
                    },
                    "computedAt": {
                      "format": "date-time",
                      "type": "string"
                    },
                    "coverage": {
                      "additionalProperties": false,
                      "properties": {
                        "completeFetch": {
                          "type": "boolean"
                        },
                        "coverageRatio": {
                          "maximum": 1,
                          "minimum": 0,
                          "type": "number"
                        },
                        "effectiveWindowMinutes": {
                          "minimum": 0,
                          "type": "number"
                        },
                        "errorMessage": {
                          "type": [
                            "string",
                            "null"
                          ]
                        },
                        "partialData": {
                          "type": "boolean"
                        },
                        "requestedWindowMinutes": {
                          "minimum": 0,
                          "type": "number"
                        }
                      },
                      "required": [
                        "requestedWindowMinutes",
                        "effectiveWindowMinutes",
                        "coverageRatio",
                        "partialData",
                        "completeFetch",
                        "errorMessage"
                      ],
                      "type": "object"
                    },
                    "exchange": {
                      "enum": [
                        "binance",
                        "coinbase",
                        "hyperliquid"
                      ],
                      "type": "string"
                    },
                    "firstTradeTime": {
                      "format": "date-time",
                      "type": "string"
                    },
                    "lastTradeTime": {
                      "format": "date-time",
                      "type": "string"
                    },
                    "metric": {
                      "type": "string"
                    },
                    "pair": {
                      "type": "string"
                    },
                    "tradeCount": {
                      "minimum": 1,
                      "type": "integer"
                    },
                    "value": {
                      "type": "number"
                    },
                    "window": {
                      "enum": [
                        "30m",
                        "1h",
                        "2h",
                        "3h"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "metric",
                    "pair",
                    "exchange",
                    "window",
                    "value",
                    "computedAt",
                    "tradeCount",
                    "firstTradeTime",
                    "lastTradeTime",
                    "coverage"
                  ],
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    }
  },
  "liveness": {
    "reliability": null
  },
  "verified": false,
  "featured": false,
  "provider": {
    "host": "api.dripmetrics.ai",
    "manifest_name": "api.dripmetrics.ai",
    "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": {
    "components": {},
    "computedAt": "2026-05-23T14:00:00.000Z",
    "coverage": {
      "completeFetch": true,
      "coverageRatio": 1,
      "effectiveWindowMinutes": 30,
      "errorMessage": null,
      "partialData": false,
      "requestedWindowMinutes": 30
    },
    "exchange": "coinbase",
    "firstTradeTime": "2026-05-23T13:00:02.000Z",
    "lastTradeTime": "2026-05-23T13:59:58.000Z",
    "metric": "cvd",
    "pair": "BTC-USD",
    "tradeCount": 428,
    "value": 186.4421,
    "window": "30m"
  }
}