@tozielinski/next-brevo-api-helper 1.0.4 → 1.0.6

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.
@@ -1,4 +1,4 @@
1
- import type { BrevoApiResponse, BrevoStatus, BrevoContact, BrevoCreateContactRequest, BrevoCreateContactResponse, BrevoGetContactResponse, BrevoSendEmailRequest, BrevoSendEmailResponse, BrevoSendSmsRequest, BrevoSendSmsResponse, BrevoList, BrevoCreateListRequest, BrevoCreateListResponse, BrevoGetListsResponse, BrevoUpdateListRequest, BrevoDeleteListRequest, BrevoAddContactsToListRequest, BrevoAddContactsToListResponse, BrevoFolder, BrevoCreateFolderRequest, BrevoCreateFolderResponse, BrevoGetFolderRequest, BrevoGetFoldersResponse, BrevoUpdateFolderRequest, BrevoDeleteFolderRequest } from "./brevo";
1
+ import type { BrevoApiResponse, BrevoStatus, BrevoContact, BrevoCreateContactRequest, BrevoCreateContactResponse, BrevoGetContactResponse, BrevoSendEmailRequest, BrevoSendEmailResponse, BrevoSendSmsRequest, BrevoSendSmsResponse, BrevoList, BrevoCreateListRequest, BrevoCreateListResponse, BrevoGetListsResponse, BrevoGetListContactsResponse, BrevoUpdateListRequest, BrevoDeleteListRequest, BrevoAddContactsToListRequest, BrevoAddContactsToListResponse, BrevoFolder, BrevoCreateFolderRequest, BrevoCreateFolderResponse, BrevoGetFolderRequest, BrevoGetFoldersResponse, BrevoUpdateFolderRequest, BrevoDeleteFolderRequest } from "./brevo";
2
2
  /**
3
3
  * Create a fabric for brevoFetch with API key preconfigured
4
4
  * @param baseUrl
@@ -18,8 +18,10 @@ export interface BrevoClientConfig {
18
18
  export declare class BrevoClient {
19
19
  private brevoFetcher;
20
20
  constructor(config?: BrevoClientConfig);
21
- /** Create or update a contact */
21
+ /** Create a contact */
22
22
  createContact(contact: BrevoCreateContactRequest): Promise<BrevoApiResponse<BrevoCreateContactResponse>>;
23
+ /** Get all contacts */
24
+ getContacts(): Promise<BrevoApiResponse<BrevoGetListContactsResponse>>;
23
25
  /** Get contact by email or ID */
24
26
  getContact(identifier: string | number): Promise<BrevoApiResponse<BrevoGetContactResponse>>;
25
27
  /** Delete a contact */
@@ -52,8 +54,8 @@ export declare class BrevoClient {
52
54
  /** Send transactional email */
53
55
  sendEmail(email: BrevoSendEmailRequest): Promise<BrevoApiResponse<BrevoSendEmailResponse>>;
54
56
  /** Send SMS */
55
- static sendSms(sms: BrevoSendSmsRequest): Promise<BrevoApiResponse<BrevoSendSmsResponse>>;
57
+ sendSms(sms: BrevoSendSmsRequest): Promise<BrevoApiResponse<BrevoSendSmsResponse>>;
56
58
  /** Ping Brevo API (GET /account) */
57
- static ping(): Promise<BrevoApiResponse<unknown>>;
59
+ ping(): Promise<BrevoApiResponse<unknown>>;
58
60
  }
59
61
  //# sourceMappingURL=brevo-client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"brevo-client.d.ts","sourceRoot":"","sources":["../src/brevo-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brevo-client.d.ts","sourceRoot":"","sources":["../src/brevo-client.ts"],"names":[],"mappings":"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"}
@@ -84,7 +84,7 @@ async function fetchAllPaginated(endpoint, responseKey, limit = 50, extraQuery =
84
84
  const url = `${endpoint}?limit=${limit}&offset=${offset}${extraQuery}`;
85
85
  const response = await brevoFetch(url, { method: "GET" });
86
86
  if (response.status !== 200) {
87
- return response; // Fehler durchreichen
87
+ return response; // error through
88
88
  }
89
89
  items = response.data?.[responseKey] ?? [];
90
90
  allItems.push(...items);
@@ -114,13 +114,20 @@ class BrevoClient {
114
114
  // CONTACTS
115
115
  // ────────────────────────────────
116
116
  //
117
- /** Create or update a contact */
117
+ /** Create a contact */
118
118
  async createContact(contact) {
119
119
  return brevoFetch("/contacts", {
120
120
  method: "POST",
121
121
  body: JSON.stringify(contact),
122
122
  });
123
123
  }
124
+ /** Get all contacts */
125
+ async getContacts() {
126
+ return brevoFetch("/contacts", {
127
+ method: "GET",
128
+ body: JSON.stringify({}),
129
+ });
130
+ }
124
131
  /** Get contact by email or ID */
125
132
  async getContact(identifier) {
126
133
  return brevoFetch(`/contacts/${identifier}`, {
@@ -246,7 +253,7 @@ class BrevoClient {
246
253
  // ────────────────────────────────
247
254
  //
248
255
  /** Send SMS */
249
- static async sendSms(sms) {
256
+ async sendSms(sms) {
250
257
  return brevoFetch("/transactionalSMS/sms", {
251
258
  method: "POST",
252
259
  body: JSON.stringify(sms),
@@ -258,7 +265,7 @@ class BrevoClient {
258
265
  // ────────────────────────────────
259
266
  //
260
267
  /** Ping Brevo API (GET /account) */
261
- static async ping() {
268
+ async ping() {
262
269
  return brevoFetch("/account", { method: "GET" });
263
270
  }
264
271
  }
package/dist/brevo.d.ts CHANGED
@@ -148,7 +148,7 @@ export interface BrevoGetListContactsResponse {
148
148
 
149
149
  export interface BrevoCreateListRequest {
150
150
  name: string;
151
- folderId?: number;
151
+ folderId: number;
152
152
  }
153
153
 
154
154
  export interface BrevoCreateListResponse {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tozielinski/next-brevo-api-helper",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "Lightweight helper to use Brevo to send mails via the Brevo API and maintain all",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",