glitch-javascript-sdk 2.6.2 → 2.6.3

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.
@@ -30,5 +30,89 @@ declare class Newsletters {
30
30
  * @param data { name, email, game, categories[] }
31
31
  */
32
32
  static joinDiscordMarketplaceWaitlist<T>(data: object, params?: Record<string, any>): AxiosPromise<Response<T>>;
33
+ /**
34
+ * List all newsletter campaigns (Admin only).
35
+ *
36
+ * @param params Query parameters for pagination and filtering.
37
+ * @returns Promise
38
+ */
39
+ static listCampaigns<T>(params?: Record<string, any>): AxiosPromise<Response<T>>;
40
+ /**
41
+ * Create a new newsletter campaign draft (Admin only).
42
+ *
43
+ * @param data { subject, content_html, content_json }
44
+ * @returns Promise
45
+ */
46
+ static createCampaign<T>(data: object): AxiosPromise<Response<T>>;
47
+ /**
48
+ * Retrieve a specific newsletter campaign (Admin only).
49
+ *
50
+ * @param id The UUID of the campaign.
51
+ * @returns Promise
52
+ */
53
+ static viewCampaign<T>(id: string): AxiosPromise<Response<T>>;
54
+ /**
55
+ * Update a newsletter campaign draft (Admin only).
56
+ *
57
+ * @param id The UUID of the campaign.
58
+ * @param data The updated campaign data.
59
+ * @returns Promise
60
+ */
61
+ static updateCampaign<T>(id: string, data: object): AxiosPromise<Response<T>>;
62
+ /**
63
+ * Get analytics for a specific campaign (Admin only).
64
+ * Returns open rates, click rates, and human vs proxy metrics.
65
+ *
66
+ * @param id The UUID of the campaign.
67
+ * @returns Promise
68
+ */
69
+ static getCampaignStats<T>(id: string): AxiosPromise<Response<T>>;
70
+ /**
71
+ * Trigger the delivery of a newsletter campaign to all active subscribers (Admin only).
72
+ *
73
+ * @param id The UUID of the campaign.
74
+ * @returns Promise
75
+ */
76
+ static sendCampaign<T>(id: string): AxiosPromise<Response<T>>;
77
+ /**
78
+ * List all newsletter subscribers (Admin only).
79
+ *
80
+ * @param params Query parameters for pagination and filtering.
81
+ * @returns Promise
82
+ */
83
+ static listSubscribers<T>(params?: Record<string, any>): AxiosPromise<Response<T>>;
84
+ /**
85
+ * Delete a newsletter campaign (Admin only).
86
+ */
87
+ static deleteCampaign<T>(id: string): AxiosPromise<Response<T>>;
88
+ /**
89
+ * Send a test email of a campaign to a specific address (Admin only).
90
+ */
91
+ static sendTestEmail<T>(id: string, email: string): AxiosPromise<Response<T>>;
92
+ /**
93
+ * Get detailed delivery and open logs for a campaign (Admin only).
94
+ */
95
+ static getDetailedLogs<T>(id: string, params?: object): AxiosPromise<Response<T>>;
96
+ /**
97
+ * Manually create a new subscriber (Admin only).
98
+ */
99
+ static createSubscriber<T>(data: object): AxiosPromise<Response<T>>;
100
+ /**
101
+ * Update a subscriber's details or status (Admin only).
102
+ */
103
+ static updateSubscriber<T>(id: string, data: object): AxiosPromise<Response<T>>;
104
+ /**
105
+ * Delete a subscriber (Admin only).
106
+ */
107
+ static deleteSubscriber<T>(id: string): AxiosPromise<Response<T>>;
108
+ /**
109
+ * Retrieve a specific subscriber's details (Admin only).
110
+ *
111
+ * @see https://api.glitch.fun/api/documentation#/Newsletter%20Admin/showNewsletterSubscriber
112
+ *
113
+ * @param id The UUID of the subscriber.
114
+ * @returns Promise
115
+ */
116
+ static viewSubscriber<T>(id: string): AxiosPromise<Response<T>>;
33
117
  }
34
118
  export default Newsletters;
package/dist/esm/index.js CHANGED
@@ -13877,6 +13877,19 @@ var NewslettersRoutes = /** @class */ (function () {
13877
13877
  joinCourseWaitlist: { url: '/newsletters/joinCourseWaitlist', method: HTTP_METHODS.POST },
13878
13878
  joinRaffleWaitlist: { url: '/newsletters/joinRaffleWaitlist', method: HTTP_METHODS.POST },
13879
13879
  joinDiscordMarketplaceWaitlist: { url: '/newsletters/joinDiscordMarketplaceWaitlist', method: HTTP_METHODS.POST },
13880
+ // --- New Admin Routes ---
13881
+ listCampaigns: { url: '/admin/newsletters/campaigns', method: HTTP_METHODS.GET },
13882
+ createCampaign: { url: '/admin/newsletters/campaigns', method: HTTP_METHODS.POST },
13883
+ viewCampaign: { url: '/admin/newsletters/campaigns/{id}', method: HTTP_METHODS.GET },
13884
+ updateCampaign: { url: '/admin/newsletters/campaigns/{id}', method: HTTP_METHODS.PUT },
13885
+ getStats: { url: '/admin/newsletters/campaigns/{id}/stats', method: HTTP_METHODS.GET },
13886
+ sendCampaign: { url: '/admin/newsletters/campaigns/{id}/send', method: HTTP_METHODS.POST },
13887
+ listSubscribers: { url: '/admin/newsletters/subscribers', method: HTTP_METHODS.GET },
13888
+ // --- Subscriber Management (Admin) ---
13889
+ createSubscriber: { url: '/admin/newsletters/subscribers', method: HTTP_METHODS.POST },
13890
+ viewSubscriber: { url: '/admin/newsletters/subscribers/{id}', method: HTTP_METHODS.GET },
13891
+ updateSubscriber: { url: '/admin/newsletters/subscribers/{id}', method: HTTP_METHODS.PUT },
13892
+ deleteSubscriber: { url: '/admin/newsletters/subscribers/{id}', method: HTTP_METHODS.DELETE },
13880
13893
  };
13881
13894
  return NewslettersRoutes;
13882
13895
  }());
@@ -13921,6 +13934,118 @@ var Newsletters = /** @class */ (function () {
13921
13934
  Newsletters.joinDiscordMarketplaceWaitlist = function (data, params) {
13922
13935
  return Requests.processRoute(NewslettersRoutes.routes.joinDiscordMarketplaceWaitlist, data, undefined, params);
13923
13936
  };
13937
+ /**
13938
+ * List all newsletter campaigns (Admin only).
13939
+ *
13940
+ * @param params Query parameters for pagination and filtering.
13941
+ * @returns Promise
13942
+ */
13943
+ Newsletters.listCampaigns = function (params) {
13944
+ return Requests.processRoute(NewslettersRoutes.routes.listCampaigns, undefined, undefined, params);
13945
+ };
13946
+ /**
13947
+ * Create a new newsletter campaign draft (Admin only).
13948
+ *
13949
+ * @param data { subject, content_html, content_json }
13950
+ * @returns Promise
13951
+ */
13952
+ Newsletters.createCampaign = function (data) {
13953
+ return Requests.processRoute(NewslettersRoutes.routes.createCampaign, data);
13954
+ };
13955
+ /**
13956
+ * Retrieve a specific newsletter campaign (Admin only).
13957
+ *
13958
+ * @param id The UUID of the campaign.
13959
+ * @returns Promise
13960
+ */
13961
+ Newsletters.viewCampaign = function (id) {
13962
+ return Requests.processRoute(NewslettersRoutes.routes.viewCampaign, undefined, { id: id });
13963
+ };
13964
+ /**
13965
+ * Update a newsletter campaign draft (Admin only).
13966
+ *
13967
+ * @param id The UUID of the campaign.
13968
+ * @param data The updated campaign data.
13969
+ * @returns Promise
13970
+ */
13971
+ Newsletters.updateCampaign = function (id, data) {
13972
+ return Requests.processRoute(NewslettersRoutes.routes.updateCampaign, data, { id: id });
13973
+ };
13974
+ /**
13975
+ * Get analytics for a specific campaign (Admin only).
13976
+ * Returns open rates, click rates, and human vs proxy metrics.
13977
+ *
13978
+ * @param id The UUID of the campaign.
13979
+ * @returns Promise
13980
+ */
13981
+ Newsletters.getCampaignStats = function (id) {
13982
+ return Requests.processRoute(NewslettersRoutes.routes.getStats, undefined, { id: id });
13983
+ };
13984
+ /**
13985
+ * Trigger the delivery of a newsletter campaign to all active subscribers (Admin only).
13986
+ *
13987
+ * @param id The UUID of the campaign.
13988
+ * @returns Promise
13989
+ */
13990
+ Newsletters.sendCampaign = function (id) {
13991
+ return Requests.processRoute(NewslettersRoutes.routes.sendCampaign, undefined, { id: id });
13992
+ };
13993
+ /**
13994
+ * List all newsletter subscribers (Admin only).
13995
+ *
13996
+ * @param params Query parameters for pagination and filtering.
13997
+ * @returns Promise
13998
+ */
13999
+ Newsletters.listSubscribers = function (params) {
14000
+ return Requests.processRoute(NewslettersRoutes.routes.listSubscribers, undefined, undefined, params);
14001
+ };
14002
+ /**
14003
+ * Delete a newsletter campaign (Admin only).
14004
+ */
14005
+ Newsletters.deleteCampaign = function (id) {
14006
+ return Requests.processRoute(NewslettersRoutes.routes.deleteCampaign, undefined, { id: id });
14007
+ };
14008
+ /**
14009
+ * Send a test email of a campaign to a specific address (Admin only).
14010
+ */
14011
+ Newsletters.sendTestEmail = function (id, email) {
14012
+ return Requests.processRoute(NewslettersRoutes.routes.sendTest, { email: email }, { id: id });
14013
+ };
14014
+ /**
14015
+ * Get detailed delivery and open logs for a campaign (Admin only).
14016
+ */
14017
+ Newsletters.getDetailedLogs = function (id, params) {
14018
+ return Requests.processRoute(NewslettersRoutes.routes.getLogs, undefined, { id: id }, params);
14019
+ };
14020
+ /**
14021
+ * Manually create a new subscriber (Admin only).
14022
+ */
14023
+ Newsletters.createSubscriber = function (data) {
14024
+ return Requests.processRoute(NewslettersRoutes.routes.createSubscriber, data);
14025
+ };
14026
+ /**
14027
+ * Update a subscriber's details or status (Admin only).
14028
+ */
14029
+ Newsletters.updateSubscriber = function (id, data) {
14030
+ return Requests.processRoute(NewslettersRoutes.routes.updateSubscriber, data, { id: id });
14031
+ };
14032
+ /**
14033
+ * Delete a subscriber (Admin only).
14034
+ */
14035
+ Newsletters.deleteSubscriber = function (id) {
14036
+ return Requests.processRoute(NewslettersRoutes.routes.deleteSubscriber, undefined, { id: id });
14037
+ };
14038
+ /**
14039
+ * Retrieve a specific subscriber's details (Admin only).
14040
+ *
14041
+ * @see https://api.glitch.fun/api/documentation#/Newsletter%20Admin/showNewsletterSubscriber
14042
+ *
14043
+ * @param id The UUID of the subscriber.
14044
+ * @returns Promise
14045
+ */
14046
+ Newsletters.viewSubscriber = function (id) {
14047
+ return Requests.processRoute(NewslettersRoutes.routes.viewSubscriber, undefined, { id: id });
14048
+ };
13924
14049
  return Newsletters;
13925
14050
  }());
13926
14051