Loading ...
Sorry, an error occurred while loading the content.

Combining SearchTermActivity Report Values

Expand Messages
  • simkhjo
    Hello, I noticed that when I do a SearchTermActivity report it will return separate results based on bid, rank, and match type. I am wondering if there is a
    Message 1 of 7 , Nov 14, 2005
    View Source
    • 0 Attachment
      Hello, I noticed that when I do a SearchTermActivity report it will
      return separate results based on bid, rank, and match type. I am
      wondering if there is a way for the return XML to display the totals
      and not separate bid and rank.

      For example: search term 'widgets' returns 4 rows - all on the same
      date and match type Standard, but bid is different for each row.

      Looking for a way to have 1 row returned for bandwidth and speed
      purposes (bid and rank are not important to my current application).

      Also, in order to optimize my API queries I would like to be able to
      pull a report of all search terms that have ever been used. This way
      I can pull smaller "per-searchterm" (searchTerm=) reports which will
      help my program's memory management. Any ideas?

      Thanks in advance.
      Chris
    • Yahoo! Search Marketing Monkey
      Did you try the SearchTermActivityDetailAggregate report? This should give you one-row-per-term without the bid/rank breakout. As for the report of all
      Message 2 of 7 , Nov 14, 2005
      View Source
      • 0 Attachment
        Did you try the 'SearchTermActivityDetailAggregate' report? This should
        give you one-row-per-term without the bid/rank breakout.

        As for the "report of all search terms ever used", I'm not aware of such
        a thing. You'll need to:
        a) keep track of this list on your end
        b) use the account download (GetListings w/ sessioning)

        Note that b) only gets CURRENT terms in your account.

        Hope that helps.
        -Y!SM Monkey

        simkhjo wrote:
        > Hello, I noticed that when I do a SearchTermActivity report it will
        > return separate results based on bid, rank, and match type. I am
        > wondering if there is a way for the return XML to display the totals
        > and not separate bid and rank.
        >
        > For example: search term 'widgets' returns 4 rows - all on the same
        > date and match type Standard, but bid is different for each row.
        >
        > Looking for a way to have 1 row returned for bandwidth and speed
        > purposes (bid and rank are not important to my current application).
        >
        > Also, in order to optimize my API queries I would like to be able to
        > pull a report of all search terms that have ever been used. This way
        > I can pull smaller "per-searchterm" (searchTerm=) reports which will
        > help my program's memory management. Any ideas?
        >
        > Thanks in advance.
        > Chris
        >
        >
        >
        >
        >
        >
        >
        > Yahoo! Groups Links
        >
        >
        >
        >
        >
        >
      • simkhjo
        Thanks for the reply. The method I came up with is the following: 1) Do a SearchTermActivityDetailAggregate report to gather unique search terms within the
        Message 3 of 7 , Nov 15, 2005
        View Source
        • 0 Attachment
          Thanks for the reply. The method I came up with is the following:

          1) Do a SearchTermActivityDetailAggregate report to gather unique
          search terms within the startDate and endDate
          2) Save XML locally and parse search terms for processing
          3) Process each search term by requesting a SearchTermActivityDetail
          report specifying searchTerm=$term and same time range

          This works well, but returns values separated by bid/rank. I think my
          next step is to change my array keys to the datestamp, so I can just
          combine the values on the fly. Unless there is a way to do a 'daily
          aggregate' report. The array I am looking to obtain is:

          array(
          [date]
          [search term]
          [total clicks today]
          [total impressions today]
          [total cost today]
          [total conversions today]
          )

          Thanks for your attention.


          --- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
          Monkey" <plummerm@y...> wrote:
          >
          > Did you try the 'SearchTermActivityDetailAggregate' report? This
          should
          > give you one-row-per-term without the bid/rank breakout.
          >
          > As for the "report of all search terms ever used", I'm not aware of
          such
          > a thing. You'll need to:
          > a) keep track of this list on your end
          > b) use the account download (GetListings w/ sessioning)
          >
          > Note that b) only gets CURRENT terms in your account.
          >
          > Hope that helps.
          > -Y!SM Monkey
        • Yahoo! Search Marketing Monkey
          Hi, I m not sure why you d do this. You are are using the Aggregate report to get keywords, then using the detail report to get the stats, but get more data
          Message 4 of 7 , Nov 15, 2005
          View Source
          • 0 Attachment
            Hi,

            I'm not sure why you'd do this. You are are using the Aggregate report
            to get keywords, then using the "detail" report to get the stats, but
            get more data than you need. This creates significantly wasted load on
            the Y!SM side and your side. Why not JUST use the aggregate report
            since it gives you the data you need already? Is the data too much to
            handle? You can do the same thing mentioned below...write the XML to
            disk and parse normally. You *should* be using a SAX-style parser for
            any large data sets. Using a DOM-style parser in this case is asking
            for trouble.

            Hope this helps.
            -Y!SM Monkey

            simkhjo wrote:
            > Thanks for the reply. The method I came up with is the following:
            >
            > 1) Do a SearchTermActivityDetailAggregate report to gather unique
            > search terms within the startDate and endDate
            > 2) Save XML locally and parse search terms for processing
            > 3) Process each search term by requesting a SearchTermActivityDetail
            > report specifying searchTerm=$term and same time range
            >
            > This works well, but returns values separated by bid/rank. I think my
            > next step is to change my array keys to the datestamp, so I can just
            > combine the values on the fly. Unless there is a way to do a 'daily
            > aggregate' report. The array I am looking to obtain is:
            >
            > array(
            > [date]
            > [search term]
            > [total clicks today]
            > [total impressions today]
            > [total cost today]
            > [total conversions today]
            > )
            >
            > Thanks for your attention.
            >
            >
            > --- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
            > Monkey" <plummerm@y...> wrote:
            >
            >>Did you try the 'SearchTermActivityDetailAggregate' report? This
            >
            > should
            >
            >>give you one-row-per-term without the bid/rank breakout.
            >>
            >>As for the "report of all search terms ever used", I'm not aware of
            >
            > such
            >
            >>a thing. You'll need to:
            >> a) keep track of this list on your end
            >> b) use the account download (GetListings w/ sessioning)
            >>
            >>Note that b) only gets CURRENT terms in your account.
            >>
            >>Hope that helps.
            >>-Y!SM Monkey
            >
            >
            >
            >
            >
            >
            >
            >
            >
            >
            > Yahoo! Groups Links
            >
            >
            >
            >
            >
            >
          • simkhjo
            Thanks again for the help. The reason I cannot use just the Aggregate report is because it combines all stats into the date range supplied as follows:
            Message 5 of 7 , Nov 16, 2005
            View Source
            • 0 Attachment
              Thanks again for the help.

              The reason I cannot use just the Aggregate report is because it
              combines all stats into the date range supplied as follows:

              SearchTermActivityDetailAggregateRow minDatestamp="2005-04-12"
              maxDatestamp="2005-10-12" searchTerm="widgets" ....

              I need the data totals separated by date. I'd need the Aggregate
              report to display:

              SearchTermActivityDetailAggregateRow datestamp="2005-10-10"
              searchTerm="widgets" ....

              SearchTermActivityDetailAggregateRow datestamp="2005-10-11"
              searchTerm="widgets" ....

              SearchTermActivityDetailAggregateRow datestamp="2005-10-12"
              searchTerm="widgets" ....

              etc..

              This would be ideal for load on both sides, but I have to use the
              current method in order to obtain a daily 'history' of statistics for
              each known keyword.

              Also, I am using PHP's xml_parse which is a SAX-style parser and
              gathering my (global) data arrays inside of the startElement handlers.
              What other method would you suggest?

              I am doing almost the same thing with AdWords reports, but their API
              is a bit different from Yahoo's (I prefer Yahoo's API, but Adwords
              allows for more report flexibility).

              Thanks again!


              --- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
              Monkey" <plummerm@y...> wrote:
              >
              > Hi,
              >
              > I'm not sure why you'd do this. You are are using the Aggregate report
              > to get keywords, then using the "detail" report to get the stats, but
              > get more data than you need. This creates significantly wasted load on
              > the Y!SM side and your side. Why not JUST use the aggregate report
              > since it gives you the data you need already? Is the data too much to
              > handle? You can do the same thing mentioned below...write the XML to
              > disk and parse normally. You *should* be using a SAX-style parser for
              > any large data sets. Using a DOM-style parser in this case is asking
              > for trouble.
              >
              > Hope this helps.
              > -Y!SM Monkey
              >
              > simkhjo wrote:
              > > Thanks for the reply. The method I came up with is the following:
              > >
              > > 1) Do a SearchTermActivityDetailAggregate report to gather unique
              > > search terms within the startDate and endDate
              > > 2) Save XML locally and parse search terms for processing
              > > 3) Process each search term by requesting a SearchTermActivityDetail
              > > report specifying searchTerm=$term and same time range
              > >
              > > This works well, but returns values separated by bid/rank. I think my
              > > next step is to change my array keys to the datestamp, so I can just
              > > combine the values on the fly. Unless there is a way to do a 'daily
              > > aggregate' report. The array I am looking to obtain is:
              > >
              > > array(
              > > [date]
              > > [search term]
              > > [total clicks today]
              > > [total impressions today]
              > > [total cost today]
              > > [total conversions today]
              > > )
              > >
              > > Thanks for your attention.
              > >
              > >
              > > --- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
              > > Monkey" <plummerm@y...> wrote:
              > >
              > >>Did you try the 'SearchTermActivityDetailAggregate' report? This
              > >
              > > should
              > >
              > >>give you one-row-per-term without the bid/rank breakout.
              > >>
              > >>As for the "report of all search terms ever used", I'm not aware of
              > >
              > > such
              > >
              > >>a thing. You'll need to:
              > >> a) keep track of this list on your end
              > >> b) use the account download (GetListings w/ sessioning)
              > >>
              > >>Note that b) only gets CURRENT terms in your account.
              > >>
              > >>Hope that helps.
              > >>-Y!SM Monkey
              > >
              > >
              > >
              > >
              > >
              > >
              > >
              > >
              > >
              > >
              > > Yahoo! Groups Links
              > >
              > >
              > >
              > >
              > >
              > >
              >
            • Yahoo! Search Marketing Monkey
              Ah, gotcha. Sounds like you are using the best method for what you need then. How often are you looking up historical data? Are you able to cache/store this
              Message 6 of 7 , Nov 16, 2005
              View Source
              • 0 Attachment
                Ah, gotcha. Sounds like you are using the best method for what you need
                then. How often are you looking up historical data? Are you able to
                cache/store this on your end to avoid more API pulls over time?

                -Y!SM Monkey

                simkhjo wrote:
                > Thanks again for the help.
                >
                > The reason I cannot use just the Aggregate report is because it
                > combines all stats into the date range supplied as follows:
                >
                > SearchTermActivityDetailAggregateRow minDatestamp="2005-04-12"
                > maxDatestamp="2005-10-12" searchTerm="widgets" ....
                >
                > I need the data totals separated by date. I'd need the Aggregate
                > report to display:
                >
                > SearchTermActivityDetailAggregateRow datestamp="2005-10-10"
                > searchTerm="widgets" ....
                >
                > SearchTermActivityDetailAggregateRow datestamp="2005-10-11"
                > searchTerm="widgets" ....
                >
                > SearchTermActivityDetailAggregateRow datestamp="2005-10-12"
                > searchTerm="widgets" ....
                >
                > etc..
                >
                > This would be ideal for load on both sides, but I have to use the
                > current method in order to obtain a daily 'history' of statistics for
                > each known keyword.
                >
                > Also, I am using PHP's xml_parse which is a SAX-style parser and
                > gathering my (global) data arrays inside of the startElement handlers.
                > What other method would you suggest?
                >
                > I am doing almost the same thing with AdWords reports, but their API
                > is a bit different from Yahoo's (I prefer Yahoo's API, but Adwords
                > allows for more report flexibility).
                >
                > Thanks again!
                >
                >
                > --- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
                > Monkey" <plummerm@y...> wrote:
                >
                >>Hi,
                >>
                >>I'm not sure why you'd do this. You are are using the Aggregate report
                >>to get keywords, then using the "detail" report to get the stats, but
                >>get more data than you need. This creates significantly wasted load on
                >>the Y!SM side and your side. Why not JUST use the aggregate report
                >>since it gives you the data you need already? Is the data too much to
                >>handle? You can do the same thing mentioned below...write the XML to
                >>disk and parse normally. You *should* be using a SAX-style parser for
                >>any large data sets. Using a DOM-style parser in this case is asking
                >>for trouble.
                >>
                >>Hope this helps.
                >>-Y!SM Monkey
                >>
                >>simkhjo wrote:
                >>
                >>>Thanks for the reply. The method I came up with is the following:
                >>>
                >>>1) Do a SearchTermActivityDetailAggregate report to gather unique
                >>>search terms within the startDate and endDate
                >>>2) Save XML locally and parse search terms for processing
                >>>3) Process each search term by requesting a SearchTermActivityDetail
                >>>report specifying searchTerm=$term and same time range
                >>>
                >>>This works well, but returns values separated by bid/rank. I think my
                >>>next step is to change my array keys to the datestamp, so I can just
                >>>combine the values on the fly. Unless there is a way to do a 'daily
                >>>aggregate' report. The array I am looking to obtain is:
                >>>
                >>>array(
                >>> [date]
                >>> [search term]
                >>> [total clicks today]
                >>> [total impressions today]
                >>> [total cost today]
                >>> [total conversions today]
                >>>)
                >>>
                >>>Thanks for your attention.
                >>>
                >>>
                >>>--- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
                >>>Monkey" <plummerm@y...> wrote:
                >>>
                >>>
                >>>>Did you try the 'SearchTermActivityDetailAggregate' report? This
                >>>
                >>>should
                >>>
                >>>
                >>>>give you one-row-per-term without the bid/rank breakout.
                >>>>
                >>>>As for the "report of all search terms ever used", I'm not aware of
                >>>
                >>>such
                >>>
                >>>
                >>>>a thing. You'll need to:
                >>>> a) keep track of this list on your end
                >>>> b) use the account download (GetListings w/ sessioning)
                >>>>
                >>>>Note that b) only gets CURRENT terms in your account.
                >>>>
                >>>>Hope that helps.
                >>>>-Y!SM Monkey
                >>>
                >>>
                >>>
                >>>
                >>>
                >>>
                >>>
                >>>
                >>>
                >>>
                >>>Yahoo! Groups Links
                >>>
                >>>
                >>>
                >>>
                >>>
                >>>
                >>
                >
                >
                >
                >
                >
                >
                >
                >
                > Yahoo! Groups Links
                >
                >
                >
                >
                >
                >
                >
              • simkhjo
                Yeah, I m saving the historical data to a database. At first I was trying for the entire history of the account (using an out of range start date ie: 2001),
                Message 7 of 7 , Nov 16, 2005
                View Source
                • 0 Attachment
                  Yeah, I'm saving the historical data to a database. At first I was
                  trying for the entire history of the account (using an out of range
                  start date ie: 2001), but I started getting an unexpected error when
                  the data set was extremely large:

                  <GetReportResponse success="false" reason="Internal
                  Error"></GetReportResponse>

                  This error caused a bit of hair loss, but I was able to track it down.
                  I would get this response after about 1/2 (guessing) of the rows were
                  returned successfully in my aggregate report. So, I changed my plan
                  to grab only 3 months of history.

                  Once all of the data is retrieved in this initial time range I save it
                  all to a database and record today's hits to another table. Then
                  every 2 hours or so I'll pull another report for "today", compare
                  delta hits and insert the difference into the database. So, after the
                  first run the overhead should be fairly light.

                  Thanks for all your help, I think I'm pretty much set here. I'm still
                  trying to gracefully handle any errors my yahoo module may encounter,
                  but I'm unsure why I'm getting this Internal Error (other than
                  assuming the data set is too large). Also, for only one account I am
                  getting a "Permission Denied" error:

                  <GetReportResponse success="false" reason="Permission
                  Denied"></GetReportResponse>

                  Is there a list of descriptions for all possible GetReportResponse
                  errors that I may encounter? I haven't checked the AWS DTC-XML doc
                  yet, but I'll get there.

                  While a bit hard to discover, support here for Y! Search Marketing Web
                  Services API has been A+ - Go Yahoo!!

                  --- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
                  Monkey" <plummerm@y...> wrote:
                  >
                  > Ah, gotcha. Sounds like you are using the best method for what you
                  need
                  > then. How often are you looking up historical data? Are you able to
                  > cache/store this on your end to avoid more API pulls over time?
                  >
                  > -Y!SM Monkey
                  >
                  > simkhjo wrote:
                  > > Thanks again for the help.
                  > >
                  > > The reason I cannot use just the Aggregate report is because it
                  > > combines all stats into the date range supplied as follows:
                  > >
                  > > SearchTermActivityDetailAggregateRow minDatestamp="2005-04-12"
                  > > maxDatestamp="2005-10-12" searchTerm="widgets" ....
                  > >
                  > > I need the data totals separated by date. I'd need the Aggregate
                  > > report to display:
                  > >
                  > > SearchTermActivityDetailAggregateRow datestamp="2005-10-10"
                  > > searchTerm="widgets" ....
                  > >
                  > > SearchTermActivityDetailAggregateRow datestamp="2005-10-11"
                  > > searchTerm="widgets" ....
                  > >
                  > > SearchTermActivityDetailAggregateRow datestamp="2005-10-12"
                  > > searchTerm="widgets" ....
                  > >
                  > > etc..
                  > >
                  > > This would be ideal for load on both sides, but I have to use the
                  > > current method in order to obtain a daily 'history' of statistics for
                  > > each known keyword.
                  > >
                  > > Also, I am using PHP's xml_parse which is a SAX-style parser and
                  > > gathering my (global) data arrays inside of the startElement handlers.
                  > > What other method would you suggest?
                  > >
                  > > I am doing almost the same thing with AdWords reports, but their API
                  > > is a bit different from Yahoo's (I prefer Yahoo's API, but Adwords
                  > > allows for more report flexibility).
                  > >
                  > > Thanks again!
                  > >
                  > >
                  > > --- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
                  > > Monkey" <plummerm@y...> wrote:
                  > >
                  > >>Hi,
                  > >>
                  > >>I'm not sure why you'd do this. You are are using the Aggregate
                  report
                  > >>to get keywords, then using the "detail" report to get the stats, but
                  > >>get more data than you need. This creates significantly wasted
                  load on
                  > >>the Y!SM side and your side. Why not JUST use the aggregate report
                  > >>since it gives you the data you need already? Is the data too
                  much to
                  > >>handle? You can do the same thing mentioned below...write the XML to
                  > >>disk and parse normally. You *should* be using a SAX-style parser
                  for
                  > >>any large data sets. Using a DOM-style parser in this case is asking
                  > >>for trouble.
                  > >>
                  > >>Hope this helps.
                  > >>-Y!SM Monkey
                  > >>
                  > >>simkhjo wrote:
                  > >>
                  > >>>Thanks for the reply. The method I came up with is the following:
                  > >>>
                  > >>>1) Do a SearchTermActivityDetailAggregate report to gather unique
                  > >>>search terms within the startDate and endDate
                  > >>>2) Save XML locally and parse search terms for processing
                  > >>>3) Process each search term by requesting a SearchTermActivityDetail
                  > >>>report specifying searchTerm=$term and same time range
                  > >>>
                  > >>>This works well, but returns values separated by bid/rank. I
                  think my
                  > >>>next step is to change my array keys to the datestamp, so I can just
                  > >>>combine the values on the fly. Unless there is a way to do a 'daily
                  > >>>aggregate' report. The array I am looking to obtain is:
                  > >>>
                  > >>>array(
                  > >>> [date]
                  > >>> [search term]
                  > >>> [total clicks today]
                  > >>> [total impressions today]
                  > >>> [total cost today]
                  > >>> [total conversions today]
                  > >>>)
                  > >>>
                  > >>>Thanks for your attention.
                  > >>>
                  > >>>
                  > >>>--- In yws-searchmarketing@yahoogroups.com, "Yahoo! Search Marketing
                  > >>>Monkey" <plummerm@y...> wrote:
                  > >>>
                  > >>>
                  > >>>>Did you try the 'SearchTermActivityDetailAggregate' report? This
                  > >>>
                  > >>>should
                  > >>>
                  > >>>
                  > >>>>give you one-row-per-term without the bid/rank breakout.
                  > >>>>
                  > >>>>As for the "report of all search terms ever used", I'm not aware of
                  > >>>
                  > >>>such
                  > >>>
                  > >>>
                  > >>>>a thing. You'll need to:
                  > >>>> a) keep track of this list on your end
                  > >>>> b) use the account download (GetListings w/ sessioning)
                  > >>>>
                  > >>>>Note that b) only gets CURRENT terms in your account.
                  > >>>>
                  > >>>>Hope that helps.
                  > >>>>-Y!SM Monkey
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>Yahoo! Groups Links
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>>
                  > >>
                  > >
                  > >
                  > >
                  > >
                  > >
                  > >
                  > >
                  > >
                  > > Yahoo! Groups Links
                  > >
                  > >
                  > >
                  > >
                  > >
                  > >
                  > >
                  >
                Your message has been successfully submitted and would be delivered to recipients shortly.