Skip to content
twilde edited this page Oct 16, 2011 · 3 revisions

This is the interface concept I'm currently working with. Thoughts/suggestions/ideas welcome! There is a set of modules as follows:

  • WWW::Namecheap::API
  • WWW::Namecheap::Domain
  • WWW::Namecheap::DNS
  • WWW::Namecheap::NS
  • WWW::Namecheap::SSL
  • WWW::Namecheap::User

The ::API module contains just the API basics and a request() method, along with convenience accessors to the other classes.

The other classes all require an API object in their new() constructor, and basically wrap the API functions for a given area as indicated by their name. For convenience, the API object has helper methods for each type with internal caching, so you can say $api->domain->check(), and every other $api->domain->whatever() call uses the same WWW::Namecheap::Domain instance that was used in the first one.

Clone this wiki locally