---
title: "GET /v2beta1/accounts/{accountId}/products/{productId}"
method: GET
path: "/v2beta1/accounts/{accountId}/products/{productId}"
tags: ["accounts"]
---

# GET /v2beta1/accounts/{accountId}/products/{productId}

`GET /v2beta1/accounts/{accountId}/products/{productId}`

## Request

- Base URL: `https://adexchangebuyer.googleapis.com`
- URL: `https://adexchangebuyer.googleapis.com/v2beta1/accounts/{accountId}/products/{productId}`
- Auth: OAuth 2 and OAuth 2
  - Implicit: `https://accounts.google.com/o/oauth2/auth`
  - Scopes: `https://www.googleapis.com/auth/adexchange.buyer`
  - Authorization code: `https://accounts.google.com/o/oauth2/auth`
  - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/adexchange.buyer`

Gets the requested product by ID.

## Path parameters

- `accountId` string, required
- `productId` string, required

## Response `200`

Successful response

- Product: A product is a segment of inventory that a seller wants to sell. It is associated with certain terms and targeting information which helps the buyer know more about the inventory.
  - `availableEndTime` string, google-datetime: The proposed end time for the deal. The field will be truncated to the order of seconds during serving.
  - `availableStartTime` string, google-datetime: Inventory availability dates. The start time will be truncated to seconds during serving. Thus, a field specified as 3:23:34.456 (HH:mm:ss.SSS) will be truncated to 3:23:34 when serving.
  - `createTime` string, google-datetime: Creation time.
  - `creatorContacts` ContactInformation[]: Optional contact information for the creator of this product.
    - `email` string: Email address for the contact.
    - `name` string: The name of the contact.
  - `displayName` string: The display name for this product as set by the seller.
  - `hasCreatorSignedOff` boolean: If the creator has already signed off on the product, then the buyer can finalize the deal by accepting the product as is. When copying to a proposal, if any of the terms are changed, then auto_finalize is automatically set to false.
  - `productId` string: The unique ID for the product.
  - `productRevision` string, int64: The revision number of the product (auto-assigned by Marketplace).
  - `publisherProfileId` string: An ID which can be used by the Publisher Profile API to get more information about the seller that created this product.
  - `seller` Seller: Represents a seller of inventory. Each seller is identified by a unique Ad Manager account ID.
    - `accountId` string: The unique ID for the seller. The seller fills in this field. The seller account ID is then available to buyer in the product.
    - `subAccountId` string: Output only. Ad manager network code for the seller.
  - `syndicationProduct` 'SYNDICATION_PRODUCT_UNSPECIFIED' | 'CONTENT' | 'MOBILE' | 'VIDEO' | 'GAMES': The syndication product associated with the deal.
  - `targetingCriterion` TargetingCriteria[]: Targeting that is shared between the buyer and the seller. Each targeting criterion has a specified key and for each key there is a list of inclusion value or exclusion values.
    - `exclusions` TargetingValue[]: The list of values to exclude from targeting. Each value is AND'd together.
      - `creativeSizeValue` CreativeSize: Specifies the size of the creative.
        - `allowedFormats` string[]: What formats are allowed by the publisher. If this repeated field is empty then all formats are allowed. For example, if this field contains AllowedFormatType.AUDIO then the publisher only allows an audio ad (without any video).
        - `companionSizes` Size[]: For video creatives specifies the sizes of companion ads (if present). Companion sizes may be filled in only when creative_size_type = VIDEO
          - `height` integer: The height of the creative.
          - `width` integer: The width of the creative
        - `creativeSizeType` 'CREATIVE_SIZE_TYPE_UNSPECIFIED' | 'REGULAR' | 'INTERSTITIAL' | 'VIDEO' | 'NATIVE': The creative size type.
        - `nativeTemplate` 'UNKNOWN_NATIVE_TEMPLATE' | 'NATIVE_CONTENT_AD' | 'NATIVE_APP_INSTALL_AD' | 'NATIVE_VIDEO_CONTENT_AD' | 'NATIVE_VIDEO_APP_INSTALL_AD': Output only. The native template for this creative. It will have a value only if creative_size_type = CreativeSizeType.NATIVE.
        - `size` Size: Message depicting the size of the creative. The units of width and height depend on the type of the targeting.
          - `height` integer: The height of the creative.
          - `width` integer: The width of the creative
        - `skippableAdType` 'SKIPPABLE_AD_TYPE_UNSPECIFIED' | 'GENERIC' | 'INSTREAM_SELECT' | 'NOT_SKIPPABLE': The type of skippable ad for this creative. It will have a value only if creative_size_type = CreativeSizeType.VIDEO.
      - `dayPartTargetingValue` DayPartTargeting: Specifies the day part targeting criteria.
        - `dayParts` DayPart[]: A list of day part targeting criterion.
          - `dayOfWeek` 'DAY_OF_WEEK_UNSPECIFIED' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': The day of the week to target. If unspecified, applicable to all days.
          - `endTime` TimeOfDay: Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.
            - `hours` integer: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
            - `minutes` integer: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            - `nanos` integer: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            - `seconds` integer: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
          - `startTime` TimeOfDay: Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.
            - `hours` integer: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
            - `minutes` integer: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            - `nanos` integer: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            - `seconds` integer: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
        - `timeZoneType` 'TIME_ZONE_SOURCE_UNSPECIFIED' | 'PUBLISHER' | 'USER': The timezone to use for interpreting the day part targeting.
      - `longValue` string, int64: The long value to include/exclude.
      - `stringValue` string: The string value to include/exclude.
    - `inclusions` TargetingValue[]: The list of value to include as part of the targeting. Each value is OR'd together.
      - `creativeSizeValue` CreativeSize: Specifies the size of the creative.
        - `allowedFormats` string[]: What formats are allowed by the publisher. If this repeated field is empty then all formats are allowed. For example, if this field contains AllowedFormatType.AUDIO then the publisher only allows an audio ad (without any video).
        - `companionSizes` Size[]: For video creatives specifies the sizes of companion ads (if present). Companion sizes may be filled in only when creative_size_type = VIDEO
          - `height` integer: The height of the creative.
          - `width` integer: The width of the creative
        - `creativeSizeType` 'CREATIVE_SIZE_TYPE_UNSPECIFIED' | 'REGULAR' | 'INTERSTITIAL' | 'VIDEO' | 'NATIVE': The creative size type.
        - `nativeTemplate` 'UNKNOWN_NATIVE_TEMPLATE' | 'NATIVE_CONTENT_AD' | 'NATIVE_APP_INSTALL_AD' | 'NATIVE_VIDEO_CONTENT_AD' | 'NATIVE_VIDEO_APP_INSTALL_AD': Output only. The native template for this creative. It will have a value only if creative_size_type = CreativeSizeType.NATIVE.
        - `size` Size: Message depicting the size of the creative. The units of width and height depend on the type of the targeting.
          - `height` integer: The height of the creative.
          - `width` integer: The width of the creative
        - `skippableAdType` 'SKIPPABLE_AD_TYPE_UNSPECIFIED' | 'GENERIC' | 'INSTREAM_SELECT' | 'NOT_SKIPPABLE': The type of skippable ad for this creative. It will have a value only if creative_size_type = CreativeSizeType.VIDEO.
      - `dayPartTargetingValue` DayPartTargeting: Specifies the day part targeting criteria.
        - `dayParts` DayPart[]: A list of day part targeting criterion.
          - `dayOfWeek` 'DAY_OF_WEEK_UNSPECIFIED' | 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY': The day of the week to target. If unspecified, applicable to all days.
          - `endTime` TimeOfDay: Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.
            - `hours` integer: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
            - `minutes` integer: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            - `nanos` integer: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            - `seconds` integer: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
          - `startTime` TimeOfDay: Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.
            - `hours` integer: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
            - `minutes` integer: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
            - `nanos` integer: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
            - `seconds` integer: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.
        - `timeZoneType` 'TIME_ZONE_SOURCE_UNSPECIFIED' | 'PUBLISHER' | 'USER': The timezone to use for interpreting the day part targeting.
      - `longValue` string, int64: The long value to include/exclude.
      - `stringValue` string: The string value to include/exclude.
    - `key` string: The key representing the shared targeting criterion. Targeting criteria defined by Google ad servers will begin with GOOG_. Third parties may define their own keys. A list of permissible keys along with the acceptable values will be provided as part of the external documentation.
  - `terms` DealTerms: The deal terms specify the details of a Product/deal. They specify things like price per buyer, the type of pricing model (for example, fixed price, auction) and expected impressions from the publisher.
    - `brandingType` 'BRANDING_TYPE_UNSPECIFIED' | 'BRANDED' | 'SEMI_TRANSPARENT': Visibility of the URL in bid requests. (default: BRANDED)
    - `description` string: Publisher provided description for the terms.
    - `estimatedGrossSpend` Price: Represents a price and a pricing type for a product / deal.
      - `amount` Money: Represents an amount of money with its currency type.
        - `currencyCode` string: The three-letter currency code defined in ISO 4217.
        - `nanos` integer: Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
        - `units` string, int64: The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
      - `pricingType` 'PRICING_TYPE_UNSPECIFIED' | 'COST_PER_MILLE' | 'COST_PER_DAY': The pricing type for the deal/product. (default: CPM)
    - `estimatedImpressionsPerDay` string, int64: Non-binding estimate of the impressions served per day. Can be set by buyer or seller.
    - `guaranteedFixedPriceTerms` GuaranteedFixedPriceTerms: Terms for Programmatic Guaranteed Deals.
      - `fixedPrices` PricePerBuyer[]: Fixed price for the specified buyer.
        - `advertiserIds` string[]: The list of advertisers for this price when associated with this buyer. If empty, all advertisers with this buyer pay this price.
        - `buyer` Buyer: Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID.
          - `accountId` string: Authorized Buyers account ID of the buyer.
        - `price` Price: Represents a price and a pricing type for a product / deal.
          - `amount` Money: Represents an amount of money with its currency type.
            - `currencyCode` string: The three-letter currency code defined in ISO 4217.
            - `nanos` integer: Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
            - `units` string, int64: The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
          - `pricingType` 'PRICING_TYPE_UNSPECIFIED' | 'COST_PER_MILLE' | 'COST_PER_DAY': The pricing type for the deal/product. (default: CPM)
      - `guaranteedImpressions` string, int64: Guaranteed impressions as a percentage. This is the percentage of guaranteed looks that the buyer is guaranteeing to buy.
      - `guaranteedLooks` string, int64: Count of guaranteed looks. Required for deal, optional for product. For CPD deals, buyer changes to guaranteed_looks will be ignored.
      - `impressionCap` string, int64: The lifetime impression cap for CPM sponsorship deals. The deal will stop serving when the cap is reached.
      - `minimumDailyLooks` string, int64: Daily minimum looks for CPD deal types. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.
      - `percentShareOfVoice` string, int64: For sponsorship deals, this is the percentage of the seller's eligible impressions that the deal will serve until the cap is reached.
      - `reservationType` 'RESERVATION_TYPE_UNSPECIFIED' | 'STANDARD' | 'SPONSORSHIP': The reservation type for a Programmatic Guaranteed deal. This indicates whether the number of impressions is fixed, or a percent of available impressions. If not specified, the default reservation type is STANDARD.
    - `nonGuaranteedAuctionTerms` NonGuaranteedAuctionTerms: Terms for Private Auctions. Note that Private Auctions can be created only by the seller, but they can be returned in a get or list request.
      - `autoOptimizePrivateAuction` boolean: True if open auction buyers are allowed to compete with invited buyers in this private auction.
      - `reservePricesPerBuyer` PricePerBuyer[]: Reserve price for the specified buyer.
        - `advertiserIds` string[]: The list of advertisers for this price when associated with this buyer. If empty, all advertisers with this buyer pay this price.
        - `buyer` Buyer: Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID.
          - `accountId` string: Authorized Buyers account ID of the buyer.
        - `price` Price: Represents a price and a pricing type for a product / deal.
          - `amount` Money: Represents an amount of money with its currency type.
            - `currencyCode` string: The three-letter currency code defined in ISO 4217.
            - `nanos` integer: Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
            - `units` string, int64: The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
          - `pricingType` 'PRICING_TYPE_UNSPECIFIED' | 'COST_PER_MILLE' | 'COST_PER_DAY': The pricing type for the deal/product. (default: CPM)
    - `nonGuaranteedFixedPriceTerms` NonGuaranteedFixedPriceTerms: Terms for Preferred Deals.
      - `fixedPrices` PricePerBuyer[]: Fixed price for the specified buyer.
        - `advertiserIds` string[]: The list of advertisers for this price when associated with this buyer. If empty, all advertisers with this buyer pay this price.
        - `buyer` Buyer: Represents a buyer of inventory. Each buyer is identified by a unique Authorized Buyers account ID.
          - `accountId` string: Authorized Buyers account ID of the buyer.
        - `price` Price: Represents a price and a pricing type for a product / deal.
          - `amount` Money: Represents an amount of money with its currency type.
            - `currencyCode` string: The three-letter currency code defined in ISO 4217.
            - `nanos` integer: Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
            - `units` string, int64: The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
          - `pricingType` 'PRICING_TYPE_UNSPECIFIED' | 'COST_PER_MILLE' | 'COST_PER_DAY': The pricing type for the deal/product. (default: CPM)
    - `sellerTimeZone` string: The time zone name. For deals with Cost Per Day billing, defines the time zone used to mark the boundaries of a day. It should be an IANA TZ name, such as "America/Los_Angeles". For more information, see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.
  - `updateTime` string, google-datetime: Time of last update.
  - `webPropertyCode` string: The web-property code for the seller. This needs to be copied as is when adding a new deal to a proposal.

## Changes

- **2026-10-10** `af1a744df07b`: 1 breaking
  - removed the media type `*/*` for the response with the status `200`

[Operation history](https://skmtc.dev/google/apis/adexchangebuyer2/changes/v2beta1/accounts/:accountId/products/:productId/get.md)

---

[API](https://skmtc.dev/google/apis/adexchangebuyer2.md) - [All operations](https://skmtc.dev/google/apis/adexchangebuyer2/llms.txt) - [OpenAPI document](https://skmtc.dev/google/apis/adexchangebuyer2/revisions/0aaaaa1fffb0?raw)
