addrbookFor publishers
← The evidence ledger

Evidence row 123910

Observed , by baseline/1.

Kind
listing
About
source_record x402_bazaar:https://vps.phoneagent.xyz/rentals/:id/renew
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
d182744100a463ee03aafa6792708b0cb52fa7a1bd20b576d2b756c55c60e080
Leaf
0xfe0c8b135310552419ede94d42ae2a7c285e9e8cc9566a6ac7e16814868a95d3

What was observed

{
  "endpoints": [
    [
      "x402",
      "https://vps.phoneagent.xyz/rentals/:id/renew"
    ]
  ],
  "name": "vps.phoneagent.xyz/rentals/:id/renew",
  "owner_address": "0x8ecbd65228930060363c70854da7d37d57ffc358",
  "raw": {
    "accepts": [
      {
        "amount": "14990000",
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "maxTimeoutSeconds": 43200,
        "network": "eip155:8453",
        "payTo": "0x8eCbd65228930060363C70854da7D37D57ffC358",
        "scheme": "exact"
      }
    ],
    "description": "Extend an existing rental's expires_at by N billing periods. Pay-on-success: USDC settles only after the extension is actually in place, normally within a minute. Stack cap periods ∈ [1, 12]; price is the original (sku, region) rate × periods, and a probe without ?token= is quoted a sample at the entry rate. Same-box, same-IP — no mid-rental failover. Returns {status: 'renewing', predicted_expires_at} until settle completes; original expires_at remains in force until then.",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "body": {
              "periods": 1
            },
            "bodyType": "json",
            "method": "POST",
            "pathParams": {
              "id": "Unique identifier (UUID format)"
            },
            "queryParams": {
              "periods": "1",
              "token": "rt_xxxxxxxxxxxx"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "current_expires_at": 1782604800000,
              "manual_step": "None — the extension is applied automatically. Poll GET /instance/{id} for progress.",
              "periods": 1,
              "predicted_expires_at": 1785196800000,
              "price_usdc": "14.99",
              "rental_id": "v_xxxxxxxxxxxx",
              "status": "renewing"
            },
            "type": "json"
          }
        },
        "routeTemplate": "/rentals/:id/renew",
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "body": {
                  "type": "object"
                },
                "bodyType": {
                  "type": "string"
                },
                "method": {
                  "enum": [
                    "POST"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "properties": {
                    "current_expires_at": {
                      "description": "Existing expires_at; remains in force until renewal settles.",
                      "type": "integer"
                    },
                    "manual_step": {
                      "description": "What you have to do. Normally nothing — kept for agents written against the original shape.",
                      "type": "string"
                    },
                    "periods": {
                      "description": "Periods actually applied — compare against what you asked for.",
                      "type": "integer"
                    },
                    "predicted_expires_at": {
                      "description": "What expires_at will become after worker settles + re-cancels.",
                      "type": "integer"
                    },
                    "price_usdc": {
                      "description": "What the signed authorization is for, in USDC.",
                      "type": "string"
                    },
                    "rental_id": {
                      "type": "string"
                    },
                    "status": {
                      "enum": [
                        "renewing"
                      ],
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      }
    },
    "lastUpdated": "2026-09-26T14:18:01.332Z",
    "quality": {
      "l30DaysTotalCalls": 2,
      "l30DaysUniquePayers": 1,
      "lastCalledAt": "2026-09-26T14:18:01.191Z"
    },
    "resource": "https://vps.phoneagent.xyz/rentals/:id/renew",
    "type": "http",
    "x402Version": 2
  },
  "source": "x402_bazaar",
  "summary": "Extend an existing rental's expires_at by N billing periods. Pay-on-success: USDC settles only after the extension is actually in place, normally within a minute. Stack cap periods ∈ [1, 12]; price is the original (sku, region) rate × periods, and a probe without ?token= is quoted a sample at the entry rate. Same-box, same-IP — no mid-rental failover. Returns {status: 'renewing', predicted_expires_at} until settle completes; original expires_at remains in force until then."
}

What the leaf hashes

{"body":"d182744100a463ee03aafa6792708b0cb52fa7a1bd20b576d2b756c55c60e080","id":123910,"kind":"listing","method":"baseline/1","observed_us":1793025623860747,"prev":null,"subject":"x402_bazaar:https://vps.phoneagent.xyz/rentals/:id/renew","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. 0xfe0c808bcd806ba1eb5d33f11fdbb87495006bb95f34ae41aad03eb7916ec3cd
  2. 0x3a663bd7e2a109e438c0be4980b6c3e092e000a76a957813eac9cabc7fbcf7f8
  3. 0x5c6598203f0d016af17245c65e87e8e6afd603d8f5e7bf37704bb896c14b2913
  4. 0xb3f6f5fa399b2260c0e99f79652d61d44a8ea7b0648023cee34a299a80c3bdeb
  5. 0x9bffc08a4710e70235f93f4af5d4e97bfcb2243f09e5f8bf81a63e49ee2e8187
  6. 0x98ead22e9b2e4f41dc6f1873819c6b7568912bf5fdb984b03f2581d3f6d35a8b
  7. 0xd02da21b15b546d0da29cf66bdb9d8c48f7e7e2b6b11d4dd9d72897916d4096c
  8. 0x50555ae251038468924d3125182a18867ff9a1840b15170705dece8b5c456149
  9. 0x879d07ba1af2b95b1c3aaf5bb32738bbf09114433f0c4a151c6ddd6f396bc71f
  10. 0x53f4adead19f010a0cb7fa8d5eab040e5cd149da0d3677578375a3b33d54ca60
  11. 0xf45641bf26b2b86d9338aa6dc8640a8a378fbd786d23400636aaf30709453e50
  12. 0xa1d268c111b09550fdb70b6d9d0b58c94dc828b083baa8f1360300aab6230a9c
  13. 0xbee644d57738676bfb20eb90d6021f364bf883a8d54f8d17e9dc4749b4074c3d
  14. 0x44945ea9ad8b24e723ad5a8fd6d014024a49531783f74ff9229c2ab6930e84c8
  15. 0x68d296b1e00b4899fb83c3fba36fffaefa311eac2903067dbebfe776a12b4a9a
  16. 0x5fb5dda563336cd1bc1b9f44c52b76237ae72ed2145cb9290f39f304ca7dd678
  17. 0x74a0a08e4e7ab9aa5bfbead33dec7e1c7e8e364cff69a63720d764bbe987aadc
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
Not published on a chain yet

How to check it · This row as JSON