{"slug":"api-duoleads-com-v1-time-business-days-2a4af7","title":"Business-day arithmetic with a caller-supplied calendar","host":"api.duoleads.com","method":"GET","resource":"https://api.duoleads.com/v1/time/business-days","category":"other","description":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is specified as a weekday mask so Friday-Saturday and Sunday-only weeks work, and holidays are passed in as an explicit date list, so the answ","price_listed":0.05,"price_asked":0.05,"state":"answering","state_label":"Answering","checks_7d":1,"answered_7d":1,"latency_ms_median":19,"reported_calls_30d":1,"reported_payers_30d":1,"networks":["eip155:8453"],"badge":"unverified","paid_checks_7d":0,"paid_ok_7d":0,"example_input":{"method":"GET","queryParams":{"days":"5","from":"2026-12-24","holidays":"2026-12-25,2026-12-26,2027-01-01"},"type":"http"},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"method":{"enum":["GET"],"type":"string"},"queryParams":{"properties":{"days":{"description":"Business days to add, -3650 to 3650. Required when op=add.","maxLength":64,"pattern":"^[+-]?\\d+$","type":"string"},"from":{"description":"Start date, YYYY-MM-DD.","maxLength":32,"pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"holidays":{"description":"Comma-separated YYYY-MM-DD holiday dates.","maxLength":2048,"type":"string"},"inclusive":{"default":"start","description":"For op=count: start (default, half-open [from, to)), both or neither.","enum":["start","both","neither"],"maxLength":64,"type":"string"},"op":{"default":"add","description":"add (default) N business days to from, or count business days between from and to.","enum":["add","count"],"maxLength":64,"type":"string"},"to":{"description":"End date YYYY-MM-DD, may precede from. Required when op=count.","maxLength":32,"pattern":"^\\d{4}-\\d{2}-\\d{2}$","type":"string"},"weekend":{"default":"sat,sun","description":"Comma-separated weekday names or ISO numbers. Default sat,sun. Empty string = no weekend.","maxLength":64,"type":"string"}},"required":["from"],"type":"object"},"type":{"const":"http","type":"string"}},"required":["type","method"],"type":"object"},"output":{"properties":{"example":{"properties":{"data":{"type":"object"},"meta":{"properties":{"computed_at":{"type":"string"},"deterministic":{"type":"boolean"},"disclaimer":{"type":"string"},"price_usd":{"type":"string"},"request_id":{"type":"string"},"sources":{"type":"array"}},"required":["request_id","computed_at","price_usd","deterministic","disclaimer"],"type":"object"},"ok":{"const":true,"type":"boolean"},"route":{"type":"string"},"version":{"type":"string"}},"required":["ok","route","version","data","meta"],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"},"history":[{"day":"2026-09-29","reachable":true,"status":402,"valid_402":true,"asked_usdc":0.05,"price_match":true,"latency_ms":19,"error":null}],"description_full":"Business-day arithmetic with a caller-supplied calendar: add or subtract N working days from a date, or count the working days between two dates. The weekend is specified as a weekday mask so Friday-Saturday and Sunday-only weeks work, and holidays are passed in as an explicit date list, so the answer never depends on a holiday table that can go stale. Returns the result date, the day count, and the skipped dates with the reason each was skipped.","last_updated":"2026-09-28T23:37:42.581Z","schemes":["exact"]}