Systems, methods, and user interfaces for co-hosting in online marketplaces
The system provides a graphical user interface for managing co-hosts in online marketplaces with varying permissions, addressing the need for personalized and dynamic co-host management, improving user experience and property management efficiency.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- AIRBNB INC
- Filing Date
- 2024-05-02
- Publication Date
- 2026-05-19
AI Technical Summary
Existing online marketplaces lack personalized, dynamic, and timely management solutions for co-hosts, failing to provide specialized user experiences and notifications based on varying access permissions.
A method and system for host management in online marketplaces that includes a graphical user interface for multi-user, multi-tenant, and concurrent modification of property listings, allowing for detailed management of co-hosts with different permission levels, payment settings, and activity logs, along with real-time updates and notification customization.
Enables efficient and personalized management of co-hosts with varying permissions, enhancing user experience through dynamic and timely notifications and access controls, facilitating seamless property management and payment processes.
Smart Images

Figure 2026515984000001_ABST
Abstract
Description
Technical Field
[0001] Related Applications This application claims priority to U.S. Provisional Application No. 63 / 499,664, filed May 2, 2023, entitled "Systems, Methods and User Interfaces for Co-Hosting in Online Marketplaces," which is hereby incorporated by reference in its entirety.
[0002] Technical Field This application generally relates to dedicated machines for managing interfaces and data processing, improvements to such variations, and techniques that result in such dedicated machines being improved compared to other dedicated machines for online marketplaces.
Background Art
[0003] Background Web or cloud-based systems can assist users in performing various tasks, and a common one is an e-commerce website that enables users to purchase, rent, or reserve products and / or services. Online marketplaces need to support owners, hosts, and co-hosts to host properties to facilitate property management. Owners and co-hosts may have different responsibilities, permissions, and access to property listings. Based on access permissions, it is necessary to provide specialized user experiences and / or notifications and alerts.
Summary of the Invention
Problems to be Solved by the Invention
[0004] Summary Therefore, there is generally a desire for technical solutions for more personalized, dynamic, accurate, and timely management of co-hosts in online marketplaces. [[ID=X]] [Means for solving the problem]
[0005] The disclosed embodiments provide a method for host management in an online marketplace. The method includes retrieving property listings listed on the online marketplace. The method may also include providing a host management graphical user interface for managing co-hosts for a property listing. The host management graphical user interface may allow multi-user, multi-tenant, and / or concurrent modification of the underlying data and / or graphical elements. The method may also include displaying one or more host detail affordances on the host management graphical user interface in accordance with a determination that a property listing is associated with one or more co-hosts, each host detail affordance corresponding to each of the one or more co-hosts. Each co-host may be a tenant in a multi-tenant network system. Each co-host may be a user in a multi-user system. The method may also include displaying authorization, payment, and activity logs for a first co-host on the host management graphical user interface in response to detection that a user has selected a first host detail affordance corresponding to a first co-host. The method may also include, in accordance with the determination that the property listing is not associated with one or more co-hosts, displaying a co-host addition option on the host management graphical user interface for adding co-hosts to the property listing. The method may also include, in response to detecting user input for selecting a co-host addition option on the host management graphical user interface, enabling the user to specify a new co-host and associating the new co-host with the property listing.
[0006] In some embodiments, the method may further include displaying a number of tabs on the host management graphical user interface, including tabs for (i) property listing details, (ii) settings for accounting for the property listing, and (iii) co-hosts to the property listing. The method may also include, in response to detecting that the user has selected the tab for co-hosts, displaying one or more host detail affordances and / or co-host addition options on the host management graphical user interface for adding co-hosts to the property listing.
[0007] In some embodiments, the method may further include displaying permission editing options on the host management graphical user interface for setting or editing permissions for a first co-host. The method may also include displaying a permission popup overlay on the host management graphical user interface showing multiple permission options for setting or editing permissions for a first co-host, in response to detecting that the user has selected a permission editing option on the host management graphical user interface. The method may also include (i) updating the permissions for the first co-host and (ii) updating the host management graphical user interface to indicate the change in permissions for the first co-host, in response to detecting that the user has selected one of the multiple permission options on the host management graphical user interface. In some embodiments, the multiple permission options include full access, calendar / inbox access, and calendar access. Calendar access provides access to view calendar information for a property listing. Calendar / inbox access provides access to view calendar and mail information for a property listing and one or more messaging options for messaging one or more guests of a property listing. Full access provides access to pricing information, the ability to view and edit calendars and inboxes for property listings, one or more messaging options, and one or more administrative options for managing views of property listings. In some embodiments, in response to detecting that the user has selected an allow option from among several allow options on the host management graphical user interface, the method may further include enabling the user to associate an expiration date with the allow option and updating the host management graphical user interface to indicate the expiration date in the allowance for the first co-host.
[0008] In some embodiments, the method may further include, in accordance with the determination that the user is the owner of a property listing, (i) enabling the user to update a payment for a first co-host via the host management graphical user interface, (ii) associating the first co-host with the updated payment, and (iii) updating the host management graphical user interface to display the updated payment for the first co-host. In some embodiments, enabling the user to modify a payment includes displaying multiple payment options for the payment, including (i) a percentage value of total accounting revenue and (ii) a fixed amount. In some embodiments, the method may further include displaying a confirmation option on the host management graphical user interface for confirming an updated payment with the first co-host. The method may also include, in response to detecting the selection of a confirmation option on the host management graphical user interface, sending a request to the first co-host to confirm the updated payment. The method may also include, in response to receiving a response from the first co-host confirming the updated payment, associating the first co-host with the updated payment. The method may also include updating the host management graphical user interface to display the updated payment for the co-host.
[0009] In some embodiments, the method may further include, in response to detecting on the host management graphical user interface that the user has selected a first host detail affordance corresponding to a first co-host, displaying a primary host option on the host management graphical user interface for updating the status of the first co-host as a primary host (e.g., guest contact for hosting). The method may also include, in response to detecting on the host management graphical user interface that the user has selected a primary host option, updating the host management graphical user interface to allow the user to update the status of the first co-host as a primary host and to instruct the user to perform the update.
[0010] In some embodiments, the method may further include displaying pending invitations to other users to be added as co-hosts on the host management graphical user interface.
[0011] In some embodiments, the method may further include enabling a user to remove themselves from co-hosting a property listing via a host management graphical user interface, in accordance with a determination that the user is a co-host of the property listing, and updating the co-host of the property listing. The method may also include updating the host management graphical user interface to stop displaying the property listing for the user and / or to stop the ability to manage the property listing.
[0012] In some embodiments, the method may further include displaying additional co-host options on the host management graphical user interface, based on a determination that the user is the owner of the property listing or a full-access co-host.
[0013] In some embodiments, the method may further include providing a payment stop option on the host management graphical user interface to stop payments to one or more co-hosts in accordance with the determination that the user is the owner of the property listing.
[0014] In some embodiments, the method may further include, upon determination that the user is a full-access co-host responsible for end-to-end listing management, providing the user with access to pricing information, the ability to view and edit calendars and inboxes for property listings, one or more messaging options for messaging one or more guests of a property listing, one or more administrative options for managing views of a property listing, and corresponding notifications, excluding personal profile information and financial details of one or more owners of a property listing. Full-access co-hosts can access the transaction history of those hosted listings.
[0015] In some embodiments, the method, upon determination that the user is an inbox and calendar-only co-host responsible for handling guest support during a short trip, may further include providing the user with access to view limited calendar and email information for a property listing, one or more messaging options for messaging one or more guests of the property listing, and corresponding notifications for the property listing. Pricing information and / or guest information may not be visible to this type of co-host.
[0016] In some embodiments, the method may further include providing the user with access to view calendar information and corresponding notifications for property listings, based on the determination that the user is a co-host of only the calendar for which they are responsible for handling support tasks.
[0017] In some embodiments, the method may further include (i) associating each of several permission levels with one or more co-hosts of a property listing, and (ii) updating an activity log for each co-host based on each permission level.
[0018] In some embodiments, the host management user interface includes one or more user interface surfaces. The method may further include (i) associating each of several permission levels with respect to one or more co-hosts of a property listing, and (ii) showing or hiding at least one of the one or more surfaces based on the permission level for one or more co-hosts of a property listing.
[0019] In some embodiments, the method may further include (i) associating each of several permission levels with one or more co-hosts of a property listing; (ii) using a notification customization library to control notifications to one or more co-hosts based on a specific permission level; and / or (iii) using a user interface customization library to control whether user interface parts are hidden or shown to co-hosts based on permission levels. Some embodiments may include a resource association framework that maintains access associations between resources (e.g., listings, reservations, message threads, claims, etc.) and co-hosts. Some embodiments may update access associations in real time based on any changes to co-host / host relationships and / or maintain permission consistency.
[0020] In another aspect, an electronic device includes one or more processors, a memory, a display, and one or more programs stored in the memory. The programs are configured for execution by the one or more processors and are configured to perform any of the methods described herein.
[0021] In another aspect, a non-transitory computer-readable storage medium stores one or more programs configured for execution by a computing device having one or more processors, a memory, and a display. The one or more programs are configured to perform any of the methods described herein.
[0022] Brief Description of the Drawings To better understand the various described embodiments, reference should be made to the following detailed description taken in conjunction with the following drawings, in which like reference numerals refer to corresponding parts throughout the drawings.
Brief Description of the Drawings
[0023] [Figure 1] FIG. 18 is a block diagram showing an exemplary host management system implemented in a network environment according to some embodiments. [Figure 2] FIG. 21 is a block diagram showing the architecture of software used to implement a host management system according to some embodiments. [Figure 3] FIG. 24 is a diagram showing a machine as an exemplary computer system having instructions to cause the machine to implement a host management system according to some embodiments. [Figure 4A] FIG. 27 is a diagram showing an exemplary user interface for host management in an online marketplace according to some embodiments. [Figure 4B] FIG. 30 is a diagram showing a view of the exemplary user interface of FIG. 4A for a listing owner according to some embodiments. [Figure 4C]A diagram showing a view of an exemplary user interface of FIG. 4A for a listing owner according to some embodiments. [Figure 4D] A diagram showing an exemplary notification according to some embodiments. [Figure 5A] A diagram showing a view of an exemplary user interface for host management in an online marketplace according to some embodiments. [Figure 5B] A diagram showing a view of an exemplary user interface of FIG. 5A for setting co-host permissions according to some embodiments. [Figure 5C] A diagram showing an exemplary notification generated by a system according to some embodiments. [Figure 5D] A diagram showing a view of an exemplary user interface of FIG. 5A for an owner according to some embodiments. [Figure 5E] A diagram showing a view of an exemplary user interface of FIG. 5A for setting co-host permissions according to some embodiments. [Figure 6A-1] A schematic diagram of an exemplary process for setting payments for a co-host according to some embodiments. [Figure 6A-2] A schematic diagram of an exemplary process for setting payments for a co-host according to some embodiments. [Figure 6B] A diagram showing an exemplary notification for a co-host to set up a payment according to some embodiments. [Figure 6C-1] A schematic diagram of an exemplary process for a co-host to confirm a payment according to some embodiments. [Figure 6C-2] A schematic diagram of an exemplary process for a co-host to confirm a payment according to some embodiments. [Figure 7] A diagram showing an exemplary user interface for host management in an online marketplace according to some embodiments. [Figure 8A] This is a flowchart illustrating a method for co-host management in an online marketplace, based on several embodiments. [Figure 8B] This is a flowchart illustrating a method for co-host management in an online marketplace, based on several embodiments. [Modes for carrying out the invention]
[0024] Detailed explanation Herein, embodiments are given in detail, with examples shown in the accompanying drawings. In the following detailed description, numerous specific details are given in order to provide a complete understanding of the various described embodiments. However, it will be apparent to those skilled in the art that the various described embodiments can be carried out without these specific details. In other examples, well-known methods, procedures, components, circuits, and networks are not described in detail so as not to unnecessarily obscure the aspects of the embodiments.
[0025] As will be apparent to those skilled in the art, many modifications and variations of this disclosure can be made without departing from the spirit and scope of this disclosure. The specific embodiments described herein are provided only as examples, and this disclosure should be limited only by the terms of the appended claims, together with the entire scope of equivalents to which such claims are entitled.
[0026] Figure 1 shows a block diagram of a network architecture 100 for an optimized search system according to several embodiments. Figure 1 shows, for example, a web client 112 (e.g., a browser), a client application 114, and a programmatic client 116 running on a client device 130. The client device 130 includes the web client 112, the client application 114, and the programmatic client 116 individually, together, or in any appropriate combination. Although Figure 1 shows one client device 130, in some embodiments the network architecture 100 comprises multiple client devices.
[0027] In some embodiments, the client device 130 comprises a computing device that includes at least a display and a communication function that provides access to a networked system 102 via a network 104. The client device 130 includes, but is not limited to, remote devices, workstations, computers, general-purpose computers, internet appliances, handheld devices, wireless devices, portable devices, wearable computers, cellular phones or mobile phones, personal digital assistants (PDAs), smartphones, tablets, ultrabooks, netbooks, laptops, desktops, multiprocessor systems, microprocessor-based or programmable home electronic devices, game consoles, set-top boxes (STBs), network personal computers (PCs), minicomputers, and the like. In some embodiments, the client device 130 comprises one or more of the following: a touchscreen, an accelerometer, a gyroscope, a biometric sensor, a camera, a microphone, a Global Positioning System (GPS) device, and the like.
[0028] The client device 130 communicates with network 104 via a wired or wireless connection. For example, one or more parts of network 104 may include an ad-hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a WAN, a wireless WAN (WWAN), a metropolitan area network (MAN), part of the internet, part of a public switched telephone network (PSTN), a mobile phone network, a wireless network, a Wireless Fidelity (Wi-Fi®) network, a Worldwide Interoperability for Microwave Access (WiMAX) network, another type of network, or any appropriate combination thereof.
[0029] In some embodiments, the client device 130 includes one or more applications ("apps") from among those managed by other end users (e.g., posting end users who own a house and rent out an entire house or room) such as a web browser, a book reader app (capable of operating to read ebooks), a media app (capable of operating to present various media formats including audio and video), a health app, a biometric monitoring app, a messaging app, an email app, an e-commerce site app (also called a "marketplace app"), and a booking application for temporary stays at hotels, motels, or residences managed by other end users (e.g., posting end users who own a house and rent out an entire house or room). In some embodiments, the client application 114 includes various components capable of presenting information to the user and communicating with the networked system 102. In some embodiments, if the e-commerce site app is included in the client device 130, this app is configured to provide a user interface and at least some functionality locally, along with applications configured to communicate with the networked system 102 as needed for data or processing capabilities not available locally (e.g., access to a database of goods for sale, user authentication, verification of payment methods). Conversely, if the client device 130 does not include an e-commerce site application, the client device 130 can use its web browser to access an e-commerce site (or a variation thereof) hosted on the networked system 102.
[0030] The web client 112 accesses various systems of the networked system 102 via a web interface supported by the web server 122. Similarly, the programmatic client 116 and client application 114 access various services and functions provided by the networked system 102 via a programmatic interface provided by the Application Program Interface (API) server 120.
[0031] A user (e.g., user 106) includes a person, machine, or other means that interacts with the client device 130. In some embodiments, user 106 interacts with the network architecture 100 not as part of the network architecture 100 itself, but through the client device 130 or other means. For example, user 106 provides input (e.g., touchscreen input or alphanumeric input) to the client device 130, and the input is communicated to a networked system 102 via the network 104. In this case, the networked system 102, in response to receiving input from user 106, communicates information to the client device 130 via the network 104 and presents it to user 106. In this way, user 106 can interact with the networked system 102 using the client device 130.
[0032] The API server 120 and web server 122 are coupled to one or more application servers 140, providing programmatic and web interfaces, respectively. The application server 140 is configured to respond to host management requests from client devices 130. The client device 130 may be used by any user (e.g., owner, co-host, primary host).
[0033] The application server 140 includes a co-host management module 150 for managing co-hosts in an online marketplace. The application server 140 also includes a visualization module 142 for generating and / or displaying visualizations in a graphical user interface. Property listings, co-hosts, owners, property categories or attributes, visualizations, associated parameters, and / or user preferences may be stored as part of the co-host management module 150 and / or the visualization module 142. These modules may comprise one or more modules or applications, each which can be embodied as hardware, software, firmware, or any combination thereof, to facilitate the optimization of search results for client devices 130. The application server 140 is then shown to be coupled with one or more database servers 124 to facilitate access to one or more information storage repositories or databases 126. In some embodiments, the database 126 is a storage device that stores information posted to the visualization module 142 and / or the co-host management module 150 (e.g., inventory, image data, catalog data, feature vectors). The database 126 also stores digital product information according to some embodiments. The co-host management module 150 can manage, store, and / or retrieve co-host lists, property listings, payments for properties, permission levels, user preferences, usage history data, property categories and / or attributes (e.g., location, name, rating), and property availability.The visualization module 142 may manage, store, and / or retrieve user interface properties (e.g., mobile phones have different screen sizes, dimensions, and / or form factors compared to desktops) and / or parameters, property cards, and process user input received via the graphical user interface, users, properties, icons and / or affordances, overlays, images and / or thumbnail images, maps and / or user preferences, online marketplace user preferences, and usage history data for visualization and display. The operation of the module is described below with reference to Figures 4 to 8, according to one or more embodiments.
[0034] The network architecture 100 shown in Figure 1 uses a client-server architecture, but the subject matter of the present invention is, of course, not limited to such architectures and can be equally implemented in, for example, distributed or peer-to-peer architecture systems. Various components of the application server 140 (e.g., the visualization module 142 and / or the co-host management module 150) may also be implemented as standalone software programs that do not necessarily have networking capabilities.
[0035] Although the modules are shown in Figure 1 as components of the networked system 102, it will be understood that in alternative embodiments, each may be a component of a different web service separate from the networked system 102. The visualization module 142 and / or the co-host management module 150 may each be hosted on dedicated or shared server machines that are communicatively coupled to enable communication between server machines. The components themselves are communicatively coupled (e.g., via appropriate interfaces) to each other and to various data sources to enable the passing of information between applications or to enable applications to share and access common data. The components also access one or more databases 126 via the database server 124.
[0036] Figure 2 is a block diagram 200 showing the architecture of software 202 which can be installed on any one or more of the devices described above. Figure 2 is only a non-limiting example of the software architecture, and it will be understood that many other architectures can be implemented to facilitate the functions described herein. In various embodiments, software 202 is implemented by hardware such as machine 300 (further described in Figure 3), which includes a processor 310, memory 330, and input / output (I / O) components 350. In this exemplary architecture, software 202 can be conceptualized as a stack of layers, each of which may provide a specific function. For example, software 202 includes layers such as an operating system 204, a library 206, a framework 208, and an application 210. Operationally, application 210, consistent with some embodiments, invokes API calls 212 through the software stack and receives messages 214 in response to API calls 212.
[0037] In various embodiments, the operating system 204 manages hardware resources and provides common services. The operating system 204 includes, for example, a kernel 220, services 222, and drivers 224. The kernel 120, consistent with some embodiments, functions as an abstraction layer between the hardware layer and other software layers. For example, the kernel 220 provides memory management, processor management (e.g., scheduling), component management, networking, and security settings, among other functions. Services 222 can provide other common services to other software layers. According to some embodiments, the driver 224 is responsible for controlling or interface with the underlying hardware. For example, the driver 224 may include a display driver, camera driver, BLUETOOTH® or BLUETOOTH® Low Energy driver, flash memory driver, serial communication driver (e.g., Universal Serial Bus (USB) driver), WI-FI® driver, audio driver, power management driver, etc.
[0038] In some embodiments, library 206 provides a low-level common infrastructure used by application 210. Library 206 may include a system library 230 (e.g., the C standard library) that can provide functions such as memory allocation, string manipulation, and mathematical functions. Furthermore, Library 206 may include API libraries 232 such as a media library (e.g., a library that supports the presentation and manipulation of various media formats such as Moving Picture Experts Group-4 (MPEG4), Advanced Video Coding (H.264 or AVC), Moving Picture Experts Group Layer-3 (MP3), Advanced Audio Coding (AAC), Adaptive Multi-Rate (AMR) audio codecs, Joint Photographic Experts Group (JPEG or JPG), or Portable Network Graphics (PNG)); a graphics library (e.g., the OpenGL framework used for rendering graphic content on a display in two dimensions (2D) and three dimensions (3D)); a database library (e.g., SQLite for providing various relational database functions); and a web library (e.g., WebKit for providing web browsing functions). Library 206 can also include a wide variety of other libraries 234 to provide many other APIs to application 210.
[0039] According to some embodiments, the framework 208 provides a high-level common infrastructure that can be utilized by the application 210. For example, the framework 208 provides various graphical user interface (GUI) functions, high-level resource management, high-level location services, and so on. The framework 208 can also provide a wide range of other APIs that can be utilized by the application 210, some of which may be specific to a particular operating system or platform.
[0040] In some embodiments, application 210 includes a wide range of other applications such as a home application 250, a contacts application 252, a browser application 254, a book reader application 256, a location application 258, a media application 260, a messaging application 262, a game application 264, and / or a third-party application 266. According to some embodiments, application 210 is a program that performs programmatically defined functions. Using various programming languages, one or more of applications 210 can be created that are structured in various ways, such as object-oriented programming languages (e.g., Objective-C, Java, or C++) or procedural programming languages (e.g., C or assembly language). In specific examples, a third-party application 266 (e.g., an application developed by an entity other than the vendor of a particular platform using an ANDROID® or IOS® software development kit (SDK)) may be mobile software that runs on a mobile operating system such as IOS®, ANDROID®, WINDOWS® Phone, or another mobile operating system. In this example, the third-party application 266 can invoke API calls 212 provided by the operating system 204 to facilitate the functionality described herein.
[0041] Figure 3 shows a schematic diagram of machine 300 in the form of a computer system in which a set of instructions for causing the machine to perform any one or more of the methods discussed herein may be executed in several embodiments. Specifically, Figure 3 shows a schematic diagram of machine 300 in an exemplary form of a computer system in which instructions 316 (e.g., software, programs, applications, applets, apps, or other executable code) for causing machine 300 to perform any one or more of the methodologies described herein may be executed. Instructions 316 transform a general, unprogrammed machine 300 into a specific machine 300 programmed to perform the functions described and illustrated in the manner described. In alternative embodiments, machine 300 may operate as a standalone device or be coupled to other machines (e.g., networked). In a networked deployment, machine 300 may operate as a server machine or client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. Machine 300 may include, but is not limited to, a server computer, a client computer, a PC, a tablet computer, a laptop computer, a netbook, an STB, a PDA, an entertainment media system, a mobile phone, a smartphone, a mobile device, a wearable device (e.g., a smartwatch), a smart home device (e.g., a smart appliance), another smart device, a web appliance, a network router, a network switch, a network bridge, or any other machine capable of sequentially or otherwise executing instructions 316 that specify the actions to be performed by Machine 300. Furthermore, although only a single Machine 300 is shown, the term “machine” should also be interpreted to include a set of Machines 300 that individually or collectively execute instructions 316 to perform any one or more of the methodologies described herein.
[0042] Machine 300 may include a processor 310, memory 330, and I / O components 350, which may be configured to communicate with each other via a bus 302 or the like. In some embodiments, the processor 310 (e.g., a central processing unit (CPU), a reduced instruction set computing (RISC) processor, a complex instruction set computing (CISC) processor, a graphics processing unit (GPU), a digital signal processor (DSP), an ASIC, a radio-frequency integrated circuit (RFIC), another processor, or any suitable combination thereof) may include, for example, processors 312 and 314 capable of executing instruction 316. The term “processor” is intended to include multicore processors that may have two or more independent processors (sometimes called “cores”) capable of executing instructions simultaneously. Although Figure 3 shows multiple processors 310, machine 300 may include a single processor having a single core, a single processor having multiple cores (e.g., a multi-core processor), multiple processors having single cores, multiple processors having multiple cores, or any combination thereof.
[0043] Memory 330 may include main memory 332, static memory 334, and storage unit 336, all of which are accessible to the processor 310 via a bus 302 or the like. Main memory 332, static memory 334, and storage unit 336 store instructions 316 that embody any one or more of the methodologies or functions described herein. Instructions 316 may also reside, all or in part, in main memory 332, static memory 334, storage unit 336, at least one of the processor 310 (e.g., in the processor's cache memory), or any suitable combination thereof during their execution by machine 300.
[0044] The I / O component 350 may include a wide variety of components for receiving inputs, providing outputs, generating outputs, transmitting information, exchanging information, capturing measurements, and so on. The specific I / O component 350 included in a particular machine depends on the type of machine. For example, a portable machine such as a mobile phone is likely to include a touch input device or other such input mechanism, while a headless server machine is unlikely to include such a touch input device. It will be understood that the I / O component 350 may include many other components not shown in Figure 3. The I / O component 350 is grouped according to function simply to simplify the following description, and the grouping is by no means limiting. In various embodiments, the I / O component 350 may include an output component 352 and an input component 354. The output component 352 may include visual components (e.g., displays such as plasma display panels (PDPs), light-emitting diode (LED) displays, liquid crystal displays (LCDs), projectors, or cathode ray tubes (CRTs)), acoustic components (e.g., speakers), tactile components (e.g., vibration motors, resistors), and other signal generators. The input component 354 may include alphanumeric input components (e.g., keyboards, touchscreens configured to receive alphanumeric input, optical keyboards, or other alphanumeric input components), point-based input components (e.g., mice, touchpads, trackballs, joysticks, motion sensors, or other pointing devices), tactile input components (e.g., physical buttons, touchscreens that provide the position and / or force of touch or touch gestures, or other tactile input components), and audio input components (e.g., microphones).
[0045] In some embodiments, the I / O component 350 may include, among various other components, a biometric component 356, a motion component 358, an environmental component 360, or a positioning component 362. For example, the biometric component 356 may include components for performing facial expression detection (e.g., hand expressions, facial expressions, voice expressions, body gestures, or eye tracking), measurement of biosignals (e.g., blood pressure, heart rate, body temperature, sweating, or electroencephalography), and person identification (e.g., voice recognition, retinal recognition, facial recognition, fingerprint recognition, or electroencephalography-based recognition). Biometric data collected by the biometric component is taken up and stored only with the user's consent and deleted upon the user's request. Furthermore, such biometric data may be used for limited purposes such as identity verification. To ensure the limited and authorized use of biometric information and other personally identifiable information (PII), access to this data is restricted to authorized personnel only, if any. The use of biometric data may be strictly limited to identification and verification purposes, and the data will not be shared or sold to any third party without the user's explicit consent. Furthermore, appropriate technical and organizational measures will be implemented to ensure the security and confidentiality of this sensitive information. The motion component 358 may include acceleration sensor components (e.g., accelerometers), gravity sensor components, rotation sensor components (e.g., gyroscopes), and the like.The environmental component 360 may include, for example, an illuminance sensor component (e.g., a photometer), a temperature sensor component (e.g., one or more thermometers for detecting ambient temperature), a humidity sensor component, a pressure sensor component (e.g., a barometer), an acoustic sensor component (e.g., one or more microphones for detecting background noise), a proximity sensor component (e.g., an infrared sensor for detecting nearby objects), a gas sensor (e.g., a gas detection sensor for detecting the concentration of harmful gases for safety or for measuring airborne pollutants), or other components that can provide indications, measurements, or signals corresponding to the surrounding physical environment. The positioning component 362 may include, for example, a position sensor component (e.g., a GPS receiver component), an altitude sensor component (e.g., an altimeter or barometer for detecting air pressure from which altitude can be derived), a compass sensor component (e.g., a magnetometer), and the like.
[0046] Communication can be implemented using a wide variety of technologies. The I / O component 350 may include a communication component 364 capable of operating to connect machine 300 to network 380 or device 370 via couplings 382 and 372, respectively. For example, the communication component 364 may include a network interface component or another suitable device for interface with network 380. In further examples, the communication component 364 may include a wired communication component, a wireless communication component, a cellular communication component, a Near Field Communication (NFC) component, a Bluetooth® component (e.g., Bluetooth® Low Energy), a Wi-Fi® component, and other communication components for providing communication via other modalities. Device 370 may be another machine or a wide variety of peripheral devices (e.g., peripheral devices coupled via USB).
[0047] Furthermore, the communication component 364 may detect identifiers or include components capable of operating to detect identifiers. For example, the communication component 364 may include a radio frequency identification (RFID) tag reader component, an NFC smart tag detection component, an optical reader component (e.g., an optical sensor for detecting one-dimensional barcodes such as Universal Product Code (UPC) barcodes, Quick Response (QR) codes, Aztec codes, Data Matrix, Data Glyphs, MaxiCode, PDF417, Ultra Code, UCCRSS-2D barcodes, and other optical codes), or an acoustic detection component (e.g., a microphone for identifying tagged audio signals). In addition, various types of information may be derived via the communication component 364, such as location via Internet Protocol (IP) geolocation information, location via Wi-Fi® signal triangulation, and location via detection of NFC beacon signals that can indicate a specific location.
[0048] Various memories (i.e., 330, 332, 334, and / or the memory of processor 310) and / or storage unit 336 may store one or more sets of instructions and data structures (e.g., software) that embody or utilize one or more of the methods or functions described herein. When these instructions (e.g., instruction 316) are executed by processor 310, they trigger a variety of actions for carrying out the disclosed embodiments.
[0049] As used herein, the terms “machine storage medium,” “device storage medium,” and “computer storage medium” mean the same thing and may be used interchangeably in this disclosure. These terms refer to one or more storage devices and / or media (e.g., centralized or distributed databases, and / or associated caches and servers) that store executable instructions and / or data. Thus, these terms should be interpreted to include, but are not limited to, solid-state memory, as well as optical and magnetic media, including memory inside or outside a processor. Specific examples of machine storage medium, computer storage medium, and / or device storage medium include non-volatile memory, such as semiconductor memory devices, e.g., erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), FPGAs, and flash memory devices, as well as magnetic disks, such as internal hard disks and removable disks, magneto-optical disks, and CD-ROM and DVD-ROM disks. The terms “machine storage medium,” “computer storage medium,” and “device storage medium” specifically exclude carrier waves, modulated data signals, and other such mediums, at least some of which are included in the term “signaling medium,” as described below.
[0050] In various embodiments, one or more parts of network 380 may be an ad-hoc network, intranet, extranet, VPN, LAN, WLAN, WAN, WWAN, MAN, Internet, part of the Internet, part of the PSTN, plain old telephone service (POTS) network, mobile phone network, wireless network, Wi-Fi® network, another type of network, or a combination of two or more such networks. For example, network 380 or part of network 380 may include a wireless or cellular network, and coupling 382 may be a Code Division Multiple Access (CDMA) connection, a Global System for Mobile communications (GSM®) connection, or another type of cellular or wireless coupling.In this example, Coupling 382 includes Single Carrier Radio Transmission Technology (1xRTT), Evolution-Data Optimized (EVDO) technology, General Packet Radio Service (GPRS) technology, Enhanced Data rates for GSM Evolution (EDGE) technology, the third-generation partnership project (3GPP®), including 3G, fourth-generation wireless (4G) networks, Universal Mobile Telecommunications System (UMTS), High-Speed Packet Access (HSPA), Worldwide Interoperability for Microwave Access (WiMAX), and Long-Term Evolution (LTE). Any of the various types of data transfer technologies may be implemented, such as the Evolution standard, other standards defined by various standards-setting organizations, other long-distance protocols, or other data transfer technologies.
[0051] Instruction 316 may be transmitted or received over network 380 using a transmission medium via a network interface device (e.g., a network interface component included in communication component 364) and utilizing one of several well-known transfer protocols (e.g., the hypertext transfer protocol (HTTP)). Similarly, instruction 316 may be transmitted or received to device 370 using a transmission medium via coupling 372 (e.g., peer-to-peer coupling). The terms “transmission medium” and “signaling medium” mean the same thing and may be used interchangeably in this disclosure. The terms “transmission medium” and “signaling medium” should be interpreted as including any intangible medium capable of storing, encoding, or carrying instruction 316 for execution by machine 300, including digital or analog communication signals or other intangible mediums to facilitate communication of such software. Accordingly, the terms “transmission medium” and “signaling medium” shall include any form of modulated data signal, carrier wave, etc. The term “modulated data signal” means a signal having one or more of its properties set or modified to encode information in the signal.
[0052] The terms “machine-readable medium,” “computer-readable medium,” and “device-readable medium” mean the same thing and may be used interchangeably in this disclosure. These terms are defined to include both machine storage media and transmission media. Therefore, these terms include both storage devices / mediums and carrier / modulated data signals.
[0053] Several embodiments allow users of an online marketplace to set multiple permissions for co-hosts. A first permission level may grant full access. A full-access co-host may be a partner co-host. A full-access co-host may have the same access as the owner but without access to financial and transaction data that may be personal to the owner. A second permission level may include inbox-calendar access, essentially granting access to the email inbox and / or calendar. This may be useful for delegating the user to act as the guest interface on behalf of the main host or owner, but without granting access to change listing or pricing settings. This permission level may allow the user to have access to the calendar so that they know when guests are checking in and checking out. Inbox access may allow the user to interface directly with guests. A third permission level may be calendar-only. A calendar-only co-host may only have access to the calendar. In some embodiments, these co-hosts have access only to a limited subset of the calendar (e.g., when guests are checking in and checking out). These co-hosts may not have access to pricing within the calendar.
[0054] Some embodiments allow hosts to make payments to co-hosts on the platform. This allows users to pay on the platform or while using an online marketplace, rather than via offline payment methods (e.g., Venmo, PayPal). Some embodiments allow users to set up co-host payments on the platform. Co-hosts can choose to receive a percentage of their bookkeeping and / or a fixed fee. If a host works with property managers and the host wants to add them as co-hosts to their listing, the host can pay them a fee via a percentage of their bookkeeping ability. Payments may also be made to service providers, such as cleaners. Payments may be set up so that the cleaner is paid a fixed amount (e.g., $150) each time they clean a house, and as a result the cleaner is paid that amount for each bookkeeping.
[0055] Figure 4A shows exemplary user interfaces 400 for host management in an online marketplace (e.g., a mobile application user interface, a web browser user interface) according to several embodiments. A host may use this interface to invite co-hosts to a property listing 412. The interface may include tabs 414 for displaying listing details, tab 416 for booking settings, and tab 418 for co-hosts. The illustrated interface may be viewed under the co-host tab. Affordances 420 may be provided for inviting co-hosts. Depending on the permission level, co-hosts may assist the host with everything from managing the calendar for the property listing to welcoming guests to the property.
[0056] Figure 4B shows exemplary user interface 400 views for a listing owner in several embodiments. Both views show cards for four co-hosts 406-2, 406-4, 406-6, and 406-8. The exemplary interface shown in Figure 4A may be used to invite co-hosts, and therefore the co-hosts shown in the example may have been previously invited using that interface. The owner may initiate a first invitation. Co-host 406-2 is the primary host, co-host 406-4 is a full-access co-host, co-host 406-6 is a calendar and inbox access co-host, and co-host 406-8 is a calendar access co-host. View 402 corresponds to an example without payment support, and view 404 corresponds to an example with payment support ("$50 per entry"), as shown in the additional text 408 in the card for co-host 406-8. Several embodiments show affordances or cards 410 for inviting co-hosts.
[0057] Figure 4C shows exemplary user interface 400 views for a listing owner in several embodiments. The view on the left shows that an invitation has been sent to a pending co-host card (text 422). The view on the right shows that an invitation has expired to a pending co-host card (text 424). The system may track invitations sent to users and their expiration dates and update the user interface accordingly.
[0058] Figure 4D shows an exemplary notification 426 in several embodiments. An invited co-host may receive a notification 428 on their mobile phone or desktop home screen if such notifications are permitted. The co-host may also review the notification 430 from within the application. The co-host may also receive an email notification 432. This example shows a notification for an invitation to become a co-host. Similar notifications may be generated and / or displayed according to the user's role.
[0059] Figure 5A shows views of exemplary user interfaces 500 (e.g., mobile application user interface, web browser user interface) for host management in an online marketplace, according to several embodiments. Views 502, 504, and 506 correspond to different co-hosts. Each view displays information related to the co-host. The information may include name and / or contact information 508, permission level 510, payment 512, whether the co-host is the primary host 514, and / or activity log 516. Some embodiments also include affordances 518 for removing a user from co-hosting a property.
[0060] Figure 5B shows an exemplary user interface 500 for setting co-host permissions according to several embodiments. In some embodiments, a permission overlay 520 including an affordance (e.g., button 522) for setting co-host permissions may be presented to the user (e.g., owner). Another affordance 524 may be provided for the user to save the permissions. After the user saves the co-host permission level, the permissions may be updated within the co-host management interface (526). Permission options or permission levels (sometimes called permissions) may include full access, calendar / inbox access, and calendar access. Calendar access may provide access to view calendar information for a property listing. Calendar / inbox access may provide access to view calendar and mail information for a property listing and one or more messaging options for messaging one or more guests of a property listing. Full access may provide access to pricing information, viewing and editing the calendar and inbox for a property listing, one or more messaging options, and one or more administrative options for managing views of the property listing.
[0061] In some embodiments, user interface faces may be shown or hidden from the user depending on the permission level. Some embodiments may include a user interface customization library associated with the face. In some embodiments, each face may be displayed using the associated library to provide customization on the server side. The customization library may control consistency across client platforms such as web, iOS, and Android. Some embodiments may provide a set of APIs for fetching information from hosted listings.
[0062] Figure 5C shows an exemplary notification 528 generated by the system in several embodiments. As described above with reference to Figure 5B, after the owner updates the permissions of the co-hosts, the system may generate a notification (e.g., email) to the co-hosts indicating that the owner has updated those permissions.
[0063] Figure 5D shows a view 530 of an exemplary user interface 500 for the owner, according to several embodiments. After a co-host is promoted to primary host, the owner can edit their own status as the primary host.
[0064] Figure 5E shows a view 532 of an exemplary user interface 500 for configuring co-host permissions according to several embodiments.
[0065] Figure 6A shows a schematic diagram of an exemplary process 600 for setting up payments for a co-host, according to several embodiments. The owner may view the co-host details in the user interface 602. The owner may select a payment option 626 within the interface. The user interface is updated to show a view 604, which allows the owner to set up co-host payments. View 604 shows an option 628 for setting the payment as a percentage and another option 630 for setting the payment as a fixed amount. Assuming the owner has selected a percentage payment, a view 606 for selecting a percentage value is shown. The owner may save the percentage and return to a view 608 which may show a percentage payment. Alternatively, the owner may select a fixed amount payment, in which the system generates and displays a view 610 for selecting a fixed amount.
[0066] Figure 6B shows an exemplary notification 612 for a co-host to set up payment in several embodiments. After the owner sets up payment, the co-host may receive a notification (e.g., email) asking them to confirm the payment option.
[0067] Figure 6C shows a schematic diagram of an exemplary process 616 for a co-host to confirm payment, according to several embodiments. The co-host may be presented with an interface 618 for selecting a payment. After the co-host selects a payment option 632, a payment popup 620 may be presented. The co-host may confirm the payment, and a confirmation notice 622 will be presented in the popup. Since the co-host has approved the payment, the option to view the payment is no longer available in view 624. Future payments may proceed similarly. The co-host may also set up automatic payments to accept payments via an online payment method so that the co-host is automatically paid whenever a reservation occurs or is completed.
[0068] Figure 7 shows exemplary user interfaces 700 for host management in an online marketplace (e.g., a mobile application user interface, a web browser user interface) according to several embodiments. As shown, a co-host may be presented with a popup 702 to remove themselves as a co-host for a property listing.
[0069] Figures 8A and 8B show flowcharts of Method 800 for host management in an online marketplace, according to several embodiments. In some embodiments, the steps of Method 800 may be performed by a computer (e.g., Application Server 140). In some embodiments, the steps of Method 800 may be performed by a system (e.g., Networked System 102). In some embodiments, Figures 8A and 8B may correspond to instructions stored in computer memory or a computer-readable storage medium (e.g., the memory of Application Server 140). The memory may store one or more programs configured for execution by one or more processors. For example, the operation of Method 800 may be performed at least in part by a co-host management module 150 and / or a visualization module 142. In some embodiments, the steps of Method 800 may be performed by an API server 120, a web server 122, an application server 140, and / or a database server 124.
[0070] Referring to Figure 8A, the method may also include retrieving property listings listed on an online marketplace (802). The property listings may be stored as part of the co-host management module 150 or in the database 126. The method may also include providing a host management graphical user interface (e.g., by the visualization module 142) (804) for managing co-hosts for a property listing. The method may also include displaying one or more host detail affordances (or host cards, e.g., 406-2) on the host management graphical user interface (e.g., the interface corresponding to view 402 or view 404) (808) in accordance with a determination (806) that a property listing is associated with one or more co-hosts, where each host detail affordance corresponds to each of the one or more co-hosts. The method may also include displaying authorization, payment, and activity logs for the first co-host on the host management graphical user interface (810) in response to detecting that the user has selected a first host detail affordance corresponding to a first co-host on the host management graphical user interface. For example, in response to a user selecting 406-4, a view showing authorization 510, payment 512, and activity log 516 may be displayed.
[0071] Referring next to Figure 8B, the method may also include, in accordance with the determination (812) that the property listing is not associated with one or more co-hosts, displaying a co-host addition option (e.g., option 410 or option 420) on the host management graphical user interface for adding a co-host to the property listing (814). The method may also include, in response to detecting user input for selecting a co-host addition option on the host management graphical user interface, enabling the user to specify a new co-host and associating the new co-host with the property listing (816).
[0072] In some embodiments, the method may further include displaying a number of tabs on the host management graphical user interface, including tabs for (i) property listing details (e.g., tab 414), (ii) settings for accounting for the property listing (e.g., tab 416), and (iii) co-hosts to the property listing (e.g., tab 416). The method may also include displaying one or more host detail affordances and / or co-host addition options on the host management graphical user interface in response to detecting that the user has selected a tab for co-hosts, in order to add a co-host to the property listing.
[0073] In some embodiments, the method may further include displaying permission editing options (e.g., options for permission 510) on the host management graphical user interface for setting or editing permissions for the first co-host. The method may also include displaying a permission popup overlay (e.g., popup 520) on the host management graphical user interface showing multiple permission options for setting or editing permissions for the first co-host, in response to detecting that the user has selected a permission editing option on the host management graphical user interface. The method may also include (i) updating the permissions for the first co-host and (ii) updating the host management graphical user interface to indicate the change in permissions for the first co-host, in response to detecting that the user has selected a permission option from among the multiple permission options on the host management graphical user interface. Examples of permission settings and various option levels are described above with reference to Figures 5A to 5E according to some embodiments. In some embodiments, the multiple permission options may include full access, calendar / inbox access, and calendar access. Calendar access may provide access to view calendar information for property listings. Calendar and inbox access may provide access to view calendar and email information for a property listing, and one or more messaging options for messaging one or more guests of the property listing. Full access may provide access to pricing information, viewing and editing the calendar and inbox for a property listing, one or more messaging options, and one or more administrative options for managing the view of the property listing.In some embodiments, in response to detecting on the host management graphical user interface that a user has selected a grant option from among several grant options, the method may further include enabling the user to associate an expiration date with the grant option and updating the host management graphical user interface to indicate the expiration date for the grant for the first co-host.
[0074] In some embodiments, the method may further include, in accordance with the determination that the user is the owner of a property listing, (i) enabling the user to update a payment for a first co-host via the host management graphical user interface, (ii) associating the first co-host with the updated payment, and (iii) updating the host management graphical user interface to display the updated payment for the first co-host. In some embodiments, enabling the user to modify a payment includes displaying multiple payment options for the payment, including (i) a percentage value of total accounting revenue and (ii) a fixed amount. In some embodiments, the owner may send the payment to multiple co-hosts for payment splitting. In some embodiments, the method may further include displaying a confirmation option on the host management graphical user interface for confirming an updated payment with the first co-host. The method may also include, in response to detecting on the host management graphical user interface that the user has selected a confirmation option, sending a request to the first co-host to confirm the updated payment. The method may also include, in response to receiving a response from the first co-host confirming the updated payment, associating the first co-host with the updated payment. The method may also include updating the host management graphical user interface to display updated payments to co-hosts. Examples of setting up or updating, confirming, and notifying payments by several embodiments are described above with reference to Figures 6A–6C.
[0075] In some embodiments, the method may further include displaying a primary host option on the host management graphical user interface for updating the status of the first co-host as the primary host, in response to detecting that the user has selected a first host detail affordance corresponding to a first co-host on the host management graphical user interface. In some embodiments, it may be possible for only full-access co-hosts to become primary hosts. The method may also include updating the host management graphical user interface to allow the user to update the status of the first co-host as the primary host and to instruct the user to perform the update, in response to detecting that the user has selected the primary host option on the host management graphical user interface. According to some embodiments, one example is described above with reference to Figure 5D.
[0076] In some embodiments, the method may further include displaying pending invitations (e.g., invitation 412) to other users to be added as co-hosts on the host management graphical user interface.
[0077] In some embodiments, the method may further include, upon determination that the user is a co-host of a property listing, enabling the user to remove themselves from co-hosting the property listing via the host management graphical user interface, updating the co-hosts for the property listing, and updating the host management graphical user interface to stop displaying the property listing for the user. According to some embodiments, one example is described above with reference to Figure 7.
[0078] In some embodiments, the method may further include displaying the option to add a co-host on the host management graphical user interface, based on the determination that the user is the owner or a full-access co-host of the property listing. In other words, in some embodiments, only the owner or a full-access co-host can add co-hosts. For example, the exemplary user interface described above with reference to Figure 4B may be shown to the owner or a full-access co-host, but not to other co-hosts.
[0079] In some embodiments, the method may further include providing a payment stop option on the host management graphical user interface to stop payments to one or more co-hosts in accordance with the determination that the user is the owner of the property listing. In other words, in some embodiments, only the owner may stop payments for the property listing. In some embodiments, only the owner may send payment agreements to co-hosts. In some embodiments, if a payment agreement is in place, both the owner and the payee may stop payments and / or the payment agreement. Although not explicitly shown in the figures, the payment options described above with reference to Figure 6A may be toggled to a payment stop option after payments have been made.
[0080] In some embodiments, the method may further include providing the user with access to pricing information, viewing and editing the calendar and inbox for the property listing, one or more messaging options for messaging one or more guests for the property listing, one or more administrative options for managing views of the property listing, and corresponding notifications, excluding personal profile information and financial details of one or more owners of the property listing, depending on the determination that the user is a full-access co-host responsible for end-to-end listing management (e.g., a co-host for adjusting property listing and bookkeeping settings, approving and rejecting bookings, interacting with guests, and handling replacements at the end of bookings). For example, referring to Figure 5E, after the co-host permission is set to full access, the co-host may be provided with access to pricing information, viewing and editing the calendar and inbox for the property listing, one or more messaging options for messaging one or more guests for the property listing, one or more administrative options for managing views of the property listing, and corresponding notifications.
[0081] In some embodiments, the method may provide the user with access to the calendar and inbox, access to view calendar and email information for property listings, one or more messaging options for messaging one or more guests of a property listing, and corresponding notifications for property listings, depending on the determination that the user is an inbox and calendar-only co-host responsible for handling guest support during the short trip. For example, referring to Figure 5E, after the co-host permission is set to inbox and calendar-only co-host, the co-host may be provided with access to the calendar and inbox, access to view calendar and email information for property listings, one or more messaging options for messaging one or more guests of a property listing, and corresponding notifications for property listings.
[0082] In some embodiments, the method may further include providing the user with access to view calendar information and corresponding notifications for property listings, based on the determination that the user is a calendar-only co-host responsible for handling support tasks (e.g., cleaning, photography, and replacement). For example, referring to Figure 5E, after a co-host's permission is set to calendar access, the co-host may be provided with access to view calendar information and corresponding notifications for property listings.
[0083] In some embodiments, the method may further include (i) associating each of several permission levels with one or more co-hosts of a property listing, and (ii) updating an activity log for each co-host based on each permission level. According to some embodiments, examples of activity logs are described above with reference to Figures 5A to 5D.
[0084] In some embodiments, the host management user interface may include one or more user interface surfaces. The method may further include (i) associating each of several permission levels for one or more co-hosts of a property listing with each permission level, and (ii) showing or hiding at least one of the one or more surfaces based on the permission level for one or more co-hosts of a property listing. For example, the tabs in Figure 4A may correspond to different surfaces, the payment popup in Figure 6A may correspond to different surfaces, and so on. Different affordances may correspond to different user interface surfaces. These surfaces may be controlled individually, independently, and / or simultaneously based on permission levels. The host management graphical user interface may support multi-user, multi-tenant, and / or simultaneous modification of these user interface surfaces. Each co-host may be on a different (or the same) network. Each co-host may use a different client device to operate the host management graphical user interface.
[0085] In some embodiments, the method may further include (i) associating each of several permission levels with one or more co-hosts of a property listing, and (ii) using a notification customization library to control notifications to one or more co-hosts based on a specific permission level. Some embodiments use co-host roles to better support collaborative hosting. Notifications may include email, push, and SMS notifications to hosts from different flows, such as booking inquiries, booking changes, and reviews. Not all co-hosts are required to receive all notifications. Notifications may be managed using role-based rules. For example, a cleaner may not receive booking inquiry notifications but may receive booking change notifications. Users may be resolved based on user roles using a notification customization library. Clients / services that generate notifications for different templates may call the notification library to request a list of users from a list of user roles. Some embodiments may centralize user resolution and / or hide the complexity of different client services requesting role / user ingestion. The library may support new roles such as co-travelers and / or use a predetermined set of roles (e.g., owner, primary host, co-host). According to some embodiments, exemplary notices are given above with reference to Figure 4D.
[0086] The terms "first," "second," etc., are used herein in some cases to describe various elements, but it will be understood that these elements should not be limited by these terms. These terms are used solely to distinguish one element from another. For example, a first widget can be called a second widget without departing from the scope of the various described embodiments, and similarly, a second widget can be called a first widget. Both the first and second widgets are widgets, but they are not of the same nature unless explicitly stated so.
[0087] The terms used in the description of the various embodiments described herein are intended solely to describe and not to limit a particular embodiment. As used in the description of the various embodiments and the accompanying claims, the singular forms “a,” “an,” and “the” are intended to include the plural form unless the context clearly indicates otherwise. The terms “and / or” as used herein will be understood to refer to and include one or any possible combination of the related enumerated items. The terms “includes,” “including,” “comprises,” and / or “comprising,” as used herein, specify the presence of a described feature, integer, step, operation, element, and / or component, but will not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0088] The above description is provided with reference to specific embodiments for illustrative purposes. However, the above exemplary description is not intended to be exhaustive or to limit the claims to the exact form disclosed. Many modifications and variations are possible in light of the above teachings. The embodiments have been selected to best illustrate the principles underlying the claims and their practical applications, thereby enabling other persons skilled in the art to best utilize embodiments with various modifications suited to their particular intended use.
Claims
1. A method for managing hosts in an online marketplace, wherein the method is In a computing system having one or more processors and a memory for storing one or more programs configured for execution by the one or more processors, Retrieving property listings posted on online marketplaces, To provide a host management graphical user interface for managing co-hosts for the aforementioned property listings, In accordance with the determination that the property listing is associated with one or more co-hosts, Displaying one or more host detail affordances on the host management graphical user interface, wherein each host detail affordance corresponds to one of the co-hosts among the one or more co-hosts. In response to detecting that the user has selected a first host detail affordance corresponding to a first co-host on the host management graphical user interface, the permission, payment, and activity logs for the first co-host are displayed on the host management graphical user interface. In accordance with the determination that the property listing is not associated with one or more co-hosts, The host management graphical user interface displays a co-host addition option for adding co-hosts to the property listing, In response to detecting user input for selecting the co-host addition option on the host management graphical user interface, the system enables the user to specify a new co-host and associate the new co-host with the property listing. Methods that include...
2. The host management graphical user interface displays multiple tabs, including tabs for (i) details of the property listing, (ii) settings for recording information for the property listing, and (iii) co-hosts to the property listing. In response to detecting that the user has selected the tab for co-hosts on the host management graphical user interface, the host management graphical user interface displays one or more host detail affordances and / or the co-host addition option in order to add co-hosts to the property listing. The method according to claim 1, further comprising:
3. On the host management graphical user interface, permission editing options are displayed for setting or editing permissions for the first co-host. In response to detecting that the user has selected the permission editing option on the host management graphical user interface, On the host management graphical user interface, a permission popup overlay is displayed showing multiple permission options for setting or editing permissions for the first co-host. In response to detecting that the user has selected one of the multiple permission options on the host management graphical user interface, (i) update the permission for the first co-host, and (ii) update the host management graphical user interface to indicate the change in the permission for the first co-host. The method according to any one of claims 1 to 2, further comprising:
4. The aforementioned permission options include full access, calendar and inbox access, and calendar access. The aforementioned calendar access provides access to view calendar information for the property listing. The aforementioned calendar and inbox access provides access to view calendar and email information for the property listing, and one or more messaging options for messaging the property listing to one or more guests. The method according to claim 3, wherein the full access provides access to pricing information, the ability to view and edit a calendar and inbox for the property listing, one or more messaging options, and one or more administrative options for managing the view of the property listing.
5. On the host management graphical user interface, in response to detecting that the user has selected one of the multiple permission options, the host management graphical user interface is updated to allow the user to associate an expiration date with the permission option and to show the expiration date for the permission for the first co-host. The method according to any one of claims 1 to 2, further comprising:
6. In accordance with the determination that the user is the owner of the property listing, The host management graphical user interface enables the user to renew payments for the first co-host, Associating the first co-host with the updated payment, Updating the host management graphical user interface to display the updated payments for the first co-host, The method according to any one of claims 1 to 2, further comprising:
7. The method according to claim 6, wherein enabling the user to change the payment includes displaying a number of payment options for the payment, including (i) a percentage of total accounting revenue and (ii) a fixed amount.
8. Displaying a confirmation option on the host management graphical user interface for confirming the updated payment with the first co-host, In response to detecting that the user has selected the confirmation option on the host management graphical user interface, a request to confirm the updated payment is sent to the first co-host. In response to receiving a response from the first co-host confirming the updated payment, Associating the first co-host with the updated payment, Update the host management graphical user interface to display the updated payments to the co-host. The method according to claim 6, further comprising:
9. In response to detecting that the user has selected the first host detail affordance corresponding to the first co-host on the host management graphical user interface, the host management graphical user interface displays a primary host option for updating the status of the first co-host to primary host. In response to detecting that the user has selected the primary host option on the host management graphical user interface, the host management graphical user interface is updated to enable the user to update the status of the first co-host to primary host and to instruct the user to perform the update. The method according to any one of claims 1 to 2, further comprising:
10. Displaying pending invitations to other users who should be added as co-hosts on the host management graphical user interface. The method according to any one of claims 1 to 2, further comprising:
11. In accordance with the determination that the user is a co-host of the property listing, the host management graphical user interface is updated to allow the user to remove themselves from co-hosting the property listing, to update the co-hosts of the property listing, and to stop displaying the property listing for the user. The method according to any one of claims 1 to 2, further comprising:
12. In accordance with the determination that the user is the owner or full-access co-host of the property listing, the co-host addition option is displayed on the host management graphical user interface. The method according to any one of claims 1 to 2, further comprising:
13. In accordance with the determination that the user is the owner of the property listing, the host management graphical user interface provides a payment stop option to stop payments to one or more co-hosts. The method according to any one of claims 1 to 2, further comprising:
14. In accordance with the determination that the aforementioned user is a full-access co-host responsible for end-to-end listing management, To provide the user with access to pricing information, to view and edit the calendar and inbox for the property listing, to have one or more messaging options to message one or more guests of the property listing, to have one or more administrative options to manage the view of the property listing, and to provide the user with corresponding notifications, excluding personal profile information and financial details of one or more owners of the property listing. The method according to any one of claims 1 to 2, further comprising:
15. In accordance with the determination that the aforementioned user is a co-host of only the inbox and calendar, responsible for handling guest support during the short trip, Providing the user with calendar and inbox access means providing access to view limited calendar and email information for the property listing, one or more messaging options for messaging one or more guests of the property listing, and corresponding notifications for the property listing. The method according to any one of claims 1 to 2, further comprising:
16. Based on the determination that the aforementioned user is a co-host only for the calendar in which they are responsible for handling support tasks, To provide the user with access to view calendar information and corresponding notifications for the property listings. The method according to any one of claims 1 to 2, further comprising:
17. Associating each of the permission levels among several permission levels for one or more co-hosts of the aforementioned property listing, Update the activity log for each co-host based on the respective permission levels mentioned above. The method according to any one of claims 1 to 2, further comprising:
18. The host management user interface includes one or more user interface surfaces, and the method is Associating each of the permission levels among several permission levels for one or more co-hosts of the aforementioned property listing, Based on the permission level for one or more co-hosts of the property listing, at least one of the one or more sides may be shown or hidden. The method according to any one of claims 1 to 2, further comprising:
19. Associating each of the permission levels among several permission levels for one or more co-hosts of the aforementioned property listing, A notification customization library is used to control notifications to one or more co-hosts based on a specific permission level. The method according to any one of claims 1 to 2, further comprising:
20. A system comprising a server including one or more processors and memory for storing one or more programs executed by the one or more processors, wherein the one or more programs are Instructions for obtaining property listings posted on online marketplaces, Instructions for providing a host management graphical user interface for managing co-hosts for the aforementioned property listing, In accordance with the determination that the property listing is associated with one or more co-hosts, A command for displaying one or more host detail affordances on a host management graphical user interface, wherein each host detail affordance corresponds to a command for each of the one or more co-hosts. In response to detecting that the user has selected a first host detail affordance corresponding to a first co-host on the host management graphical user interface, the host management graphical user interface displays a command for displaying permission, payment, and activity logs for the first co-host. In accordance with the determination that the property listing is not associated with one or more co-hosts, A command for displaying a co-host addition option for adding a co-host to the property listing on the host management graphical user interface, In response to detecting user input for selecting the co-host addition option on the host management graphical user interface, the system enables the user to specify a new co-host and provides instructions for associating the new co-host with the property listing. A system that includes this.
21. A non-temporary computer-readable storage medium for storing one or more programs configured for execution by a computer system having a display, one or more processors, and memory, wherein the one or more programs are Instructions for obtaining property listings posted on online marketplaces, Instructions for providing a host management graphical user interface for managing co-hosts for the aforementioned property listing, In accordance with the determination that the property listing is associated with one or more co-hosts, A command for displaying one or more host detail affordances on a host management graphical user interface, wherein each host detail affordance corresponds to a command for each of the one or more co-hosts. In response to detecting that the user has selected a first host detail affordance corresponding to a first co-host on the host management graphical user interface, the host management graphical user interface displays a command for displaying permission, payment, and activity logs for the first co-host. In accordance with the determination that the property listing is not associated with one or more co-hosts, A command for displaying a co-host addition option for adding a co-host to the property listing on the host management graphical user interface, In response to detecting user input for selecting the co-host addition option on the host management graphical user interface, the system enables the user to specify a new co-host and provides instructions for associating the new co-host with the property listing. Non-temporary computer-readable storage media, including [specific type of storage medium].