{
  "schemaVersion": "2026-06-29",
  "kind": "roam.lobby.bookingPage",
  "handle": "meetwithjoe",
  "slug": "loanreview",
  "url": "https://ro.am/meetwithjoe/loanreview",
  "displayUrl": "ro.am/meetwithjoe/loanreview",
  "name": "Loan File Internal Review",
  "description": "This meeting is strictly for our internal team to review a loan file together.\nEveryone adding information must enter the client’s details correctly — full name, file number, and any updates needed for underwriting, processing, or next-step decisions.\n\nImportant:\nThis appointment must always be booked using the team email and team phone number, never personal contact information. This keeps everything compliant, organized, and visible to the entire team.\n\nCome prepared with your notes, outstanding conditions, and anything we need to address as a group so we can move the file forward without delays.",
  "descriptionMarkdown": "This meeting is strictly for our internal team to review a loan file together.\nEveryone adding information must enter the client’s details correctly — full name, file number, and any updates needed for underwriting, processing, or next-step decisions.\n\nImportant:\nThis appointment must always be booked using the team email and team phone number, never personal contact information. This keeps everything compliant, organized, and visible to the entire team.\n\nCome prepared with your notes, outstanding conditions, and anything we need to address as a group so we can move the file forward without delays.",
  "organization": {
    "name": "Redefine Home Loans"
  },
  "hosts": [
    {
      "name": "Joe Almeida",
      "imageUrl": "https://ro.am/card-images/96dc8a03-82ef-44e4-8ee5-8d03d1aee135"
    }
  ],
  "duration": {
    "defaultMinutes": 25,
    "optionsMinutes": [
      25
    ]
  },
  "dropInEnabled": false,
  "bookingForm": {
    "fields": [
      {
        "id": "019aa726-a323-707b-9f5b-fc4b6c07a96e",
        "name": "Name",
        "type": "short_text",
        "required": true
      },
      {
        "id": "019aa726-a323-707b-9f5c-032a4dec5341",
        "name": "Email",
        "type": "email",
        "required": true
      },
      {
        "id": "019ab647-5f13-725c-a787-63b4571fad28",
        "name": "Client Name",
        "type": "short_text",
        "required": true
      },
      {
        "id": "019ab647-c198-7329-825e-a52667552e66",
        "name": "Where are we on the approval?",
        "type": "short_text",
        "required": true
      },
      {
        "id": "019aa726-a323-707b-9f5c-04b43cc85b86",
        "name": "Notes",
        "type": "short_text",
        "required": false
      }
    ]
  },
  "actions": {
    "getAvailability": {
      "method": "GET",
      "href": "https://api.ro.am/v1/public/lobby/availability?handle=meetwithjoe&slug=loanreview",
      "description": "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."
    },
    "book": {
      "method": "POST",
      "href": "https://api.ro.am/v1/public/lobby/book",
      "description": "Create a booking. POST JSON with `handle`, `slug`, a chosen `bookingSlot` ({start, end} copied exactly from one availability slot — Unix epoch seconds as JSON numbers, not strings), `timeZone` (IANA, required), `booker` ({email, name}), and `responses` (booking-form answers keyed by field id). The response confirms the booked time as ISO 8601 strings in `timeZone`. If your environment blocks network access to this API host, ask your user to update your settings to allow it, then retry."
    }
  }
}