Amazon Ads Connector
Amazon Ads Connector Help
Version 1
ZappySys Logo File Version: v1
Supported Engine: v1 or higher

Amazon Ads Connector - Source Code


<?xml version="1.0" encoding="utf-8"?>
<ApiConfig Name="Amazon Ads"
  Id="4d19dabe-6cba-422f-a307-6d9843127fa9"
	Slug="amazon-ads-connector"
	Desc="Amazon Ads Connector can be used to get Amazon advertisements using Amazon Advertisements API, download various advertisement-related reports."
	Logo="data:image/png;base64,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">

  <VersionHistory>
    <Change Date="2022-10-12" Desc="Added 'Profiles' table" />
    <Change Date="2022-04-15" Desc="Initial version" />
  </VersionHistory>

  <ServiceUrls>
    <ServiceUrl Name="North America" Url="https://advertising-api.amazon.com/v2"/>
    <ServiceUrl Name="Europe" Url="https://advertising-api-eu.amazon.com/v2"/>
    <ServiceUrl Name="Far East" Url="https://advertising-api-fe.amazon.com/v2"/>
    <ServiceUrl Name="Testing" Url="https://advertising-api-test.amazon.com/v2"/>

    <ServiceUrl Name="North America (Beta)" Url="https://advertising-api.amazon.com"/>
    <ServiceUrl Name="Europe (Beta)" Url="https://advertising-api-eu.amazon.com"/>
    <ServiceUrl Name="Far East (Beta)" Url="https://advertising-api-fe.amazon.com"/>
    <ServiceUrl Name="Testing (Beta)" Url="https://advertising-api-test.amazon.com"/>
  </ServiceUrls>

  <Auths>
    <Auth Type="OAuth" Name="oauth" Label="OAuth Authentication" Desc="OAuth App must be created in Atlassian Developer Console. It is found at https://developer.atlassian.com/console/myapps/"
        HelpLink="https://developer.amazon.com/"
        ConnStr="Provider=Custom;OAuthVersion=OAuth2;AuthUrl=[$AuthorizationUrl$];ClientId=[$AppId$];Scope=[$Scope$];TokenUrl=https://api.amazon.com/auth/o2/token;ScopeSeparator={space};ContentType=application/x-www-form-urlencoded;"
        TestEndPoint="test_connection">
      <Notes>
        <![CDATA[<p>Firstly, login into Amazon Developer portal:<p />
<ol>
  <li>Visit <a target="_blank" href="https://developer.amazon.com">https://developer.amazon.com</a>.</li>
  <li>Then click <a target="_blank" href="https://developer.amazon.com/settings/console/registration?return_to=/">Sign in</a>.</li>
  <li>If you don't have an account, press the button <a target="_blank" href="https://www.amazon.com/ap/register?clientContext=131-5720164-7942448&openid.identity=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&siteState=clientContext%3D145-8718276-2516328%2CsourceUrl%3Dhttps%253A%252F%252Fdeveloper.amazon.com%252Fsettings%252Fconsole%252Fregistration%253Freturn_to%253D%252F%2Csignature%3DKQfa9xgpp5oGgNseoEDkI20k6x4j3D&marketPlaceId=ATVPDKIKX0DER&language=en_US&pageId=amzn_developer_portal&openid.return_to=https%3A%2F%2Fdeveloper.amazon.com%2Fsettings%2Fconsole%2Fregistration%3Freturn_to%3D%252F&prevRID=JSXT7JP943ENEF9HN6Q7&openid.assoc_handle=mas_dev_portal&openid.mode=checkid_setup&prepopulatedLoginId=&failedSignInCount=0&openid.claimed_id=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0%2Fidentifier_select&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0">Create your Amazon Developer account</a>.</li>
  <li>Once logged in, click on your profile icon on the right-top of the window.</li>
  <li>A menu appears, and then click 'Settings'.</li>
  <li>Then click <a target="_blank" target="https://developer.amazon.com/settings/console/securityprofile/overview.html">Security Profiles</a>.</li>
  <li>Proceed with creating a new <a target="_blank" href="https://developer.amazon.com/settings/console/securityprofile/create-security-profile.html">Security Profile</a>.</li>
  <li>Once you named it, click 'Save'.</li>
  <li>After that, click 'Web Settings' subtab.</li>
  <li>A window refreshes, click 'Show Secret' button and write down <strong>Client ID</strong> and <strong>Client Secret</strong>, you will need them later.</li>
  <li>Then press 'Edit' and add <strong>Allowed Return URLs</strong>. It can be your domain or you can use <strong>https://zappysys.com/oauth</strong>. Note it, you will need it in configuration.</li>
  <li>Close web browser.</li>
  <li>Now it's time to configure Amazon Ads API data source.</li>
  <li>Fill in all blank <strong>Required Parameters:</strong>
    <ol>
      <li>ClientId</li>
      <li>ClientSecret</li>
      <li>ReturnUrl</li>      
    </ol>
  </li>
  <li>Click <b>Generate Token</b> to generate tokens.</li>
  <li>Now you can select the 'Profile' to work with.</li>
  <li>That's it!</li>
</ol>
]]>
      </Notes>
      <Params>
        <Param Name="AppId" Label="ClientId" Required="True" Type="Placeholder" />
        <Param Name="ClientSecret" Secret="True" Required="True"/>
        <Param Name="AuthorizationUrl" Value="https://www.amazon.com/ap/oa" Options="North America=https://www.amazon.com/ap/oa;Europe=https://eu.account.amazon.com/ap/oa;Far East=https://apac.account.amazon.com/ap/oa" Required="True"/>
        <Param Name="ReturnUrl" Value="" Required="True"/>
        <Param Name="Scope" Value="" Required="True" Type="Placeholder" />
        <Param Name="Profile" Label="Profile (click 'Generate Token' before this)" Value="" Required="True" Type="Placeholder"
               OptionsEndPoint="get_profiles"
               OptionsEndPointLabelColumn="CurrencyCode"
               OptionsEndPointValueColumn="ProfileId" />
        <Param Name="RetryMode" Value="RetryWhenStatusCodeMatch" Options="None;RetryAny;RetryWhenStatusCodeMatch;" Hidden="True" />
        <Param Name="RetryStatusCodeList" Value="429" Hidden="True" />
        <Param Name="RetryCountMax" Value="5" Hidden="True" />
        <Param Name="RetryMultiplyWaitTime" Value="True" Hidden="True" />
      </Params>
    </Auth>
  </Auths>


  <Template></Template>


  <EndPoints>

    <EndPoint Name="test_connection"
              Url="/sp/keywords?count=1"
              Method="GET"
              Headers="Amazon-Advertising-API-ClientId:[$AppId$]||Amazon-Advertising-API-Scope:[$Profile$]"
              Desc="Endpoint to test connection."
              CachedTtl="30">
    </EndPoint>


    <EndPoint Name="get_profiles"
              Url="/profiles"
              Method="GET"
              Headers="Amazon-Advertising-API-ClientId:[$AppId$]"
              Desc="Gets your Amazon Ads profiles"
              ContentType="application/json"
              CachedTtl="30"
              DotAsPath="True">
      <OutputColumns>
        <Column Name="profileId" Label="ProfileId" DataType="DT_WSTR" />
        <Column Name="countryCode" Label="CountryCode" DataType="DT_WSTR" />
        <Column Name="currencyCode" Label="CurrencyCode" DataType="DT_WSTR" />
        <Column Name="dailyBudget" Label="DailyBudget" DataType="DT_DECIMAL" />
        <Column Name="timezone" Label="Timezone" DataType="DT_WSTR" />
        <Column Name="accountInfo.marketplaceStringId" Label="AccountInfoMarketPlaceStringId" DataType="DT_WSTR" />
        <Column Name="accountInfo.id" Label="AccountInfoId" DataType="DT_WSTR" />
        <Column Name="accountInfo.type" Label="AccountInfoType" DataType="DT_WSTR" />
        <Column Name="accountInfo.name" Label="AccountInfoName" DataType="DT_WSTR" />
        <Column Name="accountInfo.validPaymentMethod" Label="AccountInfoValidPaymentMethod" DataType="DT_BOOL" />
        <Column Name="accountInfo.subType" Label="UserId" DataType="DT_WSTR" />
      </OutputColumns>
    </EndPoint>


    <EndPoint Name="get_report"
              Label="Get Report"
              ResponseFormat="Json"
              Url="/sp/[$RecordType$]/report"
              Method="POST"
              NoOutputColumns="True"
              MetaScanRows="3000"
              CachedTtl="600"
              Headers="Amazon-Advertising-API-ClientId:[$AppId$]||Amazon-Advertising-API-Scope:[$Profile$]"
              Desc="Downloads an Amazon Ads report."
              HelpLink="https://advertising.amazon.com/API/docs/en-us/sponsored-products/2-0/openapi#/Reports"
              ContentType="application/json">
      <Params>
        <Param Name="RecordType" Label="Record Type" Value="keywords" Required="True" Options="campaigns;adGroups;keywords;productAds;asins"/>
        <Param Name="StateFilter" Label="State Filter" Required="False" ValueTemplate="&quot;stateFilter&quot;: &quot;{$value$}&quot;," Options=";enabled;paused;archived"/>
        <Param Name="CampaignType" Label="Campaign Type" Required="False" ValueTemplate="&quot;campaignType&quot;: &quot;{$value$}&quot;," Options=";sponsoredProducts;headlineSearch"/>
        <Param Name="Segment" Label="Segment" Required="False" ValueTemplate="&quot;segment&quot;: &quot;{$value$}&quot;," Options=";query;placement"/>
        <Param Name="ReportDate" Label="Report Date (yyyyMMdd)"
        Value="today" Options="today;yesterday;monthstart;monthend;yearstart;yearend;weekstart;weekend;yearstart-1y;yearend-1y;monthstart-1d;monthend+1d;2022-01-31" Required="True" Desc="The date for which to retrieve the report in YYYYMMDD format. Supported functions now|today|yesterday|weekstart|weekend|monthstart|monthend|yearstart|yearend and supported intervals for add/subtract are ms|s|sec|min|h|hour|y|year|d|day|m|month|y|year. Example monthstart-3d (subtract 3days from month start)"
        ValueTemplate="&lt;&lt;{$value$}||yyyyMMdd,FUN_TO_DATE&gt;&gt;" />
        <Param Name="Metrics" MultiSelect="True" MultiSelectSeparator = "," Required="True" Options="adGroupId;adGroupName;attributedConversions14d;attributedConversions14dSameSKU;attributedConversions1d;attributedConversions1dSameSKU;attributedConversions30d;attributedConversions30dSameSKU;attributedConversions7d;attributedConversions7dSameSKU;attributedKindleEditionNormalizedPagesRead14d;attributedKindleEditionNormalizedPagesRoyalties14d;attributedSales14d;attributedSales14dSameSKU;attributedSales1d;attributedSales1dSameSKU;attributedSales30d;attributedSales30dSameSKU;attributedSales7d;attributedSales7dSameSKU;attributedUnitsOrdered14d;attributedUnitsOrdered14dSameSKU;attributedUnitsOrdered1d;attributedUnitsOrdered1dSameSKU;attributedUnitsOrdered30d;attributedUnitsOrdered30dSameSKU;attributedUnitsOrdered7d;attributedUnitsOrdered7dSameSKU;campaignBudget;campaignBudgetType;campaignId;campaignName;campaignStatus;clicks;cost;currency;impressions;keywordBid;keywordId;keywordStatus;keywordText;matchType;query" />
      </Params>
      <Body>
        <![CDATA[{           
            [$StateFilter$]
            [$CampaignType$]
            [$Segment$]
            "reportDate": "[$ReportDate$]", 
            "metrics": "[$Metrics$]"            
          }]]>
      </Body>
      <EndPoint Name="CheckStatus"
                Url="/sp/reports/[$parent.reportId$]"
                Method="GET"
                NoOutputColumns="True"
                Headers="Amazon-Advertising-API-ClientId:[$AppId$]||Amazon-Advertising-API-Scope:[$Profile$]">
        <Params>
          <Param Name="EnableStatusCheck" Type="Property" Value="true" />
          <Param Name="StatusCheckIterationWaitSeconds" Type="Property" Value="10" />
          <Param Name="StatusCheckMaxWaitSeconds" Type="Property" Value="3600" />
          <Param Name="StatusCheckForFailedValue" Type="Property" Value="True" />
          <Param Name="StatusContinueValue" Type="Property" Value="IN_PROGRESS" />
          <Param Name="StatusFailedValue" Type="Property" Value="FAILURE" />
          <Param Name="StatusSuccessValue" Type="Property" Value="SUCCESS" />
        </Params>
        <EndPoint Name="DownloadReport"
                  Url="/sp/reports/[$parent.reportId$]/download"
                  Method="GET"
                  Headers="Amazon-Advertising-API-ClientId:[$AppId$]||Amazon-Advertising-API-Scope:[$Profile$]"
                  CachedTtl="30">
          <Params>
            <Param Name="EnableStatusCheck" Type="Property" Value="false" />
            <Param Name="FileCompressionType" Value="GZip" />
          </Params>
        </EndPoint>
      </EndPoint>
    </EndPoint>


    <EndPoint Name="get_beta_report"
              Label="Get Beta Report"
              ResponseFormat="Json"
              Url="/reporting/reports"
              Method="POST"
              NoOutputColumns="True"
              MetaScanRows="3000"
              CachedTtl="600"
              Headers="ContentType:application/vnd.createasyncreportrequest.v3+json||Amazon-Advertising-API-ClientId:[$AppId$]||Amazon-Advertising-API-Scope:[$Profile$]"
              Desc="Generates and downloads an Amazon Ads report."
              HelpLink="https://advertising.amazon.com/API/docs/en-us/guides/reporting/v3/get-started">
      <Params>
        <Param Name="ReportName" Label="Report Name" Required="True"
               Desc="" Value="Test Name" />
        <Param Name="ReportType" Label="Report Type" Value="spCampaigns" Required="True"
               Desc=""
               Options="Campaigns=spCampaigns;Targeting=spTargeting;Search Term=spSearchTerm;Advertised Product=spAdvertisedProduct;Purchased Product=spPurchasedProduct" />
        <Param Name="TimeUnit" Label="Time Unit" Value="SUMMARY" VisibleIf="ReportType==spCampaigns" RequiredIf="ReportType==spCampaigns"
               Desc=""
               Options="Summary=SUMMARY;Daily=DAILY" />
        <Param Name="GroupByCampaignReportType" Label="Group By" Value="campaign" VisibleIf="ReportType==spCampaigns" RequiredIf="ReportType==spCampaigns"
               Desc=""
               Options=";Campaign=campaign;Ad Group=adGroup;Campaign Placement=campaignPlacement" />
        <Param Name="GroupByTargetingReportType" Label="Group By" Value="targeting" VisibleIf="ReportType==spTargeting" RequiredIf="ReportType==spTargeting"
               Desc=""
               Options=";Targeting=targeting" />
        <Param Name="GroupBySearchTermReportType" Label="Group By" Value="searchTerm" VisibleIf="ReportType==spSearchTerm" RequiredIf="ReportType==spSearchTerm"
               Desc=""
               Options=";Search Term=searchTerm" />
        <Param Name="GroupByAdvertisedProductReportType" Label="Group By" Value="advertiser" VisibleIf="ReportType==spAdvertisedProduct" RequiredIf="ReportType==spAdvertisedProduct"
               Desc=""
               Options=";Advertiser=advertiser" />
        <Param Name="GroupByPurchasedProductReportType" Label="Group By" Value="asin" VisibleIf="ReportType==spPurchasedProduct" RequiredIf="ReportType==spPurchasedProduct"
               Desc=""
               Options=";ASIN=asin;Purchased ASIN=purchasedAsin" />        
        <Param Name="StartDatePurchasedProductReportTypeGroupByAsin" Label="Report Start Date (yyyy-MM-dd) Maximum date range: 31 days" Required="True" Value="today-30d" ValueTemplate="&lt;&lt;{$value$}||yyyy-MM-dd,FUN_TO_DATE&gt;&gt;"
               VisibleIf="GroupByPurchasedProductReportType==asin" RequiredIf="GroupByPurchasedProductReportType==asin"
               Desc="The start date for the data to retrieve in YYYY-MM-DD format. Supported functions now|today|yesterday|weekstart|weekend|monthstart|monthend|yearstart|yearend and supported intervals for add/subtract are ms|s|sec|min|h|hour|y|year|d|day|m|month|y|year. Example monthstart-3d (subtract 3 days from month start)"
               Options="today;yesterday;monthstart;monthend;yearstart;yearend;weekstart;weekend;yearstart-1y;yearend-1y;monthstart-1d;monthend+1d;2022-01-31" />
        <Param Name="EndDatePurchasedProductReportTypeGroupByAsin" Label="Report End Date (yyyy-MM-dd) Maximum date range: 31 days" Required="True" Value="today" ValueTemplate="&lt;&lt;{$value$}||yyyy-MM-dd,FUN_TO_DATE&gt;&gt;"
               VisibleIf="GroupByPurchasedProductReportType==asin" RequiredIf="GroupByPurchasedProductReportType==asin"
               Desc="The end date for the data to retrieve in YYYY-MM-DD format. Supported functions now|today|yesterday|weekstart|weekend|monthstart|monthend|yearstart|yearend and supported intervals for add/subtract are ms|s|sec|min|h|hour|y|year|d|day|m|month|y|year. Example monthstart-3d (subtract 3 days from month start)"
               Options="today;yesterday;monthstart;monthend;yearstart;yearend;weekstart;weekend;yearstart-1y;yearend-1y;monthstart-1d;monthend+1d;2022-01-31" />
        <Param Name="StartDatePurchasedProductReportTypeGroupByPurchasedAsin" Label="Report Start Date (yyyy-MM-dd) Maximum date range: 731 days" Required="True" Value="today-365d" ValueTemplate="&lt;&lt;{$value$}||yyyy-MM-dd,FUN_TO_DATE&gt;&gt;"
               VisibleIf="GroupByPurchasedProductReportType==purchasedAsin" RequiredIf="GroupByPurchasedProductReportType==purchasedAsin"
               Desc="The start date for the data to retrieve in YYYY-MM-DD format. Supported functions now|today|yesterday|weekstart|weekend|monthstart|monthend|yearstart|yearend and supported intervals for add/subtract are ms|s|sec|min|h|hour|y|year|d|day|m|month|y|year. Example monthstart-3d (subtract 3 days from month start)"
               Options="today;yesterday;monthstart;monthend;yearstart;yearend;weekstart;weekend;yearstart-1y;yearend-1y;monthstart-1d;monthend+1d;2022-01-31" />
        <Param Name="EndDatePurchasedProductReportTypeGroupByPurchasedAsin" Label="Report End Date (yyyy-MM-dd) Maximum date range: 731 days" Required="True" Value="today" ValueTemplate="&lt;&lt;{$value$}||yyyy-MM-dd,FUN_TO_DATE&gt;&gt;"
               VisibleIf="GroupByPurchasedProductReportType==purchasedAsin" RequiredIf="GroupByPurchasedProductReportType==purchasedAsin"
               Desc="The end date for the data to retrieve in YYYY-MM-DD format. Supported functions now|today|yesterday|weekstart|weekend|monthstart|monthend|yearstart|yearend and supported intervals for add/subtract are ms|s|sec|min|h|hour|y|year|d|day|m|month|y|year. Example monthstart-3d (subtract 3 days from month start)"
               Options="today;yesterday;monthstart;monthend;yearstart;yearend;weekstart;weekend;yearstart-1y;yearend-1y;monthstart-1d;monthend+1d;2022-01-31" />
        <Param Name="GroupByCampaignMetrics" Label="Metrics" MultiSelect="True" MultiSelectSeparator=","
               Desc="" Value="clicks"
               VisibleIf="GroupByCampaignReportType==campaign" RequiredIf="GroupByCampaignReportType==campaign"
               Options="impressions;clicks;cost;purchases1d;purchases7d;purchases14d;purchases30d;purchasesSameSku1d;purchasesSameSku7d;purchasesSameSku14d;purchasesSameSku30d;unitsSoldClicks1d;unitsSoldClicks7d;unitsSoldClicks14d;unitsSoldClicks30d;sales1d;sales7d;sales14d;sales30d;attributedSalesSameSku1d;attributedSalesSameSku7d;attributedSalesSameSku14d;attributedSalesSameSku30d;unitsSoldSameSku1d;unitsSoldSameSku7d;unitsSoldSameSku14d;unitsSoldSameSku30d;kindleEditionNormalizedPagesRead14d;kindleEditionNormalizedPagesRoyalties14d;date;startDate;endDate;campaignBiddingStrategy;costPerClick;clickThroughRate;spend;campaignName;campaignId;campaignStatus;campaignBudgetAmount;campaignBudgetType;campaignRuleBasedBudgetAmount;campaignApplicableBudgetRuleId;campaignApplicableBudgetRuleName;campaignBudgetCurrencyCode;topOfSearchImpressionShare" />
        <Param Name="GroupByAdGroupMetrics" Label="Metrics" MultiSelect="True" MultiSelectSeparator=","
               Desc="" Value="clicks"
               VisibleIf="GroupByCampaignReportType==adGroup" RequiredIf="GroupByCampaignReportType==adGroup"
               Options="impressions;clicks;cost;purchases1d;purchases7d;purchases14d;purchases30d;purchasesSameSku1d;purchasesSameSku7d;purchasesSameSku14d;purchasesSameSku30d;unitsSoldClicks1d;unitsSoldClicks7d;unitsSoldClicks14d;unitsSoldClicks30d;sales1d;sales7d;sales14d;sales30d;attributedSalesSameSku1d;attributedSalesSameSku7d;attributedSalesSameSku14d;attributedSalesSameSku30d;unitsSoldSameSku1d;unitsSoldSameSku7d;unitsSoldSameSku14d;unitsSoldSameSku30d;kindleEditionNormalizedPagesRead14d;kindleEditionNormalizedPagesRoyalties14d;date;startDate;endDate;campaignBiddingStrategy;costPerClick;clickThroughRate;spend;adGroupName;adGroupId;adStatus" />
        <Param Name="GroupByCampaignPlacementMetrics" Label="Metrics" MultiSelect="True" MultiSelectSeparator=","
               Desc="" Value="clicks"
               VisibleIf="GroupByCampaignReportType==campaignPlacement" RequiredIf="GroupByCampaignReportType==campaignPlacement"
               Options="impressions;clicks;cost;purchases1d;purchases7d;purchases14d;purchases30d;purchasesSameSku1d;purchasesSameSku7d;purchasesSameSku14d;purchasesSameSku30d;unitsSoldClicks1d;unitsSoldClicks7d;unitsSoldClicks14d;unitsSoldClicks30d;sales1d;sales7d;sales14d;sales30d;attributedSalesSameSku1d;attributedSalesSameSku7d;attributedSalesSameSku14d;attributedSalesSameSku30d;unitsSoldSameSku1d;unitsSoldSameSku7d;unitsSoldSameSku14d;unitsSoldSameSku30d;kindleEditionNormalizedPagesRead14d;kindleEditionNormalizedPagesRoyalties14d;date;startDate;endDate;campaignBiddingStrategy;costPerClick;clickThroughRate;spend;placementClassification" />
        <Param Name="GroupByTargetingMetrics" Label="Metrics" MultiSelect="True" MultiSelectSeparator=","
               Desc="" Value="clicks"
               VisibleIf="GroupByCampaignReportType==targeting" RequiredIf="GroupByCampaignReportType==targeting"
               Options="impressions;clicks;costPerClick;clickThroughRate;cost;purchases1d;purchases7d;purchases14d;purchases30d;purchasesSameSku1d;purchasesSameSku7d;purchasesSameSku14d;purchasesSameSku30d;unitsSoldClicks1d;unitsSoldClicks7d;unitsSoldClicks14d;unitsSoldClicks30d;sales1d;sales7d;sales14d;sales30d;attributedSalesSameSku1d;attributedSalesSameSku7d;attributedSalesSameSku14d;attributedSalesSameSku30d;unitsSoldSameSku1d;unitsSoldSameSku7d;unitsSoldSameSku14d;unitsSoldSameSku30d;kindleEditionNormalizedPagesRead14d;kindleEditionNormalizedPagesRoyalties14d;salesOtherSku7d;unitsSoldOtherSku7d;acosClicks7d;acosClicks14d;roasClicks7d;roasClicks14d;keywordId;keyword;campaignBudgetCurrencyCode;date;startDate;endDate;portfolioId;campaignName;campaignId;campaignBudgetType;campaignBudgetAmount;campaignStatus;keywordBid;adGroupName;adGroupId;keywordType;matchType;targeting;topOfSearchImpressionShare;adKeywordStatus" />
        <Param Name="GroupBySearchTermMetrics" Label="Metrics" MultiSelect="True" MultiSelectSeparator=","
               Desc="" Value="clicks"
               VisibleIf="GroupByCampaignReportType==searchTerm" RequiredIf="GroupByCampaignReportType==searchTerm"
               Options="impressions;clicks;costPerClick;clickThroughRate;cost;purchases1d;purchases7d;purchases14d;purchases30d;purchasesSameSku1d;purchasesSameSku7d;purchasesSameSku14d;purchasesSameSku30d;unitsSoldClicks1d;unitsSoldClicks7d;unitsSoldClicks14d;unitsSoldClicks30d;sales1d;sales7d;sales14d;sales30d;attributedSalesSameSku1d;attributedSalesSameSku7d;attributedSalesSameSku14d;attributedSalesSameSku30d;unitsSoldSameSku1d;unitsSoldSameSku7d;unitsSoldSameSku14d;unitsSoldSameSku30d;kindleEditionNormalizedPagesRead14d;kindleEditionNormalizedPagesRoyalties14d;salesOtherSku7d;unitsSoldOtherSku7d;acosClicks7d;acosClicks14d;roasClicks7d;roasClicks14d;keywordId;keyword;campaignBudgetCurrencyCode;date;startDate;endDate;portfolioId;searchTerm;campaignName;campaignId;campaignBudgetType;campaignBudgetAmount;campaignStatus;keywordBid;adGroupName;adGroupId;keywordType;matchType;targeting;adKeywordStatus" />
        <Param Name="GroupByAdvertiserMetrics" Label="Metrics" MultiSelect="True" MultiSelectSeparator=","
               Desc="" Value="clicks"
               VisibleIf="GroupByCampaignReportType==advertiser" RequiredIf="GroupByCampaignReportType==advertiser"
               Options="date;startDate;endDate;campaignName;campaignId;adGroupName;adGroupId;adId;portfolioId;impressions;clicks;costPerClick;clickThroughRate;cost;spend;campaignBudgetCurrencyCode;campaignBudgetAmount;campaignBudgetType;campaignStatus;advertisedAsin;advertisedSku;purchases1d;purchases7d;purchases14d;purchases30d;purchasesSameSku1d;purchasesSameSku7d;purchasesSameSku14d;purchasesSameSku30d;unitsSoldClicks1d;unitsSoldClicks7d;unitsSoldClicks14d;unitsSoldClicks30d;sales1d;sales7d;sales14d;sales30d;attributedSalesSameSku1d;attributedSalesSameSku7d;attributedSalesSameSku14d;attributedSalesSameSku30d;salesOtherSku7d;unitsSoldSameSku1d;unitsSoldSameSku7d;unitsSoldSameSku14d;unitsSoldSameSku30d;unitsSoldOtherSku7d;kindleEditionNormalizedPagesRead14d;kindleEditionNormalizedPagesRoyalties14d;acosClicks7d;acosClicks14d;roasClicks7d;roasClicks14d" />
      </Params>
      <Body>
        <![CDATA[{
          "name":"[$ReportName$]",
          "startDate":"[$StartDate$]",
          "endDate":"[$EndDate$]",
          "configuration":{
            "adProduct":"SPONSORED_PRODUCTS",
            "groupBy":["[$GroupBy$]"],
            "columns":["adGroupId","campaignId","keywordId","matchType","keyword","impressions", "clicks", "cost", "purchases1d", "purchases7d", "purchases14d", "purchases30d","startDate","endDate"],
            "filters": [
              {
                "field": "keywordType",
                "values": [
                "BROAD",
                "PHRASE",
                "EXACT"
                ]
              }
            ],
            "reportTypeId":"[$ReportType$]",
            "timeUnit":"[$TimeUnit$]",
            "format":"GZIP_JSON"
          }
        }]]>
      </Body>
      <EndPoint Name="CheckReportStatus"
                Url="/reporting/reports/[$parent.reportId$]"
                Method="GET"
                NoOutputColumns="True"
                Headers="ContentType:application/vnd.createasyncreportrequest.v3+json||Amazon-Advertising-API-ClientId:[$AppId$]||Amazon-Advertising-API-Scope:[$Profile$]">
        <Params>
          <Param Name="EnableStatusCheck" Type="Property" Value="true" />
          <Param Name="StatusCheckIterationWaitSeconds" Type="Property" Value="10" />
          <Param Name="StatusCheckMaxWaitSeconds" Type="Property" Value="3600" />
          <Param Name="StatusCheckForFailedValue" Type="Property" Value="True" />
          <Param Name="StatusContinueValue" Type="Property" Value="PENDING|PROCESSING" />
          <Param Name="StatusFailedValue" Type="Property" Value="FAILURE" />
          <Param Name="StatusSuccessValue" Type="Property" Value="COMPLETED" />
        </Params>
        
        <EndPoint Name="DownloadGeneratedReport"
                  Url="[$parent.url$]"
                  Method="GET"
                  CachedTtl="60"
                  Filter="$">
          <Params>
            <Param Name="HttpConnection" Type="Property" />
            <Param Name="EnableStatusCheck" Type="Property" Value="false" />
            <Param Name="FileCompressionType" Value="GZip" />
          </Params>
        </EndPoint>

    </EndPoint>
    </EndPoint>


  </EndPoints>


  <!-- TABLES -->
  <Tables>
    <Table Name="Profiles" SelectEndPoint="get_profiles" />
  </Tables>


</ApiConfig>