glitch-javascript-sdk 1.7.6 → 1.7.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -19762,6 +19762,354 @@ var Competitions = /** @class */ (function () {
19762
19762
  return Competitions;
19763
19763
  }());
19764
19764
 
19765
+ /**
19766
+ * AdsRoute holds all the endpoint definitions for:
19767
+ * - Ad Campaigns
19768
+ * - Ad Groups (Ad Sets)
19769
+ * - Ads (Creatives)
19770
+ * - Ad Group Triggers
19771
+ */
19772
+ var AdsRoute = /** @class */ (function () {
19773
+ function AdsRoute() {
19774
+ }
19775
+ AdsRoute.routes = {
19776
+ // ----------------------------------------------------------------
19777
+ // AD CAMPAIGNS
19778
+ // ----------------------------------------------------------------
19779
+ getCampaigns: {
19780
+ url: "/ads/campaigns",
19781
+ method: HTTP_METHODS.GET,
19782
+ },
19783
+ createCampaign: {
19784
+ url: "/ads/campaigns",
19785
+ method: HTTP_METHODS.POST,
19786
+ },
19787
+ retrieveCampaign: {
19788
+ url: "/ads/campaigns/{campaign_id}",
19789
+ method: HTTP_METHODS.GET,
19790
+ },
19791
+ updateCampaign: {
19792
+ url: "/ads/campaigns/{campaign_id}",
19793
+ method: HTTP_METHODS.PUT,
19794
+ },
19795
+ deleteCampaign: {
19796
+ url: "/ads/campaigns/{campaign_id}",
19797
+ method: HTTP_METHODS.DELETE,
19798
+ },
19799
+ // ----------------------------------------------------------------
19800
+ // AD GROUPS (AKA AD SETS)
19801
+ // ----------------------------------------------------------------
19802
+ getGroups: {
19803
+ url: "/ads/campaigns/{campaign_id}/groups",
19804
+ method: HTTP_METHODS.GET,
19805
+ },
19806
+ createGroup: {
19807
+ url: "/ads/campaigns/{campaign_id}/groups",
19808
+ method: HTTP_METHODS.POST,
19809
+ },
19810
+ retrieveGroup: {
19811
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}",
19812
+ method: HTTP_METHODS.GET,
19813
+ },
19814
+ updateGroup: {
19815
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}",
19816
+ method: HTTP_METHODS.PUT,
19817
+ },
19818
+ deleteGroup: {
19819
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}",
19820
+ method: HTTP_METHODS.DELETE,
19821
+ },
19822
+ // ----------------------------------------------------------------
19823
+ // ADS (CREATIVES)
19824
+ // ----------------------------------------------------------------
19825
+ getAds: {
19826
+ url: "/ads/creatives",
19827
+ method: HTTP_METHODS.GET,
19828
+ },
19829
+ createAd: {
19830
+ url: "/ads/creatives",
19831
+ method: HTTP_METHODS.POST,
19832
+ },
19833
+ retrieveAd: {
19834
+ url: "/ads/creatives/{ad_id}",
19835
+ method: HTTP_METHODS.GET,
19836
+ },
19837
+ updateAd: {
19838
+ url: "/ads/creatives/{ad_id}",
19839
+ method: HTTP_METHODS.PUT,
19840
+ },
19841
+ deleteAd: {
19842
+ url: "/ads/creatives/{ad_id}",
19843
+ method: HTTP_METHODS.DELETE,
19844
+ },
19845
+ // ----------------------------------------------------------------
19846
+ // AD GROUP TRIGGERS
19847
+ // ----------------------------------------------------------------
19848
+ getTriggers: {
19849
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers",
19850
+ method: HTTP_METHODS.GET,
19851
+ },
19852
+ createTrigger: {
19853
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers",
19854
+ method: HTTP_METHODS.POST,
19855
+ },
19856
+ retrieveTrigger: {
19857
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers/{trigger_id}",
19858
+ method: HTTP_METHODS.GET,
19859
+ },
19860
+ updateTrigger: {
19861
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers/{trigger_id}",
19862
+ method: HTTP_METHODS.PUT,
19863
+ },
19864
+ deleteTrigger: {
19865
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers/{trigger_id}",
19866
+ method: HTTP_METHODS.DELETE,
19867
+ },
19868
+ };
19869
+ return AdsRoute;
19870
+ }());
19871
+
19872
+ var Ads = /** @class */ (function () {
19873
+ function Ads() {
19874
+ }
19875
+ // ----------------------------------------------------------------------
19876
+ // AD CAMPAIGNS
19877
+ // ----------------------------------------------------------------------
19878
+ /**
19879
+ * List Ad Campaigns.
19880
+ *
19881
+ * Example usage:
19882
+ * Ads.listCampaigns({ community: 'uuid-of-community', platform: 'tiktok' })
19883
+ *
19884
+ * @param params Query parameters (e.g. community, platform, advertiser_id, etc.)
19885
+ * @returns A paginated list of AdCampaign resources
19886
+ */
19887
+ Ads.listCampaigns = function (params) {
19888
+ return Requests.processRoute(AdsRoute.routes.getCampaigns, undefined, undefined, params);
19889
+ };
19890
+ /**
19891
+ * Create a new Ad Campaign.
19892
+ *
19893
+ * @param data The Ad Campaign payload (JSON) to create
19894
+ * @param params Optional query parameters
19895
+ * @returns The newly created AdCampaign resource
19896
+ */
19897
+ Ads.createCampaign = function (data, params) {
19898
+ return Requests.processRoute(AdsRoute.routes.createCampaign, data, {}, params);
19899
+ };
19900
+ /**
19901
+ * Retrieve a single Ad Campaign by ID.
19902
+ *
19903
+ * @param campaign_id The UUID of the campaign to fetch
19904
+ * @param params Optional query parameters
19905
+ * @returns The requested AdCampaign resource
19906
+ */
19907
+ Ads.viewCampaign = function (campaign_id, params) {
19908
+ return Requests.processRoute(AdsRoute.routes.retrieveCampaign, {}, { campaign_id: campaign_id }, params);
19909
+ };
19910
+ /**
19911
+ * Update an existing Ad Campaign by ID.
19912
+ *
19913
+ * @param campaign_id The UUID of the campaign to update
19914
+ * @param data The partial or full updated AdCampaign payload
19915
+ * @param params Optional query parameters
19916
+ * @returns The updated AdCampaign resource
19917
+ */
19918
+ Ads.updateCampaign = function (campaign_id, data, params) {
19919
+ return Requests.processRoute(AdsRoute.routes.updateCampaign, data, { campaign_id: campaign_id }, params);
19920
+ };
19921
+ /**
19922
+ * Delete an Ad Campaign by ID.
19923
+ *
19924
+ * @param campaign_id The UUID of the campaign to delete
19925
+ * @param params Optional query parameters
19926
+ * @returns A 204 No Content response on success
19927
+ */
19928
+ Ads.deleteCampaign = function (campaign_id, params) {
19929
+ return Requests.processRoute(AdsRoute.routes.deleteCampaign, {}, { campaign_id: campaign_id }, params);
19930
+ };
19931
+ // ----------------------------------------------------------------------
19932
+ // AD GROUPS (AD SETS)
19933
+ // ----------------------------------------------------------------------
19934
+ /**
19935
+ * List Ad Groups (ad sets) for a specific campaign.
19936
+ *
19937
+ * Example usage:
19938
+ * Ads.listGroups('some-campaign-uuid', { promotion_type: 'WEBSITE' })
19939
+ *
19940
+ * @param campaign_id The UUID of the parent Ad Campaign
19941
+ * @param params Optional query parameters (e.g. promotion_type, operation_status, etc.)
19942
+ * @returns A paginated list of AdGroup resources
19943
+ */
19944
+ Ads.listGroups = function (campaign_id, params) {
19945
+ return Requests.processRoute(AdsRoute.routes.getGroups, {}, { campaign_id: campaign_id }, params);
19946
+ };
19947
+ /**
19948
+ * Create a new Ad Group (ad set) under a specific campaign.
19949
+ *
19950
+ * @param campaign_id The UUID of the parent Ad Campaign
19951
+ * @param data The AdGroup creation payload
19952
+ * @param params Optional query parameters
19953
+ * @returns The newly created AdGroup resource
19954
+ */
19955
+ Ads.createGroup = function (campaign_id, data, params) {
19956
+ return Requests.processRoute(AdsRoute.routes.createGroup, data, { campaign_id: campaign_id }, params);
19957
+ };
19958
+ /**
19959
+ * Retrieve a single Ad Group by ID, under a specific campaign.
19960
+ *
19961
+ * @param campaign_id The UUID of the parent Ad Campaign
19962
+ * @param group_id The UUID of the AdGroup to fetch
19963
+ * @param params Optional query parameters
19964
+ * @returns The requested AdGroup resource
19965
+ */
19966
+ Ads.viewGroup = function (campaign_id, group_id, params) {
19967
+ return Requests.processRoute(AdsRoute.routes.retrieveGroup, {}, { campaign_id: campaign_id, group_id: group_id }, params);
19968
+ };
19969
+ /**
19970
+ * Update an Ad Group (ad set) by ID.
19971
+ *
19972
+ * @param campaign_id The UUID of the parent Ad Campaign
19973
+ * @param group_id The UUID of the AdGroup to update
19974
+ * @param data Updated fields for the AdGroup
19975
+ * @param params Optional query parameters
19976
+ * @returns The updated AdGroup resource
19977
+ */
19978
+ Ads.updateGroup = function (campaign_id, group_id, data, params) {
19979
+ return Requests.processRoute(AdsRoute.routes.updateGroup, data, { campaign_id: campaign_id, group_id: group_id }, params);
19980
+ };
19981
+ /**
19982
+ * Delete an Ad Group (ad set) by ID, under a specific campaign.
19983
+ *
19984
+ * @param campaign_id The UUID of the parent Ad Campaign
19985
+ * @param group_id The UUID of the AdGroup to delete
19986
+ * @param params Optional query parameters
19987
+ * @returns A 204 No Content response on success
19988
+ */
19989
+ Ads.deleteGroup = function (campaign_id, group_id, params) {
19990
+ return Requests.processRoute(AdsRoute.routes.deleteGroup, {}, { campaign_id: campaign_id, group_id: group_id }, params);
19991
+ };
19992
+ // ----------------------------------------------------------------------
19993
+ // ADS (CREATIVES)
19994
+ // ----------------------------------------------------------------------
19995
+ /**
19996
+ * List Ads (creatives).
19997
+ *
19998
+ * Supports filtering by ad_group_id, social_media_post_id, operation_status, etc.
19999
+ *
20000
+ * @param params Optional query parameters for filtering/sorting
20001
+ * @returns A paginated list of Ad resources
20002
+ */
20003
+ Ads.listAds = function (params) {
20004
+ return Requests.processRoute(AdsRoute.routes.getAds, undefined, undefined, params);
20005
+ };
20006
+ /**
20007
+ * Create a new Ad (creative).
20008
+ *
20009
+ * @param data The Ad creation payload
20010
+ * @param params Optional query parameters
20011
+ * @returns The newly created Ad resource
20012
+ */
20013
+ Ads.createAd = function (data, params) {
20014
+ return Requests.processRoute(AdsRoute.routes.createAd, data, {}, params);
20015
+ };
20016
+ /**
20017
+ * Retrieve a single Ad by ID.
20018
+ *
20019
+ * @param ad_id The UUID of the Ad to fetch
20020
+ * @param params Optional query parameters
20021
+ * @returns The requested Ad resource
20022
+ */
20023
+ Ads.viewAd = function (ad_id, params) {
20024
+ return Requests.processRoute(AdsRoute.routes.retrieveAd, {}, { ad_id: ad_id }, params);
20025
+ };
20026
+ /**
20027
+ * Update an existing Ad by ID.
20028
+ *
20029
+ * @param ad_id The UUID of the Ad to update
20030
+ * @param data The partial or full Ad payload
20031
+ * @param params Optional query parameters
20032
+ * @returns The updated Ad resource
20033
+ */
20034
+ Ads.updateAd = function (ad_id, data, params) {
20035
+ return Requests.processRoute(AdsRoute.routes.updateAd, data, { ad_id: ad_id }, params);
20036
+ };
20037
+ /**
20038
+ * Delete an Ad by ID.
20039
+ *
20040
+ * @param ad_id The UUID of the Ad to delete
20041
+ * @param params Optional query parameters
20042
+ * @returns A 204 No Content response on success
20043
+ */
20044
+ Ads.deleteAd = function (ad_id, params) {
20045
+ return Requests.processRoute(AdsRoute.routes.deleteAd, {}, { ad_id: ad_id }, params);
20046
+ };
20047
+ // ----------------------------------------------------------------------
20048
+ // AD GROUP TRIGGERS
20049
+ // ----------------------------------------------------------------------
20050
+ /**
20051
+ * List triggers defined for a given Ad Group.
20052
+ *
20053
+ * @param campaign_id The UUID of the parent Ad Campaign
20054
+ * @param group_id The UUID of the Ad Group
20055
+ * @param params Optional query parameters (pagination, etc.)
20056
+ * @returns A paginated list of AdGroupTrigger resources
20057
+ */
20058
+ Ads.listTriggers = function (campaign_id, group_id, params) {
20059
+ return Requests.processRoute(AdsRoute.routes.getTriggers, {}, { campaign_id: campaign_id, group_id: group_id }, params);
20060
+ };
20061
+ /**
20062
+ * Create a new Ad Group Trigger.
20063
+ *
20064
+ * @param campaign_id The UUID of the parent Ad Campaign
20065
+ * @param group_id The UUID of the Ad Group
20066
+ * @param data The trigger creation payload
20067
+ * @param params Optional query parameters
20068
+ * @returns The newly created AdGroupTrigger resource
20069
+ */
20070
+ Ads.createTrigger = function (campaign_id, group_id, data, params) {
20071
+ return Requests.processRoute(AdsRoute.routes.createTrigger, data, { campaign_id: campaign_id, group_id: group_id }, params);
20072
+ };
20073
+ /**
20074
+ * Retrieve a single Ad Group Trigger by ID.
20075
+ *
20076
+ * @param campaign_id The UUID of the parent Ad Campaign
20077
+ * @param group_id The UUID of the Ad Group
20078
+ * @param trigger_id The UUID of the trigger
20079
+ * @param params Optional query parameters
20080
+ * @returns The requested AdGroupTrigger resource
20081
+ */
20082
+ Ads.viewTrigger = function (campaign_id, group_id, trigger_id, params) {
20083
+ return Requests.processRoute(AdsRoute.routes.retrieveTrigger, {}, { campaign_id: campaign_id, group_id: group_id, trigger_id: trigger_id }, params);
20084
+ };
20085
+ /**
20086
+ * Update an existing Ad Group Trigger by ID.
20087
+ *
20088
+ * @param campaign_id The UUID of the parent Ad Campaign
20089
+ * @param group_id The UUID of the Ad Group
20090
+ * @param trigger_id The UUID of the trigger to update
20091
+ * @param data Updated trigger fields
20092
+ * @param params Optional query parameters
20093
+ * @returns The updated AdGroupTrigger resource
20094
+ */
20095
+ Ads.updateTrigger = function (campaign_id, group_id, trigger_id, data, params) {
20096
+ return Requests.processRoute(AdsRoute.routes.updateTrigger, data, { campaign_id: campaign_id, group_id: group_id, trigger_id: trigger_id }, params);
20097
+ };
20098
+ /**
20099
+ * Delete an Ad Group Trigger by ID.
20100
+ *
20101
+ * @param campaign_id The UUID of the parent Ad Campaign
20102
+ * @param group_id The UUID of the Ad Group
20103
+ * @param trigger_id The UUID of the trigger
20104
+ * @param params Optional query parameters
20105
+ * @returns A 204 No Content response on success
20106
+ */
20107
+ Ads.deleteTrigger = function (campaign_id, group_id, trigger_id, params) {
20108
+ return Requests.processRoute(AdsRoute.routes.deleteTrigger, {}, { campaign_id: campaign_id, group_id: group_id, trigger_id: trigger_id }, params);
20109
+ };
20110
+ return Ads;
20111
+ }());
20112
+
19765
20113
  var CommunitiesRoute = /** @class */ (function () {
19766
20114
  function CommunitiesRoute() {
19767
20115
  }
@@ -22853,6 +23201,30 @@ var TitlesRoute = /** @class */ (function () {
22853
23201
  url: '/titles/{title_id}/sessions/histogram',
22854
23202
  method: HTTP_METHODS.GET
22855
23203
  },
23204
+ /**
23205
+ * 1) Import a CSV/Excel file containing daily UTM analytics data for a Title
23206
+ * POST /titles/{title_id}/utm/import
23207
+ */
23208
+ importUtmAnalytics: {
23209
+ url: "/titles/{title_id}/utm/import",
23210
+ method: HTTP_METHODS.POST,
23211
+ },
23212
+ /**
23213
+ * 2) Retrieve paginated/filterable UTM analytics data for a Title
23214
+ * GET /titles/{title_id}/utm
23215
+ */
23216
+ getUtmAnalytics: {
23217
+ url: "/titles/{title_id}/utm",
23218
+ method: HTTP_METHODS.GET,
23219
+ },
23220
+ /**
23221
+ * 3) Analyze UTM data with optional group_by / dimension-based aggregates
23222
+ * GET /titles/{title_id}/utm/analysis
23223
+ */
23224
+ analyzeUtmAnalytics: {
23225
+ url: "/titles/{title_id}/utm/analysis",
23226
+ method: HTTP_METHODS.GET,
23227
+ },
22856
23228
  };
22857
23229
  return TitlesRoute;
22858
23230
  }());
@@ -23143,9 +23515,9 @@ var Titles = /** @class */ (function () {
23143
23515
  return Requests.processRoute(TitlesRoute.routes.distinctDimensions, {}, { title_id: title_id }, params);
23144
23516
  };
23145
23517
  /**
23146
- * List sessions for a specific title, with optional filters and pagination.
23147
- * Returns a paginated list of sessions with start/end times, session_length, user info, etc.
23148
- */
23518
+ * List sessions for a specific title, with optional filters and pagination.
23519
+ * Returns a paginated list of sessions with start/end times, session_length, user info, etc.
23520
+ */
23149
23521
  Titles.listSessions = function (title_id, params) {
23150
23522
  return Requests.processRoute(TitlesRoute.routes.listSessions, {}, { title_id: title_id }, params);
23151
23523
  };
@@ -23159,6 +23531,43 @@ var Titles = /** @class */ (function () {
23159
23531
  Titles.sessionsHistogram = function (title_id, params) {
23160
23532
  return Requests.processRoute(TitlesRoute.routes.sessionsHistogram, {}, { title_id: title_id }, params);
23161
23533
  };
23534
+ /**
23535
+ * Upload a CSV/Excel file containing daily UTM analytics for a specific title.
23536
+ *
23537
+ * @param title_id The UUID of the title
23538
+ * @param file The CSV or Excel file
23539
+ * @param data Optional form fields (if needed)
23540
+ * @param params Optional query parameters
23541
+ * @returns AxiosPromise
23542
+ */
23543
+ Titles.importUtmAnalytics = function (title_id, file, data, params) {
23544
+ var url = TitlesRoute.routes.importUtmAnalytics.url.replace("{title_id}", title_id);
23545
+ return Requests.uploadFile(url, "file", file, data, params);
23546
+ };
23547
+ /**
23548
+ * Retrieve the UTM analytics data for a title (paginated, filterable, sortable).
23549
+ *
23550
+ * GET /titles/{title_id}/utm
23551
+ *
23552
+ * @param title_id The UUID of the title
23553
+ * @param params Optional query params: start_date, end_date, source, device_type, sort_by, etc.
23554
+ * @returns AxiosPromise
23555
+ */
23556
+ Titles.getUtmAnalytics = function (title_id, params) {
23557
+ return Requests.processRoute(TitlesRoute.routes.getUtmAnalytics, {}, { title_id: title_id }, params);
23558
+ };
23559
+ /**
23560
+ * Analyze UTM data with optional group_by (source, campaign, medium, device_type, etc.)
23561
+ *
23562
+ * GET /titles/{title_id}/utm/analysis
23563
+ *
23564
+ * @param title_id The UUID of the title
23565
+ * @param params e.g. ?group_by=source&start_date=YYYY-MM-DD
23566
+ * @returns AxiosPromise
23567
+ */
23568
+ Titles.analyzeUtmAnalytics = function (title_id, params) {
23569
+ return Requests.processRoute(TitlesRoute.routes.analyzeUtmAnalytics, {}, { title_id: title_id }, params);
23570
+ };
23162
23571
  return Titles;
23163
23572
  }());
23164
23573
 
@@ -25947,6 +26356,7 @@ var Glitch = /** @class */ (function () {
25947
26356
  Config: Config
25948
26357
  };
25949
26358
  Glitch.api = {
26359
+ Ads: Ads,
25950
26360
  Auth: Auth,
25951
26361
  Campaigns: Campaigns,
25952
26362
  Competitions: Competitions,