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/esm/index.js CHANGED
@@ -6578,6 +6578,354 @@ var Competitions = /** @class */ (function () {
6578
6578
  return Competitions;
6579
6579
  }());
6580
6580
 
6581
+ /**
6582
+ * AdsRoute holds all the endpoint definitions for:
6583
+ * - Ad Campaigns
6584
+ * - Ad Groups (Ad Sets)
6585
+ * - Ads (Creatives)
6586
+ * - Ad Group Triggers
6587
+ */
6588
+ var AdsRoute = /** @class */ (function () {
6589
+ function AdsRoute() {
6590
+ }
6591
+ AdsRoute.routes = {
6592
+ // ----------------------------------------------------------------
6593
+ // AD CAMPAIGNS
6594
+ // ----------------------------------------------------------------
6595
+ getCampaigns: {
6596
+ url: "/ads/campaigns",
6597
+ method: HTTP_METHODS.GET,
6598
+ },
6599
+ createCampaign: {
6600
+ url: "/ads/campaigns",
6601
+ method: HTTP_METHODS.POST,
6602
+ },
6603
+ retrieveCampaign: {
6604
+ url: "/ads/campaigns/{campaign_id}",
6605
+ method: HTTP_METHODS.GET,
6606
+ },
6607
+ updateCampaign: {
6608
+ url: "/ads/campaigns/{campaign_id}",
6609
+ method: HTTP_METHODS.PUT,
6610
+ },
6611
+ deleteCampaign: {
6612
+ url: "/ads/campaigns/{campaign_id}",
6613
+ method: HTTP_METHODS.DELETE,
6614
+ },
6615
+ // ----------------------------------------------------------------
6616
+ // AD GROUPS (AKA AD SETS)
6617
+ // ----------------------------------------------------------------
6618
+ getGroups: {
6619
+ url: "/ads/campaigns/{campaign_id}/groups",
6620
+ method: HTTP_METHODS.GET,
6621
+ },
6622
+ createGroup: {
6623
+ url: "/ads/campaigns/{campaign_id}/groups",
6624
+ method: HTTP_METHODS.POST,
6625
+ },
6626
+ retrieveGroup: {
6627
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}",
6628
+ method: HTTP_METHODS.GET,
6629
+ },
6630
+ updateGroup: {
6631
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}",
6632
+ method: HTTP_METHODS.PUT,
6633
+ },
6634
+ deleteGroup: {
6635
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}",
6636
+ method: HTTP_METHODS.DELETE,
6637
+ },
6638
+ // ----------------------------------------------------------------
6639
+ // ADS (CREATIVES)
6640
+ // ----------------------------------------------------------------
6641
+ getAds: {
6642
+ url: "/ads/creatives",
6643
+ method: HTTP_METHODS.GET,
6644
+ },
6645
+ createAd: {
6646
+ url: "/ads/creatives",
6647
+ method: HTTP_METHODS.POST,
6648
+ },
6649
+ retrieveAd: {
6650
+ url: "/ads/creatives/{ad_id}",
6651
+ method: HTTP_METHODS.GET,
6652
+ },
6653
+ updateAd: {
6654
+ url: "/ads/creatives/{ad_id}",
6655
+ method: HTTP_METHODS.PUT,
6656
+ },
6657
+ deleteAd: {
6658
+ url: "/ads/creatives/{ad_id}",
6659
+ method: HTTP_METHODS.DELETE,
6660
+ },
6661
+ // ----------------------------------------------------------------
6662
+ // AD GROUP TRIGGERS
6663
+ // ----------------------------------------------------------------
6664
+ getTriggers: {
6665
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers",
6666
+ method: HTTP_METHODS.GET,
6667
+ },
6668
+ createTrigger: {
6669
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers",
6670
+ method: HTTP_METHODS.POST,
6671
+ },
6672
+ retrieveTrigger: {
6673
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers/{trigger_id}",
6674
+ method: HTTP_METHODS.GET,
6675
+ },
6676
+ updateTrigger: {
6677
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers/{trigger_id}",
6678
+ method: HTTP_METHODS.PUT,
6679
+ },
6680
+ deleteTrigger: {
6681
+ url: "/ads/campaigns/{campaign_id}/groups/{group_id}/triggers/{trigger_id}",
6682
+ method: HTTP_METHODS.DELETE,
6683
+ },
6684
+ };
6685
+ return AdsRoute;
6686
+ }());
6687
+
6688
+ var Ads = /** @class */ (function () {
6689
+ function Ads() {
6690
+ }
6691
+ // ----------------------------------------------------------------------
6692
+ // AD CAMPAIGNS
6693
+ // ----------------------------------------------------------------------
6694
+ /**
6695
+ * List Ad Campaigns.
6696
+ *
6697
+ * Example usage:
6698
+ * Ads.listCampaigns({ community: 'uuid-of-community', platform: 'tiktok' })
6699
+ *
6700
+ * @param params Query parameters (e.g. community, platform, advertiser_id, etc.)
6701
+ * @returns A paginated list of AdCampaign resources
6702
+ */
6703
+ Ads.listCampaigns = function (params) {
6704
+ return Requests.processRoute(AdsRoute.routes.getCampaigns, undefined, undefined, params);
6705
+ };
6706
+ /**
6707
+ * Create a new Ad Campaign.
6708
+ *
6709
+ * @param data The Ad Campaign payload (JSON) to create
6710
+ * @param params Optional query parameters
6711
+ * @returns The newly created AdCampaign resource
6712
+ */
6713
+ Ads.createCampaign = function (data, params) {
6714
+ return Requests.processRoute(AdsRoute.routes.createCampaign, data, {}, params);
6715
+ };
6716
+ /**
6717
+ * Retrieve a single Ad Campaign by ID.
6718
+ *
6719
+ * @param campaign_id The UUID of the campaign to fetch
6720
+ * @param params Optional query parameters
6721
+ * @returns The requested AdCampaign resource
6722
+ */
6723
+ Ads.viewCampaign = function (campaign_id, params) {
6724
+ return Requests.processRoute(AdsRoute.routes.retrieveCampaign, {}, { campaign_id: campaign_id }, params);
6725
+ };
6726
+ /**
6727
+ * Update an existing Ad Campaign by ID.
6728
+ *
6729
+ * @param campaign_id The UUID of the campaign to update
6730
+ * @param data The partial or full updated AdCampaign payload
6731
+ * @param params Optional query parameters
6732
+ * @returns The updated AdCampaign resource
6733
+ */
6734
+ Ads.updateCampaign = function (campaign_id, data, params) {
6735
+ return Requests.processRoute(AdsRoute.routes.updateCampaign, data, { campaign_id: campaign_id }, params);
6736
+ };
6737
+ /**
6738
+ * Delete an Ad Campaign by ID.
6739
+ *
6740
+ * @param campaign_id The UUID of the campaign to delete
6741
+ * @param params Optional query parameters
6742
+ * @returns A 204 No Content response on success
6743
+ */
6744
+ Ads.deleteCampaign = function (campaign_id, params) {
6745
+ return Requests.processRoute(AdsRoute.routes.deleteCampaign, {}, { campaign_id: campaign_id }, params);
6746
+ };
6747
+ // ----------------------------------------------------------------------
6748
+ // AD GROUPS (AD SETS)
6749
+ // ----------------------------------------------------------------------
6750
+ /**
6751
+ * List Ad Groups (ad sets) for a specific campaign.
6752
+ *
6753
+ * Example usage:
6754
+ * Ads.listGroups('some-campaign-uuid', { promotion_type: 'WEBSITE' })
6755
+ *
6756
+ * @param campaign_id The UUID of the parent Ad Campaign
6757
+ * @param params Optional query parameters (e.g. promotion_type, operation_status, etc.)
6758
+ * @returns A paginated list of AdGroup resources
6759
+ */
6760
+ Ads.listGroups = function (campaign_id, params) {
6761
+ return Requests.processRoute(AdsRoute.routes.getGroups, {}, { campaign_id: campaign_id }, params);
6762
+ };
6763
+ /**
6764
+ * Create a new Ad Group (ad set) under a specific campaign.
6765
+ *
6766
+ * @param campaign_id The UUID of the parent Ad Campaign
6767
+ * @param data The AdGroup creation payload
6768
+ * @param params Optional query parameters
6769
+ * @returns The newly created AdGroup resource
6770
+ */
6771
+ Ads.createGroup = function (campaign_id, data, params) {
6772
+ return Requests.processRoute(AdsRoute.routes.createGroup, data, { campaign_id: campaign_id }, params);
6773
+ };
6774
+ /**
6775
+ * Retrieve a single Ad Group by ID, under a specific campaign.
6776
+ *
6777
+ * @param campaign_id The UUID of the parent Ad Campaign
6778
+ * @param group_id The UUID of the AdGroup to fetch
6779
+ * @param params Optional query parameters
6780
+ * @returns The requested AdGroup resource
6781
+ */
6782
+ Ads.viewGroup = function (campaign_id, group_id, params) {
6783
+ return Requests.processRoute(AdsRoute.routes.retrieveGroup, {}, { campaign_id: campaign_id, group_id: group_id }, params);
6784
+ };
6785
+ /**
6786
+ * Update an Ad Group (ad set) by ID.
6787
+ *
6788
+ * @param campaign_id The UUID of the parent Ad Campaign
6789
+ * @param group_id The UUID of the AdGroup to update
6790
+ * @param data Updated fields for the AdGroup
6791
+ * @param params Optional query parameters
6792
+ * @returns The updated AdGroup resource
6793
+ */
6794
+ Ads.updateGroup = function (campaign_id, group_id, data, params) {
6795
+ return Requests.processRoute(AdsRoute.routes.updateGroup, data, { campaign_id: campaign_id, group_id: group_id }, params);
6796
+ };
6797
+ /**
6798
+ * Delete an Ad Group (ad set) by ID, under a specific campaign.
6799
+ *
6800
+ * @param campaign_id The UUID of the parent Ad Campaign
6801
+ * @param group_id The UUID of the AdGroup to delete
6802
+ * @param params Optional query parameters
6803
+ * @returns A 204 No Content response on success
6804
+ */
6805
+ Ads.deleteGroup = function (campaign_id, group_id, params) {
6806
+ return Requests.processRoute(AdsRoute.routes.deleteGroup, {}, { campaign_id: campaign_id, group_id: group_id }, params);
6807
+ };
6808
+ // ----------------------------------------------------------------------
6809
+ // ADS (CREATIVES)
6810
+ // ----------------------------------------------------------------------
6811
+ /**
6812
+ * List Ads (creatives).
6813
+ *
6814
+ * Supports filtering by ad_group_id, social_media_post_id, operation_status, etc.
6815
+ *
6816
+ * @param params Optional query parameters for filtering/sorting
6817
+ * @returns A paginated list of Ad resources
6818
+ */
6819
+ Ads.listAds = function (params) {
6820
+ return Requests.processRoute(AdsRoute.routes.getAds, undefined, undefined, params);
6821
+ };
6822
+ /**
6823
+ * Create a new Ad (creative).
6824
+ *
6825
+ * @param data The Ad creation payload
6826
+ * @param params Optional query parameters
6827
+ * @returns The newly created Ad resource
6828
+ */
6829
+ Ads.createAd = function (data, params) {
6830
+ return Requests.processRoute(AdsRoute.routes.createAd, data, {}, params);
6831
+ };
6832
+ /**
6833
+ * Retrieve a single Ad by ID.
6834
+ *
6835
+ * @param ad_id The UUID of the Ad to fetch
6836
+ * @param params Optional query parameters
6837
+ * @returns The requested Ad resource
6838
+ */
6839
+ Ads.viewAd = function (ad_id, params) {
6840
+ return Requests.processRoute(AdsRoute.routes.retrieveAd, {}, { ad_id: ad_id }, params);
6841
+ };
6842
+ /**
6843
+ * Update an existing Ad by ID.
6844
+ *
6845
+ * @param ad_id The UUID of the Ad to update
6846
+ * @param data The partial or full Ad payload
6847
+ * @param params Optional query parameters
6848
+ * @returns The updated Ad resource
6849
+ */
6850
+ Ads.updateAd = function (ad_id, data, params) {
6851
+ return Requests.processRoute(AdsRoute.routes.updateAd, data, { ad_id: ad_id }, params);
6852
+ };
6853
+ /**
6854
+ * Delete an Ad by ID.
6855
+ *
6856
+ * @param ad_id The UUID of the Ad to delete
6857
+ * @param params Optional query parameters
6858
+ * @returns A 204 No Content response on success
6859
+ */
6860
+ Ads.deleteAd = function (ad_id, params) {
6861
+ return Requests.processRoute(AdsRoute.routes.deleteAd, {}, { ad_id: ad_id }, params);
6862
+ };
6863
+ // ----------------------------------------------------------------------
6864
+ // AD GROUP TRIGGERS
6865
+ // ----------------------------------------------------------------------
6866
+ /**
6867
+ * List triggers defined for a given Ad Group.
6868
+ *
6869
+ * @param campaign_id The UUID of the parent Ad Campaign
6870
+ * @param group_id The UUID of the Ad Group
6871
+ * @param params Optional query parameters (pagination, etc.)
6872
+ * @returns A paginated list of AdGroupTrigger resources
6873
+ */
6874
+ Ads.listTriggers = function (campaign_id, group_id, params) {
6875
+ return Requests.processRoute(AdsRoute.routes.getTriggers, {}, { campaign_id: campaign_id, group_id: group_id }, params);
6876
+ };
6877
+ /**
6878
+ * Create a new Ad Group Trigger.
6879
+ *
6880
+ * @param campaign_id The UUID of the parent Ad Campaign
6881
+ * @param group_id The UUID of the Ad Group
6882
+ * @param data The trigger creation payload
6883
+ * @param params Optional query parameters
6884
+ * @returns The newly created AdGroupTrigger resource
6885
+ */
6886
+ Ads.createTrigger = function (campaign_id, group_id, data, params) {
6887
+ return Requests.processRoute(AdsRoute.routes.createTrigger, data, { campaign_id: campaign_id, group_id: group_id }, params);
6888
+ };
6889
+ /**
6890
+ * Retrieve a single Ad Group Trigger by ID.
6891
+ *
6892
+ * @param campaign_id The UUID of the parent Ad Campaign
6893
+ * @param group_id The UUID of the Ad Group
6894
+ * @param trigger_id The UUID of the trigger
6895
+ * @param params Optional query parameters
6896
+ * @returns The requested AdGroupTrigger resource
6897
+ */
6898
+ Ads.viewTrigger = function (campaign_id, group_id, trigger_id, params) {
6899
+ return Requests.processRoute(AdsRoute.routes.retrieveTrigger, {}, { campaign_id: campaign_id, group_id: group_id, trigger_id: trigger_id }, params);
6900
+ };
6901
+ /**
6902
+ * Update an existing Ad Group Trigger by ID.
6903
+ *
6904
+ * @param campaign_id The UUID of the parent Ad Campaign
6905
+ * @param group_id The UUID of the Ad Group
6906
+ * @param trigger_id The UUID of the trigger to update
6907
+ * @param data Updated trigger fields
6908
+ * @param params Optional query parameters
6909
+ * @returns The updated AdGroupTrigger resource
6910
+ */
6911
+ Ads.updateTrigger = function (campaign_id, group_id, trigger_id, data, params) {
6912
+ return Requests.processRoute(AdsRoute.routes.updateTrigger, data, { campaign_id: campaign_id, group_id: group_id, trigger_id: trigger_id }, params);
6913
+ };
6914
+ /**
6915
+ * Delete an Ad Group Trigger by ID.
6916
+ *
6917
+ * @param campaign_id The UUID of the parent Ad Campaign
6918
+ * @param group_id The UUID of the Ad Group
6919
+ * @param trigger_id The UUID of the trigger
6920
+ * @param params Optional query parameters
6921
+ * @returns A 204 No Content response on success
6922
+ */
6923
+ Ads.deleteTrigger = function (campaign_id, group_id, trigger_id, params) {
6924
+ return Requests.processRoute(AdsRoute.routes.deleteTrigger, {}, { campaign_id: campaign_id, group_id: group_id, trigger_id: trigger_id }, params);
6925
+ };
6926
+ return Ads;
6927
+ }());
6928
+
6581
6929
  var CommunitiesRoute = /** @class */ (function () {
6582
6930
  function CommunitiesRoute() {
6583
6931
  }
@@ -9669,6 +10017,30 @@ var TitlesRoute = /** @class */ (function () {
9669
10017
  url: '/titles/{title_id}/sessions/histogram',
9670
10018
  method: HTTP_METHODS.GET
9671
10019
  },
10020
+ /**
10021
+ * 1) Import a CSV/Excel file containing daily UTM analytics data for a Title
10022
+ * POST /titles/{title_id}/utm/import
10023
+ */
10024
+ importUtmAnalytics: {
10025
+ url: "/titles/{title_id}/utm/import",
10026
+ method: HTTP_METHODS.POST,
10027
+ },
10028
+ /**
10029
+ * 2) Retrieve paginated/filterable UTM analytics data for a Title
10030
+ * GET /titles/{title_id}/utm
10031
+ */
10032
+ getUtmAnalytics: {
10033
+ url: "/titles/{title_id}/utm",
10034
+ method: HTTP_METHODS.GET,
10035
+ },
10036
+ /**
10037
+ * 3) Analyze UTM data with optional group_by / dimension-based aggregates
10038
+ * GET /titles/{title_id}/utm/analysis
10039
+ */
10040
+ analyzeUtmAnalytics: {
10041
+ url: "/titles/{title_id}/utm/analysis",
10042
+ method: HTTP_METHODS.GET,
10043
+ },
9672
10044
  };
9673
10045
  return TitlesRoute;
9674
10046
  }());
@@ -9959,9 +10331,9 @@ var Titles = /** @class */ (function () {
9959
10331
  return Requests.processRoute(TitlesRoute.routes.distinctDimensions, {}, { title_id: title_id }, params);
9960
10332
  };
9961
10333
  /**
9962
- * List sessions for a specific title, with optional filters and pagination.
9963
- * Returns a paginated list of sessions with start/end times, session_length, user info, etc.
9964
- */
10334
+ * List sessions for a specific title, with optional filters and pagination.
10335
+ * Returns a paginated list of sessions with start/end times, session_length, user info, etc.
10336
+ */
9965
10337
  Titles.listSessions = function (title_id, params) {
9966
10338
  return Requests.processRoute(TitlesRoute.routes.listSessions, {}, { title_id: title_id }, params);
9967
10339
  };
@@ -9975,6 +10347,43 @@ var Titles = /** @class */ (function () {
9975
10347
  Titles.sessionsHistogram = function (title_id, params) {
9976
10348
  return Requests.processRoute(TitlesRoute.routes.sessionsHistogram, {}, { title_id: title_id }, params);
9977
10349
  };
10350
+ /**
10351
+ * Upload a CSV/Excel file containing daily UTM analytics for a specific title.
10352
+ *
10353
+ * @param title_id The UUID of the title
10354
+ * @param file The CSV or Excel file
10355
+ * @param data Optional form fields (if needed)
10356
+ * @param params Optional query parameters
10357
+ * @returns AxiosPromise
10358
+ */
10359
+ Titles.importUtmAnalytics = function (title_id, file, data, params) {
10360
+ var url = TitlesRoute.routes.importUtmAnalytics.url.replace("{title_id}", title_id);
10361
+ return Requests.uploadFile(url, "file", file, data, params);
10362
+ };
10363
+ /**
10364
+ * Retrieve the UTM analytics data for a title (paginated, filterable, sortable).
10365
+ *
10366
+ * GET /titles/{title_id}/utm
10367
+ *
10368
+ * @param title_id The UUID of the title
10369
+ * @param params Optional query params: start_date, end_date, source, device_type, sort_by, etc.
10370
+ * @returns AxiosPromise
10371
+ */
10372
+ Titles.getUtmAnalytics = function (title_id, params) {
10373
+ return Requests.processRoute(TitlesRoute.routes.getUtmAnalytics, {}, { title_id: title_id }, params);
10374
+ };
10375
+ /**
10376
+ * Analyze UTM data with optional group_by (source, campaign, medium, device_type, etc.)
10377
+ *
10378
+ * GET /titles/{title_id}/utm/analysis
10379
+ *
10380
+ * @param title_id The UUID of the title
10381
+ * @param params e.g. ?group_by=source&start_date=YYYY-MM-DD
10382
+ * @returns AxiosPromise
10383
+ */
10384
+ Titles.analyzeUtmAnalytics = function (title_id, params) {
10385
+ return Requests.processRoute(TitlesRoute.routes.analyzeUtmAnalytics, {}, { title_id: title_id }, params);
10386
+ };
9978
10387
  return Titles;
9979
10388
  }());
9980
10389
 
@@ -12763,6 +13172,7 @@ var Glitch = /** @class */ (function () {
12763
13172
  Config: Config
12764
13173
  };
12765
13174
  Glitch.api = {
13175
+ Ads: Ads,
12766
13176
  Auth: Auth,
12767
13177
  Campaigns: Campaigns,
12768
13178
  Competitions: Competitions,