<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="gan_v1beta1.html">Google Affiliate Network API</a> . <a href="gan_v1beta1.events.html">events</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="#list">list(role, roleId, orderId=None, chargeType=None, linkId=None, advertiserId=None, sku=None, pageToken=None, productCategory=None, modifyDateMin=None, type=None, status=None, modifyDateMax=None, eventDateMin=None, maxResults=None, eventDateMax=None, memberId=None, publisherId=None)</a></code></p>
<p class="firstline">Retrieves event data for a given advertiser/publisher.</p>
<p class="toc_element">
  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="list">list(role, roleId, orderId=None, chargeType=None, linkId=None, advertiserId=None, sku=None, pageToken=None, productCategory=None, modifyDateMin=None, type=None, status=None, modifyDateMax=None, eventDateMin=None, maxResults=None, eventDateMax=None, memberId=None, publisherId=None)</code>
  <pre>Retrieves event data for a given advertiser/publisher.

Args:
  role: string, The role of the requester. Valid values: 'advertisers' or 'publishers'. (required)
    Allowed values
      advertisers - The requester is requesting as an advertiser.
      publishers - The requester is requesting as a publisher.
  roleId: string, The ID of the requesting advertiser or publisher. (required)
  orderId: string, Caret(^) delimited list of order IDs. Filters out all events that do not reference one of the given order IDs. Optional.
  chargeType: string, Filters out all charge events that are not of the given charge type. Valid values: 'other', 'slotting_fee', 'monthly_minimum', 'tier_bonus', 'credit', 'debit'. Optional.
    Allowed values
      credit - A credit increases the publisher's payout amount and decreases the advertiser's invoice amount.
      debit - A debit reduces the publisher's payout and increases the advertiser's invoice amount.
      monthly_minimum - A payment made to Google by an advertiser as a minimum monthly network fee.
      other - Catch all. Default if unset
      slotting_fee - A one time payment made from an advertiser to a publisher.
      tier_bonus - A payment from an advertiser to a publisher for the publisher maintaining a high tier level
  linkId: string, Caret(^) delimited list of link IDs. Filters out all events that do not reference one of the given link IDs. Optional.
  advertiserId: string, Caret(^) delimited list of advertiser IDs. Filters out all events that do not reference one of the given advertiser IDs. Only used when under publishers role. Optional.
  sku: string, Caret(^) delimited list of SKUs. Filters out all events that do not reference one of the given SKU. Optional.
  pageToken: string, The value of 'nextPageToken' from the previous page. Optional.
  productCategory: string, Caret(^) delimited list of product categories. Filters out all events that do not reference a product in one of the given product categories. Optional.
  modifyDateMin: string, Filters out all events modified earlier than given date. Optional. Defaults to 24 hours before the current modifyDateMax, if modifyDateMax is explicitly set.
  type: string, Filters out all events that are not of the given type. Valid values: 'action', 'transaction', 'charge'. Optional.
    Allowed values
      action - The completion of an application, sign-up, or other process. For example, an action occurs if a user clicks an ad for a credit card and completes an application for that card.
      charge - A charge event is typically a payment between an advertiser, publisher or Google.
      transaction - A conversion event, typically an e-commerce transaction. Some advertisers use a transaction to record other types of events, such as magazine subscriptions.
  status: string, Filters out all events that do not have the given status. Valid values: 'active', 'canceled'. Optional.
    Allowed values
      active - Event is currently active.
      canceled - Event is currently canceled.
  modifyDateMax: string, Filters out all events modified later than given date. Optional. Defaults to 24 hours after modifyDateMin, if modifyDateMin is explicitly set.
  eventDateMin: string, Filters out all events earlier than given date. Optional. Defaults to 24 hours from current date/time.
  maxResults: integer, Max number of offers to return in this page. Optional. Defaults to 20.
  eventDateMax: string, Filters out all events later than given date. Optional. Defaults to 24 hours after eventMin.
  memberId: string, Caret(^) delimited list of member IDs. Filters out all events that do not reference one of the given member IDs. Optional.
  publisherId: string, Caret(^) delimited list of publisher IDs. Filters out all events that do not reference one of the given publishers IDs. Only used when under advertiser role. Optional.

Returns:
  An object of the form:

    {
    "nextPageToken": "A String", # The 'pageToken' to pass to the next request to get the next page, if there are more to retrieve.
    "items": [ # The event list.
      { # An EventResource.
        "networkFee": { # An ApiMoneyProto. # Fee that the advertiser paid to the Google Affiliate Network.
          "amount": 3.14, # The amount of money.
          "currencyCode": "A String", # The 3-letter code of the currency in question.
        },
        "advertiserName": "A String", # The name of the advertiser for this event.
        "kind": "gan#event", # The kind for one event.
        "modifyDate": "A String", # The date-time this event was last modified as a RFC 3339 date-time value.
        "type": "A String", # Type of the event (action|transaction|charge).
        "orderId": "A String", # The order ID for this event. Only returned for conversion events.
        "publisherName": "A String", # The name of the publisher for this event.
        "memberId": "A String", # The ID of the member attached to this event. Only returned for conversion events.
        "advertiserId": "A String", # The ID of advertiser for this event.
        "status": "A String", # Status of the event (active|canceled). Only returned for charge and conversion events.
        "chargeId": "A String", # The charge ID for this event. Only returned for charge events.
        "products": [ # Products associated with the event.
          {
            "networkFee": { # An ApiMoneyProto. # Fee that the advertiser paid to the Google Affiliate Network for this product.
              "amount": 3.14, # The amount of money.
              "currencyCode": "A String", # The 3-letter code of the currency in question.
            },
            "sku": "A String", # Sku of this product.
            "categoryName": "A String", # Name of the category this product belongs to.
            "skuName": "A String", # Sku name of this product.
            "publisherFee": { # An ApiMoneyProto. # Fee that the advertiser paid to the publisehr for this product.
              "amount": 3.14, # The amount of money.
              "currencyCode": "A String", # The 3-letter code of the currency in question.
            },
            "earnings": { # An ApiMoneyProto. # Amount earned by the publisher on this product.
              "amount": 3.14, # The amount of money.
              "currencyCode": "A String", # The 3-letter code of the currency in question.
            },
            "unitPrice": { # An ApiMoneyProto. # Price per unit of this product.
              "amount": 3.14, # The amount of money.
              "currencyCode": "A String", # The 3-letter code of the currency in question.
            },
            "categoryId": "A String", # Id of the category this product belongs to.
            "quantity": "A String", # Quantity of this product bought/exchanged.
          },
        ],
        "earnings": { # An ApiMoneyProto. # Earnings by the publisher.
          "amount": 3.14, # The amount of money.
          "currencyCode": "A String", # The 3-letter code of the currency in question.
        },
        "chargeType": "A String", # Charge type of the event (other|slotting_fee|monthly_minimum|tier_bonus|debit|credit). Only returned for charge events.
        "publisherFee": { # An ApiMoneyProto. # Fee that the advertiser paid to the publisher.
          "amount": 3.14, # The amount of money.
          "currencyCode": "A String", # The 3-letter code of the currency in question.
        },
        "commissionableSales": { # An ApiMoneyProto. # Amount of money exchanged during the transaction. Only returned for charge and conversion events.
          "amount": 3.14, # The amount of money.
          "currencyCode": "A String", # The 3-letter code of the currency in question.
        },
        "publisherId": "A String", # The ID of the publisher for this event.
        "eventDate": "A String", # The date-time this event was initiated as a RFC 3339 date-time value.
      },
    ],
    "kind": "gan#events", # The kind for a page of events.
  }</pre>
</div>

<div class="method">
    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
  <pre>Retrieves the next page of results.

Args:
  previous_request: The request for the previous page. (required)
  previous_response: The response from the request for the previous page. (required)

Returns:
  A request object that you can call 'execute()' on to request the next
  page. Returns None if there are no more items in the collection.
    </pre>
</div>

</body></html>