New! View global litigation for patent families

CA2708564A1 - Prioritization of third party access to an online commerce site - Google Patents

Prioritization of third party access to an online commerce site

Info

Publication number
CA2708564A1
CA2708564A1 CA 2708564 CA2708564A CA2708564A1 CA 2708564 A1 CA2708564 A1 CA 2708564A1 CA 2708564 CA2708564 CA 2708564 CA 2708564 A CA2708564 A CA 2708564A CA 2708564 A1 CA2708564 A1 CA 2708564A1
Authority
CA
Grant status
Application
Patent type
Prior art keywords
access
api
application
online
party
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA 2708564
Other languages
French (fr)
Other versions
CA2708564C (en )
Inventor
Scott Leahy
Alon Cohen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
eBay Inc
Original Assignee
Ebay Inc.
Scott Leahy
Alon Cohen
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce, e.g. shopping or e-commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping
    • G06Q30/0613Third-party assisted
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce, e.g. shopping or e-commerce
    • G06Q30/06Buying, selling or leasing transactions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L29/00Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 contains provisionally no documents
    • H04L29/02Communication control; Communication processing contains provisionally no documents
    • H04L29/06Communication control; Communication processing contains provisionally no documents characterised by a protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic regulation in packet switching networks
    • H04L47/70Admission control or resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/02Network-specific arrangements or communication protocols supporting networked applications involving the use of web-based technology, e.g. hyper text transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1002Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing
    • H04L67/1004Server selection in load balancing
    • H04L67/1008Server selection in load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1002Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing
    • H04L67/1004Server selection in load balancing
    • H04L67/1014Server selection in load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/14Network-specific arrangements or communication protocols supporting networked applications for session management
    • H04L67/142Network-specific arrangements or communication protocols supporting networked applications for session management provided for managing session state for stateless protocols; Signalling a session state; State transitions; Keeping-state mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/20Network-specific arrangements or communication protocols supporting networked applications involving third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/28Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network
    • H04L67/2814Network-specific arrangements or communication protocols supporting networked applications for the provision of proxy services, e.g. intermediate processing or storage in the network for data redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L29/00Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 contains provisionally no documents
    • H04L29/02Communication control; Communication processing contains provisionally no documents
    • H04L29/06Communication control; Communication processing contains provisionally no documents characterised by a protocol
    • H04L29/0602Protocols characterised by their application
    • H04L29/06047Protocols for client-server architecture
    • H04L2029/06054Access to distributed or replicated servers, e.g. using brokers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1002Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network-specific arrangements or communication protocols supporting networked applications
    • H04L67/10Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network
    • H04L67/1002Network-specific arrangements or communication protocols supporting networked applications in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers, e.g. load balancing
    • H04L67/1004Server selection in load balancing
    • H04L67/1023Server selection in load balancing based on other criteria, e.g. hash applied to IP address, specific algorithms or cost
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Application independent communication protocol aspects or techniques in packet data networks
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32High level architectural aspects of 7-layer open systems interconnection [OSI] type protocol stacks
    • H04L69/322Aspects of intra-layer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Aspects of intra-layer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer, i.e. layer seven

Abstract

Providing prioritization of user online access to an online commerce site.
Third party applications using API function calls to access an online commerce site are restricted to specific services by an access rule. An access rule defines which API
server on the online commerce site a specific third party application may access when using a specific API function call. In this way, the operator of the online commerce site may prioritize server access per service level agreements based on a specific third party application and API function call.

Description

PRIORITIZATION OF THIRD PARTY ACCESS TO AN ONLINE COMMERCE SITE
This application is a divisional application of Canadian Patent Application No. 2,469,655, filed December 13, 2002.
BACKGROUND OF THE IIWENI'ION
Field of the Invention [00011 The invention relates to the field of network computing. More specifically, the invention relates to the prioritization of third party access to an online commerce site.
B3ckttround of the Invention [0002] The online commerce marketplace allows users to buy and sell goods and services (e.g., via an online auction web site) to geographically dispersed consumers.
Typically, a user employs automated processes to buy or sell their own products on the online commerce site. By partnering with an established online commerce site, a user (e.g., a merchant) bypasses the cost of building an online commerce infrastructure from scratch, thereby reaching the online market quickly and accessing a large number of good and services in addition to a large number of buyers and sellers.

[0003] Permitting uncontrolled access to the online commerce site has some drawbacks, such as the drain on system resources due to the increased processing performed on the online commerce site- For example, a third party may utilize an automated program to extract information such as product listings and pricing information, from the online commerce site at various unpredictable times. The automated program may place a heavy load on the online commerce site that causes substantial response time delays to all users of the online commerce site, These response time delays may eventually frustrate the consumers of the site, causing them to cease using the online commerce site and seek another electronic commerce site from which to conduct business.

BRIEF SUMMARY OF THE INVENTION

[0004] Providing prioritization of user online access to an online commerce site. Third party applications using API function calls to access an online commerce site are restricted to specific services by an access rule. An access rule defines which API server on the online commerce site a specific third party application may access when using a specific API
function call. In this way, the operator of the online commerce site may prioritize server access per service level agreements based on a specific third party application and API function call.

BM F DESCRIPTION OF THE DRAWINGS

[0005] The invention may best be understood by referring to the following description and accompanying drawings that are used to illustrate embodiments of the invention. In the drawings:

[0006] Figure 1 illustrates an online commerce system according to one embodiment.

[0007] Figure 2 is a flow diagram illustrating access rule processing on an online commerce site according to one embodiment.

100081 Figure 3 is a flow diagram illustrating a process of using access rules on a third party application server according to one embodiment.

[00091 Figure 4 illustrates a flow diagram of one embodiment of using access rules and rate usage limits on an online commerce server.

(00101 Figure 5 depicts an exemplary computer system suitable for practicing the present invention.

DETAILED DESCRIPTION OF THE INVENTION

[0011] In the following description, numerous specific details are set forth to provide a thorough understanding of the invention. However, it is understood that the invention may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order not to obscure the invention.

[00121 Prioritization of user online access to an online commerce site is described.
According to one embodiment, an online commerce merchant configures an access rule to prioritize third party online access. An access rule defines how a third party may access the online commerce site. For example, a user may be limited, with an access rule, to a specific service on a specific server on the online commerce site, thereby, providing predictability to the operator of an online commerce site as to user accesses the online commerce site. In this way, the operator of an online commerce site may negotiate a service level agreement to provide access to specific servers with predetermined service levels as will be further described below.
[0013] Figure 1 illustrates an online co=coerce 100 system according to one embodiment. A
third party server area 102, a network area 104, and online commerce site 106, partitions the online commerce system 100.

[00141 The third party server area 102 includes third party application servers 110 and 115.
The online commerce area 106 includes Application Program Interface (API) servers 140, 142, and 144, and data storage devices 150, 152, 154, and 156. Any of the API
servers 140, 142, and 144 may access any of the data storage devices 150, 152, 154, and 156. The network area 104 includes a network 130 (e.g., the internet). The network 130 provides connectis-ity between any of the third party application servers 110 and 115 in the third party server area 102 and any of the API servers 140, 142, and 144 of the online commerce site 106. Access by the third party application servers 110, 115 may be prioritized based on a service level agreement, across the multiple API servers 140, 142, 144, as will be further described below.

[00151 Generally, third party developers create applications on the third party application servers I 10 and 115 to access information and services available in the online conanerce site 106 in a client/server type environment. For example, where the online commerce site 106 operates as an online auction site, the, online auction site may store pricing and product information in the data storage devices 150, 152, 154, and 156. The application hosted by the third party application server 110, 115 may use a I TML form or CGI program using the standard XML
(eXtensible Markup Language) data format, and may be written in C++, Pert, Pascal, or any other programming language capable of issuing data requests via the network 100 (e.g., the Internet). In one embodiment, each third party application hosted by the third party application servers 110, 115 uses APIs (application programming interfaces) to access the services provided by the online commerce site 106. Its general, APIs are standard programming interfaces (i.e., contracts) that define the input and output of function calls published by the online commerce site 106 to third party software programmers to automate access to services on the online commerce site 106 efficiently via application programs (e.g., to create an application to conduct auctions, and to manage auction and user information).

[0016] In one embodiment, a third party application must obtain access rule(s) before accessing the services on the online commerce site 106. For example, an access rule may include a URL (uniform resource locator) that addresses the API server 140, 142, or 144, with which the third party application 110 and 115 is to connect (or communicate) when accessing the services of the online commerce site 106. In this way, the URL directs a specific user to a specific API
server on the online commerce site 106 per the service level agreement The access rule may also be configured to direct a specific user to a specific API server having a different service level based on the specific APT function call to be used, For example, the third party application server 110 may be directed (via a URL stored in an access rule) to connect to API server 140 when servicing a "Getltenz" API function call to retrieve information describing an item offered for sale via the online commerce site 106.

[0017) The access rule(s) are configured on the online commerce site 106. For example, an administrator of the online commerce site 106 may configure access rules stored in the data storage device 150 via the administrator portal 160. In one embodiment, each rule has a record in a database table that corresponds to one API function call type.
Specifically, the table includes a field for a Rule ID, an APPPID, a CallName, and a UR.L for each API function call. The Rule ID field stores an identifier for a specific rule. The App -P field stores the identifier of the third party application. The CailNarne field stores the name of an API
function call. The URL
field stores the URL that the third party application should use when utilizing the API function call associated with the CallName. In this way, the administrator configures each access rule per the service level agreement to an API function used by a specific third party application to connect (via a given URL) to a specific API server. The access rule may also include rate usage information that limits third party application access as will be further described below.

[00181 In one embodiment, the access rule(s) are resident on the third party application server before the third party application accesses the services of the online commerce site 106. The third party application may request the access rule(s) from the online commerce site 106 using an API function call as will be further described below.

(0019) It should be appreciated that in this way, the online commerce merchant may prioritize access of third party application servers 110 and 115 to API servers 140, 142, 144 on the online commerce site 106. For example, the online commerce merchant may negotiate to provide a premium service level (e.g., guarantee faster response time) to third party application server 110 and provide a standard service level to the third party application server 115. The API server 142 may be designated as a premium server (for example, because a minimum number of third party applications have access to the API server 142, the API server 142 has additional resources and services available, among other examples), while the API server 144 may be designated as a standard server. Therefore, an access rule associated with an application on the third party application server 110 defines connectivity to the API server 142 for the premium service requests and an access rule associated with an application on the third party application server 115 defines connectivity to the API server 144 for the standard server requests.

(0020) A third party application may schedule the request for access rule(s) on a periodic basis (e.g_, nightly). In this way, the third party application may receive any access rule updates performed by the administrator after analyzing the usage pattern of all third party applications.
Continuing the example, if it is determined that the response time provided by the premium service on the API server 142 is not acceptable, then an administrator may modify the appropriate access rule to redirect the third party application server 110 to connect to a premium service on the API server 144 instead of cormecting to API server 142 as previously defined.
[00211 Figure 2 is a flow diagram illustrating access rule processing on the online commerce site 106 according to one embodiment.

100221 At block 210, the API server 140 receives a request for an access rule from a third party application. As stated above, the request may originate from an AN
function call. In one embodiment, the fimetion call request is passed from a third party application to the online commerce server 106 via a URL request string. By using a URL request string, through the }IT"I'P transport protocol, to make the API function call the API function is rendered-platform independent. Therefore, the third party application may be on any Internet capable machine including Microsoft Windows, Unix, Linux, or Macintosh computer, among others.

[00231 At decision block 220, the API server 140 determines whether the request is a valid.
In one embodiment, the request includes an application identifier, a developer identifier, and a session certificate- The application identifier identifies the third party application that transmitted the request. In one embodiment, a session certificate is a string of characters unique to a third party application. The session certificate string for the third party application is passed along with the developer identifier and the application identifier for each API function call type and is used by the API server 140, 142, and 144 to validate the request.

[0024) At block 225, the request is not validated and a descriptive message of the error result is returned back to the requesting third party application.

[0025] At block 230, if the third party application request is validated, the access rule(s) for the predefined service levels for the identified third party application are returned to the requesting third party application. For example, the API server 140 may access an access rules database table on the data storage device 150 for all the access rules associated with the application identifier of the request. Each access rule to be returned to the requesting third party application includes a CalIName and a URL that the third party application should use when malting a API function call associated with the CallName, as will be further desc abed. In this way, the third party application will be directed to the API server 140, 142, 144 providing the appropriate service level.

[0026) Figure 3 is a flow diagram illustrating a process of using access rules on a third party application server according to one embodiment. At block 310, the third party application makes a request for access rules to an API server. The request may be made to a predefined API
Server or to any of the API Servers on the online commerce site 106.

10027] At block 320, the third parry application receives the appropriate access rules. Upon receiving an access rule, the third party application saves the access rule in a data store such as a storage device, a memory, and a database, for example.

[002$[ At block 330, the. third party application intends to perform an API
function call to the online commerce site 106. Examples of API functions for an online auction site include: an Addltem function (sends a request to the online commerce site to put an item up for auction), a Getltem function (used to query the online commerce site and retrieve the information for one auction item); a GetSellerList function (queries the online commerce site and retrieves a list of the items a specific user/merchant is selling); a GetSearchResults (searches for items on the online commerce site); among other examples. Further examples of APIs to access an online auction site are described in U.S. patent application Publication No.
2003/0093326 entitled "Method and Apparatus to Facilitate a Transaction within a Network-Based Auction Facility", Assigned to eBay, Inc.

[00291 At block 340, the URL from the access rule associated with intended API
function call is obtained. The URL is retrieved from the access rule in the data store having a CallName associated to the intended API function call. Again, the URL may direct the user to the API
server servicing the negotiated service level.

(00301 At block 350, upon obtaining the appropriate URL, the third party application applies the intended APT function call to the appropriate API server on the online commerce site 106.
[00311 Figure 4 illustrates a flow diagram of one embodiment of using access rules and rate usage limits on an online commerce site. At block 410, an API server 140-144 receives a request to access the services on the online commerce site 106. As stated above, the request may for example be an API function call for a list of seller items (e.g., GetSellerltemList API function).
[0032] At decision block 420, a validation is performed on the request. If the request is validated, control passes to block 425. If the request is not validated, control passes to block 430.
The application identifier, developer identifier, or session certificate, or any combination thereof, included in an API function call header, may be used to validate the request based on the associated (or matching) access rule stored on the online commerce site 106.

100331 Validation may also include determining whether the requesting API
function call is to the appropriate API server. The third party application may connect to API
server to which it has been assigned in the access rule. Continuing the example, if the access rule for the third party application server 115 defines the GetltemList API function to be made to API
server 142 (via the URL stored in the access rule associated with the GetiternList API
function), then a validating API server will validate that a request is made to the appropriate API server 142.
[00341 At block 425, the request is not validated and it descriptive message is returned back to the requesting third party application.

[0035[ At block 430, the appropriate API server determines whether the third party application has exceeded a predefined maximum rate usage level. For example, the administrator may limit the third party application to perform a certain number of transactions per unit of time (e.g., 80,000 searches per day). If the third party application has exceeded the maximum rate usage, control passes to block 460. If the third party application has not exceeded the maximum rate usage, control passes to block 440. In this way, block 430 operates like a circuit breaker to limit third party access if it exceeds the agreed-upon transaction limits.

[0036] In another embodiment, block 430 may deteimnne whether the third party application has exceeded other predefined maximum rate usage levels, such as, the maximum number of calls within a predefined time frame (e.g., per day, per hour), the maximum number of simultaneous calls, whether the call is during a predefined time of day, among other examples.

[00371 At block 440, the third party application has not exceeded the maximum rate usage level, therefore, the API function call is performed, and if necessary, a usage rate counter increased. Continuing the example, the number of transaction results performed may be added to the maximum rate usage counter for the specific third party application. The maximum rate usage counter value may be stored in memory of the API server or in one of the databases 150, 152, 154, and 156.

[0038) At block 445, the API server returns the transaction results up to the maximum rate usage level. Therefore, if the third party application reaches the maximum rate usage upon performing the requested transaction, only those transactions that are below the maximum rate usage level are transmitted to the third party application. Control then passes to block 445.
[0039] At block 460, the third party application has exceeded the maximurn rate usage and a descriptive message is returned back to the requesting third party application.

[0040) One embodiment of an API server suitable for managing access rules is illustrated in Figure 5. The computer system 540 includes a processor 550, memory 555 and input/output capability 560 coupled to a system bus 565. The memory 555 is configured to store instructions which, when executed by the processor 550, perform the methods described herein. The memory 555 may also store access rules. Input/output 560 provides for the delivery and display of software to a device and allows for the modification of the access rules thereof Input/output 560 also encompasses various types of machine-readable media, including any type of storage device (e.g., preference database 240) that is accessible by the processor 550. The description of Figure is intended to provide an overview of computer hardware and other operating components suitable for implementing the invention, but is not intended to limit the applicable environments.
It will be appreciated that the computer system 540 is one example of many possible computer systems, which have different architectures. A typical computer system will usually include at least a processor, memory, and a bus coupling the memory to the processor. One of skill in the art will immediately appreciate that the invention can be practiced with other computer system configurations, including multiprocessor systems, minicomputers, mainframe computers, and the like. The invention can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a comumunications network. It will be appreciated that more or fewer processes may be incorporated into the method illustrated in Figures 2 and 3 without departing from the scope of the invention and that no particular order is implied by the arrangement of blocks shown and described herein. It further will be appreciated that the method described in conjunction with Figures 2 and 3 may be embodied in machine-executable insavetions, e.g. software. The instructions can be used to cause a general-purpose or special-purpose processor that is programmed with the instructions to perform the operations described. Alternatively, the operations might be performed by specific hardware components that contain hardwired logic for performing the operations, or by any combination of programmed computer components and custom hardware components. The method may be provided as a computer program product that may include a machine-readable medium having stored thereon instructions, which may be used to program a computer (or other electronic devices) to perform the method. For the purposes of this specification, the terms "machine-readable medium" shall be taken to include any medium that is capable of storing or encoding a sequence of instructions for execution by the machine and that cause the machine to perform any one of the methodologies of the present invention. The term "machine-readable medium" shall accordingly be taken to include, but not be limited to, solid-state memories, optical and magnetic disks, and a carrier wave that encodes a data signal. Furthermore, it is common in the art to speak of software, in one form or another (e.g., program, procedure, process, application, module, logic...), as taking an action or causing a result. Such expressions are merely a shorthand way of saying that execution of the software by a computer causes the processor of the computer to perform an action or a produce a result.

[0041] It should be appreciated that by providing third party applications access rules to determine which API server to access, the online commerce merchant may prioritize and control the manner in which the third party applications access the online commerce site 106. The online commerce site 106 may prioritize access by class of customer or service being accessed when needed to achieve any necessary service level. In this way, premium services may be provided to specific third party applications thereby guaranteeing availability of services on the premium site, among other advantages.

(0042] In addition, only those third party applications and API function calls that have the appropriate access rule may access the API server, thereby preventing other parties from sharing services by using a specific URL assigned to another third party application.
Also, since a single third party application may access different API servers based on the specific API function call, the invention also prevents the third party user from arbitrary selecting any one of the API
servers.

[0043) Although the exemplary embodiment of described herein details how an online auction merchant prioritizes third party application requests from API
function calls with access rules, it should be understood that the invention is not linuted to prioritizing third party application's access to an online auction site. Alternatively, an access rule may be used to prioritize access to alternative online commerce environments and to alternative services provided by an online commerce facility.

[0044] Although the invention describes how a third party application connects to an API
server, in alternative embodiments, the third party application connects to an API server pool (e.g., multiple API servers) that are controlled by a resonate load balancer and respond to the same URL. Load balancing network topologies are well know in the an and have not been described in detail in order not to obscure the invention.

[0045) It is also understood that access rules may be delivered to a third party application server via means other than the API function described. In alternative embodiincnts, the access rules may be transferred to the third party application server by other well-known file transfer mechanisms within the scope of the invention. In addition, in some embodiments the access rules are preemptively not transferred to the third party application server but the third party application server searches access rules on the online commerce site before performing a specific API function to determine which API server to connect when accessing the online commerce site 106.

[0046) While the invention has been described in terms of several embodiments, those skilled in the art will recognize that the invention is not limited to the embodiments described. The method and apparatus of the invention can be practiced with modification and alteration within the spirit and scope of the appended claims. The description is thus to be regarded as illustrative instead of limiting on the invention.

lU

Claims (21)

1. A method comprising:

providing a plurality of servers to provide access to services of an online commerce site, the plurality of servers including application programming interface (API) servers for servicing API calls received from a user computer;

responsive to a request received from a user computer via an API call, determining an identity of the user computer;
identifying a first server of the plurality of servers to which to direct the user computer for service by the online commerce site based on the API call; and transmitting an identifier for the first server to the user computer so as to enable the user computer to direct a request for service to the first server of the plurality of servers via an API call.
2. The method of claim 1, wherein the online commerce site is a network-based auction site.
3. The method of claim 1, including transmitting an access rule to the user computer.
4. The method of claim 1, including searching a database table for a record containing an identity of the user computer.
5. The method of claim 1, including transmitting a URL to the user computer.
6. A method comprising:

providing a plurality of servers to provide access to services of an online commerce site, the plurality of servers including application programming interface (API) servers for servicing API calls received from a client;

receiving a request from the client via an API call at the online commerce site for an access rule;

identifying a first API server of the plurality of servers to which to direct the client for service by the online commerce site based on the API call; and replying to the request with the access rule, the access rule being to direct the client to the first API server upon performing an API function call.
7. The method of claim 6, wherein the API function call is to perform a function to facilitate the online commerce.
8. The method of claim 6, wherein the API function call is to retrieve information regarding items that are available for transaction via the online commerce site.
9. The method of claim 6, wherein the access rule includes a URL that addresses the first API server.
10. The method of claim 6, wherein the request includes an application ID to identify the access rule being returned.
11. The method of claim 6, wherein the request includes a developer ID to identify the access rule being returned.
12. The method of claim 6, wherein the request includes a session certificate in order to validate the client making the request.
13. The method of claim 6, further including:
responsive to receiving the request from the client, searching a database table for a record containing the access rule to reply to the client.
14. A method comprising:

providing a plurality of servers to provide access to services of an online commerce site, the plurality of servers including application programming interface (API) servers for servicing API calls received from a client;

receiving a request to access a service on a one of the plurality of servers via an API call, the request including an identifier of the client; and validating the request based on an access rule stored on the one of the plurality of servers associated with the identifier.
15. The method of claim 14, wherein the validating includes validating the request based on whether a URL in the access rule is associated with the one of the plurality of servers.
16. The method of claim 14, wherein the identifier is one of. an application identifier, a developer identifier, and a session certificate.
17. The method of claim 14, further including providing the access to the service.
18. The method of claim 14, wherein the one of the plurality of servers is an online auction server.
19. The method of claim 14, further including determining if the client has exceeded a maximum rate usage level.
20. A system, including:
a network; and a plurality of servers to provide access to services of an online commerce site, the plurality of servers including application programming interface (API) servers for servicing API calls received from a user computer, responsive to a request received from a user computer via an API call, determining an identity of the user computer, identifying a first server of the plurality of servers to which to direct the user computer for service by the online commerce site based on the API call, and transmitting an identifier for the first server to the user computer so as to enable the user computer to direct a request for service to the first server of the plurality of servers via an API call.
21. The system of claim 20, wherein the online commerce site is a network-based auction site.
CA 2708564 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site Active CA2708564C (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US10/025,267 2001-12-18
US10025267 US7305469B2 (en) 2001-12-18 2001-12-18 Prioritization of third party access to an online commerce site
CA 2469655 CA2469655C (en) 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA 2824037 CA2824037C (en) 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site

Publications (2)

Publication Number Publication Date
CA2708564A1 true true CA2708564A1 (en) 2003-06-26
CA2708564C CA2708564C (en) 2013-10-22

Family

ID=21825026

Family Applications (3)

Application Number Title Priority Date Filing Date
CA 2708564 Active CA2708564C (en) 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site
CA 2469655 Active CA2469655C (en) 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site
CA 2824037 Active CA2824037C (en) 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site

Family Applications After (2)

Application Number Title Priority Date Filing Date
CA 2469655 Active CA2469655C (en) 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site
CA 2824037 Active CA2824037C (en) 2001-12-18 2002-12-13 Prioritization of third party access to an online commerce site

Country Status (6)

Country Link
US (9) US7305469B2 (en)
EP (2) EP1456765A4 (en)
KR (1) KR20040063956A (en)
CN (3) CN100428213C (en)
CA (3) CA2708564C (en)
WO (1) WO2003052615A1 (en)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7305469B2 (en) 2001-12-18 2007-12-04 Ebay Inc. Prioritization of third party access to an online commerce site
US7383556B1 (en) 2002-02-08 2008-06-03 Mcafee, Inc. Extractor system, method and computer program product for managing network access on a per-application basis
US7558834B2 (en) 2003-12-29 2009-07-07 Ebay Inc. Method and system to process issue data pertaining to a system
US20050246187A1 (en) * 2004-04-30 2005-11-03 Reed Maltzman System and method to facilitate differentiated levels of service in a network-based marketplace
US8442883B2 (en) * 2004-06-30 2013-05-14 Siebel Systems, Inc. Relationship management in an auction environment
KR101122474B1 (en) * 2005-05-20 2012-02-29 에스케이 텔레콤주식회사 Method and System for user differentiated Data Network Service
US7747721B2 (en) * 2005-06-03 2010-06-29 Sbc Knowledge Ventures, L.P. Method and apparatus for managing broadband residential gateway
US20070083378A1 (en) * 2005-10-11 2007-04-12 Microsoft Corporation Secure application programming interface
CN101326493B (en) 2005-12-15 2012-06-13 艾利森电话股份有限公司 Method and device for distributing load of multiprocessor server
US8954355B2 (en) 2006-01-26 2015-02-10 Psi Systems, Inc. Integrated postage and shipping label system
US9037542B2 (en) * 2006-05-03 2015-05-19 Oracle International Corporation Reducing programming complexity in client applications when interfacing with database servers operating with different programming interfaces
US8180685B2 (en) * 2006-09-05 2012-05-15 Ip Investments Holding Llc Methods and systems for electronic commerce facility client-based presentation offer management
US8930555B2 (en) * 2007-03-08 2015-01-06 Microsoft Corporation Extending functionality of web-based applications
US20080281720A1 (en) * 2007-05-07 2008-11-13 Events. Org Method and apparatus of interactive bidding
JP4907603B2 (en) * 2007-06-27 2012-04-04 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. Access control system and an access control method
US20090248729A1 (en) * 2008-03-25 2009-10-01 Microsoft Corporation Online application platform and user communities
US9015322B2 (en) * 2008-12-30 2015-04-21 Avaya Inc. Access to resources in a virtual environment
US20110047055A1 (en) * 2009-08-24 2011-02-24 Maximillian Funk Dynamic Computer-Based Information Management System
CN102281311B (en) * 2010-06-10 2014-06-04 阿里巴巴集团控股有限公司 Method, system and device for implementing network service based on open application programming interface
US8775618B2 (en) * 2010-08-02 2014-07-08 Ebay Inc. Application platform with flexible permissioning
US9256900B2 (en) * 2010-11-15 2016-02-09 International Business Machines Corporation Managing service demand load relative to infrastructure capacity in a networked computing environment
US8671385B2 (en) 2011-01-07 2014-03-11 Mastercard International Incorporated Methods and systems for throttling calls to a service application through an open API
US8707276B2 (en) * 2011-01-07 2014-04-22 Mastercard International Incorporated Method and system for managing programmed applications in an open API environment
US9083534B2 (en) 2011-01-07 2015-07-14 Mastercard International Incorporated Method and system for propagating a client identity
US8677308B2 (en) * 2011-01-07 2014-03-18 Mastercard International Incorporated Method and system for generating an API request message
US9032204B2 (en) 2011-01-07 2015-05-12 Mastercard International Incorporated Methods and systems for providing a signed digital certificate in real time
US9635028B2 (en) * 2011-08-31 2017-04-25 Facebook, Inc. Proxy authentication
KR101171717B1 (en) * 2011-12-28 2012-09-13 (주)네오위즈게임즈 Method and server of preventing automatic program for item auction site of on-line game
US9430784B1 (en) 2012-03-30 2016-08-30 David Frederick System for E-commerce accessibility
CN102866909B (en) * 2012-08-27 2018-02-27 北京奇虎科技有限公司 System and method for controlling access to a resource lock interface resources
US20140096009A1 (en) * 2012-09-28 2014-04-03 Interactive Memories, Inc. Methods for Searching for Best Digital Color Options for Reproduction of Image-Based Layouts Created through an Electronic Interface
US8990839B2 (en) * 2013-04-22 2015-03-24 Microsoft Technology Licensing, Llc Controlling runtime access to application programming interfaces
CA2932286A1 (en) * 2013-12-04 2015-06-11 Wix.Com Ltd. System and method for third party application activity data collection
US9729506B2 (en) * 2014-08-22 2017-08-08 Shape Security, Inc. Application programming interface wall

Family Cites Families (144)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3581072A (en) 1968-03-28 1971-05-25 Frederick Nymeyer Auction market computation system
US3573747A (en) 1969-02-24 1971-04-06 Institutional Networks Corp Instinet communication system for effectuating the sale or exchange of fungible properties between subscribers
US4412287A (en) 1975-05-29 1983-10-25 Braddock Iii Walter D Automated stock exchange
US4903201A (en) 1983-11-03 1990-02-20 World Energy Exchange Corporation Automated futures trading exchange
US4677552A (en) 1984-10-05 1987-06-30 Sibley Jr H C International commodity trade exchange
US4674044A (en) 1985-01-30 1987-06-16 Merrill Lynch, Pierce, Fenner & Smith, Inc. Automated securities trading system
JPH0743748B2 (en) 1986-02-17 1995-05-15 株式会社オークネット Information transmission processing method of auction information transmission processing system
US4864516A (en) 1986-03-10 1989-09-05 International Business Machines Corporation Method for implementing an on-line presentation in an information processing system
US4799156A (en) 1986-10-01 1989-01-17 Strategic Processing Corporation Interactive market management system
US4823265A (en) 1987-05-11 1989-04-18 Nelson George E Renewable option accounting and marketing system
US5168446A (en) 1989-05-23 1992-12-01 Telerate Systems Incorporated System for conducting and processing spot commodity transactions
US5077665A (en) 1989-05-25 1991-12-31 Reuters Limited Distributed matching system
US5136501A (en) 1989-05-26 1992-08-04 Reuters Limited Anonymous matching system
US5101353A (en) 1989-05-31 1992-03-31 Lattice Investments, Inc. Automated system for providing liquidity to securities markets
FR2658635B1 (en) 1990-02-16 1992-10-16 Informations Ventes Publiques Method and auction processing system.
US5297031A (en) 1990-03-06 1994-03-22 Chicago Board Of Trade Method and apparatus for order management by market brokers
US5205200A (en) 1990-07-26 1993-04-27 Wright John J Hydraulic booster device for linear actuator
US5063507A (en) 1990-09-14 1991-11-05 Plains Cotton Cooperative Association Goods database employing electronic title or documentary-type title
US5243515A (en) 1990-10-30 1993-09-07 Lee Wayne M Secure teleprocessing bidding system
US5305200A (en) 1990-11-02 1994-04-19 Foreign Exchange Transaction Services, Inc. Financial exchange system having automated recovery/rollback of unacknowledged orders
US5258908A (en) 1990-11-02 1993-11-02 Foreign Exchange Transaction Services, Inc. Detection and prevention of duplicate trading transactions over a communications network
US5280422A (en) 1990-11-05 1994-01-18 Watlow/Winona, Inc. Method and apparatus for calibrating and controlling multiple heaters
GB9027249D0 (en) 1990-12-17 1991-02-06 Reuters Ltd Offer matching system
US5297032A (en) 1991-02-01 1994-03-22 Merrill Lynch, Pierce, Fenner & Smith Incorporated Securities trading workstation
GB9103907D0 (en) 1991-02-25 1991-04-10 Beaumont Maxin International L Interactive transaction processing system
CA2059078C (en) 1991-02-27 1995-10-03 Alexander G. Fraser Mediation of transactions by a communications system
DE69131251T2 (en) 1991-08-15 1999-12-09 Ibm System and method for processing images stored representative data
US5426281A (en) 1991-08-22 1995-06-20 Abecassis; Max Transaction protection system
US5375055A (en) 1992-02-03 1994-12-20 Foreign Exchange Transaction Services, Inc. Credit management for electronic brokerage system
US5325297A (en) 1992-06-25 1994-06-28 System Of Multiple-Colored Images For Internationally Listed Estates, Inc. Computer implemented method and system for storing and retrieving textual data and compressed image data
US5598557A (en) 1992-09-22 1997-01-28 Caere Corporation Apparatus and method for retrieving and grouping images representing text files based on the relevance of key words extracted from a selected file to the text files
CA2100134C (en) 1992-09-29 1999-06-22 Raymond Otto Colbert Secure credit/debit card authorization
WO1994018620A1 (en) * 1993-02-08 1994-08-18 Action Technologies, Inc. Method and apparatus for managing business processes
NL9300266A (en) 1993-02-10 1994-09-01 Theodoor Hubertus Maria Joseph Automated sales system.
JPH0728689A (en) 1993-07-09 1995-01-31 Hitachi Ltd Information processor
US5377258A (en) 1993-08-30 1994-12-27 National Medical Research Council Method and apparatus for an automated and interactive behavioral guidance system
JPH0764893A (en) 1993-08-31 1995-03-10 Canon Inc Network system
US5394324A (en) 1993-12-08 1995-02-28 Xerox Corporation Auction-based control system for energy resource management in a building
EP0736203A1 (en) 1993-12-23 1996-10-09 Diacom Technologies, Inc. Method and apparatus for implementing user feedback
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US5717989A (en) 1994-10-13 1998-02-10 Full Service Trade System Ltd. Full service trade system
US5715314A (en) 1994-10-24 1998-02-03 Open Market, Inc. Network sales system
JPH08161412A (en) 1994-12-07 1996-06-21 Oak Net:Kk Auction information transmitting and processing system
US5647389A (en) * 1995-02-02 1997-07-15 Parker & Harper Companies, Inc. Indexable latching handle assembly for quarter-turn rotary valves
US5890140A (en) 1995-02-22 1999-03-30 Citibank, N.A. System for communicating with an electronic delivery system that integrates global financial services
US5553145A (en) 1995-03-21 1996-09-03 Micali; Silvia Simultaneous electronic transactions with visible trusted parties
US5845265A (en) 1995-04-26 1998-12-01 Mercexchange, L.L.C. Consignment nodes
US7937312B1 (en) 1995-04-26 2011-05-03 Ebay Inc. Facilitating electronic commerce transactions through binding offers
US5689652A (en) 1995-04-27 1997-11-18 Optimark Technologies, Inc. Crossing network utilizing optimal mutual satisfaction density profile
US5640569A (en) 1995-04-28 1997-06-17 Sun Microsystems, Inc. Diverse goods arbitration system and method for allocating resources in a distributed computer system
US5657389A (en) 1995-05-08 1997-08-12 Image Data, Llc Positive identification system and method
EP1343076A3 (en) * 1995-05-26 2004-02-25 National Semiconductor Corporation integrated circuit with multiple functions sharing multiple internal signal buses according to distributed bus access and control arbitration
US5664115A (en) 1995-06-07 1997-09-02 Fraser; Richard Interactive computer system to match buyers and sellers of real estate, businesses and other property using the internet
US5706457A (en) 1995-06-07 1998-01-06 Hughes Electronics Image display and archiving system and method
US5956509A (en) 1995-08-18 1999-09-21 Microsoft Corporation System and method for performing remote requests with an on-line service network
US5826244A (en) 1995-08-23 1998-10-20 Xerox Corporation Method and system for providing a document service over a computer network using an automated brokered auction
CA2231263A1 (en) 1995-09-11 1997-03-20 Chester A. Ruszczyk Device, router, method and system for providing a hybrid multiple access protocol for users with multiple priorities
US5873069A (en) 1995-10-13 1999-02-16 American Tv & Appliance Of Madison, Inc. System and method for automatic updating and display of retail prices
US5715402A (en) 1995-11-09 1998-02-03 Spot Metals Online Method and system for matching sellers and buyers of spot metals
US5771291A (en) 1995-12-11 1998-06-23 Newton; Farrell User identification and authentication system using ultra long identification keys and ultra large databases of identification keys for secure remote terminal access to a host computer
US5845266A (en) 1995-12-12 1998-12-01 Optimark Technologies, Inc. Crossing network utilizing satisfaction density profile with price discovery features
US5884056A (en) 1995-12-28 1999-03-16 International Business Machines Corporation Method and system for video browsing on the world wide web
US5905975A (en) 1996-01-04 1999-05-18 Ausubel; Lawrence M. Computer implemented methods and apparatus for auctions
US6055518A (en) 1996-02-01 2000-04-25 At&T Corporation Secure auction systems
US5794219A (en) 1996-02-20 1998-08-11 Health Hero Network, Inc. Method of conducting an on-line auction with bid pooling
US5926794A (en) 1996-03-06 1999-07-20 Alza Corporation Visual rating system and method
US5774664A (en) * 1996-03-08 1998-06-30 Actv, Inc. Enhanced video programming system and method for incorporating and displaying retrieved integrated internet information segments
US5850442A (en) 1996-03-26 1998-12-15 Entegrity Solutions Corporation Secure world wide electronic commerce over an open network
US6243691B1 (en) 1996-03-29 2001-06-05 Onsale, Inc. Method and system for processing and transmitting electronic auction information
US5835896A (en) 1996-03-29 1998-11-10 Onsale, Inc. Method and system for processing and transmitting electronic auction information
CA2629281C (en) 1996-03-29 2015-05-05 Ebay Inc. Method and system for processing and transmitting electronic auction information
US5799285A (en) 1996-06-07 1998-08-25 Klingman; Edwin E. Secure system for electronic selling
US6154777A (en) * 1996-07-01 2000-11-28 Sun Microsystems, Inc. System for context-dependent name resolution
US6047264A (en) 1996-08-08 2000-04-04 Onsale, Inc. Method for supplying automatic status updates using electronic mail
US5890138A (en) 1996-08-26 1999-03-30 Bid.Com International Inc. Computer auction system
JP3407561B2 (en) 1996-09-04 2003-05-19 株式会社日立製作所 Auction apparatus and method
US5790790A (en) 1996-10-24 1998-08-04 Tumbleweed Software Corporation Electronic document delivery system in which notification of said electronic document is sent to a recipient thereof
US6192407B1 (en) 1996-10-24 2001-02-20 Tumbleweed Communications Corp. Private, trackable URLs for directed document delivery
US5905974A (en) 1996-12-13 1999-05-18 Cantor Fitzgerald Securities Automated auction protocol processor
US6035402A (en) 1996-12-20 2000-03-07 Gte Cybertrust Solutions Incorporated Virtual certificate authority
US5924072A (en) 1997-01-06 1999-07-13 Electronic Data Systems Corporation Knowledge management system and method
CA2287379C (en) 1997-01-10 2005-10-04 Silicon Gaming-Nevada Method and apparatus for providing authenticated, secure on-line communication between remote locations
US6119137A (en) 1997-01-30 2000-09-12 Tumbleweed Communications Corp. Distributed dynamic document conversion server
US5872848A (en) 1997-02-18 1999-02-16 Arcanvs Method and apparatus for witnessed authentication of electronic documents
US5922074A (en) 1997-02-28 1999-07-13 Xcert Software, Inc. Method of and apparatus for providing secure distributed directory services and public key infrastructure
JP3357812B2 (en) 1997-03-18 2002-12-16 株式会社東芝 Mutual credit server and a distributed mutual credit system
US5803500A (en) 1997-03-27 1998-09-08 Mossberg; Bjoern E. F. Method and kit for conducting an auction
US6061448A (en) 1997-04-01 2000-05-09 Tumbleweed Communications Corp. Method and system for dynamic server document encryption
US6047322A (en) 1997-05-27 2000-04-04 Ukiah Software, Inc. Method and apparatus for quality of service management
US6021438A (en) * 1997-06-18 2000-02-01 Wyatt River Software, Inc. License management system using daemons and aliasing
US6236997B1 (en) * 1997-06-23 2001-05-22 Oracle Corporation Apparatus and method for accessing foreign databases in a heterogeneous database system
US6223292B1 (en) 1997-07-15 2001-04-24 Microsoft Corporation Authorization systems, methods, and computer program products
US5974412A (en) 1997-09-24 1999-10-26 Sapient Health Network Intelligent query system for automatically indexing information in a database and automatically categorizing users
US5991739A (en) 1997-11-24 1999-11-23 Food.Com Internet online order method and apparatus
US6415269B1 (en) 1998-05-29 2002-07-02 Bidcatcher, L.P. Interactive remote auction bidding system
US6035288A (en) 1998-06-29 2000-03-07 Cendant Publishing, Inc. Interactive computer-implemented system and method for negotiating sale of goods and/or services
US6738815B1 (en) * 1998-07-01 2004-05-18 Telcordia Technologies, Inc. Systems and methods for utilizing a communications network for providing mobile users access to legacy systems
US6453353B1 (en) * 1998-07-10 2002-09-17 Entrust, Inc. Role-based navigation of information resources
US6182142B1 (en) 1998-07-10 2001-01-30 Encommerce, Inc. Distributed access management of information resources
US6189033B1 (en) 1998-07-16 2001-02-13 Hewlett-Packard Company Method and system for providing performance guarantees for a data service system of a data access network system
US6285989B1 (en) 1998-08-07 2001-09-04 Ariba, Inc. Universal on-line trading market design and deployment system
US6058417A (en) 1998-10-23 2000-05-02 Ebay Inc. Information presentation and management in an online trading environment
US6760775B1 (en) * 1999-03-05 2004-07-06 At&T Corp. System, method and apparatus for network service load and reliability management
US8375127B1 (en) 1999-03-31 2013-02-12 International Business Machines Corporation Method and system for using virtual URLs for load balancing
US6186886B1 (en) * 1999-04-14 2001-02-13 Midwest Research Institute Vehicle cabin cooling system for capturing and exhausting heated boundary layer air from inner surfaces of solar heated windows
US6968390B1 (en) * 1999-04-15 2005-11-22 International Business Machines Corporation Method and system for enabling a network function in a context of one or all server names in a multiple server name environment
US6609112B1 (en) * 1999-05-20 2003-08-19 Dovebid, Inc. System and method for providing proxy-based online Dutch auction services
WO2000078557A1 (en) 1999-06-21 2000-12-28 Ebay, Inc. Defining and uploading multiple transaction descriptions from a client to a transaction facility
US6178408B1 (en) 1999-07-14 2001-01-23 Recot, Inc. Method of redeeming collectible points
US7100195B1 (en) * 1999-07-30 2006-08-29 Accenture Llp Managing user information on an e-commerce system
WO2001014990A1 (en) * 1999-08-21 2001-03-01 Webever, Inc. Method for content delivery over the internet
US6615253B1 (en) * 1999-08-31 2003-09-02 Accenture Llp Efficient server side data retrieval for execution of client side applications
US7020697B1 (en) * 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
WO2001035243A1 (en) * 1999-11-08 2001-05-17 Megaxess, Inc. QUALITY OF SERVICE (QoS) NEGOTIATION PROCEDURE FOR MULTI-TRANSPORT PROTOCOL ACCESS FOR SUPPORTING MULTI-MEDIA APPLICATIONS WITH QoS ASSURANCE
JP3546787B2 (en) * 1999-12-16 2004-07-28 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Maschines Corporation Access control system, access control method, and storage medium
US20030033205A1 (en) 2000-01-10 2003-02-13 D.K. Nowers Method and system for facilitating fulfillment of electronic commercial transactions
US20010044787A1 (en) 2000-01-13 2001-11-22 Gil Shwartz Secure private agent for electronic transactions
US6823424B2 (en) * 2000-01-26 2004-11-23 Hewlett-Packard Development Company, L.P. Rebuild bus utilization
KR20000036643A (en) 2000-03-24 2000-07-05 이동훈 Information providing and electronic commerce dealing apparatus by using monitor system comprising a plurality of information terminals and the method thereof
CA2404014A1 (en) * 2000-03-30 2001-10-11 Cygent, Inc. System and method for establishing electronic business systems for supporting communications services commerce
US6820082B1 (en) * 2000-04-03 2004-11-16 Allegis Corporation Rule based database security system and method
KR20010095998A (en) 2000-04-14 2001-11-07 강상훈 apparatus having matching agent and method for implementing marketing policy
US6976090B2 (en) * 2000-04-20 2005-12-13 Actona Technologies Ltd. Differentiated content and application delivery via internet
US7243356B1 (en) * 2000-05-09 2007-07-10 Sun Microsystems, Inc. Remote method invocation with secure messaging in a distributed computing environment
US6973493B1 (en) * 2000-05-09 2005-12-06 Sun Microsystems, Inc. Mechanism and apparatus for security of newly spawned repository spaces in a distributed computing environment
US20010051980A1 (en) 2000-06-01 2001-12-13 Raciborski Nathan F. Preloading content objects on content exchanges
US6947977B1 (en) * 2000-06-09 2005-09-20 Metadigm Llc Scalable transaction system for a network environment
JP3790661B2 (en) * 2000-09-08 2006-06-28 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Maschines Corporation Access control system
JP3885483B2 (en) * 2000-10-30 2007-02-21 富士通株式会社 Service execution method and apparatus
CN1489736A (en) * 2000-11-28 2004-04-14 第四传递公司 Method and system for maintaining and distributing wireless applications
US7421489B2 (en) 2000-12-29 2008-09-02 Nortel Network Limited Network protocols for distributing functions within a network
US20020069279A1 (en) * 2000-12-29 2002-06-06 Romero Francisco J. Apparatus and method for routing a transaction based on a requested level of service
WO2002073926A1 (en) * 2001-03-09 2002-09-19 Ascio Technologies, Inc. System and a method for managing digital identities
US7185364B2 (en) * 2001-03-21 2007-02-27 Oracle International Corporation Access system interface
US7461369B2 (en) * 2001-03-30 2008-12-02 Bmc Software, Inc. Java application response time analyzer
KR20010079045A (en) 2001-06-08 2001-08-22 김동홍 Electronic commerce method based on P2P working wire and wireless together
US7487233B2 (en) * 2001-12-05 2009-02-03 Canon Kabushiki Kaisha Device access based on centralized authentication
US7305469B2 (en) 2001-12-18 2007-12-04 Ebay Inc. Prioritization of third party access to an online commerce site
EP1590720A4 (en) 2003-01-24 2006-10-25 Auctiondrop Inc Method and apparatus for a selling service
WO2004107121A3 (en) 2003-05-22 2005-03-31 Pershing Investments Llc Method and system for predicting attrition customers
US7814142B2 (en) * 2003-08-27 2010-10-12 International Business Machines Corporation User interface service for a services oriented architecture in a data integration platform
US7774350B2 (en) 2004-02-26 2010-08-10 Ebay Inc. System and method to provide and display enhanced feedback in an online transaction processing environment
US20050246187A1 (en) 2004-04-30 2005-11-03 Reed Maltzman System and method to facilitate differentiated levels of service in a network-based marketplace
US8413229B2 (en) * 2006-08-21 2013-04-02 Citrix Systems, Inc. Method and appliance for authenticating, by an appliance, a client to access a virtual private network connection, based on an attribute of a client-side certificate

Also Published As

Publication number Publication date Type
CN1723451A (en) 2006-01-18 application
CA2469655C (en) 2010-09-28 grant
KR20040063956A (en) 2004-07-14 application
EP1456765A1 (en) 2004-09-15 application
US9626705B2 (en) 2017-04-18 grant
CN100428213C (en) 2008-10-22 grant
CN101261712A (en) 2008-09-10 application
US8239533B2 (en) 2012-08-07 grant
EP2618540A2 (en) 2013-07-24 application
US20140215069A1 (en) 2014-07-31 application
US20140215070A1 (en) 2014-07-31 application
US20120079114A1 (en) 2012-03-29 application
CA2469655A1 (en) 2003-06-26 application
EP2618540A3 (en) 2014-08-27 application
US9679323B2 (en) 2017-06-13 grant
EP1456765A4 (en) 2011-01-19 application
WO2003052615A1 (en) 2003-06-26 application
US9589289B2 (en) 2017-03-07 grant
US9508094B2 (en) 2016-11-29 grant
CA2708564C (en) 2013-10-22 grant
US8108518B2 (en) 2012-01-31 grant
CA2824037A1 (en) 2003-06-26 application
US20140215068A1 (en) 2014-07-31 application
CA2824037C (en) 2017-01-31 grant
US20140214613A1 (en) 2014-07-31 application
US8793375B2 (en) 2014-07-29 grant
CN101261711A (en) 2008-09-10 application
US20120297065A1 (en) 2012-11-22 application
US8918505B2 (en) 2014-12-23 grant
US7305469B2 (en) 2007-12-04 grant
US20080046279A1 (en) 2008-02-21 application
US20140215067A1 (en) 2014-07-31 application
US20040133478A1 (en) 2004-07-08 application

Similar Documents

Publication Publication Date Title
Sandholm et al. Nomad: mobile agent system for an Internet-based auction house
US6285989B1 (en) Universal on-line trading market design and deployment system
US7587367B2 (en) Method and system to provide feedback data within a distributed e-commerce system
US7349890B1 (en) System and method for dynamically applying content management rules
US7139792B1 (en) Mechanism for locking client requests to a particular server
US7093019B1 (en) Method and apparatus for providing an automated login process
US20030195813A1 (en) System and method for automated auctioning of web services
US7433835B2 (en) Providing a marketplace for web services
US20080086735A1 (en) Method and system for providing a client access to an external service via an application services platform
US7337148B2 (en) Enhanced security and processing for web service business transactions
US7324972B1 (en) Managing transactions on a network: four or more parties
US20050102227A1 (en) Electronic commerce method and system utilizing integration server
US20060271460A1 (en) Method and system to provide user created social networks in a distributed commerce system
US20020007338A1 (en) Method and apparatus for conducting a bidding session
US20090063667A1 (en) Methods and systems for validating real time network communications
US20060178983A1 (en) Mortgage broker system allowing broker to match mortgagor with multiple lenders and method therefor
US7127404B1 (en) Method and apparatus for a dual online registration contact information system
US20030191677A1 (en) Method and system for integrating e-Logistics processes into a user/provider interface using Web Services
US20030093326A1 (en) Method and apparatus to facilitate a transaction within a network-based auction facility
US20030145066A1 (en) Contents delivery network service method and system
US20100235254A1 (en) Application Products with In-Application Subsequent Feature Access Using Network-Based Distribution System
US6862612B1 (en) Multiple ‘express buy’ profiles for multiple stores (dell.com and gigabuys.com)
US20100211952A1 (en) Business event processing
US6941376B2 (en) System and method for integrating public and private data
US20020178087A1 (en) Internet-based instant messaging hybrid peer-to-peer distributed electronic commerce system and method

Legal Events

Date Code Title Description
EEER Examination request