addrbookFor publishers
← The evidence ledger

Evidence row 66102

Observed , by baseline/1.

Kind
listing
About
source_record x402_bazaar:https://api.duoleads.com/v1/time/rrule
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
7e4d52c434b216b302d65d0179f7d2abece92f8ced5fff7a7b55b5335e235442
Leaf
0xac0ddebfc2d57e6eba89f491914b7b6a9f4424578418b34587196d2b8e433aa0

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://api.duoleads.com/v1/time/rrule"
    ]
  ],
  "name": "Duo Data Utilities",
  "owner_address": "0xcd673f7e1dad254347aeab6be0defe8b9c6b3a39",
  "raw": {
    "accepts": [
      {
        "amount": "50000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 120,
        "network": "eip155:8453",
        "payTo": "0xCD673f7e1daD254347AEab6be0DEFe8b9C6b3A39",
        "scheme": "exact"
      }
    ],
    "description": "Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE lists, and returns up to 200 occurrences as both local wall-clock times and UTC instants. Supports FREQ, INTERVAL, COUNT, UNTIL, BYDAY, BYMONTHDAY, BYMONTH, BYSETPOS and WKST. Occurrences moved by a DST gap carry gap: true. Rules needing over 50,000 candidate evaluations are rejected.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "dtstart": "2026-01-01T09:00:00",
              "rrule": "FREQ=MONTHLY;BYDAY=-1FR;COUNT=3",
              "zone": "Europe/Amsterdam"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "data": {
                "count": 3,
                "occurrences": [
                  {
                    "dst": false,
                    "epoch_ms": 1769760000000,
                    "instant": "2026-01-30T08:00:00.000Z",
                    "local": "2026-01-30T09:00:00",
                    "offset": "+01:00"
                  },
                  {
                    "dst": false,
                    "epoch_ms": 1772179200000,
                    "instant": "2026-02-27T08:00:00.000Z",
                    "local": "2026-02-27T09:00:00",
                    "offset": "+01:00"
                  },
                  {
                    "dst": false,
                    "epoch_ms": 1774598400000,
                    "instant": "2026-03-27T08:00:00.000Z",
                    "local": "2026-03-27T09:00:00",
                    "offset": "+01:00"
                  }
                ],
                "rule": {
                  "byday": [
                    "-1FR"
                  ],
                  "count": 3,
                  "freq": "MONTHLY",
                  "interval": 1,
                  "wkst": "MO"
                },
                "truncated": false,
                "zone": "Europe/Amsterdam"
              },
              "meta": {
                "computed_at": "2026-09-28T12:00:00.000Z",
                "deterministic": true,
                "disclaimer": "Factual output of a deterministic computation over public data. Provided as is, with no warranty of accuracy, completeness or availability. Not investment, financial, legal, tax, medical or any other professional advice, and not a recommendation. Verify before relying on it. Terms: https://api.duoleads.com/terms",
                "price_usd": "0.05",
                "request_id": "01K6B7Q4ZC8H3F2M9WXR5TYN0D"
              },
              "ok": true,
              "route": "/v1/time/rrule",
              "version": "1.0.0"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "properties": {
                    "after": {
                      "description": "RFC 3339 instant; skip occurrences before it.",
                      "maxLength": 64,
                      "type": "string"
                    },
                    "count": {
                      "default": "20",
                      "description": "Maximum occurrences to return, 1-200. Default 20.",
                      "maxLength": 64,
                      "pattern": "^[+-]?\\d+$",
                      "type": "string"
                    },
                    "dtstart": {
                      "description": "First occurrence, YYYY-MM-DDTHH:MM:SS local to zone.",
                      "maxLength": 32,
                      "type": "string"
                    },
                    "exdate": {
                      "description": "Comma-separated local datetimes to exclude.",
                      "maxLength": 1024,
                      "type": "string"
                    },
                    "rdate": {
                      "description": "Comma-separated local datetimes to add.",
                      "maxLength": 1024,
                      "type": "string"
                    },
                    "rrule": {
                      "description": "RFC 5545 RRULE, e.g. FREQ=MONTHLY;BYDAY=-1FR;COUNT=6.",
                      "maxLength": 512,
                      "type": "string"
                    },
                    "zone": {
                      "description": "IANA time zone id.",
                      "maxLength": 64,
                      "type": "string"
                    }
                  },
                  "required": [
                    "rrule",
                    "dtstart",
                    "zone"
                  ],
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "data": {
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "occurrences": {
                          "items": {
                            "properties": {
                              "dst": {
                                "type": "boolean"
                              },
                              "epoch_ms": {
                                "type": "integer"
                              },
                              "gap": {
                                "type": "boolean"
                              },
                              "instant": {
                                "type": "string"
                              },
                              "local": {
                                "type": "string"
                              },
                              "offset": {
                                "type": "string"
                              }
                            },
                            "required": [
                              "local",
                              "instant",
                              "epoch_ms",
                              "offset",
                              "dst"
                            ],
                            "type": "object"
                          },
                          "type": "array"
                        },
                        "rule": {
                          "properties": {
                            "byday": {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            "byhour": {
                              "items": {
                                "type": "integer"
                              },
                              "type": "array"
                            },
                            "byminute": {
                              "items": {
                                "type": "integer"
                              },
                              "type": "array"
                            },
                            "bymonth": {
                              "items": {
                                "type": "integer"
                              },
                              "type": "array"
                            },
                            "bymonthday": {
                              "items": {
                                "type": "integer"
                              },
                              "type": "array"
                            },
                            "bysecond": {
                              "items": {
                                "type": "integer"
                              },
                              "type": "array"
                            },
                            "bysetpos": {
                              "items": {
                                "type": "integer"
                              },
                              "type": "array"
                            },
                            "count": {
                              "type": "integer"
                            },
                            "freq": {
                              "type": "string"
                            },
                            "interval": {
                              "type": "integer"
                            },
                            "until": {
                              "type": "string"
                            },
                            "wkst": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "freq",
                            "interval",
                            "wkst"
                          ],
                          "type": "object"
                        },
                        "truncated": {
                          "type": "boolean"
                        },
                        "zone": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "occurrences",
                        "count",
                        "truncated",
                        "rule",
                        "zone"
                      ],
                      "type": "object"
                    },
                    "meta": {
                      "properties": {
                        "computed_at": {
                          "description": "RFC 3339 UTC with milliseconds",
                          "type": "string"
                        },
                        "deterministic": {
                          "type": "boolean"
                        },
                        "disclaimer": {
                          "type": "string"
                        },
                        "price_usd": {
                          "type": "string"
                        },
                        "request_id": {
                          "type": "string"
                        },
                        "sources": {
                          "items": {
                            "required": [
                              "id",
                              "version",
                              "published"
                            ],
                            "type": "object"
                          },
                          "type": "array"
                        }
                      },
                      "required": [
                        "request_id",
                        "computed_at",
                        "price_usd",
                        "deterministic",
                        "disclaimer"
                      ],
                      "type": "object"
                    },
                    "ok": {
                      "const": true
                    },
                    "route": {
                      "const": "/v1/time/rrule"
                    },
                    "version": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "ok",
                    "route",
                    "version",
                    "data",
                    "meta"
                  ],
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "lastUpdated": "2026-10-01T20:51:19.698Z",
    "quality": {
      "l30DaysTotalCalls": 2,
      "l30DaysUniquePayers": 1,
      "lastCalledAt": "2026-10-01T20:51:19.567Z"
    },
    "resource": "https://api.duoleads.com/v1/time/rrule",
    "serviceName": "Duo Data Utilities",
    "tags": [
      "deterministic",
      "no-api-key",
      "time",
      "calendar",
      "recurrence"
    ],
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Expand an RFC 5545 recurrence rule into concrete occurrence timestamps. Accepts an RRULE string with DTSTART, an IANA time zone, and optional EXDATE and RDATE lists, and returns up to 200 occurrences as both local wall-clock times and UTC instants. Supports FREQ, INTERVAL, COUNT, UNTIL, BYDAY, BYMONTHDAY, BYMONTH, BYSETPOS and WKST. Occurrences moved by a DST gap carry gap: true. Rules needing over 50,000 candidate evaluations are rejected."
}

What the leaf hashes

{"body":"7e4d52c434b216b302d65d0179f7d2abece92f8ced5fff7a7b55b5335e235442","id":66102,"kind":"listing","method":"baseline/1","observed_us":1793025459702748,"prev":null,"subject":"x402_bazaar:https://api.duoleads.com/v1/time/rrule","subject_kind":"source_record"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).

  1. 0xac0d99c5bed629569227dc90875a5c8c7c1dbabedab08c238963f573723fdb1e
  2. 0x5fb79bbf9c017ab042ac9ba50b7fa2164cdf4e953acfc5a83af304e21a76e630
  3. 0x06ef1630dc23c5ab5ee48c82b43b57c55eba2bf8c629904c973c6a6b90efc52b
  4. 0x18a6b71572e5ab3d210821166f819afec751467187550c15cc9ec09205377fec
  5. 0xb9bdca0e680856b6b1298cdc97674c4b98b38383ef4e17ff665f3e7b77ee847c
  6. 0xc505e1a18dfeed7bf7b9170769722e84af0e1d2a30e66a526f27566b4a68bc36
  7. 0x5a9d93718b5d3a59c2383a416b816595950be9194c69405e8ce20bbf93b65723
  8. 0x3e7931c87b144009504d5c547356339f3b9e6ce9ea8bf90073e6c509266b8e7d
  9. 0x82e794d16013758d7090a0358a9d19fdd1330fa049313a95f462838aa26f6eb8
  10. 0xc7cacc2d01c3e1b7ffb7608f2b307b4082bdded2ad2fc7c4373e088c0cadb4c9
  11. 0xe285855b14529e4bf6d93d3ce05a3365dcfc651d48b9dfeb5c229a51822613eb
  12. 0xb7fae69bb7bd717d54a83df961404a3e4de2a5cfbcfa013fd83a38627fe13f7e
  13. 0x4700d6dfdb40e52e2ceb8ffe62c75f3f708d23452f828255fd003d795f5d9d66
  14. 0x3b4dba7d874fc323b0a364140a9c60f37bf547fe671897653118a9873fe03420
  15. 0x1a74ed3b3756b9cd946da49701bcec120ec88645013da99fa9eea60b39e1a570
  16. 0x123ec8bee20ddc55223eeef5a4f4d6c4b6416515adbb911c56759f5cde56e452
  17. 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON