{"_id":"api-client","_rev":"398310","name":"api-client","description":"Object Oriented library for HTTP Web API clients","dist-tags":{"latest":"1.1.3"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"time":{"modified":"2021-08-04T04:21:56.000Z","created":"2013-04-24T00:43:17.304Z","1.1.3":"2014-08-07T22:23:33.099Z","1.1.2":"2014-04-09T20:49:41.635Z","1.1.0":"2014-01-14T22:37:44.935Z","1.0.14":"2014-01-14T21:25:21.225Z","1.0.12":"2014-01-13T19:08:30.520Z","1.0.10":"2013-11-21T20:57:12.341Z","1.0.6":"2013-05-16T20:08:15.331Z","1.0.4":"2013-05-16T18:38:54.595Z","1.0.3":"2013-05-13T21:17:36.942Z","1.0.2":"2013-05-13T21:02:52.328Z","1.0.1":"2013-05-01T22:29:15.818Z","1.0.0":"2013-05-01T17:33:52.996Z","0.0.8":"2013-04-30T21:07:35.627Z","0.0.7":"2013-04-26T19:43:30.245Z","0.0.5":"2013-04-25T23:03:10.675Z","0.0.4":"2013-04-25T21:15:14.395Z","0.0.3":"2013-04-24T01:00:31.680Z","0.0.2":"2013-04-24T00:55:35.528Z","0.0.1":"2013-04-24T00:43:17.304Z"},"users":{},"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"versions":{"1.1.3":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.1.3","homepage":"https://github.com/seifertd/api-client","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"~0.4.35","request":"~2","underscore":"~1"},"devDependencies":{"testutil":"~0.7.0","coffee-script":"~1.7.1","mocha":"~1.18.2","chai":"~1.9.1","async":"~0.7.0","growl":"~1.7.0","fs-extra":"~0.8.1","path-extra":"~0.1.1","bondjs":"~1.1.0"},"engines":{"node":"*"},"bugs":{"url":"https://github.com/seifertd/api-client/issues"},"_id":"api-client@1.1.3","dist":{"shasum":"fc36afb2494dc53e7367024c113df9d9763ad40f","size":11551,"noattachment":false,"key":"/api-client/-/api-client-1.1.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.1.3.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1407450213099,"_cnpm_publish_time":1407450213099,"_hasShrinkwrap":false},"1.1.2":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.1.2","homepage":"https://github.com/seifertd/api-client","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"~0.4.35","request":"~2.34.0","underscore":"~1"},"devDependencies":{"testutil":"~0.7.0","coffee-script":"~1.7.1","mocha":"~1.18.2","chai":"~1.9.1","async":"~0.7.0","growl":"~1.7.0","fs-extra":"~0.8.1","path-extra":"~0.1.1","bondjs":"~1.1.0"},"engines":{"node":"*"},"bugs":{"url":"https://github.com/seifertd/api-client/issues"},"_id":"api-client@1.1.2","dist":{"shasum":"29e7175113bdd990ab258f9eb38dca076ce4d6e7","size":11556,"noattachment":false,"key":"/api-client/-/api-client-1.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.1.2.tgz"},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1397076581635,"_hasShrinkwrap":false,"_cnpm_publish_time":1397076581635},"1.1.0":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.1.0","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.x","underscore":"1.x"},"devDependencies":{"testutil":"> 0","coffee-script":"> 0","mocha":"> 0","chai":"> 0","async":"> 0","growl":"> 0","fs-extra":"> 0","path-extra":"> 0","bondjs":"> 0"},"engines":{"node":"*"},"bugs":{"url":"https://github.com/seifertd/api-client/issues"},"_id":"api-client@1.1.0","dist":{"shasum":"03217fc8670f395a021607364e0511a01acb13f2","size":11489,"noattachment":false,"key":"/api-client/-/api-client-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.1.0.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1389739064935,"_hasShrinkwrap":false,"_cnpm_publish_time":1389739064935},"1.0.14":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.14","homepage":"https://github.com/seifertd/api-client","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.x","underscore":"1.x"},"devDependencies":{"testutil":"> 0","coffee-script":"> 0","mocha":"> 0","chai":"> 0","async":"> 0","growl":"> 0","fs-extra":"> 0","path-extra":"> 0","bondjs":"> 0"},"engines":{"node":"*"},"bugs":{"url":"https://github.com/seifertd/api-client/issues"},"_id":"api-client@1.0.14","dist":{"shasum":"ac71439e8864f58586a917f7252dccf4f8ac312e","size":11399,"noattachment":false,"key":"/api-client/-/api-client-1.0.14.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.14.tgz"},"_from":".","_npmVersion":"1.3.21","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1389734721225,"_hasShrinkwrap":false,"_cnpm_publish_time":1389734721225},"1.0.12":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.12","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.x","underscore":"1.x"},"devDependencies":{"testutil":"> 0","coffee-script":"> 0","mocha":"> 0","chai":"> 0","async":"> 0","growl":"> 0","fs-extra":"> 0","path-extra":"> 0","bondjs":"> 0"},"engines":{"node":"*"},"bugs":{"url":"https://github.com/seifertd/api-client/issues"},"_id":"api-client@1.0.12","dist":{"shasum":"48be9d8d4cddaada959c943eaf1ad71fa932eb3e","size":11149,"noattachment":false,"key":"/api-client/-/api-client-1.0.12.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.12.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1389640110520,"_hasShrinkwrap":false,"_cnpm_publish_time":1389640110520},"1.0.10":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.10","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"> 0","coffee-script":"> 0","mocha":"> 0","chai":"> 0","async":"> 0","growl":"> 0","fs-extra":"> 0","path-extra":"> 0","bondjs":"> 0"},"engines":{"node":"*"},"bugs":{"url":"https://github.com/seifertd/api-client/issues"},"_id":"api-client@1.0.10","dist":{"shasum":"cba14685b08620d0801505c225b8392ea6cf1b04","size":11114,"noattachment":false,"key":"/api-client/-/api-client-1.0.10.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.10.tgz"},"_from":".","_npmVersion":"1.2.30","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1385067432341,"_hasShrinkwrap":false,"_cnpm_publish_time":1385067432341},"1.0.6":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.6","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x","bondjs":"0.x"},"engines":{"node":"*"},"_id":"api-client@1.0.6","dist":{"shasum":"48f4474c48352a3ddf8492f31b40bc1f822c83c0","size":9659,"noattachment":false,"key":"/api-client/-/api-client-1.0.6.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.6.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1368734895331,"_hasShrinkwrap":false,"_cnpm_publish_time":1368734895331},"1.0.4":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.4","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x","bondjs":"0.x"},"engines":{"node":"*"},"_id":"api-client@1.0.4","dist":{"shasum":"b795a5a1b5a9619c94855f097f25de024303971a","size":9526,"noattachment":false,"key":"/api-client/-/api-client-1.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.4.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1368729534595,"_hasShrinkwrap":false,"_cnpm_publish_time":1368729534595},"1.0.3":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.3","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x","bondjs":"0.x"},"engines":{"node":"*"},"_id":"api-client@1.0.3","dist":{"shasum":"06042681b190be805e3e3f7aedccefd6c077d0f8","size":9400,"noattachment":false,"key":"/api-client/-/api-client-1.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.3.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1368479856942,"_hasShrinkwrap":false,"_cnpm_publish_time":1368479856942},"1.0.2":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.2","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x","bondjs":"0.x"},"engines":{"node":"*"},"_id":"api-client@1.0.2","dist":{"shasum":"e2b2db34dbf4f95c1d7c04b5211b54c39c1b24f5","size":9435,"noattachment":false,"key":"/api-client/-/api-client-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.2.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1368478972328,"_hasShrinkwrap":false,"_cnpm_publish_time":1368478972328},"1.0.1":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.1","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x","bondjs":"0.x"},"engines":{"node":"*"},"_id":"api-client@1.0.1","dist":{"shasum":"a2b6df9b66b99212376b20a6b9ffffa478c64c96","size":9305,"noattachment":false,"key":"/api-client/-/api-client-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.1.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1367447355818,"_hasShrinkwrap":false,"_cnpm_publish_time":1367447355818},"1.0.0":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"1.0.0","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x","bondjs":"0.x"},"engines":{"node":"*"},"_id":"api-client@1.0.0","dist":{"shasum":"2e3aeabbd1ffd8c7d596b1fed7581b6b242a4512","size":9134,"noattachment":false,"key":"/api-client/-/api-client-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-1.0.0.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1367429632996,"_hasShrinkwrap":false,"_cnpm_publish_time":1367429632996},"0.0.8":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"0.0.8","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x","bondjs":"0.x"},"engines":{"node":"*"},"_id":"api-client@0.0.8","dist":{"shasum":"537c5c565cdfeec72b6a3fc08e6707a4fe782300","size":9295,"noattachment":false,"key":"/api-client/-/api-client-0.0.8.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-0.0.8.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1367356055627,"_hasShrinkwrap":false,"_cnpm_publish_time":1367356055627},"0.0.7":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"0.0.7","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","async":"> 0","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x"},"engines":{"node":"*"},"_id":"api-client@0.0.7","dist":{"shasum":"b9ac0f3397feaeb93f3d4c6805ea30e940acf460","size":9072,"noattachment":false,"key":"/api-client/-/api-client-0.0.7.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-0.0.7.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1367005410245,"_hasShrinkwrap":false,"_cnpm_publish_time":1367005410245},"0.0.5":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"0.0.5","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x"},"engines":{"node":"*"},"_id":"api-client@0.0.5","dist":{"shasum":"d6112b37b100c7b45538e2afd1154bc53e63ed8b","size":7958,"noattachment":false,"key":"/api-client/-/api-client-0.0.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-0.0.5.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1366930990675,"_hasShrinkwrap":false,"_cnpm_publish_time":1366930990675},"0.0.4":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net","url":"http://www.dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"0.0.4","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"main":"lib/api_client.js","scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x"},"engines":{"node":"*"},"_id":"api-client@0.0.4","dist":{"shasum":"9c9ebb8f5608c1073cee4c817dfbd59b38103cf6","size":7624,"noattachment":false,"key":"/api-client/-/api-client-0.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-0.0.4.tgz"},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1366924514395,"_hasShrinkwrap":false,"_cnpm_publish_time":1366924514395},"0.0.3":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"0.0.3","homepage":"","keywords":["request","rest","web service","api","client"],"repository":{"type":"git","url":"https://github.com/seifertd/api-client"},"main":"./lib/api-client.js","scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x"},"engines":{"node":"*"},"_id":"api-client@0.0.3","dist":{"shasum":"668ccb59bc1d171a2fbcd6b8b8a3fe22cf830d9c","size":6195,"noattachment":false,"key":"/api-client/-/api-client-0.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-0.0.3.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1366765231680,"_hasShrinkwrap":false,"_cnpm_publish_time":1366765231680},"0.0.2":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"0.0.2","homepage":"","keywords":[],"repository":{"type":"git","url":""},"main":"./lib/api-client.js","scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x"},"engines":{"node":"*"},"_id":"api-client@0.0.2","dist":{"shasum":"da3d98703e9a9d06241721841ea9d17cdcdc0e12","size":6161,"noattachment":false,"key":"/api-client/-/api-client-0.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-0.0.2.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1366764935528,"_hasShrinkwrap":false,"_cnpm_publish_time":1366764935528},"0.0.1":{"author":{"name":"Douglas A. Seifert","email":"doug@dseifert.net"},"name":"api-client","description":"Object Oriented library for HTTP Web API clients","version":"0.0.1","homepage":"","keywords":[],"repository":{"type":"git","url":""},"main":"./lib/api-client.js","scripts":{"test":"cake test"},"dependencies":{"config":"git+https://github.com/lorenwest/node-config.git","request":"2.14.x","underscore":"1.4.x"},"devDependencies":{"testutil":"0.2.x","coffee-script":"1.5.x","mocha":"1.3.x","chai":"1.5.x","growl":"1.5.x","fs-extra":"0.1.x","path-extra":"0.0.x"},"engines":{"node":"*"},"_id":"api-client@0.0.1","dist":{"shasum":"23c5c82e21f0c7795dfca75970d1b830aea8ea8a","size":6085,"noattachment":false,"key":"/api-client/-/api-client-0.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/api-client/download/api-client-0.0.1.tgz"},"_from":".","_npmVersion":"1.2.11","_npmUser":{"name":"doug","email":"doug@dseifert.net"},"maintainers":[{"name":"doug","email":"doug@dseifert.net"}],"directories":{},"publish_time":1366764197304,"_hasShrinkwrap":false,"_cnpm_publish_time":1366764197304}},"readme":"api-client\n==========\n\nnode.js _request_ library wrapper and configuration management\n\nWhy?\n----\n\nNeeded a driver for the _request_ library that clearly separated configuration\nof web service API endpoints from the code that consumed them.\n\n\n\nInstallation\n------------\n\n    npm install api-client\n\nUsage\n-----\n\napi-client manages configuration and creation of a set of named api\nendpoints.  Endpoint configuration can be achieved in one of three ways:\n\n  1.  The configuration can be supplied explicitly to the library by\n      clients\n  1.  The library can load a configuration using the *node_config*\n      (See https://github.com/lorenwest/node-config) module.\n  1.  Configuration can be added piecemeal by registering endpoint\n      objects and corresponding configuration by calling a function\n\nIn the first two cases, the api-client library expects the config object\nto have a single attribute, 'endpoints', pointing at a object.  The object\nin turn contains any number endpoint configuration objects as attributes:\n\n```coffeescript\nendpoints:\n  twitter:\n    type: 'TwitterClient'\n    host: 'api.twitter.com'\n    options:\n      protocol: 'https'\n  other_api:\n    host: 'other.com'\n```\n\nThe above configuration object defines configuration of two named \nendpoints, 'twitter' and 'other_api'.  The configurations can be\nreferred to by name when creating instances of ApiClient for sending\nrequests to the web service api.  The configuration may specify a\n'type' attribute, whose value is the name of a registered or \npre-configured api client object.\n\nConfiguration\n-------------\n\nEach endpoint configuration object has the following layout:\n\n```coffeescript\nhost: 'some.host.com'       # The only required attribute\nport: '232'                 # Defaults to 80 or 443, depending on the\n                            #   options.protocol attribute\ntype: 'StringClassName'     # Defaults to 'ApiClient'\noptions:\n  protocol: 'http|https'    # Either 'http' or 'https', defaults to 'http'\n  base_path: '/apibase'     # The base of all url paths for the service, defaults to ''\n  username: 'user'          # Defaults to null, use to configure HTTP basic auth\n  password: 'pass'          # Defaults to null, use to configure HTTP basic auth\n  version: 'API_VERSION'    # Defaults to null, appended to base_path to form url, only\nrequest_options:\n  timeout:                # Defaults to 2000, request fails if it takes longer than this\n```\n\nThe request_options object can be used to specify any option\nallowed by the node.js request library.  See https://github.com/mikeal/request.\n\nThe url formed by the api-client will therefore be:\n\n\"#{options.protocol}://#{host}:#{port}#{base_path}[/#{version}]\"\n\n### Using the default configuration\n\n```coffeescript\n{ApiClient} = require 'api-client'\n\nApiClient.load null\nconsole.log \"Loaded API Client\"\n\n# Create an instance of TwitterClient.\ntwitter = ApiClient.create 'twitter'\n  \ntwitter.user_info(1, 'TwitterAPI', {include_entities: true}, (err, response, body) ->\n  console.log \"Got Twitter JSON data: \" + body\n```\n\n### Client supplied configuration\n\n```coffeescript\n{ApiClient} = require 'api-client'\nmy_config =\n  endpoints:\n    foo_client:\n      host: 'foo.com'\n\nApiClient.load my_config\nconsole.log \"Loaded API Client\"\n\nfoo_client = ApiClient.create('foo_client')\n\nfoo_client.get({...})\n```\n\n### Registering client created ApiClient subclasses\n\n```coffeescript\n{ApiClient} = require 'api-client'\n\nclass FooClient extends ApiClient\n  test: ->\n    console.log \"Foo request: \" + @url()\n\nApiClient.register('foo', FooClient, 'FooClient', {\n  host: 'foo.com',\n  type: 'FooClient',\n  options:\n    base_path: '/fooapi'\n})\n\nconsole.log \"Registered FooClient, config = \" + util.inspect(ApiClient.config)\n\nfc = ApiClient.create('foo')\n\nfc.test()\n```\n\nVersioned Api Client\n--------------------\n\nThe library also exports a subclass of ApiClient called VersionedApiClient\nthat allows automatic handling of an API version in the request path.\nThis is of limited use, because the base_path configuration option can\njust as well handle it.  To use it, provide endpoint config like the\nfollowing:\n\n```coffeescript\nendpoints:\n  versioned:\n    type: 'VersionedApiClient'\n    host: 'somehost.com'\n    options:\n      base_path: '/api'\n      version: 'v2'\n```\n\nStubbing and Testing\n--------------------\n\nThe api-client library is written to support testing against it by stubbing\nrequests by url regex.  Stubs can be set using the configuration mechanism\nor set explicitly on an instance of the ApiClient class.\n\nVia configuration:\n\n```coffeescript\nendpoints:\n  myclient:\n    type: 'ApiClient'\n    host: 'somehost.com'\n    options:\n      base_path: '/foo'\n    stubs: [\n      [ /.*/, null, null, 'stub body' ]\n    ] \n```\n\nor programatically:\n\n```coffeescript\nmyClient = ApiClient.create 'myclient'\nmyClient.stub_request [ /.*/, null, null, 'stub body' ]\n```\n\nThe stub definition consists of an array of four objects:\n\n  1. A regex that will test the url.  If the test is true, this stub will be used\n  1. An error object to return if the stub is used\n  1. A response object to return if the stub is used\n  1. A body object to return if the stub is used.\n\nIn either of the above cases, any @get call against the client would result\nin 'stub body' being returned as the body because the regex would match any\nurl.\n\nThe stub body can be either a static string, or an object with a 'file' attribute.\nIn the latter case, the file attribute is the path name of a file whose contents\nare used as the stub body.\n\nLicense\n-------\n\nMIT Licensed\n\nCopyright (c) 2013-14 Douglas A. Seifert\n\n","_attachments":{},"homepage":"https://github.com/seifertd/api-client","bugs":{"url":"https://github.com/seifertd/api-client/issues"}}