[{"data":1,"prerenderedAt":1854},["ShallowReactive",2],{"navigation":3,"\u002Fbooki-documentation\u002Fapi\u002Fauth-owner-register":303,"\u002Fbooki-documentation\u002Fapi\u002Fauth-owner-register-surround":1849},[4,55,105],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":54},"Nuxt Guide","i-lucide-layout","\u002Fnuxt-guide","1.nuxt-guide",[10,14,19,24,29,34,39,44,49],{"title":11,"path":12,"stem":13,"icon":6},"Overview","\u002Fnuxt-guide\u002Foverview","1.nuxt-guide\u002F1.overview",{"title":15,"path":16,"stem":17,"icon":18},"Folder Structure","\u002Fnuxt-guide\u002Ffolder-structure","1.nuxt-guide\u002F2.folder-structure","i-lucide-folder-tree",{"title":20,"path":21,"stem":22,"icon":23},"Components","\u002Fnuxt-guide\u002Fcomponents","1.nuxt-guide\u002F3.components","i-lucide-component",{"title":25,"path":26,"stem":27,"icon":28},"Composables","\u002Fnuxt-guide\u002Fcomposables","1.nuxt-guide\u002F4.composables","i-lucide-puzzle",{"title":30,"path":31,"stem":32,"icon":33},"Pages & Routing","\u002Fnuxt-guide\u002Fpages-routing","1.nuxt-guide\u002F5.pages-routing","i-lucide-file-text",{"title":35,"path":36,"stem":37,"icon":38},"Middleware","\u002Fnuxt-guide\u002Fmiddleware","1.nuxt-guide\u002F6.middleware","i-lucide-shield-check",{"title":40,"path":41,"stem":42,"icon":43},"Plugins","\u002Fnuxt-guide\u002Fplugins","1.nuxt-guide\u002F7.plugins","i-lucide-plug",{"title":45,"path":46,"stem":47,"icon":48},"State Management","\u002Fnuxt-guide\u002Fstate-management","1.nuxt-guide\u002F8.state-management","i-lucide-database",{"title":50,"path":51,"stem":52,"icon":53},"TypeScript","\u002Fnuxt-guide\u002Ftypescript","1.nuxt-guide\u002F9.typescript","i-lucide-braces",false,{"title":56,"icon":57,"path":58,"stem":59,"children":60,"page":54},"Node \u002F Express Guide","i-lucide-server","\u002Fnode-express-guide","2.node-express-guide",[61,64,69,72,77,82,86,91,96,100],{"title":11,"path":62,"stem":63,"icon":57},"\u002Fnode-express-guide\u002Foverview","2.node-express-guide\u002F1.overview",{"title":65,"path":66,"stem":67,"icon":68},"Error Handling","\u002Fnode-express-guide\u002Ferror-handling","2.node-express-guide\u002F10.error-handling","i-lucide-alert-triangle",{"title":15,"path":70,"stem":71,"icon":18},"\u002Fnode-express-guide\u002Ffolder-structure","2.node-express-guide\u002F2.folder-structure",{"title":73,"path":74,"stem":75,"icon":76},"Controllers","\u002Fnode-express-guide\u002Fcontrollers","2.node-express-guide\u002F3.controllers","i-lucide-cpu",{"title":78,"path":79,"stem":80,"icon":81},"Services","\u002Fnode-express-guide\u002Fservices","2.node-express-guide\u002F4.services","i-lucide-workflow",{"title":83,"path":84,"stem":85,"icon":48},"Repositories","\u002Fnode-express-guide\u002Frepositories","2.node-express-guide\u002F5.repositories",{"title":87,"path":88,"stem":89,"icon":90},"Models","\u002Fnode-express-guide\u002Fmodels","2.node-express-guide\u002F6.models","i-lucide-boxes",{"title":92,"path":93,"stem":94,"icon":95},"Routes","\u002Fnode-express-guide\u002Froutes","2.node-express-guide\u002F7.routes","i-lucide-route",{"title":35,"path":97,"stem":98,"icon":99},"\u002Fnode-express-guide\u002Fmiddleware","2.node-express-guide\u002F8.middleware","i-lucide-shield",{"title":101,"path":102,"stem":103,"icon":104},"Validation","\u002Fnode-express-guide\u002Fvalidation","2.node-express-guide\u002F9.validation","i-lucide-check-circle",{"title":106,"icon":107,"path":108,"stem":109,"children":110,"page":54},"Booki Documentation","i-lucide-book-open","\u002Fbooki-documentation","3.booki-documentation",[111,115,120,125,130,229,244,257],{"title":112,"path":113,"stem":114,"icon":107},"Project Overview","\u002Fbooki-documentation\u002Foverview","3.booki-documentation\u002F1.overview",{"title":116,"path":117,"stem":118,"icon":119},"Installation","\u002Fbooki-documentation\u002F1.installation","3.booki-documentation\u002F2.1.installation","i-lucide-download",{"title":121,"path":122,"stem":123,"icon":124},"Development Overview","\u002Fbooki-documentation\u002F2.architecture","3.booki-documentation\u002F2.2.architecture","i-lucide-layers",{"title":126,"path":127,"stem":128,"icon":129},"Local Development","\u002Fbooki-documentation\u002F3.local-development","3.booki-documentation\u002F2.3.local-development","i-lucide-monitor",{"title":131,"icon":57,"path":132,"stem":133,"children":134,"page":54},"API","\u002Fbooki-documentation\u002Fapi","3.booki-documentation\u002F3.api",[135,139,144,149,154,159,163,168,173,178,183,188,192,197,202,206,211,216,220,224],{"title":136,"path":137,"stem":138,"icon":57},"Booki API Reference","\u002Fbooki-documentation\u002Fapi\u002Fbooki-api","3.booki-documentation\u002F3.api\u002F1.booki-api",{"title":140,"path":141,"stem":142,"icon":143},"Auth - Login & Refresh","\u002Fbooki-documentation\u002Fapi\u002Fauth","3.booki-documentation\u002F3.api\u002F2.auth","i-lucide-key",{"title":145,"path":146,"stem":147,"icon":148},"Auth - Customer Registration","\u002Fbooki-documentation\u002Fapi\u002Fauth-customer-register","3.booki-documentation\u002F3.api\u002F2.auth-customer-register","i-lucide-user-check",{"title":150,"path":151,"stem":152,"icon":153},"Auth - Owner Registration","\u002Fbooki-documentation\u002Fapi\u002Fauth-owner-register","3.booki-documentation\u002F3.api\u002F2.auth-owner-register","i-lucide-user-plus",{"title":155,"path":156,"stem":157,"icon":158},"Bookings","\u002Fbooki-documentation\u002Fapi\u002Fbookings","3.booki-documentation\u002F3.api\u002F3.bookings","i-lucide-calendar-check",{"title":160,"path":161,"stem":162,"icon":158},"Bookings - Authenticated","\u002Fbooki-documentation\u002Fapi\u002Fbookings-auth","3.booki-documentation\u002F3.api\u002F3.bookings-auth",{"title":164,"path":165,"stem":166,"icon":167},"Bookings - Public & Guest","\u002Fbooki-documentation\u002Fapi\u002Fbookings-public","3.booki-documentation\u002F3.api\u002F3.bookings-public","i-lucide-calendar-plus",{"title":169,"path":170,"stem":171,"icon":172},"Booking Services","\u002Fbooki-documentation\u002Fapi\u002Fbooking-services","3.booki-documentation\u002F3.api\u002F4.booking-services","i-lucide-box",{"title":174,"path":175,"stem":176,"icon":177},"Organizations - Branches","\u002Fbooki-documentation\u002Fapi\u002Fbranches","3.booki-documentation\u002F3.api\u002F5.branches","i-lucide-git-branch",{"title":179,"path":180,"stem":181,"icon":182},"Organizations - Business Hours","\u002Fbooki-documentation\u002Fapi\u002Fbusiness-hours","3.booki-documentation\u002F3.api\u002F5.business-hours","i-lucide-clock",{"title":184,"path":185,"stem":186,"icon":187},"Organizations - Base","\u002Fbooki-documentation\u002Fapi\u002Forganizations","3.booki-documentation\u002F3.api\u002F5.organizations","i-lucide-building-2",{"title":189,"path":190,"stem":191,"icon":172},"Organizations - Packages","\u002Fbooki-documentation\u002Fapi\u002Fpackages","3.booki-documentation\u002F3.api\u002F5.packages",{"title":193,"path":194,"stem":195,"icon":196},"Organizations - Payments & Integrations","\u002Fbooki-documentation\u002Fapi\u002Fpayments","3.booki-documentation\u002F3.api\u002F5.payments","i-lucide-credit-card",{"title":198,"path":199,"stem":200,"icon":201},"Users - Profile & Settings","\u002Fbooki-documentation\u002Fapi\u002Fusers","3.booki-documentation\u002F3.api\u002F6.users","i-lucide-user",{"title":203,"path":204,"stem":205,"icon":196},"Maya Payments","\u002Fbooki-documentation\u002Fapi\u002Fmaya","3.booki-documentation\u002F3.api\u002F7.maya",{"title":207,"path":208,"stem":209,"icon":210},"Owner - Booking Management","\u002Fbooki-documentation\u002Fapi\u002Fowner-bookings","3.booki-documentation\u002F3.api\u002F7.owner-bookings","i-lucide-calendar",{"title":212,"path":213,"stem":214,"icon":215},"Owner - Customer Management","\u002Fbooki-documentation\u002Fapi\u002Fowner-customers","3.booki-documentation\u002F3.api\u002F7.owner-customers","i-lucide-users",{"title":217,"path":218,"stem":219,"icon":196},"Admin - Billing & Subscriptions","\u002Fbooki-documentation\u002Fapi\u002Fadmin-billing","3.booki-documentation\u002F3.api\u002F8.admin-billing",{"title":221,"path":222,"stem":223,"icon":187},"Admin - Organizations Management","\u002Fbooki-documentation\u002Fapi\u002Fadmin-organizations","3.booki-documentation\u002F3.api\u002F8.admin-organizations",{"title":225,"path":226,"stem":227,"icon":228},"Admin - User Management","\u002Fbooki-documentation\u002Fapi\u002Fadmin-users","3.booki-documentation\u002F3.api\u002F8.admin-users","i-lucide-shield-admin",{"title":230,"icon":231,"path":232,"stem":233,"children":234,"page":54},"Shared","i-lucide-package","\u002Fbooki-documentation\u002Fshared","3.booki-documentation\u002F4.shared",[235,240],{"title":236,"path":237,"stem":238,"icon":239},"codi-node-utils","\u002Fbooki-documentation\u002Fshared\u002Fcodi-node-utils","3.booki-documentation\u002F4.shared\u002F1.codi-node-utils","i-lucide-wrench",{"title":241,"path":242,"stem":243,"icon":124},"codi-layer","\u002Fbooki-documentation\u002Fshared\u002Fcodi-layer","3.booki-documentation\u002F4.shared\u002F2.codi-layer",{"title":245,"path":246,"stem":247,"children":248,"page":54},"Flowcharts","\u002Fbooki-documentation\u002Fflowcharts","3.booki-documentation\u002F5.flowcharts",[249,253],{"title":250,"path":251,"stem":252,"icon":158},"Owner Booking Management Flow","\u002Fbooki-documentation\u002Fflowcharts\u002Fowner-booking-management","3.booki-documentation\u002F5.flowcharts\u002F1.owner-booking-management",{"title":254,"path":255,"stem":256,"icon":167},"Customer Booking Flow","\u002Fbooki-documentation\u002Fflowcharts\u002Fcustomer-booking-flow","3.booki-documentation\u002F5.flowcharts\u002F2.customer-booking-flow",{"title":258,"path":259,"stem":260,"children":261,"page":54},"Guides","\u002Fbooki-documentation\u002Fguides","3.booki-documentation\u002Fguides",[262,267,271,275,280,285,290,294,298],{"title":263,"path":264,"stem":265,"icon":266},"Guide - Authentication Flow & Sessions","\u002Fbooki-documentation\u002Fguides\u002Fguides-auth-flow","3.booki-documentation\u002Fguides\u002Fguides-auth-flow","i-lucide-lock",{"title":268,"path":269,"stem":270,"icon":177},"Guide - Branch Management","\u002Fbooki-documentation\u002Fguides\u002Fguides-branch-management","3.booki-documentation\u002Fguides\u002Fguides-branch-management",{"title":272,"path":273,"stem":274,"icon":196},"Guide - Customer Payment Methods","\u002Fbooki-documentation\u002Fguides\u002Fguides-customer-payments","3.booki-documentation\u002Fguides\u002Fguides-customer-payments",{"title":276,"path":277,"stem":278,"icon":279},"Guide - Environment Setup","\u002Fbooki-documentation\u002Fguides\u002Fguides-environment-setup","3.booki-documentation\u002Fguides\u002Fguides-environment-setup","i-lucide-settings",{"title":281,"path":282,"stem":283,"icon":284},"Guide - Common Error Responses","\u002Fbooki-documentation\u002Fguides\u002Fguides-errors","3.booki-documentation\u002Fguides\u002Fguides-errors","i-lucide-alert-circle",{"title":286,"path":287,"stem":288,"icon":289},"Guide - Gmail SMTP Setup","\u002Fbooki-documentation\u002Fguides\u002Fguides-gmail-setup","3.booki-documentation\u002Fguides\u002Fguides-gmail-setup","i-lucide-mail",{"title":291,"path":292,"stem":293,"icon":124},"Guide - Multi-Tenancy & Tenant Slug Resolution","\u002Fbooki-documentation\u002Fguides\u002Fguides-multi-tenancy","3.booki-documentation\u002Fguides\u002Fguides-multi-tenancy",{"title":295,"path":296,"stem":297,"icon":48},"Guide - Redis Caching","\u002Fbooki-documentation\u002Fguides\u002Fguides-redis","3.booki-documentation\u002Fguides\u002Fguides-redis",{"title":299,"path":300,"stem":301,"icon":302},"Guide - Subscription Billing","\u002Fbooki-documentation\u002Fguides\u002Fguides-subscription-billing","3.booki-documentation\u002Fguides\u002Fguides-subscription-billing","i-lucide-receipt",{"id":304,"title":150,"body":305,"description":1842,"extension":1843,"links":1844,"meta":1845,"navigation":1846,"path":151,"seo":1847,"stem":152,"__hash__":1848},"docs\u002F3.booki-documentation\u002F3.api\u002F2.auth-owner-register.md",{"type":306,"value":307,"toc":1818},"minimark",[308,316,319,345,354,366,371,421,424,433,437,468,472,478,527,531,585,588,595,604,607,638,640,647,650,696,699,704,748,754,799,802,843,845,852,861,864,1336,1338,1454,1458,1488,1491,1496,1540,1546,1591,1594,1776,1778,1782,1814],[309,310,311,312],"p",{},"Base path: ",[313,314,315],"code",{},"\u002Fapi\u002Fv1\u002Fauth",[309,317,318],{},"The owner registration flow requires 3 steps: (1) Request OTP → (2) Verify OTP → (3) Create account.",[309,320,321,325,326,329,330,333,334,337,340,341,344],{},[322,323,324],"strong",{},"Used by:"," ",[313,327,328],{},"cms-booki-web-app"," · ",[322,331,332],{},"Role:"," guest (unauthenticated)",[335,336],"br",{},[322,338,339],{},"organizationId:"," Not applicable at registration time — the organization is ",[322,342,343],{},"created"," as part of step 3.",[346,347,349,350,353],"h2",{"id":348},"post-apiv1authregisterownerotp-send-otp","POST ",[313,351,352],{},"\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp"," — Send OTP",[309,355,356,359,360,362,365],{},[322,357,358],{},"Auth:"," Public",[335,361],{},[322,363,364],{},"Description:"," Send a 6-digit OTP to the provided email for owner registration verification.",[367,368,370],"h3",{"id":369},"request","Request",[372,373,378],"pre",{"className":374,"code":375,"language":376,"meta":377,"style":377},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"email\": \"jane@example.com\"\n}\n","json","",[313,379,380,389,415],{"__ignoreMap":377},[381,382,385],"span",{"class":383,"line":384},"line",1,[381,386,388],{"class":387},"sMK4o","{\n",[381,390,392,395,399,402,405,408,412],{"class":383,"line":391},2,[381,393,394],{"class":387},"  \"",[381,396,398],{"class":397},"spNyl","email",[381,400,401],{"class":387},"\"",[381,403,404],{"class":387},":",[381,406,407],{"class":387}," \"",[381,409,411],{"class":410},"sfazB","jane@example.com",[381,413,414],{"class":387},"\"\n",[381,416,418],{"class":383,"line":417},3,[381,419,420],{"class":387},"}\n",[309,422,423],{},"Fields:",[425,426,427],"ul",{},[428,429,430,432],"li",{},[313,431,398],{}," (string, required): Valid email address where OTP will be sent",[367,434,436],{"id":435},"response-200-ok","Response (200 OK)",[372,438,440],{"className":374,"code":439,"language":376,"meta":377,"style":377},"{\n  \"message\": \"Owner email OTP sent successfully. Kindly check your email for the OTP.\"\n}\n",[313,441,442,446,464],{"__ignoreMap":377},[381,443,444],{"class":383,"line":384},[381,445,388],{"class":387},[381,447,448,450,453,455,457,459,462],{"class":383,"line":391},[381,449,394],{"class":387},[381,451,452],{"class":397},"message",[381,454,401],{"class":387},[381,456,404],{"class":387},[381,458,407],{"class":387},[381,460,461],{"class":410},"Owner email OTP sent successfully. Kindly check your email for the OTP.",[381,463,414],{"class":387},[381,465,466],{"class":383,"line":417},[381,467,420],{"class":387},[367,469,471],{"id":470},"error-responses","Error Responses",[309,473,474,477],{},[322,475,476],{},"400 Bad Request"," — Invalid email or email already registered:",[372,479,481],{"className":374,"code":480,"language":376,"meta":377,"style":377},"{\n  \"statusCode\": 400,\n  \"message\": \"Email already registered as an owner account\"\n}\n",[313,482,483,487,505,522],{"__ignoreMap":377},[381,484,485],{"class":383,"line":384},[381,486,388],{"class":387},[381,488,489,491,494,496,498,502],{"class":383,"line":391},[381,490,394],{"class":387},[381,492,493],{"class":397},"statusCode",[381,495,401],{"class":387},[381,497,404],{"class":387},[381,499,501],{"class":500},"sbssI"," 400",[381,503,504],{"class":387},",\n",[381,506,507,509,511,513,515,517,520],{"class":383,"line":417},[381,508,394],{"class":387},[381,510,452],{"class":397},[381,512,401],{"class":387},[381,514,404],{"class":387},[381,516,407],{"class":387},[381,518,519],{"class":410},"Email already registered as an owner account",[381,521,414],{"class":387},[381,523,525],{"class":383,"line":524},4,[381,526,420],{"class":387},[367,528,530],{"id":529},"curl-example","cURL Example",[372,532,536],{"className":533,"code":534,"language":535,"meta":377,"style":377},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -X POST http:\u002F\u002Flocalhost:4001\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"email\": \"jane@example.com\"}'\n","bash",[313,537,538,557,571],{"__ignoreMap":377},[381,539,540,544,547,550,553],{"class":383,"line":384},[381,541,543],{"class":542},"sBMFI","curl",[381,545,546],{"class":410}," -X",[381,548,549],{"class":410}," POST",[381,551,552],{"class":410}," http:\u002F\u002Flocalhost:4001\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp",[381,554,556],{"class":555},"sTEyZ"," \\\n",[381,558,559,562,564,567,569],{"class":383,"line":391},[381,560,561],{"class":410},"  -H",[381,563,407],{"class":387},[381,565,566],{"class":410},"Content-Type: application\u002Fjson",[381,568,401],{"class":387},[381,570,556],{"class":555},[381,572,573,576,579,582],{"class":383,"line":417},[381,574,575],{"class":410},"  -d",[381,577,578],{"class":387}," '",[381,580,581],{"class":410},"{\"email\": \"jane@example.com\"}",[381,583,584],{"class":387},"'\n",[586,587],"hr",{},[346,589,349,591,594],{"id":590},"post-apiv1authregisterownerotpverify-verify-otp",[313,592,593],{},"\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp\u002Fverify"," — Verify OTP",[309,596,597,359,599,601,603],{},[322,598,358],{},[335,600],{},[322,602,364],{}," Verify the OTP code sent to email. OTP valid for 1 hour.",[367,605,370],{"id":606},"request-1",[372,608,610],{"className":374,"code":609,"language":376,"meta":377,"style":377},"{\n  \"otp\": \"123456\"\n}\n",[313,611,612,616,634],{"__ignoreMap":377},[381,613,614],{"class":383,"line":384},[381,615,388],{"class":387},[381,617,618,620,623,625,627,629,632],{"class":383,"line":391},[381,619,394],{"class":387},[381,621,622],{"class":397},"otp",[381,624,401],{"class":387},[381,626,404],{"class":387},[381,628,407],{"class":387},[381,630,631],{"class":410},"123456",[381,633,414],{"class":387},[381,635,636],{"class":383,"line":417},[381,637,420],{"class":387},[309,639,423],{},[425,641,642],{},[428,643,644,646],{},[313,645,622],{}," (string, required): 6-digit code from email",[367,648,436],{"id":649},"response-200-ok-1",[372,651,653],{"className":374,"code":652,"language":376,"meta":377,"style":377},"{\n  \"message\": \"OTP verified successfully.\",\n  \"valid\": true\n}\n",[313,654,655,659,678,692],{"__ignoreMap":377},[381,656,657],{"class":383,"line":384},[381,658,388],{"class":387},[381,660,661,663,665,667,669,671,674,676],{"class":383,"line":391},[381,662,394],{"class":387},[381,664,452],{"class":397},[381,666,401],{"class":387},[381,668,404],{"class":387},[381,670,407],{"class":387},[381,672,673],{"class":410},"OTP verified successfully.",[381,675,401],{"class":387},[381,677,504],{"class":387},[381,679,680,682,685,687,689],{"class":383,"line":417},[381,681,394],{"class":387},[381,683,684],{"class":397},"valid",[381,686,401],{"class":387},[381,688,404],{"class":387},[381,690,691],{"class":387}," true\n",[381,693,694],{"class":383,"line":524},[381,695,420],{"class":387},[367,697,471],{"id":698},"error-responses-1",[309,700,701,703],{},[322,702,476],{}," — Invalid or expired OTP:",[372,705,707],{"className":374,"code":706,"language":376,"meta":377,"style":377},"{\n  \"statusCode\": 400,\n  \"message\": \"Invalid or expired OTP\"\n}\n",[313,708,709,713,727,744],{"__ignoreMap":377},[381,710,711],{"class":383,"line":384},[381,712,388],{"class":387},[381,714,715,717,719,721,723,725],{"class":383,"line":391},[381,716,394],{"class":387},[381,718,493],{"class":397},[381,720,401],{"class":387},[381,722,404],{"class":387},[381,724,501],{"class":500},[381,726,504],{"class":387},[381,728,729,731,733,735,737,739,742],{"class":383,"line":417},[381,730,394],{"class":387},[381,732,452],{"class":397},[381,734,401],{"class":387},[381,736,404],{"class":387},[381,738,407],{"class":387},[381,740,741],{"class":410},"Invalid or expired OTP",[381,743,414],{"class":387},[381,745,746],{"class":383,"line":524},[381,747,420],{"class":387},[309,749,750,753],{},[322,751,752],{},"404 Not Found"," — OTP not found for email:",[372,755,757],{"className":374,"code":756,"language":376,"meta":377,"style":377},"{\n  \"statusCode\": 404,\n  \"message\": \"No OTP found for this email\"\n}\n",[313,758,759,763,778,795],{"__ignoreMap":377},[381,760,761],{"class":383,"line":384},[381,762,388],{"class":387},[381,764,765,767,769,771,773,776],{"class":383,"line":391},[381,766,394],{"class":387},[381,768,493],{"class":397},[381,770,401],{"class":387},[381,772,404],{"class":387},[381,774,775],{"class":500}," 404",[381,777,504],{"class":387},[381,779,780,782,784,786,788,790,793],{"class":383,"line":417},[381,781,394],{"class":387},[381,783,452],{"class":397},[381,785,401],{"class":387},[381,787,404],{"class":387},[381,789,407],{"class":387},[381,791,792],{"class":410},"No OTP found for this email",[381,794,414],{"class":387},[381,796,797],{"class":383,"line":524},[381,798,420],{"class":387},[367,800,530],{"id":801},"curl-example-1",[372,803,805],{"className":533,"code":804,"language":535,"meta":377,"style":377},"curl -X POST http:\u002F\u002Flocalhost:4001\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp\u002Fverify \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"otp\": \"123456\"}'\n",[313,806,807,820,832],{"__ignoreMap":377},[381,808,809,811,813,815,818],{"class":383,"line":384},[381,810,543],{"class":542},[381,812,546],{"class":410},[381,814,549],{"class":410},[381,816,817],{"class":410}," http:\u002F\u002Flocalhost:4001\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp\u002Fverify",[381,819,556],{"class":555},[381,821,822,824,826,828,830],{"class":383,"line":391},[381,823,561],{"class":410},[381,825,407],{"class":387},[381,827,566],{"class":410},[381,829,401],{"class":387},[381,831,556],{"class":555},[381,833,834,836,838,841],{"class":383,"line":417},[381,835,575],{"class":410},[381,837,578],{"class":387},[381,839,840],{"class":410},"{\"otp\": \"123456\"}",[381,842,584],{"class":387},[586,844],{},[346,846,349,848,851],{"id":847},"post-apiv1authregisterowner-create-owner-account",[313,849,850],{},"\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner"," — Create Owner Account",[309,853,854,359,856,858,860],{},[322,855,358],{},[335,857],{},[322,859,364],{}," Complete owner registration with OTP, business details, and password.",[367,862,370],{"id":863},"request-2",[372,865,867],{"className":374,"code":866,"language":376,"meta":377,"style":377},"{\n  \"otp\": \"123456\",\n  \"password\": \"SecureP@ss123\",\n  \"ownerDetails\": {\n    \"firstName\": \"Jane\",\n    \"middleName\": \"Marie\", \u002F\u002F (optional)\n    \"lastName\": \"Doe\",\n    \"phone\": \"09171234567\"\n  },\n  \"businessDetails\": {\n    \"service\": \"69dcbe3f1a79a4eac35bc717\",\n    \"name\": \"Jane's Beauty Salon\",\n    \"businessPermit\": \"BP-2024-001\",\n    \"businessRegistration\": \"BR-2024-001\",\n    \"branch\": 1,\n    \"slug\": \"janes-salon\",\n    \"businessAddress\": {\n      \"region\": \"NCR\",\n      \"province\": \"Metro Manila\",\n      \"municipalOrCity\": \"Quezon City\",\n      \"barangay\": \"Doña Julia\",\n      \"zip\": \"1100\",\n      \"street\": \"Main Avenue\", \u002F\u002F (optional)\n      \"address\": \"123 Business Complex\" \u002F\u002F (optional)\n    }\n  }\n}\n",[313,868,869,873,891,911,925,947,973,994,1013,1019,1033,1054,1075,1096,1117,1134,1155,1169,1191,1212,1233,1254,1275,1298,1319,1325,1331],{"__ignoreMap":377},[381,870,871],{"class":383,"line":384},[381,872,388],{"class":387},[381,874,875,877,879,881,883,885,887,889],{"class":383,"line":391},[381,876,394],{"class":387},[381,878,622],{"class":397},[381,880,401],{"class":387},[381,882,404],{"class":387},[381,884,407],{"class":387},[381,886,631],{"class":410},[381,888,401],{"class":387},[381,890,504],{"class":387},[381,892,893,895,898,900,902,904,907,909],{"class":383,"line":417},[381,894,394],{"class":387},[381,896,897],{"class":397},"password",[381,899,401],{"class":387},[381,901,404],{"class":387},[381,903,407],{"class":387},[381,905,906],{"class":410},"SecureP@ss123",[381,908,401],{"class":387},[381,910,504],{"class":387},[381,912,913,915,918,920,922],{"class":383,"line":524},[381,914,394],{"class":387},[381,916,917],{"class":397},"ownerDetails",[381,919,401],{"class":387},[381,921,404],{"class":387},[381,923,924],{"class":387}," {\n",[381,926,928,931,934,936,938,940,943,945],{"class":383,"line":927},5,[381,929,930],{"class":387},"    \"",[381,932,933],{"class":542},"firstName",[381,935,401],{"class":387},[381,937,404],{"class":387},[381,939,407],{"class":387},[381,941,942],{"class":410},"Jane",[381,944,401],{"class":387},[381,946,504],{"class":387},[381,948,950,952,955,957,959,961,964,966,969],{"class":383,"line":949},6,[381,951,930],{"class":387},[381,953,954],{"class":542},"middleName",[381,956,401],{"class":387},[381,958,404],{"class":387},[381,960,407],{"class":387},[381,962,963],{"class":410},"Marie",[381,965,401],{"class":387},[381,967,968],{"class":387},",",[381,970,972],{"class":971},"sHwdD"," \u002F\u002F (optional)\n",[381,974,976,978,981,983,985,987,990,992],{"class":383,"line":975},7,[381,977,930],{"class":387},[381,979,980],{"class":542},"lastName",[381,982,401],{"class":387},[381,984,404],{"class":387},[381,986,407],{"class":387},[381,988,989],{"class":410},"Doe",[381,991,401],{"class":387},[381,993,504],{"class":387},[381,995,997,999,1002,1004,1006,1008,1011],{"class":383,"line":996},8,[381,998,930],{"class":387},[381,1000,1001],{"class":542},"phone",[381,1003,401],{"class":387},[381,1005,404],{"class":387},[381,1007,407],{"class":387},[381,1009,1010],{"class":410},"09171234567",[381,1012,414],{"class":387},[381,1014,1016],{"class":383,"line":1015},9,[381,1017,1018],{"class":387},"  },\n",[381,1020,1022,1024,1027,1029,1031],{"class":383,"line":1021},10,[381,1023,394],{"class":387},[381,1025,1026],{"class":397},"businessDetails",[381,1028,401],{"class":387},[381,1030,404],{"class":387},[381,1032,924],{"class":387},[381,1034,1036,1038,1041,1043,1045,1047,1050,1052],{"class":383,"line":1035},11,[381,1037,930],{"class":387},[381,1039,1040],{"class":542},"service",[381,1042,401],{"class":387},[381,1044,404],{"class":387},[381,1046,407],{"class":387},[381,1048,1049],{"class":410},"69dcbe3f1a79a4eac35bc717",[381,1051,401],{"class":387},[381,1053,504],{"class":387},[381,1055,1057,1059,1062,1064,1066,1068,1071,1073],{"class":383,"line":1056},12,[381,1058,930],{"class":387},[381,1060,1061],{"class":542},"name",[381,1063,401],{"class":387},[381,1065,404],{"class":387},[381,1067,407],{"class":387},[381,1069,1070],{"class":410},"Jane's Beauty Salon",[381,1072,401],{"class":387},[381,1074,504],{"class":387},[381,1076,1078,1080,1083,1085,1087,1089,1092,1094],{"class":383,"line":1077},13,[381,1079,930],{"class":387},[381,1081,1082],{"class":542},"businessPermit",[381,1084,401],{"class":387},[381,1086,404],{"class":387},[381,1088,407],{"class":387},[381,1090,1091],{"class":410},"BP-2024-001",[381,1093,401],{"class":387},[381,1095,504],{"class":387},[381,1097,1099,1101,1104,1106,1108,1110,1113,1115],{"class":383,"line":1098},14,[381,1100,930],{"class":387},[381,1102,1103],{"class":542},"businessRegistration",[381,1105,401],{"class":387},[381,1107,404],{"class":387},[381,1109,407],{"class":387},[381,1111,1112],{"class":410},"BR-2024-001",[381,1114,401],{"class":387},[381,1116,504],{"class":387},[381,1118,1120,1122,1125,1127,1129,1132],{"class":383,"line":1119},15,[381,1121,930],{"class":387},[381,1123,1124],{"class":542},"branch",[381,1126,401],{"class":387},[381,1128,404],{"class":387},[381,1130,1131],{"class":500}," 1",[381,1133,504],{"class":387},[381,1135,1137,1139,1142,1144,1146,1148,1151,1153],{"class":383,"line":1136},16,[381,1138,930],{"class":387},[381,1140,1141],{"class":542},"slug",[381,1143,401],{"class":387},[381,1145,404],{"class":387},[381,1147,407],{"class":387},[381,1149,1150],{"class":410},"janes-salon",[381,1152,401],{"class":387},[381,1154,504],{"class":387},[381,1156,1158,1160,1163,1165,1167],{"class":383,"line":1157},17,[381,1159,930],{"class":387},[381,1161,1162],{"class":542},"businessAddress",[381,1164,401],{"class":387},[381,1166,404],{"class":387},[381,1168,924],{"class":387},[381,1170,1172,1175,1178,1180,1182,1184,1187,1189],{"class":383,"line":1171},18,[381,1173,1174],{"class":387},"      \"",[381,1176,1177],{"class":500},"region",[381,1179,401],{"class":387},[381,1181,404],{"class":387},[381,1183,407],{"class":387},[381,1185,1186],{"class":410},"NCR",[381,1188,401],{"class":387},[381,1190,504],{"class":387},[381,1192,1194,1196,1199,1201,1203,1205,1208,1210],{"class":383,"line":1193},19,[381,1195,1174],{"class":387},[381,1197,1198],{"class":500},"province",[381,1200,401],{"class":387},[381,1202,404],{"class":387},[381,1204,407],{"class":387},[381,1206,1207],{"class":410},"Metro Manila",[381,1209,401],{"class":387},[381,1211,504],{"class":387},[381,1213,1215,1217,1220,1222,1224,1226,1229,1231],{"class":383,"line":1214},20,[381,1216,1174],{"class":387},[381,1218,1219],{"class":500},"municipalOrCity",[381,1221,401],{"class":387},[381,1223,404],{"class":387},[381,1225,407],{"class":387},[381,1227,1228],{"class":410},"Quezon City",[381,1230,401],{"class":387},[381,1232,504],{"class":387},[381,1234,1236,1238,1241,1243,1245,1247,1250,1252],{"class":383,"line":1235},21,[381,1237,1174],{"class":387},[381,1239,1240],{"class":500},"barangay",[381,1242,401],{"class":387},[381,1244,404],{"class":387},[381,1246,407],{"class":387},[381,1248,1249],{"class":410},"Doña Julia",[381,1251,401],{"class":387},[381,1253,504],{"class":387},[381,1255,1257,1259,1262,1264,1266,1268,1271,1273],{"class":383,"line":1256},22,[381,1258,1174],{"class":387},[381,1260,1261],{"class":500},"zip",[381,1263,401],{"class":387},[381,1265,404],{"class":387},[381,1267,407],{"class":387},[381,1269,1270],{"class":410},"1100",[381,1272,401],{"class":387},[381,1274,504],{"class":387},[381,1276,1278,1280,1283,1285,1287,1289,1292,1294,1296],{"class":383,"line":1277},23,[381,1279,1174],{"class":387},[381,1281,1282],{"class":500},"street",[381,1284,401],{"class":387},[381,1286,404],{"class":387},[381,1288,407],{"class":387},[381,1290,1291],{"class":410},"Main Avenue",[381,1293,401],{"class":387},[381,1295,968],{"class":387},[381,1297,972],{"class":971},[381,1299,1301,1303,1306,1308,1310,1312,1315,1317],{"class":383,"line":1300},24,[381,1302,1174],{"class":387},[381,1304,1305],{"class":500},"address",[381,1307,401],{"class":387},[381,1309,404],{"class":387},[381,1311,407],{"class":387},[381,1313,1314],{"class":410},"123 Business Complex",[381,1316,401],{"class":387},[381,1318,972],{"class":971},[381,1320,1322],{"class":383,"line":1321},25,[381,1323,1324],{"class":387},"    }\n",[381,1326,1328],{"class":383,"line":1327},26,[381,1329,1330],{"class":387},"  }\n",[381,1332,1334],{"class":383,"line":1333},27,[381,1335,420],{"class":387},[309,1337,423],{},[425,1339,1340,1345,1350,1377],{},[428,1341,1342,1344],{},[313,1343,622],{}," (string, required): OTP from previous verification step",[428,1346,1347,1349],{},[313,1348,897],{}," (string, required): Min 8 chars, must include uppercase, lowercase, number, special character",[428,1351,1352,1354,1355],{},[313,1353,917],{}," (object, required):\n",[425,1356,1357,1362,1367,1372],{},[428,1358,1359,1361],{},[313,1360,933],{}," (string, required): First name (max 255 chars)",[428,1363,1364,1366],{},[313,1365,954],{}," (string, optional): Middle name",[428,1368,1369,1371],{},[313,1370,980],{}," (string, required): Last name (max 255 chars)",[428,1373,1374,1376],{},[313,1375,1001],{}," (string, required): Phone number (10-20 chars)",[428,1378,1379,1354,1381],{},[313,1380,1026],{},[425,1382,1383,1388,1393,1398,1403,1408,1413],{},[428,1384,1385,1387],{},[313,1386,1040],{}," (string, required): Booking service category ID (24-hex)",[428,1389,1390,1392],{},[313,1391,1061],{}," (string, required): Business name (max 255 chars)",[428,1394,1395,1397],{},[313,1396,1082],{}," (string, required): Permit documentation reference",[428,1399,1400,1402],{},[313,1401,1103],{}," (string, required): Registration number",[428,1404,1405,1407],{},[313,1406,1124],{}," (number, required): Number of branches (min 1)",[428,1409,1410,1412],{},[313,1411,1141],{}," (string, required): Business slug (max 255 chars)",[428,1414,1415,1354,1417],{},[313,1416,1162],{},[425,1418,1419,1424,1429,1434,1439,1444,1449],{},[428,1420,1421,1423],{},[313,1422,1177],{},": Region name (required, max 255)",[428,1425,1426,1428],{},[313,1427,1198],{},": Province name (required, max 255)",[428,1430,1431,1433],{},[313,1432,1219],{},": Municipality\u002FCity (required, max 255)",[428,1435,1436,1438],{},[313,1437,1240],{},": Barangay (required, max 255)",[428,1440,1441,1443],{},[313,1442,1261],{},": ZIP code (required, max 20)",[428,1445,1446,1448],{},[313,1447,1282],{},": Street name (optional, max 255)",[428,1450,1451,1453],{},[313,1452,1305],{},": Full address (optional, max 255)",[367,1455,1457],{"id":1456},"response-201-created","Response (201 Created)",[372,1459,1461],{"className":374,"code":1460,"language":376,"meta":377,"style":377},"{\n  \"message\": \"Business owner added successfully.\"\n}\n",[313,1462,1463,1467,1484],{"__ignoreMap":377},[381,1464,1465],{"class":383,"line":384},[381,1466,388],{"class":387},[381,1468,1469,1471,1473,1475,1477,1479,1482],{"class":383,"line":391},[381,1470,394],{"class":387},[381,1472,452],{"class":397},[381,1474,401],{"class":387},[381,1476,404],{"class":387},[381,1478,407],{"class":387},[381,1480,1481],{"class":410},"Business owner added successfully.",[381,1483,414],{"class":387},[381,1485,1486],{"class":383,"line":417},[381,1487,420],{"class":387},[367,1489,471],{"id":1490},"error-responses-2",[309,1492,1493,1495],{},[322,1494,476],{}," — Invalid password or missing fields:",[372,1497,1499],{"className":374,"code":1498,"language":376,"meta":377,"style":377},"{\n  \"statusCode\": 400,\n  \"message\": \"Password must contain at least one uppercase letter, one lowercase letter, one number, and one special character\"\n}\n",[313,1500,1501,1505,1519,1536],{"__ignoreMap":377},[381,1502,1503],{"class":383,"line":384},[381,1504,388],{"class":387},[381,1506,1507,1509,1511,1513,1515,1517],{"class":383,"line":391},[381,1508,394],{"class":387},[381,1510,493],{"class":397},[381,1512,401],{"class":387},[381,1514,404],{"class":387},[381,1516,501],{"class":500},[381,1518,504],{"class":387},[381,1520,1521,1523,1525,1527,1529,1531,1534],{"class":383,"line":417},[381,1522,394],{"class":387},[381,1524,452],{"class":397},[381,1526,401],{"class":387},[381,1528,404],{"class":387},[381,1530,407],{"class":387},[381,1532,1533],{"class":410},"Password must contain at least one uppercase letter, one lowercase letter, one number, and one special character",[381,1535,414],{"class":387},[381,1537,1538],{"class":383,"line":524},[381,1539,420],{"class":387},[309,1541,1542,1545],{},[322,1543,1544],{},"409 Conflict"," — Business slug already in use:",[372,1547,1549],{"className":374,"code":1548,"language":376,"meta":377,"style":377},"{\n  \"statusCode\": 409,\n  \"message\": \"Business slug 'janes-salon' is already taken\"\n}\n",[313,1550,1551,1555,1570,1587],{"__ignoreMap":377},[381,1552,1553],{"class":383,"line":384},[381,1554,388],{"class":387},[381,1556,1557,1559,1561,1563,1565,1568],{"class":383,"line":391},[381,1558,394],{"class":387},[381,1560,493],{"class":397},[381,1562,401],{"class":387},[381,1564,404],{"class":387},[381,1566,1567],{"class":500}," 409",[381,1569,504],{"class":387},[381,1571,1572,1574,1576,1578,1580,1582,1585],{"class":383,"line":417},[381,1573,394],{"class":387},[381,1575,452],{"class":397},[381,1577,401],{"class":387},[381,1579,404],{"class":387},[381,1581,407],{"class":387},[381,1583,1584],{"class":410},"Business slug 'janes-salon' is already taken",[381,1586,414],{"class":387},[381,1588,1589],{"class":383,"line":524},[381,1590,420],{"class":387},[367,1592,530],{"id":1593},"curl-example-2",[372,1595,1597],{"className":533,"code":1596,"language":535,"meta":377,"style":377},"curl -X POST http:\u002F\u002Flocalhost:4001\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\n    \"otp\": \"123456\",\n    \"password\": \"SecureP@ss123\",\n    \"ownerDetails\": {\n      \"firstName\": \"Jane\",\n      \"middleName\": \"Marie\",\n      \"lastName\": \"Doe\",\n      \"phone\": \"09171234567\"\n    },\n    \"businessDetails\": {\n      \"service\": \"69dcbe3f1a79a4eac35bc717\",\n      \"name\": \"Jane'\\''s Beauty Salon\",\n      \"businessPermit\": \"BP-2024-001\",\n      \"businessRegistration\": \"BR-2024-001\",\n      \"branch\": 1,\n      \"slug\": \"janes-salon\",\n      \"businessAddress\": {\n        \"region\": \"NCR\",\n        \"province\": \"Metro Manila\",\n        \"municipalOrCity\": \"Quezon City\",\n        \"barangay\": \"Doña Julia\",\n        \"zip\": \"1100\",\n        \"street\": \"Main Avenue\",\n        \"address\": \"123 Business Complex\"\n      }\n    }\n  }'\n",[313,1598,1599,1612,1624,1632,1637,1642,1647,1652,1657,1662,1667,1672,1677,1682,1698,1703,1708,1713,1718,1723,1728,1733,1738,1743,1748,1753,1758,1763,1768],{"__ignoreMap":377},[381,1600,1601,1603,1605,1607,1610],{"class":383,"line":384},[381,1602,543],{"class":542},[381,1604,546],{"class":410},[381,1606,549],{"class":410},[381,1608,1609],{"class":410}," http:\u002F\u002Flocalhost:4001\u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner",[381,1611,556],{"class":555},[381,1613,1614,1616,1618,1620,1622],{"class":383,"line":391},[381,1615,561],{"class":410},[381,1617,407],{"class":387},[381,1619,566],{"class":410},[381,1621,401],{"class":387},[381,1623,556],{"class":555},[381,1625,1626,1628,1630],{"class":383,"line":417},[381,1627,575],{"class":410},[381,1629,578],{"class":387},[381,1631,388],{"class":410},[381,1633,1634],{"class":383,"line":524},[381,1635,1636],{"class":410},"    \"otp\": \"123456\",\n",[381,1638,1639],{"class":383,"line":927},[381,1640,1641],{"class":410},"    \"password\": \"SecureP@ss123\",\n",[381,1643,1644],{"class":383,"line":949},[381,1645,1646],{"class":410},"    \"ownerDetails\": {\n",[381,1648,1649],{"class":383,"line":975},[381,1650,1651],{"class":410},"      \"firstName\": \"Jane\",\n",[381,1653,1654],{"class":383,"line":996},[381,1655,1656],{"class":410},"      \"middleName\": \"Marie\",\n",[381,1658,1659],{"class":383,"line":1015},[381,1660,1661],{"class":410},"      \"lastName\": \"Doe\",\n",[381,1663,1664],{"class":383,"line":1021},[381,1665,1666],{"class":410},"      \"phone\": \"09171234567\"\n",[381,1668,1669],{"class":383,"line":1035},[381,1670,1671],{"class":410},"    },\n",[381,1673,1674],{"class":383,"line":1056},[381,1675,1676],{"class":410},"    \"businessDetails\": {\n",[381,1678,1679],{"class":383,"line":1077},[381,1680,1681],{"class":410},"      \"service\": \"69dcbe3f1a79a4eac35bc717\",\n",[381,1683,1684,1687,1690,1693,1695],{"class":383,"line":1098},[381,1685,1686],{"class":410},"      \"name\": \"Jane",[381,1688,1689],{"class":387},"'",[381,1691,1692],{"class":555},"\\'",[381,1694,1689],{"class":387},[381,1696,1697],{"class":410},"s Beauty Salon\",\n",[381,1699,1700],{"class":383,"line":1119},[381,1701,1702],{"class":410},"      \"businessPermit\": \"BP-2024-001\",\n",[381,1704,1705],{"class":383,"line":1136},[381,1706,1707],{"class":410},"      \"businessRegistration\": \"BR-2024-001\",\n",[381,1709,1710],{"class":383,"line":1157},[381,1711,1712],{"class":410},"      \"branch\": 1,\n",[381,1714,1715],{"class":383,"line":1171},[381,1716,1717],{"class":410},"      \"slug\": \"janes-salon\",\n",[381,1719,1720],{"class":383,"line":1193},[381,1721,1722],{"class":410},"      \"businessAddress\": {\n",[381,1724,1725],{"class":383,"line":1214},[381,1726,1727],{"class":410},"        \"region\": \"NCR\",\n",[381,1729,1730],{"class":383,"line":1235},[381,1731,1732],{"class":410},"        \"province\": \"Metro Manila\",\n",[381,1734,1735],{"class":383,"line":1256},[381,1736,1737],{"class":410},"        \"municipalOrCity\": \"Quezon City\",\n",[381,1739,1740],{"class":383,"line":1277},[381,1741,1742],{"class":410},"        \"barangay\": \"Doña Julia\",\n",[381,1744,1745],{"class":383,"line":1300},[381,1746,1747],{"class":410},"        \"zip\": \"1100\",\n",[381,1749,1750],{"class":383,"line":1321},[381,1751,1752],{"class":410},"        \"street\": \"Main Avenue\",\n",[381,1754,1755],{"class":383,"line":1327},[381,1756,1757],{"class":410},"        \"address\": \"123 Business Complex\"\n",[381,1759,1760],{"class":383,"line":1333},[381,1761,1762],{"class":410},"      }\n",[381,1764,1766],{"class":383,"line":1765},28,[381,1767,1324],{"class":410},[381,1769,1771,1774],{"class":383,"line":1770},29,[381,1772,1773],{"class":410},"  }",[381,1775,584],{"class":387},[586,1777],{},[346,1779,1781],{"id":1780},"notes","Notes",[425,1783,1784,1787,1797,1800,1807],{},[428,1785,1786],{},"OTP codes expire after 1 hour.",[428,1788,1789,1790,1792,1793,1796],{},"Business slug must be unique; recommended format: lowercase name with hyphens (e.g., ",[313,1791,1150],{},", ",[313,1794,1795],{},"acme-services",").",[428,1798,1799],{},"Password complexity is strictly enforced; all 4 character types required.",[428,1801,1802,1803,1806],{},"Owner account is created with ",[313,1804,1805],{},"ACTIVE"," status and default branch automatically created.",[428,1808,1809,1810,1813],{},"See ",[313,1811,1812],{},"booki-api\u002Fsrc\u002Fvalidations\u002Fuser.validation.ts"," for exact field requirements.",[1815,1816,1817],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}",{"title":377,"searchDepth":384,"depth":391,"links":1819},[1820,1827,1834,1841],{"id":348,"depth":391,"text":1821,"children":1822},"POST \u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp — Send OTP",[1823,1824,1825,1826],{"id":369,"depth":417,"text":370},{"id":435,"depth":417,"text":436},{"id":470,"depth":417,"text":471},{"id":529,"depth":417,"text":530},{"id":590,"depth":391,"text":1828,"children":1829},"POST \u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner\u002Fotp\u002Fverify — Verify OTP",[1830,1831,1832,1833],{"id":606,"depth":417,"text":370},{"id":649,"depth":417,"text":436},{"id":698,"depth":417,"text":471},{"id":801,"depth":417,"text":530},{"id":847,"depth":391,"text":1835,"children":1836},"POST \u002Fapi\u002Fv1\u002Fauth\u002Fregister\u002Fowner — Create Owner Account",[1837,1838,1839,1840],{"id":863,"depth":417,"text":370},{"id":1456,"depth":417,"text":1457},{"id":1490,"depth":417,"text":471},{"id":1593,"depth":417,"text":530},{"id":1780,"depth":391,"text":1781},"Owner registration flow with OTP verification and business details.","md",null,{},{"icon":153},{"title":150,"description":1842},"iHGGJUfKplMtCCrZ5a8_G7XRF3f1j-fSD3MHvf1HTXA",[1850,1852],{"title":145,"path":146,"stem":147,"description":1851,"icon":148,"children":-1},"Customer registration for tenant-scoped bookings (no OTP required).",{"title":155,"path":156,"stem":157,"description":1853,"icon":158,"children":-1},"Index of all booking endpoints — public\u002Fguest and authenticated.",1777787844708]