Recharge API bindings for Node.js
$ npm install --save recharge-api-node
This module exports a constructor function which takes an options object.
Recharge(options)
Creates a new Recharge
instance.
options
- Required - A plain JavaScript object that contains the
configuration options.apiKey
- Required - A
string that specifies the API key of the app.secrete
- A string that specifies the secrete of the app.autoLimit
- Optional - This option allows you to regulate the request rate
in order to avoid hitting the [rate limit][api-call-limit]. Requests are
limited using the token bucket algorithm. Accepted values are a boolean or a
plain JavaScript object. When using an object, the calls
property and the
interval
property specify the refill rate and the bucketSize
property the
bucket size. For example { calls: 2, interval: 1000, bucketSize: 35 }
specifies a limit of 2 requests per second with a burst of 35 requests. When
set to true
requests are limited as specified in the above example. Defaults
to false
.
presentment prices for products. Defaults to false
.timeout
- Optional - The number of milliseconds before the request times
out. If the request takes longer than timeout
, it will be aborted. Defaults
to 60000
, or 1 minute.A Recharge
instance.
Throws an Error
exception if the required options are missing.
const Recharge = require('recharge-api-node');
const recharge = new Recharge({
apiKey: 'your-api-key',
secrete: 'your-app-secrete'
});
Every resource is accessed via your recharge
instance:
const recharge = new Recharge({
apiKey: 'your-api-key',
secrete: 'your-app-secrete'
});
// recharge.<resource_name>.<method_name>
Each method returns a Promise
that resolves with the result:
recharge.subscription
.list({ limit: 5 })
.then((subscriptions) => console.log(subscriptions))
.catch((err) => console.error(err));
count()
list([params])
get(id[, params])
update(id, params)
delete(id)
validate(params)
addDiscount(id, params)
removeDiscount(id, params)
addOneTimeProduct(id, params)
list([params])
get(id[, params])
create(params)
addTasks(batch_id, params)
tasks(batch_id)
process(batch_id)
count()
list([params])
get(id[, params])
create(params)
update(id, params)
delete(id)
changeNextChargeDate(id, params)
skip(id, params)
unskip(id, params)
refund(id, params)
addDiscount(id, params)
removeDiscount(id, params)
get(checkout_token[, params])
create(params[, query_params])
update(checkout_token, params[, query_params])
getShippingRates(checkout_token)
process(checkout_token, params)
count()
list([params])
get(id[, params])
list(customer_id[, params])
create(customer_id, params)
count()
list([params])
get(id[, params])
create(params)
update(id, params)
delete(id)
getPaymentSources(id)
count()
list([params])
get(id[, params])
create(params)
update(id, params)
delete(id)
addToAddress(address_id[, params])
removeFromAddress(address_id[, params])
addToCharge(charge_id[, params])
removeFromCharge(charge_id[, params])
count()
list([params])
get(id[, params])
create(params)
update(id, params)
delete(id)
list([params])
get(id[, params])
create(address_id, params)
update(id, params)
delete(id)
count()
list([params])
get(id[, params])
create(params)
update(id, params)
delete(id)
changeShippingDate(id, params)
changeOrderVariant(id, shopify_variant_id, params)
clone(id, charge_id, params)
count()
list([params])
get(id[, params])
get()
getShippingCountries()
count()
list([params])
get(id[, params])
create(params)
update(id, params)
delete(id)
changeNextChargeDate(id, params)
changeAddress(id, params)
cancel(id, params)
activate(id)
** 'swap product' end point can be triggered using 'update()' function
count()
list([params])
get(id[, params])
create(params)
update(id, params)
delete(id)
validate(request_body, secrete)
where params
is a plain JavaScript object. See
https://developer.rechargepayments.com/#webhooks for parameters details.