From 83ae54728618800f0f7b550de36d9fb249454736 Mon Sep 17 00:00:00 2001 From: mrz1836 Date: Thu, 3 Jun 2021 11:05:18 -0400 Subject: [PATCH] Updated get campaign requests --- lib/api-client.js | 2 +- lib/api.js | 19 +++++++++++++++++-- test/api.test.js | 2 +- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/lib/api-client.js b/lib/api-client.js index e32935c..91adae2 100644 --- a/lib/api-client.js +++ b/lib/api-client.js @@ -1,7 +1,7 @@ const axios = require('axios'); // .default (@mrz what does this affect?) // Current version for requests from the API -export const pkgVersion = 'v0.2.1'; +export const pkgVersion = 'v0.2.2'; export const apiVersion = 'v1'; // getOptions is a factory for axios default options diff --git a/lib/api.js b/lib/api.js index 6ebe57f..1fbaee9 100755 --- a/lib/api.js +++ b/lib/api.js @@ -125,7 +125,21 @@ class TonicPow { * @returns {Promise} */ async getCampaign(campaignId) { - return this.apiClient.get('/campaigns/details/' + campaignId); + return this.apiClient.get('/campaigns/details/?id=' + campaignId); + } + + /** + * getCampaignBySlug will get an existing campaign by it's url slug + * + * This will return an error if the campaign is not found (404) + * + * For more information: https://docs.tonicpow.com/#b827446b-be34-4678-b347-33c4f63dbf9e + * + * @param campaignSlug + * @returns {Promise} + */ + async getCampaignBySlug(campaignSlug) { + return this.apiClient.get('/campaigns/details/?slug=' + campaignSlug); } /** @@ -140,7 +154,8 @@ class TonicPow { * @returns {Promise} */ async refreshBalance(campaignId, lastBalance = 0) { - return this.apiClient.get('/campaigns/balance/' + campaignId + '?last_balance=' + lastBalance); + return this.apiClient.get('/campaigns/balance/?id=' + campaignId + + '?last_balance=' + lastBalance); } /** diff --git a/test/api.test.js b/test/api.test.js index e6bb91f..e9f806a 100644 --- a/test/api.test.js +++ b/test/api.test.js @@ -111,7 +111,7 @@ describe('basic tests', function () { const response = await tonicPow.getCampaign(243); expect(response).toEqual(campaignData.return); expect(mockAxios.get).toHaveBeenCalledWith( - `https://api.tonicpow.com/v1/campaigns/details/243`, + `https://api.tonicpow.com/v1/campaigns/details/?id=243`, options, ); });