@kirimdev/sdk 1.0.1 → 2.0.0
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/client.d.ts +36 -9
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +42 -13
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/resources/contacts.d.ts +12 -5
- package/dist/resources/contacts.d.ts.map +1 -1
- package/dist/resources/contacts.js +24 -13
- package/dist/resources/contacts.js.map +1 -1
- package/dist/resources/conversations.d.ts +10 -3
- package/dist/resources/conversations.d.ts.map +1 -1
- package/dist/resources/conversations.js +19 -8
- package/dist/resources/conversations.js.map +1 -1
- package/dist/resources/messages.d.ts +16 -6
- package/dist/resources/messages.d.ts.map +1 -1
- package/dist/resources/messages.js +24 -10
- package/dist/resources/messages.js.map +1 -1
- package/dist/resources/phone-number.d.ts +38 -0
- package/dist/resources/phone-number.d.ts.map +1 -0
- package/dist/resources/phone-number.js +29 -0
- package/dist/resources/phone-number.js.map +1 -0
- package/dist/resources/templates.d.ts +8 -1
- package/dist/resources/templates.d.ts.map +1 -1
- package/dist/resources/templates.js +14 -3
- package/dist/resources/templates.js.map +1 -1
- package/dist/types.d.ts +12 -12
- package/dist/types.d.ts.map +1 -1
- package/openapi.json +575 -77
- package/package.json +1 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client for resources scoped to a single WhatsApp account (Meta-style
|
|
3
|
+
* path-based addressing).
|
|
4
|
+
*
|
|
5
|
+
* Mirrors the public API tree:
|
|
6
|
+
*
|
|
7
|
+
* sdk.phoneNumbers(id).messages.send({...})
|
|
8
|
+
* sdk.phoneNumbers(id).messages.list()
|
|
9
|
+
* sdk.phoneNumbers(id).conversations.list()
|
|
10
|
+
* sdk.phoneNumbers(id).contacts.create({...})
|
|
11
|
+
* sdk.phoneNumbers(id).templates.list()
|
|
12
|
+
*
|
|
13
|
+
* Constructing a `PhoneNumberClient` is cheap (just wires sub-resources
|
|
14
|
+
* with the same `HttpClient`); cache it on a module local if you only
|
|
15
|
+
* use one account so you don't re-allocate per-call.
|
|
16
|
+
*/
|
|
17
|
+
import type { HttpClient } from '../http.js';
|
|
18
|
+
import { ContactsResource } from './contacts.js';
|
|
19
|
+
import { ConversationsResource } from './conversations.js';
|
|
20
|
+
import { MessagesResource } from './messages.js';
|
|
21
|
+
import { TemplatesResource } from './templates.js';
|
|
22
|
+
export declare class PhoneNumberClient {
|
|
23
|
+
private readonly http;
|
|
24
|
+
readonly phoneNumberId: string;
|
|
25
|
+
readonly messages: MessagesResource;
|
|
26
|
+
readonly conversations: ConversationsResource;
|
|
27
|
+
readonly contacts: ContactsResource;
|
|
28
|
+
readonly templates: TemplatesResource;
|
|
29
|
+
/**
|
|
30
|
+
* @param http - shared HttpClient (auth, retry, idempotency, etc.)
|
|
31
|
+
* @param phoneNumberId - Meta `business_phone_number_id`. Digit-only
|
|
32
|
+
* string (e.g. `'106540352242922'`). Validated server-side: a
|
|
33
|
+
* malformed or cross-org id returns 404 from the API; a known but
|
|
34
|
+
* disconnected account returns 422.
|
|
35
|
+
*/
|
|
36
|
+
constructor(http: HttpClient, phoneNumberId: string);
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=phone-number.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phone-number.d.ts","sourceRoot":"","sources":["../../src/resources/phone-number.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD,qBAAa,iBAAiB;IAc1B,OAAO,CAAC,QAAQ,CAAC,IAAI;aACL,aAAa,EAAE,MAAM;IAdvC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;IACnC,QAAQ,CAAC,aAAa,EAAE,qBAAqB,CAAA;IAC7C,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;IACnC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAA;IAErC;;;;;;OAMG;gBAEgB,IAAI,EAAE,UAAU,EACjB,aAAa,EAAE,MAAM;CAQxC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ContactsResource } from './contacts.js';
|
|
2
|
+
import { ConversationsResource } from './conversations.js';
|
|
3
|
+
import { MessagesResource } from './messages.js';
|
|
4
|
+
import { TemplatesResource } from './templates.js';
|
|
5
|
+
export class PhoneNumberClient {
|
|
6
|
+
http;
|
|
7
|
+
phoneNumberId;
|
|
8
|
+
messages;
|
|
9
|
+
conversations;
|
|
10
|
+
contacts;
|
|
11
|
+
templates;
|
|
12
|
+
/**
|
|
13
|
+
* @param http - shared HttpClient (auth, retry, idempotency, etc.)
|
|
14
|
+
* @param phoneNumberId - Meta `business_phone_number_id`. Digit-only
|
|
15
|
+
* string (e.g. `'106540352242922'`). Validated server-side: a
|
|
16
|
+
* malformed or cross-org id returns 404 from the API; a known but
|
|
17
|
+
* disconnected account returns 422.
|
|
18
|
+
*/
|
|
19
|
+
constructor(http, phoneNumberId) {
|
|
20
|
+
this.http = http;
|
|
21
|
+
this.phoneNumberId = phoneNumberId;
|
|
22
|
+
const prefix = `/${encodeURIComponent(phoneNumberId)}`;
|
|
23
|
+
this.messages = new MessagesResource(http, prefix);
|
|
24
|
+
this.conversations = new ConversationsResource(http, prefix);
|
|
25
|
+
this.contacts = new ContactsResource(http, prefix);
|
|
26
|
+
this.templates = new TemplatesResource(http, prefix);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=phone-number.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phone-number.js","sourceRoot":"","sources":["../../src/resources/phone-number.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,OAAO,iBAAiB;IAcT;IACD;IAdT,QAAQ,CAAkB;IAC1B,aAAa,CAAuB;IACpC,QAAQ,CAAkB;IAC1B,SAAS,CAAmB;IAErC;;;;;;OAMG;IACH,YACmB,IAAgB,EACjB,aAAqB;QADpB,SAAI,GAAJ,IAAI,CAAY;QACjB,kBAAa,GAAb,aAAa,CAAQ;QAErC,MAAM,MAAM,GAAG,IAAI,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAA;QACtD,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAClD,IAAI,CAAC,aAAa,GAAG,IAAI,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC5D,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAClD,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACtD,CAAC;CACF"}
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
import type { HttpClient, RequestOptions } from '../http.js';
|
|
2
2
|
import { Paginator } from '../pagination.js';
|
|
3
3
|
import type { ListTemplatesParams, RetrieveTemplateParams, Template, TemplateListItem } from '../types.js';
|
|
4
|
+
/**
|
|
5
|
+
* Templates resource — Meta-style path-scoped.
|
|
6
|
+
*
|
|
7
|
+
* Instantiated by {@link PhoneNumberClient}; the `prefix` is
|
|
8
|
+
* `/{phone_number_id}` (already URL-encoded by the parent).
|
|
9
|
+
*/
|
|
4
10
|
export declare class TemplatesResource {
|
|
5
11
|
private readonly http;
|
|
6
|
-
|
|
12
|
+
private readonly prefix;
|
|
13
|
+
constructor(http: HttpClient, prefix: string);
|
|
7
14
|
list(params?: ListTemplatesParams, options?: RequestOptions): Paginator<TemplateListItem>;
|
|
8
15
|
retrieve(name: string, params?: RetrieveTemplateParams, options?: RequestOptions): Promise<Template>;
|
|
9
16
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/resources/templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,KAAK,EACV,mBAAmB,EACnB,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EACjB,MAAM,aAAa,CAAA;AAEpB,qBAAa,iBAAiB;
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/resources/templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,KAAK,EACV,mBAAmB,EACnB,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EACjB,MAAM,aAAa,CAAA;AAEpB;;;;;GAKG;AACH,qBAAa,iBAAiB;IAE1B,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,MAAM;IAGjC,IAAI,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAWzF,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,QAAQ,CAAC;CAQrB"}
|
|
@@ -1,16 +1,27 @@
|
|
|
1
1
|
import { Paginator } from '../pagination.js';
|
|
2
|
+
/**
|
|
3
|
+
* Templates resource — Meta-style path-scoped.
|
|
4
|
+
*
|
|
5
|
+
* Instantiated by {@link PhoneNumberClient}; the `prefix` is
|
|
6
|
+
* `/{phone_number_id}` (already URL-encoded by the parent).
|
|
7
|
+
*/
|
|
2
8
|
export class TemplatesResource {
|
|
3
9
|
http;
|
|
4
|
-
|
|
10
|
+
prefix;
|
|
11
|
+
constructor(http, prefix) {
|
|
5
12
|
this.http = http;
|
|
13
|
+
this.prefix = prefix;
|
|
6
14
|
}
|
|
7
15
|
list(params, options) {
|
|
8
|
-
return new Paginator(this.http, {
|
|
16
|
+
return new Paginator(this.http, {
|
|
17
|
+
path: `${this.prefix}/templates`,
|
|
18
|
+
...(params ? { query: params } : {}),
|
|
19
|
+
}, options);
|
|
9
20
|
}
|
|
10
21
|
retrieve(name, params, options) {
|
|
11
22
|
return this.http.requestData({
|
|
12
23
|
method: 'GET',
|
|
13
|
-
path:
|
|
24
|
+
path: `${this.prefix}/templates/${encodeURIComponent(name)}`,
|
|
14
25
|
...(params ? { query: params } : {}),
|
|
15
26
|
...(options ? { options } : {}),
|
|
16
27
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/resources/templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAQ5C,MAAM,OAAO,iBAAiB;
|
|
1
|
+
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/resources/templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAQ5C;;;;;GAKG;AACH,MAAM,OAAO,iBAAiB;IAET;IACA;IAFnB,YACmB,IAAgB,EAChB,MAAc;QADd,SAAI,GAAJ,IAAI,CAAY;QAChB,WAAM,GAAN,MAAM,CAAQ;IAC9B,CAAC;IAEJ,IAAI,CAAC,MAA4B,EAAE,OAAwB;QACzD,OAAO,IAAI,SAAS,CAClB,IAAI,CAAC,IAAI,EACT;YACE,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,YAAY;YAChC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAsE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrG,EACD,OAAO,CACR,CAAA;IACH,CAAC;IAED,QAAQ,CACN,IAAY,EACZ,MAA+B,EAC/B,OAAwB;QAExB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAW;YACrC,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,cAAc,kBAAkB,CAAC,IAAI,CAAC,EAAE;YAC5D,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAsE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChC,CAAC,CAAA;IACJ,CAAC;CACF"}
|
package/dist/types.d.ts
CHANGED
|
@@ -16,28 +16,28 @@ export type Account = ListData<Schemas['ListAccountsResponse']>;
|
|
|
16
16
|
export type ListAccountsParams = NonNullable<paths['/accounts']['get']['parameters']['query']>;
|
|
17
17
|
export type Message = SingleData<Schemas['GetMessageResponse']>;
|
|
18
18
|
export type MessageListItem = ListData<Schemas['ListMessagesResponse']>;
|
|
19
|
-
export type SendMessageParams = NonNullable<paths['/messages']['post']['requestBody']>['content']['application/json'];
|
|
20
|
-
export type ListMessagesParams = NonNullable<paths['/messages']['get']['parameters']['query']>;
|
|
19
|
+
export type SendMessageParams = NonNullable<paths['/{phone_number_id}/messages']['post']['requestBody']>['content']['application/json'];
|
|
20
|
+
export type ListMessagesParams = NonNullable<paths['/{phone_number_id}/messages']['get']['parameters']['query']>;
|
|
21
21
|
export type MessageMediaRedirect = {
|
|
22
22
|
url: string | null;
|
|
23
23
|
request_id: string | null;
|
|
24
24
|
};
|
|
25
25
|
export type Template = SingleData<Schemas['GetTemplateResponse']>;
|
|
26
26
|
export type TemplateListItem = ListData<Schemas['ListTemplatesResponse']>;
|
|
27
|
-
export type ListTemplatesParams = NonNullable<paths['/templates']['get']['parameters']['query']>;
|
|
28
|
-
export type RetrieveTemplateParams = NonNullable<paths['/templates/{name}']['get']['parameters']['query']>;
|
|
27
|
+
export type ListTemplatesParams = NonNullable<paths['/{phone_number_id}/templates']['get']['parameters']['query']>;
|
|
28
|
+
export type RetrieveTemplateParams = NonNullable<paths['/{phone_number_id}/templates/{name}']['get']['parameters']['query']>;
|
|
29
29
|
export type Conversation = SingleData<Schemas['GetConversationResponse']>;
|
|
30
30
|
export type ConversationListItem = ListData<Schemas['ListConversationsResponse']>;
|
|
31
|
-
export type ListConversationsParams = NonNullable<paths['/conversations']['get']['parameters']['query']>;
|
|
32
|
-
export type UpdateConversationParams = NonNullable<paths['/conversations/{id}']['patch']['requestBody']>['content']['application/json'];
|
|
33
|
-
export type AttachConversationLabelParams = NonNullable<paths['/conversations/{id}/labels']['post']['requestBody']>['content']['application/json'];
|
|
31
|
+
export type ListConversationsParams = NonNullable<paths['/{phone_number_id}/conversations']['get']['parameters']['query']>;
|
|
32
|
+
export type UpdateConversationParams = NonNullable<paths['/{phone_number_id}/conversations/{id}']['patch']['requestBody']>['content']['application/json'];
|
|
33
|
+
export type AttachConversationLabelParams = NonNullable<paths['/{phone_number_id}/conversations/{id}/labels']['post']['requestBody']>['content']['application/json'];
|
|
34
34
|
export type Contact = SingleData<Schemas['GetContactResponse']>;
|
|
35
35
|
export type ContactListItem = ListData<Schemas['ListContactsResponse']>;
|
|
36
|
-
export type ListContactsParams = NonNullable<paths['/contacts']['get']['parameters']['query']>;
|
|
37
|
-
export type CreateContactParams = NonNullable<paths['/contacts']['post']['requestBody']>['content']['application/json'];
|
|
38
|
-
export type UpdateContactParams = NonNullable<paths['/contacts/{id}']['patch']['requestBody']>['content']['application/json'];
|
|
39
|
-
export type AttachContactLabelParams = NonNullable<paths['/contacts/{id}/labels']['post']['requestBody']>['content']['application/json'];
|
|
40
|
-
export type BulkLabelContactsParams = NonNullable<paths['/contacts/bulk_label']['post']['requestBody']>['content']['application/json'];
|
|
36
|
+
export type ListContactsParams = NonNullable<paths['/{phone_number_id}/contacts']['get']['parameters']['query']>;
|
|
37
|
+
export type CreateContactParams = NonNullable<paths['/{phone_number_id}/contacts']['post']['requestBody']>['content']['application/json'];
|
|
38
|
+
export type UpdateContactParams = NonNullable<paths['/{phone_number_id}/contacts/{id}']['patch']['requestBody']>['content']['application/json'];
|
|
39
|
+
export type AttachContactLabelParams = NonNullable<paths['/{phone_number_id}/contacts/{id}/labels']['post']['requestBody']>['content']['application/json'];
|
|
40
|
+
export type BulkLabelContactsParams = NonNullable<paths['/{phone_number_id}/contacts/bulk_label']['post']['requestBody']>['content']['application/json'];
|
|
41
41
|
export type Label = SingleData<Schemas['GetLabelResponse']>;
|
|
42
42
|
export type LabelListItem = ListData<Schemas['ListLabelsResponse']>;
|
|
43
43
|
export type ListLabelsParams = NonNullable<paths['/labels']['get']['parameters']['query']>;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAA;AAE9D,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;AAG3C,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAAA;AAC5D,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS;IAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAAA;AAGjE,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;AAGzD,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAA;AAC/D,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;AAG9F,MAAM,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAA;AAC/D,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC,CAAA;AACvE,MAAM,MAAM,iBAAiB,GAAG,WAAW,CACzC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|