AUTHORIZEDBUYERSMARKETPLACE

authorizedbuyersmarketplace.bidders.auctionPackages.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.bidders.finalizedDeals.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.auctionPackages.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.auctionPackages.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.auctionPackages.subscribe

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.auctionPackages.subscribeClients

valid {
    input.Body.clients[_] == STRING
    input.ReqMap.auctionPackage == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.auctionPackages.unsubscribe

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.auctionPackages.unsubscribeClients

valid {
    input.Body.clients[_] == STRING
    input.ReqMap.auctionPackage == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.activate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.create

enum_ClientRole := [ "CLIENT_ROLE_UNSPECIFIED", "CLIENT_DEAL_VIEWER", "CLIENT_DEAL_NEGOTIATOR", "CLIENT_DEAL_APPROVER" ]

valid {
    input.Body.displayName == STRING
    input.Body.partnerClientId == STRING
    input.Body.role == enum_ClientRole[_]
    input.Body.sellerVisible == BOOLEAN
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.deactivate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.patch

enum_ClientRole := [ "CLIENT_ROLE_UNSPECIFIED", "CLIENT_DEAL_VIEWER", "CLIENT_DEAL_NEGOTIATOR", "CLIENT_DEAL_APPROVER" ]

valid {
    input.Body.displayName == STRING
    input.Body.partnerClientId == STRING
    input.Body.role == enum_ClientRole[_]
    input.Body.sellerVisible == BOOLEAN
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.users.activate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.users.create

valid {
    input.Body.email == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.users.deactivate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.users.delete

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.users.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.clients.users.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.dataSegments.activate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.dataSegments.create

valid {
    input.Body.cpmFee.currencyCode == STRING
    input.Body.cpmFee.nanos == INTEGER
    input.Body.cpmFee.units == STRING
    input.Body.name == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.dataSegments.deactivate

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.dataSegments.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.dataSegments.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.dataSegments.patch

valid {
    input.Body.cpmFee.currencyCode == STRING
    input.Body.cpmFee.nanos == INTEGER
    input.Body.cpmFee.units == STRING
    input.Body.name == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.finalizedDeals.addCreative

valid {
    input.Body.creative == STRING
    input.ReqMap.deal == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.finalizedDeals.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.finalizedDeals.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.orderBy == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.finalizedDeals.pause

valid {
    input.Body.reason == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.finalizedDeals.resume

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.finalizedDeals.setReadyToServe

valid {
    input.Body.STRING == STRING
    input.ReqMap.deal == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.accept

valid {
    input.Body.proposalRevision == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.addNote

valid {
    input.Body.note.note == STRING
    input.ReqMap.proposal == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.cancelNegotiation

valid {
    input.Body.STRING == STRING
    input.ReqMap.proposal == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.deals.batchUpdate

enum_DayPartDayOfWeek := [ "DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY" ]
enum_DayPartTargetingTimeZoneType := [ "TIME_ZONE_TYPE_UNSPECIFIED", "SELLER", "USER" ]
enum_PriceType := [ "TYPE_UNSPECIFIED", "CPM", "CPD" ]
enum_ProgrammaticGuaranteedTermsReservationType := [ "RESERVATION_TYPE_UNSPECIFIED", "STANDARD", "SPONSORSHIP" ]

valid {
    input.Body.requests[_].deal.estimatedGrossSpend.currencyCode == STRING
    input.Body.requests[_].deal.estimatedGrossSpend.nanos == INTEGER
    input.Body.requests[_].deal.estimatedGrossSpend.units == STRING
    input.Body.requests[_].deal.flightEndTime == STRING
    input.Body.requests[_].deal.flightStartTime == STRING
    input.Body.requests[_].deal.name == STRING
    input.Body.requests[_].deal.preferredDealTerms.fixedPrice.amount.currencyCode == STRING
    input.Body.requests[_].deal.preferredDealTerms.fixedPrice.amount.nanos == INTEGER
    input.Body.requests[_].deal.preferredDealTerms.fixedPrice.amount.units == STRING
    input.Body.requests[_].deal.preferredDealTerms.fixedPrice.type == enum_PriceType[_]
    input.Body.requests[_].deal.privateAuctionTerms.floorPrice.amount.currencyCode == STRING
    input.Body.requests[_].deal.privateAuctionTerms.floorPrice.amount.nanos == INTEGER
    input.Body.requests[_].deal.privateAuctionTerms.floorPrice.amount.units == STRING
    input.Body.requests[_].deal.privateAuctionTerms.floorPrice.type == enum_PriceType[_]
    input.Body.requests[_].deal.programmaticGuaranteedTerms.fixedPrice.amount.currencyCode == STRING
    input.Body.requests[_].deal.programmaticGuaranteedTerms.fixedPrice.amount.nanos == INTEGER
    input.Body.requests[_].deal.programmaticGuaranteedTerms.fixedPrice.amount.units == STRING
    input.Body.requests[_].deal.programmaticGuaranteedTerms.fixedPrice.type == enum_PriceType[_]
    input.Body.requests[_].deal.programmaticGuaranteedTerms.guaranteedLooks == STRING
    input.Body.requests[_].deal.programmaticGuaranteedTerms.impressionCap == STRING
    input.Body.requests[_].deal.programmaticGuaranteedTerms.minimumDailyLooks == STRING
    input.Body.requests[_].deal.programmaticGuaranteedTerms.percentShareOfVoice == STRING
    input.Body.requests[_].deal.programmaticGuaranteedTerms.reservationType == enum_ProgrammaticGuaranteedTermsReservationType[_]
    input.Body.requests[_].deal.publisherProfile == STRING
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].dayOfWeek == enum_DayPartDayOfWeek[_]
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].endTime.hours == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].endTime.minutes == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].endTime.nanos == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].endTime.seconds == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].startTime.hours == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].startTime.minutes == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].startTime.nanos == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.dayParts[_].startTime.seconds == INTEGER
    input.Body.requests[_].deal.targeting.daypartTargeting.timeZoneType == enum_DayPartTargetingTimeZoneType[_]
    input.Body.requests[_].deal.targeting.userListTargeting.excludedCriteriaIds[_] == STRING
    input.Body.requests[_].deal.targeting.userListTargeting.targetedCriteriaIds[_] == STRING
    input.Body.requests[_].updateMask == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.deals.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.deals.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.deals.patch

enum_DayPartDayOfWeek := [ "DAY_OF_WEEK_UNSPECIFIED", "MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY" ]
enum_DayPartTargetingTimeZoneType := [ "TIME_ZONE_TYPE_UNSPECIFIED", "SELLER", "USER" ]
enum_PriceType := [ "TYPE_UNSPECIFIED", "CPM", "CPD" ]
enum_ProgrammaticGuaranteedTermsReservationType := [ "RESERVATION_TYPE_UNSPECIFIED", "STANDARD", "SPONSORSHIP" ]

valid {
    input.Body.estimatedGrossSpend.currencyCode == STRING
    input.Body.estimatedGrossSpend.nanos == INTEGER
    input.Body.estimatedGrossSpend.units == STRING
    input.Body.flightEndTime == STRING
    input.Body.flightStartTime == STRING
    input.Body.name == STRING
    input.Body.preferredDealTerms.fixedPrice.amount.currencyCode == STRING
    input.Body.preferredDealTerms.fixedPrice.amount.nanos == INTEGER
    input.Body.preferredDealTerms.fixedPrice.amount.units == STRING
    input.Body.preferredDealTerms.fixedPrice.type == enum_PriceType[_]
    input.Body.privateAuctionTerms.floorPrice.amount.currencyCode == STRING
    input.Body.privateAuctionTerms.floorPrice.amount.nanos == INTEGER
    input.Body.privateAuctionTerms.floorPrice.amount.units == STRING
    input.Body.privateAuctionTerms.floorPrice.type == enum_PriceType[_]
    input.Body.programmaticGuaranteedTerms.fixedPrice.amount.currencyCode == STRING
    input.Body.programmaticGuaranteedTerms.fixedPrice.amount.nanos == INTEGER
    input.Body.programmaticGuaranteedTerms.fixedPrice.amount.units == STRING
    input.Body.programmaticGuaranteedTerms.fixedPrice.type == enum_PriceType[_]
    input.Body.programmaticGuaranteedTerms.guaranteedLooks == STRING
    input.Body.programmaticGuaranteedTerms.impressionCap == STRING
    input.Body.programmaticGuaranteedTerms.minimumDailyLooks == STRING
    input.Body.programmaticGuaranteedTerms.percentShareOfVoice == STRING
    input.Body.programmaticGuaranteedTerms.reservationType == enum_ProgrammaticGuaranteedTermsReservationType[_]
    input.Body.publisherProfile == STRING
    input.Body.targeting.daypartTargeting.dayParts[_].dayOfWeek == enum_DayPartDayOfWeek[_]
    input.Body.targeting.daypartTargeting.dayParts[_].endTime.hours == INTEGER
    input.Body.targeting.daypartTargeting.dayParts[_].endTime.minutes == INTEGER
    input.Body.targeting.daypartTargeting.dayParts[_].endTime.nanos == INTEGER
    input.Body.targeting.daypartTargeting.dayParts[_].endTime.seconds == INTEGER
    input.Body.targeting.daypartTargeting.dayParts[_].startTime.hours == INTEGER
    input.Body.targeting.daypartTargeting.dayParts[_].startTime.minutes == INTEGER
    input.Body.targeting.daypartTargeting.dayParts[_].startTime.nanos == INTEGER
    input.Body.targeting.daypartTargeting.dayParts[_].startTime.seconds == INTEGER
    input.Body.targeting.daypartTargeting.timeZoneType == enum_DayPartTargetingTimeZoneType[_]
    input.Body.targeting.userListTargeting.excludedCriteriaIds[_] == STRING
    input.Body.targeting.userListTargeting.targetedCriteriaIds[_] == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.patch

valid {
    input.Body.buyerContacts[_].displayName == STRING
    input.Body.buyerContacts[_].email == STRING
    input.Body.buyerPrivateData.referenceId == STRING
    input.Body.name == STRING
    input.Body.notes[_].note == STRING
    input.Body.pausingConsented == BOOLEAN
    input.Body.publisherProfile == STRING
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.proposals.sendRfp

enum_AdSizeType := [ "TYPE_UNSPECIFIED", "PIXEL", "INTERSTITIAL", "NATIVE", "FLUID" ]
enum_PriceType := [ "TYPE_UNSPECIFIED", "CPM", "CPD" ]
enum_ProgrammaticGuaranteedTermsReservationType := [ "RESERVATION_TYPE_UNSPECIFIED", "STANDARD", "SPONSORSHIP" ]

valid {
    input.Body.buyerContacts[_].displayName == STRING
    input.Body.buyerContacts[_].email == STRING
    input.Body.client == STRING
    input.Body.displayName == STRING
    input.Body.estimatedGrossSpend.currencyCode == STRING
    input.Body.estimatedGrossSpend.nanos == INTEGER
    input.Body.estimatedGrossSpend.units == STRING
    input.Body.flightEndTime == STRING
    input.Body.flightStartTime == STRING
    input.Body.geoTargeting.excludedCriteriaIds[_] == STRING
    input.Body.geoTargeting.targetedCriteriaIds[_] == STRING
    input.Body.inventorySizeTargeting.excludedInventorySizes[_].height == STRING
    input.Body.inventorySizeTargeting.excludedInventorySizes[_].type == enum_AdSizeType[_]
    input.Body.inventorySizeTargeting.excludedInventorySizes[_].width == STRING
    input.Body.inventorySizeTargeting.targetedInventorySizes[_].height == STRING
    input.Body.inventorySizeTargeting.targetedInventorySizes[_].type == enum_AdSizeType[_]
    input.Body.inventorySizeTargeting.targetedInventorySizes[_].width == STRING
    input.Body.note == STRING
    input.Body.preferredDealTerms.fixedPrice.amount.currencyCode == STRING
    input.Body.preferredDealTerms.fixedPrice.amount.nanos == INTEGER
    input.Body.preferredDealTerms.fixedPrice.amount.units == STRING
    input.Body.preferredDealTerms.fixedPrice.type == enum_PriceType[_]
    input.Body.programmaticGuaranteedTerms.fixedPrice.amount.currencyCode == STRING
    input.Body.programmaticGuaranteedTerms.fixedPrice.amount.nanos == INTEGER
    input.Body.programmaticGuaranteedTerms.fixedPrice.amount.units == STRING
    input.Body.programmaticGuaranteedTerms.fixedPrice.type == enum_PriceType[_]
    input.Body.programmaticGuaranteedTerms.guaranteedLooks == STRING
    input.Body.programmaticGuaranteedTerms.impressionCap == STRING
    input.Body.programmaticGuaranteedTerms.minimumDailyLooks == STRING
    input.Body.programmaticGuaranteedTerms.percentShareOfVoice == STRING
    input.Body.programmaticGuaranteedTerms.reservationType == enum_ProgrammaticGuaranteedTermsReservationType[_]
    input.Body.publisherProfile == STRING
    input.ReqMap.buyer == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.publisherProfiles.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

authorizedbuyersmarketplace.buyers.publisherProfiles.list

valid {
    input.ReqMap.parent == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}