Hi,

Unfortunately we don't provide a public roadmap, but news about
features is posted to the AdWords API Blog:

  http://adwordsapi.blogspot.com/

Best,
- Eric

On Aug 31, 6:15 am, bhealy <noriordan+...@cartrawler.com> wrote:
> Thanks for the reply Eric - really appreciate your help.
>
> Last question on this-: Do you guys publish a roadmap for the API that
> I could get visibility of ?
> Something that contains your plans for new functionality, along with
> go live dates ?
>
> On Aug 9, 3:05 pm, AdWords API Advisor <adwordsapiadvi...@google.com>
> wrote:
>
>
>
> > Hi Bobby,
>
> > The AdWords API is the only API available, so there is nothing else to
> > compare it with in regards to speed.  You can try using the
> > AdGroupCriterionService instead of the BulkMutateJobService, but I
> > don't know if you'll see a dramatic speed difference.
>
> > Best,
> > - Eric
>
> > On Aug 9, 6:21 am, bobby <noriordan+apit...@cartrawler.com> wrote:
>
> > > Thanks Eric, yes I understand that - but what I was really asking was
> > > "what is the fastest
> > > way to upload 300,000 keywords?".
>
> > > In other words - is the ADWORDS API the fastest way to do it, or is
> > > there some other form
> > > of transfer that I can use?
>
> > > Currently 300,000 keywords is taking me nearly 12 hours to upload -
> > > which is not an acceptable
> > > performance level for my customer.
>
> > > Our business want to operate in a much more dynamic way with ADWORDS,
> > > and we were hoping the API
> > > would be a way to accomplish that, but so far it's looking like -
> > > while the flexibility and
> > > the potential to automate is there - that we are prevented from
> > > scaling up due to the performance.
>
> > > Any pointers you can provide would be like water to a dry duck at this
> > > stage.
>
> > > Thanks,
> > > Bobby
>
> > > On Aug 6, 10:12 pm, AdWords API Advisor <adwordsapiadvi...@google.com>
> > > wrote:
>
> > > > Hi Bobby,
>
> > > > The BulkMutateJobService does not offer any speed benefits over the
> > > > regular synchronous services.  There is the possibility of concurrent
> > > > processing of operations, but in general you shouldn't assume that
> > > > operations will process any faster using the BMJS.  The BMJS is
> > > > designed for uploading large numbers of entities, such as keywords and
> > > > ads, but it should not be used for time-sensitive changes.
>
> > > > Best,
> > > > - Eric Koleda, AdWords API Team
>
> > > > On Aug 5, 8:43 am, bobby healy <robertjohnpatrickhe...@googlemail.com>
> > > > wrote:
>
> > > > > OK, I've searched everywhere and there doesn't seem to be a single,
> > > > > definitive answer to this question-:
>
> > > > > "How do I bulk upload about 300,000 keywords as quickly as possible ?"
>
> > > > > Currently this takes me about 24 hours using the following code. Is
> > > > > there any faster way to do this ?
>
> > > > >                 AdGroupAd textAdGroupAd = new AdGroupAd();
>
> > > > > textAdGroupAd.setAdGroupId(g.getAdGroupID());
> > > > > textAdGroupAd.setAd(textAd);
> > > > >                     AdGroupAdOperation textAdGroupAdOperation = new
> > > > > AdGroupAdOperation();
> > > > >                     textAdGroupAdOperation.setOperand(textAdGroupAd);
> > > > >                     textAdGroupAdOperation.setOperator(Operator.ADD);
> > > > >                    ... add some exemptions....
> > > > >                     l.adGroupAdOperations.add(textAdGroupAdOperation);
> > > > >                 BulkMutateJobServiceInterface bulkMutateJobService =
> > > > > user.getService(
>
> > > > > AdWordsService.V201003.BULK_MUTATE_JOB_SERVICE);
> > > > >                 // Set scope of jobs.
> > > > >                 EntityId scopingEntityId = new
> > > > > EntityId(EntityIdType.CAMPAIGN_ID, c.getCampaignID());
> > > > >                 long jobId = createAndBeginJob(bulkMutateJobService,
> > > > > scopingEntityId, e.getValue().adGroupAdOperations.toArray(new
> > > > > AdGroupAdOperation[0]));
> > > > >                 OperationResult[] operationResults =
> > > > > retrieveResultsFromJob(bulkMutateJobService, jobId, null);
>
> > > > >     private static OperationResult[] retrieveResultsFromJob(
> > > > >             BulkMutateJobServiceInterface bulkMutateJobService, long
> > > > > jobId, ProgressDialog p)
> > > > >             throws InterruptedException, IOException {
> > > > >         List<OperationResult[]> operationResultsByPart = new
> > > > > ArrayList<OperationResult[]>();
> > > > >         BulkMutateJob job = null;
>
> > > > >         // Create selector.
> > > > >         BulkMutateJobSelector selector = new BulkMutateJobSelector();
> > > > >         selector.setJobIds(new long[]{jobId});
>
> > > > >         // Loop while waiting for the job to complete.
> > > > >         int percent = 1;
> > > > >         do {
> > > > >             BulkMutateJob[] jobs = bulkMutateJobService.get(selector);
> > > > >             job = jobs[0];
>
> > > > >             System.out.println("Bulk mutate job with id \"" +
> > > > > job.getId() + "\" has status \"" + job.getStatus() + "\".");
>
> > > > >             if (job.getStatus().equals(BasicJobStatus.PENDING) ||
> > > > > job.getStatus().equals(BasicJobStatus.PROCESSING)) {
> > > > >                 if (p != null)
> > > > >                     p.setProgress(percent++);
> > > > >                 Thread.sleep(10000);
> > > > >             }
> > > > >         } while (job.getStatus().equals(BasicJobStatus.PENDING) ||
> > > > > job.getStatus().equals(BasicJobStatus.PROCESSING));
>
> > > > > ************* the above WHILE loop is where it spends all it's time -
> > > > > PROCESSING for hours...****************
>
> > > > >         if (job.getStatus() == BasicJobStatus.FAILED) {
> > > > >             throw new ApiException("Job failed.", null, null);
> > > > >         }
>
> > > > >         for (int i = 0; i < job.getNumRequestParts(); i++) {
> > > > >             // Set selector to retrieve results for part.
> > > > >             selector.setResultPartIndex(i);
> > > > >             BulkMutateJob jobWithResult =
> > > > > bulkMutateJobService.get(selector)[0];

-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Also find us on our blog and discussion group:
http://adwordsapi.blogspot.com
http://groups.google.com/group/adwords-api
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en

Reply via email to