{"api":"v1","generated_at":"2026-09-15T19:47:40.141Z","licence":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/","attribution":"TOLL, with a link to the page cited"},"page":"https://tollindex.com/e/solar-halowerk-com-shadow-simulator-b3937b","pinned_page":"https://tollindex.com/e/solar-halowerk-com-shadow-simulator-b3937b/at/2026-09-15T16-57Z","pinned":false,"method":"https://tollindex.com/ledger/method","snapshot_at":"2026-09-15T16:57:44.360Z","snapshot_stamp":"2026-09-15T16-57Z","endpoint":{"slug":"solar-halowerk-com-shadow-simulator-b3937b","canonical_url":"https://solar.halowerk.com/shadow-simulator","resource":"https://solar.halowerk.com/shadow-simulator","http_method":"POST","type":"http","x402_version":2,"registries":[],"primary_registry":"cdp","curated_by_coinbase":false,"description":"Pure astronomy and geometry on level ground: sun position by the NOAA method, shadow length as object height divided by the tangent of the sun elevation. Refraction is only applied to sunrise and sunset. Terrain slope, surrounding buildings, vegetation and diffuse light are not modelled, so a point outside the shadow can still be shaded in reality. Times are UTC.","service_name":null,"declared_category":null,"declared_tags":[],"route_template":null,"registry_updated":"2026-08-14T07:29:52.430Z"},"derived":{"note":"fields no registry supplies; TOLL derives them and marks them derived on the page","title":"shadow simulator","category":"other","first_observed_by_toll":"2026-09-10T19:08:24.178Z","last_observed_by_toll":"2026-09-13T04:45:15.765Z","observation_began":"2026-09-10"},"presence":{"listed_now":false,"first_absent_at":"2026-09-13T11:49:46.237Z","delisting_confirmed_at":"2026-09-13T16:15:14.706Z","events":[{"registry":"cdp","at":"2026-09-10T19:08:24.178Z","event":"listed"},{"registry":"cdp","at":"2026-09-13T11:49:46.237Z","event":"delisted"},{"registry":"cdp","at":"2026-09-13T16:15:14.706Z","event":"delisting_confirmed"}]},"accepts":[{"registry":"cdp","ordinal":0,"network":"eip155:8453","asset":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","asset_name":"USD Coin","symbol":"USDC","decimals":6,"amount_display":"0.002 USDC","amount_units":0.002,"decimals_known":true,"pay_to":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","scheme":"exact"}],"counters":{"observed_at":"2026-09-13T04:45:15.766Z","calls_30d":1,"unique_payers_30d":1,"last_called_at":"2026-08-14T07:29:51.939Z"},"validation":{"latest":{"observed_at":"2026-09-13T05:40:01.576Z","state":"pass","failed_checks":["bazaar.info.output"],"endpoint_http_status":402,"run_id":"daily-2026-09-13"},"uptime":[{"days":7,"observed":3,"passed":3,"ratio":1},{"days":30,"observed":3,"passed":3,"ratio":1},{"days":90,"observed":3,"passed":3,"ratio":1}],"history_90d":[{"observed_at":"2026-09-13T05:40:01.576Z","state":"pass","failed_checks":["bazaar.info.output"],"run_id":"daily-2026-09-13","state_changed":false},{"observed_at":"2026-09-12T07:56:52.445Z","state":"pass","failed_checks":["bazaar.info.output"],"run_id":"daily-2026-09-12","state_changed":false},{"observed_at":"2026-09-11T11:51:23.860Z","state":"pass","failed_checks":["bazaar.info.output"],"run_id":"daily-2026-09-11","state_changed":true}]},"seller":{"wallet":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","page":"https://tollindex.com/seller/0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","endpoints":1553,"hosts":67},"reports":0,"registry_record":{"cdp":[{"type":"http","accepts":[{"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","extra":{"name":"USD Coin","asset":"USDC","version":"2","eip712Domain":{"name":"USD Coin","chainId":8453,"version":"2","verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"network_name":"Base Mainnet","assetTransferMethod":"eip3009"},"payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","amount":"2000","scheme":"exact","network":"eip155:8453","currency":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","recipient":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","maxTimeoutSeconds":300}],"quality":{"lastCalledAt":"2026-08-14T07:29:51.939Z","l30DaysTotalCalls":1,"l30DaysUniquePayers":1},"resource":"https://solar.halowerk.com/shadow-simulator","extensions":{"bazaar":{"info":{"input":{"body":{"lat":-90,"lon":-180,"date":"2026-08-12T09:00:00Z","object_height_m":0.01},"type":"http","method":"POST","bodyType":"json"}},"schema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method","bodyType","body"],"properties":{"body":{"type":"object","required":["lat","lon","date","object_height_m"],"properties":{"lat":{"type":"number","maximum":90,"minimum":-90},"lon":{"type":"number","maximum":180,"minimum":-180},"date":{"type":"string","description":"Day as YYYY-MM-DD."},"step_minutes":{"type":"integer","default":30,"maximum":60,"minimum":5},"object_height_m":{"type":"number","maximum":1000,"minimum":0.01},"max_shadow_length_m":{"type":"number","default":500,"maximum":100000,"minimum":1,"description":"Shadow lengths above this are reported as capped."},"obstacle_distance_m":{"type":"number","maximum":10000,"minimum":0.01,"description":"Distance of the point of interest from the object."},"obstacle_bearing_deg":{"type":"number","maximum":360,"minimum":0,"description":"Compass bearing from the object to that point."},"bearing_tolerance_deg":{"type":"number","default":10,"maximum":90,"minimum":1}},"additionalProperties":false},"type":{"type":"string","const":"http"},"method":{"enum":["POST","PUT","PATCH"],"type":"string"},"bodyType":{"enum":["json","form-data","text"],"type":"string"}},"additionalProperties":false}}}}},"description":"Pure astronomy and geometry on level ground: sun position by the NOAA method, shadow length as object height divided by the tangent of the sun elevation. Refraction is only applied to sunrise and sunset. Terrain slope, surrounding buildings, vegetation and diffuse light are not modelled, so a point outside the shadow can still be shaded in reality. Times are UTC.","lastUpdated":"2026-08-14T07:29:52.43Z","x402Version":2}]}}