This post is a follow-up to my earlier one about using SOAP requests in ASP.Net to access the eBay API. I've finally figured out how to make it work! A few key things to note: most requests need the "version" attribute, some require the "DetailLevel" attribute, and you'll need an eBay Authentication Token (a cryptographic hash) for security. When using the WSDL URL, remember to include query string parameters so eBay knows what to do. I've included some sample C# code demonstrating how to build the request URL, set credentials, and handle the response.
I'm exploring the eBay API using ASP.NET and SOAP. It's proving a bit cumbersome due to its monolithic structure. Ideally, each API call would have its own WSDL and SOAP interface for easier management. Currently, I'm stuck on generating a User Token for authentication, having tried my developer account, regular eBay account, and a new account without success. Any advice on obtaining a User Token would be greatly appreciated!
I've been exploring the Amazon Web Service API, comparing its REST and SOAP interfaces. Initial impressions suggest the REST API is significantly faster, especially compared to my experiences using the SOAP API with C# and Web References. However, it's worth noting that these observations aren't based on rigorous testing and the different environments (Windows Forms vs. a Linux server on a fast network) could be influencing the perceived performance difference.
James Manning left a comment on my blog post about compression, pointing to a Microsoft article about built-in decompression support in .NET 2.0 for SOAP replies. While I appreciate the comment, Yahoo APIs don't use SOAP, so it won't be helpful in that context. However, this information could be useful for working with Amazon APIs, which do have a SOAP interface.
The MSN Search API is now available. I haven't explored it fully yet, but here are some useful links: Why MSN Search?, the MSN Search API download, the SOAP service description, and the developer registration form (requires a .Net Passport). The API appears to be a SOAP service, so I'll likely need to create a proxy for direct calls. The download includes documentation and sample projects. You'll need an application ID, similar to Yahoo's. If you know how to use SOAP with JavaScript, please email me!
I'm trying to be more diligent about documentation, but PDC distractions and the new MSN Search API have me sidetracked. The API's SOAP format and seeming redundancy with existing RSS search options make me question its value. Maybe I'll integrate it into AJAXTagger v2 if I can avoid feature creep. Check out my blog for MSN Search and Start.com developer program resources.
In this part of my series on my AJAX application, I'm discussing the impact of external APIs. My use of APIs has made me realize how much more API access I want! I'd love to see broader API availability from feed/blog companies for statistics, retail companies for catalogs, news corporations for news feeds, and search companies for both results and more interesting APIs (like Yahoo's). Essentially, I want a central directory of companies offering these services, recognizing that I'm a consumer of their data. I'm also realizing how many APIs (REST and SOAP) are out there that I could leverage. I envision adding more dynamism to my apps, like analyzing blog post keywords to see their popularity, potential ad revenue, and related keywords. I could then cross-reference this with other sources to give viewers more feedback, such as related blog importance, link counts, and other connections. I could even offer localized product information, best buy deals, or second-hand options based on keywords. This isn't revolutionary, but I need help finding lists of companies that offer web APIs and useful RSS feeds. Readers, please share your knowledge!
I've been exploring Amazon's SOAP API and Yahoo's REST API and I'm quite impressed with both. I'm thinking about ways to make these two APIs interact and will share my ideas in a future post. I've also been working on using REST in .Net 1.1, which is a little tricky but possible, thanks to Martin G. Brown's work. The process involves using an XSD of the response, running it through XSD.exe to generate a Dataset object, and then processing the results. It's a similar concept to WSDL, but without the automatic stub generation. I'll post some Yahoo API code examples soon. I plan to look into Google's API as well, even though it's in beta with usage restrictions.