{"x402Version":2,"type":"bazaar-listing","service":{"name":"HALOWERK buerowerk","url":"https://buero.halowerk.com","version":"1.0.0","icon":"https://buero.halowerk.com/favicon.svg"},"items":[{"id":"buerowerk.availability_resolve","name":"availability_resolve","title":"Takes anonymous busy blocks from several people, each with their own timezone and working hours, and returns the common free windows long enough for the meeting, ranked, with who can attend each one and who cannot.","description":"Give it a search window, a meeting length, and for each participant a list of busy blocks — start and end, nothing else — and it returns the windows in which the meeting fits. Each participant carries their own IANA timezone and working hours, so nine-to-five means nine-to-five where they are, across daylight saving changes, and a meeting is only offered when it lies entirely inside one working-hours block for everyone counted as present. Windows are returned with the participants who can attend, those who cannot, and a rank that puts full attendance first and the earliest slot next; setting min_attendees or marking participants as optional produces partial windows too, each labelled with exactly who is missing. Alongside the windows every participant gets a load figure — busy minutes, free minutes inside working hours, and a percentage — and all of them are measured over the identical search window, because a percentage from a two-week sample set beside one from three weeks compares nothing. The input is deliberately impoverished: it takes no calendar credentials, no event titles, no attendee names, no location, and an identifier may be a single letter. Nothing is stored beyond the response. What it does not do is decide: it will not rank by anyone seniority, guess which meeting may be moved, or read a busy block as tentative — a block is busy, and a slot that fits is offered without any claim that it is a good time.","category":"buerowerk","keywords":[],"resource":"https://buero.halowerk.com/v1/availability-resolve","method":"POST","mimeType":"application/json","inputSchema":{"type":"object","required":["participants","window","duration_minutes"],"additionalProperties":false,"properties":{"participants":{"type":"array","minItems":1,"maxItems":20,"description":"One entry per person. Identifiers are free text and need not be real names.","items":{"type":"object","required":["id"],"additionalProperties":false,"properties":{"id":{"type":"string","minLength":1,"maxLength":80,"description":"Any label, unique within the request. \"a\" is fine."},"busy":{"type":"array","maxItems":300,"description":"Busy blocks. Overlapping blocks are merged.","items":{"type":"object","required":["start","end"],"additionalProperties":false,"properties":{"start":{"type":"string","maxLength":40,"description":"ISO 8601 with offset or Z."},"end":{"type":"string","maxLength":40,"description":"ISO 8601 with offset or Z."}}}},"timezone":{"type":"string","maxLength":60,"description":"IANA zone for this person, e.g. Europe/Berlin. Falls back to the request default."},"working_hours":{"type":"object","additionalProperties":false,"description":"Working hours in this person local time. Omit to use the request default.","properties":{"start":{"type":"string","maxLength":5,"description":"HH:MM, e.g. 09:00."},"end":{"type":"string","maxLength":5,"description":"HH:MM. An end before the start means the block runs past midnight."},"days":{"type":"array","maxItems":7,"items":{"type":"integer","minimum":0,"maximum":6},"description":"0 is Sunday, 6 is Saturday. Default Monday to Friday."}}},"optional":{"type":"boolean","default":false,"description":"Optional participants may be missing from a returned window."}}}},"window":{"type":"object","required":["start","end"],"additionalProperties":false,"description":"The search window. Every load figure is measured over exactly this span for everyone.","properties":{"start":{"type":"string","maxLength":40,"description":"ISO 8601."},"end":{"type":"string","maxLength":40,"description":"ISO 8601."}}},"duration_minutes":{"type":"integer","minimum":5,"maximum":1440,"description":"How long the meeting needs to be."},"granularity_minutes":{"type":"integer","enum":[5,10,15,20,30,60],"default":15,"description":"Step of the candidate grid. Start times fall on this grid."},"default_timezone":{"type":"string","maxLength":60,"default":"UTC","description":"Timezone for participants that do not name one."},"working_hours":{"type":"object","additionalProperties":false,"description":"Default working hours for participants that do not name their own. Omit both this and per-participant hours to search around the clock.","properties":{"start":{"type":"string","maxLength":5},"end":{"type":"string","maxLength":5},"days":{"type":"array","maxItems":7,"items":{"type":"integer","minimum":0,"maximum":6}}}},"ignore_working_hours":{"type":"boolean","default":false,"description":"Search the whole window regardless of working hours."},"min_attendees":{"type":"integer","minimum":1,"description":"Also return windows where only this many can attend. Default: everyone who is not optional."},"max_results":{"type":"integer","minimum":1,"maximum":100,"default":20,"description":"How many windows to return. What is dropped is counted."},"output_timezone":{"type":"string","maxLength":60,"description":"Additionally render every returned time in this zone. Defaults to default_timezone."}}},"outputSchema":{"type":"object"},"price":{"amount":"2000","currency":"USDC","decimals":6,"human":"0.002 USDC"},"accepts":[{"scheme":"exact","network":"eip155:8453","payTo":"0x2880EdfFF13100677Bf97A3CBdF3Bc34771C4E5E","price":{"amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","extra":{"asset":"USDC","network_name":"Base Mainnet","name":"USD Coin","version":"2","assetTransferMethod":"eip3009","eip712Domain":{"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}}},"maxTimeoutSeconds":300}]}],"capability_request":{"url":"https://bedarf.halowerk.com/capabilities/request","method":"POST","cost":"free","description":"Missing a capability, or does the scope not fit? Report the need here - no payment required. Similar reports are bundled; the response returns an id you can check back on.","body_example":{"requested_capability":"short label","description":"what exactly is needed","max_price":0.01}},"updated_at":"2026-08-11T14:10:14.153Z"}