UNPKG

inventora-shopify-admin-api

Version:

Shopify Admin API is a NodeJS library built to help developers easily authenticate and make calls against the Shopify API. It was inspired by and borrows heavily from ShopifySharp.

41 lines (36 loc) 1.69 kB
import * as Options from '../options'; import { BaseService } from '../infrastructure'; import { UsageCharge } from '../interfaces'; /** * A service for manipulating Shopify's UsageCharges API. */ export class UsageCharges extends BaseService { constructor(shopDomain: string, accessToken: string) { super(shopDomain, accessToken, "recurring_application_charges"); } /** * Creates a new charge. * @param recurringChargeId The id of the recurring charge that this usage charge belongs to. */ public create(recurringChargeId: number, charge: Partial<UsageCharge>) { return this.createRequest<UsageCharge>("POST", `${recurringChargeId}/usage_charges.json`, "usage_charge", { usage_charge: charge }); } /** * Gets a charge with the given id. * @param recurringChargeId The id of the recurring charge that this usage charge belongs to. * @param id The id of the charge to get. * @param options Options for filtering the result. */ public get(recurringChargeId: number, id: number, options?: Options.FieldOptions) { return this.createRequest<UsageCharge>("GET", `${recurringChargeId}/usage_charges/${id}.json`, "usage_charge", options); } /** * Retrieves a list of all charges. * @param recurringChargeId The id of the recurring charge that this usage charge belongs to. * @param options Options for filtering the result. */ public list(recurringChargeId: number, options?: Options.FieldOptions) { return this.createRequest<UsageCharge[]>("GET", `${recurringChargeId}/usage_charges.json`, "usage_charges", options); } } export default UsageCharges;