package searchws; option java_package = "com.citygridmedia.search.ws.dto.protocolbuffer"; option java_outer_classname = "SearchResponse"; message Region { optional string type=1; optional string latitude=2; optional string longitude=3; optional string defaultradius=4; } message Histogram { optional string name=1; repeated HistogramItem detail=2; } message HistogramItem { optional string name=1; optional int32 count=2; optional string url=3; repeated int32 tag_ids=4; } message Error { repeated string error = 1; } message Address { optional string street=1; optional string city=2; optional string state=3; optional string postalCode=4; } message LocationSearchResponse { optional int32 lasthit=1; optional int32 firsthit=2; optional int32 totalhits=3; optional int32 page=4; optional int32 rpp=5; optional string queryid=6; optional string uri=7; optional string didyoumean=8; repeated Region regions=9; repeated Location locations=10; repeated Histogram histograms=11; } message Location { optional int32 id=1; optional string impression_id=2; optional string image_url=3; optional string name=4; optional float rating=5; optional Address address=6; optional string phone=7; optional string fax=8; optional string latitude=9; optional string longitude=10; optional string neighborhoods=11; optional string categories=12; optional double distance=13; optional string tagline=14; optional string url=15; optional string profile_url=16; optional string offer_text=17; optional bool featured=18; optional bool has_offers=19; optional bool has_video=20; optional int32 expansion_count=21; optional string expansion_url=22; repeated Tag tags=23; optional int32 review_count=24; } message EventSearchResponse { optional int32 lasthit=1; optional int32 firsthit=2; optional int32 totalhits=3; optional int32 page=4; optional int32 rpp=5; optional string queryid=6; optional string uri=7; optional string didyoumean=8; repeated Region regions=9; repeated Event events=10; repeated Histogram histograms=11; } message Event { optional int32 id=1; optional string impression_id=2; optional string name=3; optional int32 location_id=4; optional string location_name=5; optional int32 review_count=6; optional Address address=7; optional string latitude=8; optional string longitude=9; optional string categories=10; optional string description=11; repeated Tag tags=12; } message OfferSearchResponse { optional int32 lasthit=1; optional int32 firsthit=2; optional int32 totalhits=3; optional int32 page=4; optional int32 rpp=5; optional string queryid=6; optional string uri=7; optional string didyoumean=8; repeated Region regions=9; repeated Offer offers=10; repeated Histogram histograms=11; } message Offer { optional string id=1; optional string reference_id=2; optional string impression_id=3; optional string title=4; optional string description=5; optional int32 popularity=6; optional string redemption_type=7; optional int64 startdate=8; optional int64 expirydate=9; optional string image_url=10; optional string content_provider_id=11; optional string content_provider_image_url=12; optional string content_provider_text=13; repeated OfferLocation location_info=14; optional int32 redemption_type_id=15; optional string redemption_code=16; optional string terms=17; repeated string offer_type=18; optional string offer_source=19; optional string redemption_url=20; optional string face_value=21; optional string discount_value=22; optional int32 offer_collapse_count=23; } message Tag { optional int32 id=1; optional string name=2; optional bool primary=3; } message OfferLocation { optional int32 id=1; optional int32 infousa_id=2; optional string image_url=3; optional string name=4; optional float rating=5; optional Address address=6; optional string phone=7; optional string latitude=8; optional string longitude=9; optional string business_hours=10; repeated Tag tags=11; } message Review { optional string id=1; optional string title=2; optional string text=3; optional string pros=4; optional string cons=5; optional int32 rating=6; optional int64 createDate=7; optional string author=8; optional int32 helpfulCount=9; optional int32 unhelpfulCount=10; optional string type=11; optional string source=12; optional string refId=13; optional string sourceId=14; optional string sourceImageUrl=15; optional string attributionText=16; optional string attributionUrl=17; optional int32 locationId=18; optional string locationName=19; optional string impression_id=20; optional string author_url=21; optional string review_url=22; } message ReviewSearchResponse { optional int32 lasthit=1; optional int32 firsthit=2; optional int32 totalhits=3; optional int32 page=4; optional int32 rpp=5; optional string queryid=6; optional string uri=7; optional string didyoumean=8; repeated Region regions=9; repeated Review reviews=10; repeated Histogram histograms=11; }