Thanks for getting back to me.
Here is an example.
===***===
URL #1:
http://www.uglyhedgehog.com/(a home page of a photography forum)
Top 10 (or first 10) keywords returned by the API:
a canon 7d
buy canon 60d
canon 7d pricing
photography editing programs
buy a canon 60d
canon 60d buy
canon 7d prices
price canon 7d
canon 7d cost
photo editing software programs
Keywords returned by Display Planner:
photography photo gallery
photography wedding photographer
photography
photograph photography
photos photo
royalty free photo images
photographers family photography
photography contest
art photography prints
wildlife photography contest
screenshot of the Display Planner page:
http://www.goudkov.com/temp/aw-api-kw-ideas-01.png===***===
URL #2:
http://www.uglyhedgehog.com/t-147398-1.html(a thread discussing UV filters)
keywords returned by the API:
a canon 7d
buy canon 60d
canon 7d pricing
photography editing programs
buy a canon 60d
canon 60d buy
canon 7d prices
price canon 7d
canon 7d cost
photo editing software programs
Keywords returned by Display Planner:
hoya uv filter review
uv filter review
camera uv filters
nikon uv filters
hoya 55mm uv filter
hoya uv filter 62mm
hoya 62mm uv filter
tiffen uv filter
uv filter 55 mm
uv filter 72 mm
screenshot of the Display Planner page:
http://www.goudkov.com/temp/aw-api-kw-ideas-02.png===***===
URL #3:
http://www.uglyhedgehog.com/t-148205-1.html(a thread discussing graphics editors, gimp in particular)
keywords returned by the API:
a canon 7d
buy canon 60d
canon 7d pricing
photography editing programs
buy a canon 60d
canon 60d buy
canon 7d prices
price canon 7d
canon 7d cost
photo editing software programs
Keywords returned by Display Planner:
how to make gimp
how to take good photos with a digital camera
gimp how to
how to do gimp
how to use gimp
photo editing gimp
gimp photo editor
how to take great pictures with a digital camera
gimp crop image
gimp
screenshot of the Display Planner page:
http://www.goudkov.com/temp/aw-api-kw-ideas-03.png=====
As you can see, Display Planner actually gets them right.
The home page is vague, which is to be expected.
But individual thread pages are right on spot.
I just included the home page as well to show that the API always returns the same set of keywords.
In the past, the API always returned the keywords sorted according to relevance.
I haven't seen anything in the docs suggesting that it changed. So I'm assuming, the API is still supposed to return the results based on relevance, which is the default sort order for Display Planner too.
Yet, we can see a discrepancy.
===
Here is the relevant bits of code I use with the client library:
String url="THE USR IS SUPPLIED HERE, ELSEWHER IN THE CODE";
int maxResults=10; //just as a test
TargetingIdeaSelector selector = new TargetingIdeaSelector();
selector.setRequestType(RequestType.IDEAS);
selector.setIdeaType(IdeaType.KEYWORD);
selector.setRequestedAttributeTypes(new AttributeType[] { AttributeType.KEYWORD_TEXT });
RelatedToUrlSearchParameter relatedToUrlSearchParameter = new RelatedToUrlSearchParameter();
relatedToUrlSearchParameter.setUrls(new String[] { url });
relatedToUrlSearchParameter.setIncludeSubUrls(false);
//I'm assuming 2840 is the US
LocationSearchParameter ctsp = new LocationSearchParameter();
Location usLoc = new Location();
usLoc.setId(new Long(2840));
ctsp.setLocations(new Location[] { usLoc });
//I'm assuming 1000 is English
LanguageSearchParameter ltsp = new LanguageSearchParameter();
Language englishLang = new Language();
englishLang.setId(new Long(1000));
ltsp.setLanguages(new Language[] { englishLang });
selector.setSearchParameters(new SearchParameter[] { relatedToUrlSearchParameter, ctsp, ltsp });
Paging paging = new Paging();
paging.setStartIndex(0);
paging.setNumberResults(maxResults);
selector.setPaging(paging);
//tried either of the two methods, the same result
TargetingIdeaPage page = targetingIdeaService.get(selector);
//TargetingIdeaPage page = targetingIdeaService.getBulkKeywordIdeas(selector);
//outside code deals with the list
List kwdList = new LinkedList();
if (page.getEntries() != null && page.getEntries().length > 0) {
for (TargetingIdea targetingIdea : page.getEntries()) {
kwdList.add(((StringAttribute) targetingIdea.getData()[0].getValue()).getValue());
}
}
return kwdList;