Node SDK for yuque
NPM version build status Test coverage David deps Known Vulnerabilities NPM download
npm i @yuque/sdk --save
const SDK = require('@yuque/sdk'); const client = new SDK({ token: '<YOUR TOKEN>', // other options }); const result = await client.users.get(); console.log(result); // apis const { users, groups, repos, docs } = client;
/** * @param {Object} options - opts * @param {String} options.token - yuque token, https://www.yuque.com/settings/tokens * @param {String} [options.endpoint] - yuque endpoint * @param {String} [options.userAgent] - request user-agent * @param {Object} [options.requestOpts] - default request options of [urllib](https://www.npmjs.com/package/urllib) * @param {Function} [options.handler] - special how to handler response */
by default, will return response.data.data, you can custom it by handler:
new SDK({ handler(res) { // should handler error yourself if (res.status !== 200) { const err = new Error(res.data.message); /* istanbul ignore next */ err.status = res.data.status || res.status; err.code = res.data.code; err.data = res; throw err; } // return whatever you want const { data, abilities } = res.data; return data; }, });
$ http_proxy=http://127.0.0.1:8888 TOKEN=<YOUR_TOKEN> npm test
see Yuque API Docs for more details.
see the source.
see the source.
see the source.
see the source.
- API docs
- JSDocs definition for result info
- add
d.tsor refactor to TypeScript