Patent ID: 8694378

Claim:
A computer-implemented method, comprising: receiving, at an advertising exchange, advertisement requests for publisher hosts from user devices, each request specifying a publisher host, and for each request, determining whether the publisher host specifies a user process of a first type for processing advertisements at the user device, wherein the user process of a first type is a process that requires at the publisher host a publisher side file of a vendor for the advertisement served by a vendor through the advertising exchange, the publisher side file for the vendor being a file that facilitates processing of an expandable advertisement served by the vendor in a resource served by the publisher host, and wherein each publisher side file for a vendor corresponds to only the expandable content items the vendor serves; for each advertisement request for a publisher host that does not specify a user process of the first type, enabling, by the advertising exchange, expandable advertisements served by a set of first vendors to participate in an advertisement selection process to select an advertisement to fulfill the request; for each content item request for a publisher host that does specify a user process of the first type: accessing, by the advertising exchange, an association of publisher hosts and vendors that specifies, for each publisher host that specifies a user process of the first type, vendors for which the publisher host provides publisher side files; determining, by the advertising exchange, a set of second vendors for the publisher host, each of the second vendors being a vendor for which the publisher host provides a publisher side file for the vendor, and wherein the set of second vendors is selected from the set of first vendors and excludes vendors for which the publisher does not provide a publisher side file; enabling, by the advertising exchange, expandable advertisements served only by the set of second vendors to participate in the advertisement selection process to select an advertisement to fulfill the request; for each advertisement request: receiving data indicating a selected expandable advertisement selected by the advertisement selection process; and providing response data in response to the advertisement request that causes the selected expandable advertisement to be served to the user device.