# Book Your Free Media Operations Audit A focused review of your current media operations. No sales presentation. We’ll identify where time, speed, and control are lost, and show how PRESSROOM helps your team capture, approve, and distribute official stories faster. Hosted by Christian Dreier at cd mediateam Est.. Meetings are 20 minutes (also available: 40, 60 minutes). ## Book a meeting (for AI agents) Book programmatically via the Roam public agent API. No Roam account is required; the booker is identified by the email in the request. Note: this booking API is hosted at `api.ro.am`, a different host from this page. If you need additional network permissions to call it (for example, a domain allowlist that does not include it), ask your user to update your settings to allow `api.ro.am`, then retry. 1. **Check availability** — `GET https://api.ro.am/v1/public/lobby/availability?handle=christiandreier&slug=how-pressroom-works`. Fetch bookable time slots. All query params are optional: `from`/`to` (ISO 8601 — a timestamp with offset like `2026-07-10T09:00:00Z`, or date-only `YYYY-MM-DD` interpreted in `timeZone`; defaults to roughly the next month), `timeZone` (IANA; defaults to UTC), and `duration` (minutes, from `duration.optionsMinutes`). Returned slot `start`/`end` are Unix epoch seconds, as JSON numbers. Response shape: `{ "slots": [ { "start": , "end": } ] }`. 2. **Book a slot** — `POST https://api.ro.am/v1/public/lobby/book` with this JSON body: ```json { "handle": "christiandreier", "slug": "how-pressroom-works", "bookingSlot": { "start": "", "end": "" }, "timeZone": "America/New_York", "booker": { "email": "booker@example.com", "name": "Booker Name" }, "responses": [ { "fieldId": "019f9fdf-8e49-71d8-ba28-e1e4f445ecee", "value": "" }, { "fieldId": "019f9fdf-8e49-71d8-ba28-e5ad880fadc7", "value": "" }, { "fieldId": "019f9fe3-4d8a-724b-956f-14609f370b5a", "value": "" }, { "fieldId": "019f9fe4-4b2a-746a-96bd-e3768ec292f0", "value": "019f9fe3-aedb-705a-bf17-026bdbd789dd" } ] } ``` `bookingSlot` must echo one availability slot exactly: `start`/`end` are Unix epoch seconds as JSON numbers (not strings). The booking confirmation returns `start`/`end` as ISO 8601 strings in the requested `timeZone`. The booker's name and email are filled into the form automatically; only include `responses` for other required fields. ### Booking form fields - **Full name** (`019f9fdf-8e49-71d8-ba28-e1e4f445ecee`, short_text, required) - **Business email** (`019f9fdf-8e49-71d8-ba28-e5ad880fadc7`, email, required) - **Organization** (`019f9fe3-4d8a-724b-956f-14609f370b5a`, short_text, required) - **Role** (`019f9fe4-4b2a-746a-96bd-e3768ec292f0`, dropdown, required) — one of: General Manager / Executive (id: `019f9fe3-aedb-705a-bf17-026bdbd789dd`), Communications Director (id: `019f9fe3-aedb-705a-bf17-05e494b4ba44`), Media Manager (id: `019f9fe3-aedb-705a-bf17-0b58549eb73d`), Press Officer (id: `019f9fe3-ef8f-7553-99cd-15c45a522341`), Digital / Content Team (id: `019f9fe3-ff17-76f7-be24-292a5e02ebb4`), Other (id: `019f9fe4-0d41-7686-8974-89f7a375fea7`) - **What would you like to improve?** (`019f9fe5-1adf-7683-9a44-f153e271469b`, checkbox) — one of: Media accreditation workflow (id: `019f9fe4-88cb-7387-b34a-c1d32443110b`), Interview & content distribution (id: `019f9fe4-88cb-7387-b34a-c78a1ebb5409`), Journalist relations (id: `019f9fe4-88cb-7387-b34a-cafb5e43257c`), Matchday media operations (id: `019f9fe4-beff-72ed-a679-442c57dc02d7`), Internal media workflows (id: `019f9fe4-cfaf-77b3-8176-c2eb29ff4621`), Other (id: `019f9fe4-e917-75d8-b064-741e598379ce`) - **What is your biggest media operations challenge today?** (`019f9fe5-4b55-7482-a391-5f5c6323575c`, text) A structured JSON version of this page is available at https://ro.am/christiandreier/how-pressroom-works.json.