btrz-api-client
Advanced tools
Weekly downloads
Readme
function all({ token, query, [jwtToken] }): Returns all resources
function get({ token, id.[jwtToken] }): Returns one resource
function create({jwtToken, token, resource }): Creates a new resource
function update({jwtToken, token, id, resource}): Updates a resource with the given id
function remove({jwtToken token, id }): Remove the resource
jwtToken
Is only required in certain endpoints, check the endpoint documentation.
const api = require("btrz-api-client").createApiClient({ baseURL: `http://localhost:${port}` });
api.inventory.products.all({ token, query }) => Promise
const api = require("btrz-api-client").createApiClient({ baseURL: 'http://localhost:8080', });
api._cleanClient({ url: `/inventory/products`, headers: { 'x-api-key': token }, params: { isParcel: true } }) => Promise
This client uses production defaults if none provided, check
/src/productionDefaults.js
const api = require("btrz-api-client").createApiClient();
api.inventory.products.all({ token, query }) //you're now talking to production!
Provide an object that generates internal auth tokens when you create the API Client:
const InternalAuthTokenProvider = require("btrz-auth-api-key").InternalAuthTokenProvider,
tokenProviderOptions = {
internalAuthTokenSigningSecrets: {
main: "<some_secret_signing_key>"
}
},
internalAuthTokenProvider = new InternalAuthTokenProvider(tokenProviderOptions),
ApiClient = require("btrz-api-client"),
apiClient = ApiClient.createApiClient({
internalAuthTokenProvider,
// ... plus any other options
});
Then, to perform a service-to-service call with an auto-generated token:
const apiRequest = apiClient.operations.manifest.getOrCreate({
token: <user_api_key>,
jwtToken: "internal_auth_token", // Use this exact string
query: {
...
}
});
npm test
API_TOKEN=<some token> npm run test:integration
You can specify the different ports for every endpoint using
/test-integration/ports.js
- src
- enpoints
- inventory
- products.js
- test
- endpoints
- inventory
- products.test.js
- test-integration
- endpoints
- inventory
- products.test.js
Run
npm version [major || minor || patch]
This will increment the version number according to your selection (major, minor or patch) and push a new TAG. There's no need to release a new version in the github UI.
FAQs
Api client for Betterez endpoints
The npm package btrz-api-client receives a total of 412 weekly downloads. As such, btrz-api-client popularity was classified as not popular.
We found that btrz-api-client demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket installs a GitHub app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.