contiguity 0.0.4 → 0.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.
- package/README.md +156 -48
- package/dist/cjs/client.d.ts +27 -0
- package/dist/cjs/client.d.ts.map +1 -0
- package/dist/cjs/client.js +43 -0
- package/dist/cjs/index.d.ts +13 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +11 -0
- package/dist/cjs/resources/conversations.d.ts +30 -0
- package/dist/cjs/resources/conversations.d.ts.map +1 -0
- package/dist/cjs/resources/conversations.js +24 -0
- package/dist/cjs/resources/domains.d.ts +39 -0
- package/dist/cjs/resources/domains.d.ts.map +1 -0
- package/dist/cjs/resources/domains.js +28 -0
- package/dist/cjs/resources/email.d.ts +17 -0
- package/dist/cjs/resources/email.d.ts.map +1 -0
- package/dist/cjs/resources/email.js +19 -0
- package/dist/cjs/resources/imessage.d.ts +49 -0
- package/dist/cjs/resources/imessage.d.ts.map +1 -0
- package/dist/cjs/resources/imessage.js +42 -0
- package/dist/cjs/resources/lease.d.ts +55 -0
- package/dist/cjs/resources/lease.d.ts.map +1 -0
- package/dist/cjs/resources/lease.js +34 -0
- package/dist/cjs/resources/otp.d.ts +63 -0
- package/dist/cjs/resources/otp.d.ts.map +1 -0
- package/dist/cjs/resources/otp.js +48 -0
- package/dist/cjs/resources/text.d.ts +17 -0
- package/dist/cjs/resources/text.d.ts.map +1 -0
- package/dist/cjs/resources/text.js +19 -0
- package/dist/cjs/resources/voice.d.ts +129 -0
- package/dist/cjs/resources/voice.d.ts.map +1 -0
- package/dist/cjs/resources/voice.js +95 -0
- package/dist/cjs/resources/webhook.d.ts +21 -0
- package/dist/cjs/resources/webhook.d.ts.map +1 -0
- package/dist/cjs/resources/webhook.js +47 -0
- package/dist/cjs/resources/whatsapp.d.ts +33 -0
- package/dist/cjs/resources/whatsapp.d.ts.map +1 -0
- package/dist/cjs/resources/whatsapp.js +32 -0
- package/dist/cjs/schemas/conversations.d.ts +5 -0
- package/dist/cjs/schemas/conversations.d.ts.map +1 -0
- package/dist/cjs/schemas/conversations.js +5 -0
- package/dist/cjs/schemas/domains.d.ts +7 -0
- package/dist/cjs/schemas/domains.d.ts.map +1 -0
- package/dist/cjs/schemas/domains.js +10 -0
- package/dist/cjs/schemas/email.d.ts +16 -0
- package/dist/cjs/schemas/email.d.ts.map +1 -0
- package/dist/cjs/schemas/email.js +16 -0
- package/dist/cjs/schemas/imessage.d.ts +25 -0
- package/dist/cjs/schemas/imessage.d.ts.map +1 -0
- package/dist/cjs/schemas/imessage.js +25 -0
- package/dist/cjs/schemas/index.d.ts +10 -0
- package/dist/cjs/schemas/index.d.ts.map +1 -0
- package/dist/cjs/schemas/index.js +25 -0
- package/dist/cjs/schemas/leases.d.ts +9 -0
- package/dist/cjs/schemas/leases.d.ts.map +1 -0
- package/dist/cjs/schemas/leases.js +9 -0
- package/dist/cjs/schemas/otp.d.ts +25 -0
- package/dist/cjs/schemas/otp.d.ts.map +1 -0
- package/dist/cjs/schemas/otp.js +16 -0
- package/dist/cjs/schemas/text.d.ts +9 -0
- package/dist/cjs/schemas/text.d.ts.map +1 -0
- package/dist/cjs/schemas/text.js +12 -0
- package/dist/cjs/schemas/voice.d.ts +5 -0
- package/dist/cjs/schemas/voice.d.ts.map +1 -0
- package/dist/cjs/schemas/voice.js +5 -0
- package/dist/cjs/schemas/whatsapp.d.ts +25 -0
- package/dist/cjs/schemas/whatsapp.d.ts.map +1 -0
- package/dist/cjs/schemas/whatsapp.js +25 -0
- package/dist/cjs/types/index.d.ts +3 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +18 -0
- package/dist/cjs/types/responses.d.ts +8 -0
- package/dist/cjs/types/responses.d.ts.map +1 -0
- package/dist/cjs/types/responses.js +2 -0
- package/dist/cjs/types/webhooks.d.ts +10 -0
- package/dist/cjs/types/webhooks.d.ts.map +1 -0
- package/dist/cjs/types/webhooks.js +2 -0
- package/dist/cjs/utils/errors.d.ts +6 -0
- package/dist/cjs/utils/errors.d.ts.map +1 -0
- package/dist/cjs/utils/errors.js +15 -0
- package/dist/cjs/utils/request.d.ts +27 -0
- package/dist/cjs/utils/request.d.ts.map +1 -0
- package/dist/cjs/utils/request.js +36 -0
- package/dist/cjs/utils/response.d.ts +12 -0
- package/dist/cjs/utils/response.d.ts.map +1 -0
- package/dist/cjs/utils/response.js +12 -0
- package/dist/cjs/webhook/parse.d.ts +6 -0
- package/dist/cjs/webhook/parse.d.ts.map +1 -0
- package/dist/cjs/webhook/parse.js +14 -0
- package/dist/cjs/webhook/verify.d.ts +6 -0
- package/dist/cjs/webhook/verify.d.ts.map +1 -0
- package/dist/cjs/webhook/verify.js +39 -0
- package/dist/client.d.ts +23 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +44 -0
- package/dist/esm/client.d.ts +27 -0
- package/dist/esm/client.d.ts.map +1 -0
- package/dist/esm/client.js +39 -0
- package/dist/esm/index.d.ts +13 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/resources/conversations.d.ts +30 -0
- package/dist/esm/resources/conversations.d.ts.map +1 -0
- package/dist/esm/resources/conversations.js +20 -0
- package/dist/esm/resources/domains.d.ts +39 -0
- package/dist/esm/resources/domains.d.ts.map +1 -0
- package/dist/esm/resources/domains.js +24 -0
- package/dist/esm/resources/email.d.ts +17 -0
- package/dist/esm/resources/email.d.ts.map +1 -0
- package/dist/esm/resources/email.js +15 -0
- package/dist/esm/resources/imessage.d.ts +49 -0
- package/dist/esm/resources/imessage.d.ts.map +1 -0
- package/dist/esm/resources/imessage.js +38 -0
- package/dist/esm/resources/lease.d.ts +55 -0
- package/dist/esm/resources/lease.d.ts.map +1 -0
- package/dist/esm/resources/lease.js +30 -0
- package/dist/esm/resources/otp.d.ts +63 -0
- package/dist/esm/resources/otp.d.ts.map +1 -0
- package/dist/esm/resources/otp.js +44 -0
- package/dist/esm/resources/text.d.ts +17 -0
- package/dist/esm/resources/text.d.ts.map +1 -0
- package/dist/esm/resources/text.js +15 -0
- package/dist/esm/resources/voice.d.ts +129 -0
- package/dist/esm/resources/voice.d.ts.map +1 -0
- package/dist/esm/resources/voice.js +91 -0
- package/dist/esm/resources/webhook.d.ts +21 -0
- package/dist/esm/resources/webhook.d.ts.map +1 -0
- package/dist/esm/resources/webhook.js +43 -0
- package/dist/esm/resources/whatsapp.d.ts +33 -0
- package/dist/esm/resources/whatsapp.d.ts.map +1 -0
- package/dist/esm/resources/whatsapp.js +28 -0
- package/dist/esm/schemas/conversations.d.ts +5 -0
- package/dist/esm/schemas/conversations.d.ts.map +1 -0
- package/dist/esm/schemas/conversations.js +2 -0
- package/dist/esm/schemas/domains.d.ts +7 -0
- package/dist/esm/schemas/domains.d.ts.map +1 -0
- package/dist/esm/schemas/domains.js +7 -0
- package/dist/esm/schemas/email.d.ts +16 -0
- package/dist/esm/schemas/email.d.ts.map +1 -0
- package/dist/esm/schemas/email.js +13 -0
- package/dist/esm/schemas/imessage.d.ts +25 -0
- package/dist/esm/schemas/imessage.d.ts.map +1 -0
- package/dist/esm/schemas/imessage.js +22 -0
- package/dist/esm/schemas/index.d.ts +10 -0
- package/dist/esm/schemas/index.d.ts.map +1 -0
- package/dist/esm/schemas/index.js +9 -0
- package/dist/esm/schemas/leases.d.ts +9 -0
- package/dist/esm/schemas/leases.d.ts.map +1 -0
- package/dist/esm/schemas/leases.js +6 -0
- package/dist/esm/schemas/otp.d.ts +25 -0
- package/dist/esm/schemas/otp.d.ts.map +1 -0
- package/dist/esm/schemas/otp.js +13 -0
- package/dist/esm/schemas/text.d.ts +9 -0
- package/dist/esm/schemas/text.d.ts.map +1 -0
- package/dist/esm/schemas/text.js +9 -0
- package/dist/esm/schemas/voice.d.ts +5 -0
- package/dist/esm/schemas/voice.d.ts.map +1 -0
- package/dist/esm/schemas/voice.js +2 -0
- package/dist/esm/schemas/whatsapp.d.ts +25 -0
- package/dist/esm/schemas/whatsapp.d.ts.map +1 -0
- package/dist/esm/schemas/whatsapp.js +22 -0
- package/dist/esm/types/index.d.ts +3 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/responses.d.ts +8 -0
- package/dist/esm/types/responses.d.ts.map +1 -0
- package/dist/esm/types/webhooks.d.ts +10 -0
- package/dist/esm/types/webhooks.d.ts.map +1 -0
- package/dist/esm/types/webhooks.js +1 -0
- package/dist/esm/utils/errors.d.ts +6 -0
- package/dist/esm/utils/errors.d.ts.map +1 -0
- package/dist/esm/utils/errors.js +11 -0
- package/dist/esm/utils/request.d.ts +27 -0
- package/dist/esm/utils/request.d.ts.map +1 -0
- package/dist/esm/utils/request.js +33 -0
- package/dist/esm/utils/response.d.ts +12 -0
- package/dist/esm/utils/response.d.ts.map +1 -0
- package/dist/esm/utils/response.js +9 -0
- package/dist/esm/webhook/parse.d.ts +6 -0
- package/dist/esm/webhook/parse.d.ts.map +1 -0
- package/dist/esm/webhook/parse.js +11 -0
- package/dist/esm/webhook/verify.d.ts +6 -0
- package/dist/esm/webhook/verify.d.ts.map +1 -0
- package/dist/esm/webhook/verify.js +36 -0
- package/dist/index.d.ts +13 -27
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -12423
- package/dist/resources/conversations.d.ts +31 -0
- package/dist/resources/conversations.d.ts.map +1 -0
- package/dist/resources/conversations.js +21 -0
- package/dist/resources/domains.d.ts +39 -0
- package/dist/resources/domains.d.ts.map +1 -0
- package/dist/resources/domains.js +24 -0
- package/dist/resources/email.d.ts +17 -0
- package/dist/resources/email.d.ts.map +1 -0
- package/dist/resources/email.js +15 -0
- package/dist/resources/identity.d.ts +56 -0
- package/dist/resources/identity.d.ts.map +1 -0
- package/dist/resources/identity.js +43 -0
- package/dist/resources/imessage.d.ts +58 -0
- package/dist/resources/imessage.d.ts.map +1 -0
- package/dist/resources/imessage.js +47 -0
- package/dist/resources/lease.d.ts +55 -0
- package/dist/resources/lease.d.ts.map +1 -0
- package/dist/resources/lease.js +30 -0
- package/dist/resources/otp.d.ts +63 -0
- package/dist/resources/otp.d.ts.map +1 -0
- package/dist/resources/otp.js +44 -0
- package/dist/resources/product.d.ts +23 -0
- package/dist/resources/product.d.ts.map +1 -0
- package/dist/resources/product.js +19 -0
- package/dist/resources/text.d.ts +44 -0
- package/dist/resources/text.d.ts.map +1 -0
- package/dist/resources/text.js +33 -0
- package/dist/resources/voice.d.ts +129 -0
- package/dist/resources/voice.d.ts.map +1 -0
- package/dist/resources/voice.js +91 -0
- package/dist/resources/webhook.d.ts +21 -0
- package/dist/resources/webhook.d.ts.map +1 -0
- package/dist/resources/webhook.js +43 -0
- package/dist/resources/whatsapp.d.ts +33 -0
- package/dist/resources/whatsapp.d.ts.map +1 -0
- package/dist/resources/whatsapp.js +31 -0
- package/dist/schemas/conversations.d.ts +8 -0
- package/dist/schemas/conversations.d.ts.map +1 -0
- package/dist/schemas/conversations.js +8 -0
- package/dist/schemas/domains.d.ts +7 -0
- package/dist/schemas/domains.d.ts.map +1 -0
- package/dist/schemas/domains.js +7 -0
- package/dist/schemas/email.d.ts +16 -0
- package/dist/schemas/email.d.ts.map +1 -0
- package/dist/schemas/email.js +13 -0
- package/dist/schemas/imessage.d.ts +44 -0
- package/dist/schemas/imessage.d.ts.map +1 -0
- package/dist/schemas/imessage.js +36 -0
- package/dist/schemas/index.d.ts +10 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +9 -0
- package/dist/schemas/leases.d.ts +9 -0
- package/dist/schemas/leases.d.ts.map +1 -0
- package/dist/schemas/leases.js +6 -0
- package/dist/schemas/otp.d.ts +25 -0
- package/dist/schemas/otp.d.ts.map +1 -0
- package/dist/schemas/otp.js +13 -0
- package/dist/schemas/product.d.ts +12 -0
- package/dist/schemas/product.d.ts.map +1 -0
- package/dist/schemas/product.js +9 -0
- package/dist/schemas/text.d.ts +24 -0
- package/dist/schemas/text.d.ts.map +1 -0
- package/dist/schemas/text.js +18 -0
- package/dist/schemas/voice.d.ts +5 -0
- package/dist/schemas/voice.d.ts.map +1 -0
- package/dist/schemas/voice.js +2 -0
- package/dist/schemas/whatsapp.d.ts +31 -0
- package/dist/schemas/whatsapp.d.ts.map +1 -0
- package/dist/schemas/whatsapp.js +29 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/responses.d.ts +8 -0
- package/dist/types/responses.d.ts.map +1 -0
- package/dist/types/responses.js +1 -0
- package/dist/types/webhooks.d.ts +10 -0
- package/dist/types/webhooks.d.ts.map +1 -0
- package/dist/types/webhooks.js +1 -0
- package/dist/utils/errors.d.ts +6 -0
- package/dist/utils/errors.d.ts.map +1 -0
- package/dist/utils/errors.js +11 -0
- package/dist/utils/request.d.ts +26 -5
- package/dist/utils/request.d.ts.map +1 -1
- package/dist/utils/request.js +31 -45
- package/dist/utils/response.d.ts +12 -0
- package/dist/utils/response.d.ts.map +1 -0
- package/dist/utils/response.js +9 -0
- package/dist/webhook/parse.d.ts +6 -0
- package/dist/webhook/parse.d.ts.map +1 -0
- package/dist/webhook/parse.js +11 -0
- package/dist/webhook/verify.d.ts +6 -0
- package/dist/webhook/verify.d.ts.map +1 -0
- package/dist/webhook/verify.js +36 -0
- package/package.json +30 -33
- package/LICENSE.md +0 -8
- package/dist/client/fetch.d.ts +0 -25
- package/dist/client/fetch.d.ts.map +0 -1
- package/dist/client/fetch.js +0 -85
- package/dist/contiguity.d.ts +0 -81
- package/dist/contiguity.d.ts.map +0 -1
- package/dist/contiguity.js +0 -106
- package/dist/services/domains/delete.d.ts +0 -28
- package/dist/services/domains/delete.d.ts.map +0 -1
- package/dist/services/domains/delete.js +0 -37
- package/dist/services/domains/get.d.ts +0 -98
- package/dist/services/domains/get.d.ts.map +0 -1
- package/dist/services/domains/get.js +0 -89
- package/dist/services/domains/index.d.ts +0 -34
- package/dist/services/domains/index.d.ts.map +0 -1
- package/dist/services/domains/index.js +0 -37
- package/dist/services/domains/list.d.ts +0 -36
- package/dist/services/domains/list.d.ts.map +0 -1
- package/dist/services/domains/list.js +0 -42
- package/dist/services/domains/register.d.ts +0 -67
- package/dist/services/domains/register.d.ts.map +0 -1
- package/dist/services/domains/register.js +0 -67
- package/dist/services/email/index.d.ts +0 -17
- package/dist/services/email/index.d.ts.map +0 -1
- package/dist/services/email/index.js +0 -16
- package/dist/services/email/send.d.ts +0 -66
- package/dist/services/email/send.d.ts.map +0 -1
- package/dist/services/email/send.js +0 -78
- package/dist/services/imessage/index.d.ts +0 -24
- package/dist/services/imessage/index.d.ts.map +0 -1
- package/dist/services/imessage/index.js +0 -23
- package/dist/services/imessage/send.d.ts +0 -57
- package/dist/services/imessage/send.d.ts.map +0 -1
- package/dist/services/imessage/send.js +0 -60
- package/dist/services/imessage/typing.d.ts +0 -40
- package/dist/services/imessage/typing.d.ts.map +0 -1
- package/dist/services/imessage/typing.js +0 -49
- package/dist/services/lease/available.d.ts +0 -193
- package/dist/services/lease/available.d.ts.map +0 -1
- package/dist/services/lease/available.js +0 -103
- package/dist/services/lease/create.d.ts +0 -108
- package/dist/services/lease/create.d.ts.map +0 -1
- package/dist/services/lease/create.js +0 -78
- package/dist/services/lease/details.d.ts +0 -133
- package/dist/services/lease/details.d.ts.map +0 -1
- package/dist/services/lease/details.js +0 -65
- package/dist/services/lease/get.d.ts +0 -96
- package/dist/services/lease/get.d.ts.map +0 -1
- package/dist/services/lease/get.js +0 -68
- package/dist/services/lease/index.d.ts +0 -50
- package/dist/services/lease/index.d.ts.map +0 -1
- package/dist/services/lease/index.js +0 -51
- package/dist/services/lease/leased.d.ts +0 -228
- package/dist/services/lease/leased.d.ts.map +0 -1
- package/dist/services/lease/leased.js +0 -108
- package/dist/services/lease/terminate.d.ts +0 -71
- package/dist/services/lease/terminate.d.ts.map +0 -1
- package/dist/services/lease/terminate.js +0 -78
- package/dist/services/otp/index.d.ts +0 -33
- package/dist/services/otp/index.d.ts.map +0 -1
- package/dist/services/otp/index.js +0 -37
- package/dist/services/otp/new.d.ts +0 -29
- package/dist/services/otp/new.d.ts.map +0 -1
- package/dist/services/otp/new.js +0 -44
- package/dist/services/otp/resend.d.ts +0 -22
- package/dist/services/otp/resend.d.ts.map +0 -1
- package/dist/services/otp/resend.js +0 -31
- package/dist/services/otp/send.d.ts +0 -26
- package/dist/services/otp/send.d.ts.map +0 -1
- package/dist/services/otp/send.js +0 -38
- package/dist/services/otp/verify.d.ts +0 -24
- package/dist/services/otp/verify.d.ts.map +0 -1
- package/dist/services/otp/verify.js +0 -34
- package/dist/services/text/index.d.ts +0 -17
- package/dist/services/text/index.d.ts.map +0 -1
- package/dist/services/text/index.js +0 -16
- package/dist/services/text/send.d.ts +0 -25
- package/dist/services/text/send.d.ts.map +0 -1
- package/dist/services/text/send.js +0 -37
- package/dist/services/whatsapp/index.d.ts +0 -24
- package/dist/services/whatsapp/index.d.ts.map +0 -1
- package/dist/services/whatsapp/index.js +0 -23
- package/dist/services/whatsapp/send.d.ts +0 -57
- package/dist/services/whatsapp/send.d.ts.map +0 -1
- package/dist/services/whatsapp/send.js +0 -60
- package/dist/services/whatsapp/typing.d.ts +0 -40
- package/dist/services/whatsapp/typing.d.ts.map +0 -1
- package/dist/services/whatsapp/typing.js +0 -49
- package/dist/types/base.d.ts +0 -17
- package/dist/types/base.d.ts.map +0 -1
- package/dist/types/base.js +0 -20
- package/dist/types/common.d.ts +0 -56
- package/dist/types/common.d.ts.map +0 -1
- package/dist/types/common.js +0 -48
- package/dist/types/error.d.ts +0 -37
- package/dist/types/error.d.ts.map +0 -1
- package/dist/types/error.js +0 -54
- package/dist/types/metadata.d.ts +0 -10
- package/dist/types/metadata.d.ts.map +0 -1
- package/dist/types/response.d.ts +0 -10
- package/dist/types/response.d.ts.map +0 -1
- package/dist/types/response.js +0 -10
- package/dist/utils/parse.d.ts +0 -8
- package/dist/utils/parse.d.ts.map +0 -1
- package/dist/utils/parse.js +0 -36
- /package/dist/{types/metadata.js → esm/types/responses.js} +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export const whatsappSendSchema = z
|
|
3
|
+
.object({
|
|
4
|
+
to: z.string(),
|
|
5
|
+
message: z.string(),
|
|
6
|
+
from: z.string().optional(),
|
|
7
|
+
fallback: z
|
|
8
|
+
.object({
|
|
9
|
+
when: z.array(z.enum(["whatsapp_unsupported", "whatsapp_fails"])),
|
|
10
|
+
from: z.string().optional(),
|
|
11
|
+
})
|
|
12
|
+
.optional(),
|
|
13
|
+
attachments: z.array(z.string()).optional(),
|
|
14
|
+
})
|
|
15
|
+
.passthrough();
|
|
16
|
+
export const whatsappTypingSchema = z
|
|
17
|
+
.object({
|
|
18
|
+
to: z.string(),
|
|
19
|
+
action: z.enum(["start", "stop"]),
|
|
20
|
+
from: z.string().optional(),
|
|
21
|
+
})
|
|
22
|
+
.passthrough();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"responses.d.ts","sourceRoot":"","sources":["../../../src/types/responses.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** Webhook event types (v2 format) */
|
|
2
|
+
export type WebhookEventType = "text.incoming.sms" | "text.incoming.mms" | "text.delivery.confirmed" | "text.delivery.failed" | "imessage.incoming" | "numbers.substitution" | "otp.reverse.verified" | "email.incoming" | "identity.verification_session.started" | "identity.verification_session.processing" | "identity.verification_session.verified" | "identity.verification_session.failed" | "identity.verification_session.requires_input" | "identity.verification_session.manually_approved" | "identity.verification_session.manually_denied" | "identity.verification_report.generated";
|
|
3
|
+
export interface WebhookEventBase {
|
|
4
|
+
id: string;
|
|
5
|
+
type: WebhookEventType;
|
|
6
|
+
timestamp: number;
|
|
7
|
+
api_version: string;
|
|
8
|
+
data: Record<string, unknown>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=webhooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../../src/types/webhooks.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,MAAM,MAAM,gBAAgB,GACxB,mBAAmB,GACnB,mBAAmB,GACnB,yBAAyB,GACzB,sBAAsB,GACtB,mBAAmB,GACnB,sBAAsB,GACtB,sBAAsB,GACtB,gBAAgB,GAChB,uCAAuC,GACvC,0CAA0C,GAC1C,wCAAwC,GACxC,sCAAsC,GACtC,8CAA8C,GAC9C,iDAAiD,GACjD,+CAA+C,GAC/C,wCAAwC,CAAC;AAE7C,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/utils/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,MAAM,CAAC,EAAE,MAAM;aACf,IAAI,CAAC,EAAE,MAAM;gBAF7B,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,IAAI,CAAC,EAAE,MAAM,YAAA;CAMhC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export class ContiguityError extends Error {
|
|
2
|
+
status;
|
|
3
|
+
code;
|
|
4
|
+
constructor(message, status, code) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.status = status;
|
|
7
|
+
this.code = code;
|
|
8
|
+
this.name = "ContiguityError";
|
|
9
|
+
Object.setPrototypeOf(this, ContiguityError.prototype);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
declare const BASE_URLS: {
|
|
2
|
+
readonly send: "https://api.contiguity.com/send";
|
|
3
|
+
readonly otp: "https://api.contiguity.com/otp";
|
|
4
|
+
readonly domains: "https://api.contiguity.com/domains";
|
|
5
|
+
readonly numbers: "https://api.contiguity.com/numbers";
|
|
6
|
+
readonly conversations: "https://api.contiguity.com/conversations";
|
|
7
|
+
readonly voice: "https://api.contiguity.com/voice";
|
|
8
|
+
};
|
|
9
|
+
export type ApiBase = keyof typeof BASE_URLS;
|
|
10
|
+
export interface RequestConfig {
|
|
11
|
+
token: string;
|
|
12
|
+
base: ApiBase;
|
|
13
|
+
debug?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare function request<T = Record<string, unknown>>(config: RequestConfig, path: string, options?: {
|
|
16
|
+
method?: "GET" | "POST" | "DELETE";
|
|
17
|
+
body?: Record<string, unknown>;
|
|
18
|
+
}): Promise<T & {
|
|
19
|
+
metadata: {
|
|
20
|
+
id: string;
|
|
21
|
+
timestamp: string;
|
|
22
|
+
api_version: string;
|
|
23
|
+
object: string;
|
|
24
|
+
};
|
|
25
|
+
}>;
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../../src/utils/request.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,SAAS;;;;;;;CAOL,CAAC;AAEX,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,SAAS,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvD,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC3B,GACL,OAAO,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,CAwBnG"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { transformResponse } from "./response.js";
|
|
2
|
+
import { ContiguityError } from "./errors.js";
|
|
3
|
+
const BASE_URLS = {
|
|
4
|
+
send: "https://api.contiguity.com/send",
|
|
5
|
+
otp: "https://api.contiguity.com/otp",
|
|
6
|
+
domains: "https://api.contiguity.com/domains",
|
|
7
|
+
numbers: "https://api.contiguity.com/numbers",
|
|
8
|
+
conversations: "https://api.contiguity.com/conversations",
|
|
9
|
+
voice: "https://api.contiguity.com/voice",
|
|
10
|
+
};
|
|
11
|
+
export async function request(config, path, options = {}) {
|
|
12
|
+
const { token, base, debug } = config;
|
|
13
|
+
const url = `${BASE_URLS[base]}${path}`;
|
|
14
|
+
const headers = {
|
|
15
|
+
"Content-Type": "application/json",
|
|
16
|
+
Authorization: `Token ${token}`,
|
|
17
|
+
};
|
|
18
|
+
if (debug) {
|
|
19
|
+
console.debug("[contiguity]", options.method ?? "GET", url, options.body ?? "");
|
|
20
|
+
}
|
|
21
|
+
const res = await fetch(url, {
|
|
22
|
+
method: options.method ?? "GET",
|
|
23
|
+
headers,
|
|
24
|
+
body: options.body ? JSON.stringify(options.body) : undefined,
|
|
25
|
+
});
|
|
26
|
+
const json = (await res.json());
|
|
27
|
+
if (!res.ok) {
|
|
28
|
+
const errMsg = json.data?.error ?? json.object ?? "Unknown error";
|
|
29
|
+
const status = json.data?.status ?? res.status;
|
|
30
|
+
throw new ContiguityError(errMsg, status);
|
|
31
|
+
}
|
|
32
|
+
return transformResponse(json);
|
|
33
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ResponseMetadata } from "../types/responses.js";
|
|
2
|
+
export interface RawApiResponse {
|
|
3
|
+
id: string;
|
|
4
|
+
timestamp: number;
|
|
5
|
+
api_version: string;
|
|
6
|
+
object: string;
|
|
7
|
+
data: Record<string, unknown>;
|
|
8
|
+
}
|
|
9
|
+
export declare function transformResponse(res: RawApiResponse): Record<string, unknown> & {
|
|
10
|
+
metadata: ResponseMetadata;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=response.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/utils/response.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,QAAQ,EAAE,gBAAgB,CAAA;CAAE,CAQ/G"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/webhook/parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,sBAAsB,CAAC;AAE/E;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,CAO/E"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parse raw webhook body (v2 format) into a typed event.
|
|
3
|
+
*/
|
|
4
|
+
export function parseWebhookPayload(raw_body) {
|
|
5
|
+
const str = typeof raw_body === "string" ? raw_body : raw_body.toString("utf-8");
|
|
6
|
+
const event = JSON.parse(str);
|
|
7
|
+
if (typeof event.id !== "string" || typeof event.type !== "string" || typeof event.timestamp !== "number") {
|
|
8
|
+
throw new Error("Invalid webhook payload: missing id, type, or timestamp");
|
|
9
|
+
}
|
|
10
|
+
return event;
|
|
11
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Verify webhook signature (HMAC-SHA256, format t=timestamp,v1=hex).
|
|
3
|
+
* Use raw body as received — do not re-serialize JSON.
|
|
4
|
+
*/
|
|
5
|
+
export declare function verifyWebhookSignature(raw_body: string | Buffer, signature_header: string | null | undefined, secret: string | null | undefined, tolerance_seconds?: number): boolean;
|
|
6
|
+
//# sourceMappingURL=verify.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/webhook/verify.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,sBAAsB,CAClC,QAAQ,EAAE,MAAM,GAAG,MAAM,EACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAC3C,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,iBAAiB,CAAC,EAAE,MAAM,GAC3B,OAAO,CAsBT"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { createHmac, timingSafeEqual } from "node:crypto";
|
|
2
|
+
/**
|
|
3
|
+
* Verify webhook signature (HMAC-SHA256, format t=timestamp,v1=hex).
|
|
4
|
+
* Use raw body as received — do not re-serialize JSON.
|
|
5
|
+
*/
|
|
6
|
+
export function verifyWebhookSignature(raw_body, signature_header, secret, tolerance_seconds) {
|
|
7
|
+
if (!secret || !signature_header || raw_body == null)
|
|
8
|
+
return false;
|
|
9
|
+
const match = signature_header.match(/t=(\d+),v1=([a-f0-9]+)/);
|
|
10
|
+
if (!match)
|
|
11
|
+
return false;
|
|
12
|
+
const [, t, v1] = match;
|
|
13
|
+
if (!t || !v1)
|
|
14
|
+
return false;
|
|
15
|
+
const body_str = typeof raw_body === "string" ? raw_body : raw_body.toString("utf-8");
|
|
16
|
+
const signed_payload = `${t}.${body_str}`;
|
|
17
|
+
const expected = createHmac("sha256", secret).update(signed_payload).digest("hex");
|
|
18
|
+
if (v1.length !== expected.length)
|
|
19
|
+
return false;
|
|
20
|
+
try {
|
|
21
|
+
if (!timingSafeEqual(Buffer.from(v1, "hex"), Buffer.from(expected, "hex")))
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
if (tolerance_seconds != null) {
|
|
28
|
+
const ts = parseInt(t, 10);
|
|
29
|
+
if (Number.isNaN(ts))
|
|
30
|
+
return false;
|
|
31
|
+
const now = Math.floor(Date.now() / 1000);
|
|
32
|
+
if (Math.abs(now - ts) > tolerance_seconds)
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
return true;
|
|
36
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,28 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export
|
|
6
|
-
export
|
|
7
|
-
export {
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
11
|
-
export {
|
|
12
|
-
export {
|
|
13
|
-
export {
|
|
14
|
-
export { LeaseAvailableResponse, AvailableNumber, NumberCapabilities, NumberHealth, NumberLocation, NumberFormat, NumberData, NumberPricing } from "@/services/lease/available";
|
|
15
|
-
export { LeaseGetRequest, LeaseGetResponse } from "@/services/lease/get";
|
|
16
|
-
export { LeaseCreateRequest, LeaseCreateResponse, LeaseBillingPrice, LeaseBillingPeriod, LeaseBilling } from "@/services/lease/create";
|
|
17
|
-
export { LeaseLeasedResponse, LeasedNumber, LeasedBillingPeriod, LeasedBilling } from "@/services/lease/leased";
|
|
18
|
-
export { LeaseDetailsRequest, LeaseDetailsResponse } from "@/services/lease/details";
|
|
19
|
-
export { LeaseTerminateRequest, LeaseTerminateResponse } from "@/services/lease/terminate";
|
|
20
|
-
export { OTPSendRequest, OTPSendResponse, OTPSendRequest as OTPNewRequest, OTPSendResponse as OTPNewResponse } from "@/services/otp/send";
|
|
21
|
-
export { OTPVerifyRequest, OTPVerifyResponse } from "@/services/otp/verify";
|
|
22
|
-
export { OTPResendRequest, OTPResendResponse } from "@/services/otp/resend";
|
|
23
|
-
export { DomainsListResponse, DomainInfo } from "@/services/domains/list";
|
|
24
|
-
export { DomainsGetRequest, DomainsGetResponse, DNSRecord, DomainVerifications } from "@/services/domains/get";
|
|
25
|
-
export { DomainsRegisterRequest, DomainsRegisterResponse } from "@/services/domains/register";
|
|
26
|
-
export { DomainsDeleteRequest, DomainsDeleteResponse } from "@/services/domains/delete";
|
|
27
|
-
export default Contiguity;
|
|
1
|
+
export { Contiguity } from "./client.js";
|
|
2
|
+
export type { ContiguityConfig } from "./client.js";
|
|
3
|
+
export { ContiguityError } from "./utils/errors.js";
|
|
4
|
+
export { verifyWebhookSignature } from "./webhook/verify.js";
|
|
5
|
+
export { parseWebhookPayload } from "./webhook/parse.js";
|
|
6
|
+
export type { ResponseMetadata } from "./types/responses.js";
|
|
7
|
+
export type { WebhookEventBase, WebhookEventType } from "./types/webhooks.js";
|
|
8
|
+
export type { TextSendParams, TextReactParams } from "./schemas/text.js";
|
|
9
|
+
export type { EmailSendParams } from "./schemas/email.js";
|
|
10
|
+
export type { OtpNewParams, OtpVerifyParams, OtpResendParams, OtpReverseInitiateParams } from "./schemas/otp.js";
|
|
11
|
+
export type { ImessageSendParams, ImessageTypingParams, ImessageReactParams, ImessageReadParams, } from "./schemas/imessage.js";
|
|
12
|
+
export type { WhatsappSendParams, WhatsappTypingParams, WhatsappReactParams } from "./schemas/whatsapp.js";
|
|
13
|
+
export type { ConversationHistoryParams } from "./schemas/conversations.js";
|
|
28
14
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACjH,YAAY,EACR,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GACrB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC3G,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC"}
|