contiguity 0.0.9 → 0.1.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/LICENSE.md +8 -0
- package/dist/.DS_Store +0 -0
- package/dist/client/fetch.d.ts +25 -0
- package/dist/client/fetch.d.ts.map +1 -0
- package/dist/client/fetch.js +85 -0
- package/dist/contiguity.d.ts +81 -0
- package/dist/contiguity.d.ts.map +1 -0
- package/dist/contiguity.js +106 -0
- package/dist/index.d.ts +29 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12482 -4
- package/dist/services/domains/delete.d.ts +28 -0
- package/dist/services/domains/delete.d.ts.map +1 -0
- package/dist/services/domains/delete.js +37 -0
- package/dist/services/domains/get.d.ts +98 -0
- package/dist/services/domains/get.d.ts.map +1 -0
- package/dist/services/domains/get.js +89 -0
- package/dist/services/domains/index.d.ts +34 -0
- package/dist/services/domains/index.d.ts.map +1 -0
- package/dist/services/domains/index.js +37 -0
- package/dist/services/domains/list.d.ts +36 -0
- package/dist/services/domains/list.d.ts.map +1 -0
- package/dist/services/domains/list.js +42 -0
- package/dist/services/domains/register.d.ts +67 -0
- package/dist/services/domains/register.d.ts.map +1 -0
- package/dist/services/domains/register.js +67 -0
- package/dist/services/email/index.d.ts +17 -0
- package/dist/services/email/index.d.ts.map +1 -0
- package/dist/services/email/index.js +16 -0
- package/dist/services/email/send.d.ts +66 -0
- package/dist/services/email/send.d.ts.map +1 -0
- package/dist/services/email/send.js +78 -0
- package/dist/services/imessage/available.d.ts +14 -0
- package/dist/services/imessage/available.d.ts.map +1 -0
- package/dist/services/imessage/available.js +23 -0
- package/dist/services/imessage/index.d.ts +31 -0
- package/dist/services/imessage/index.d.ts.map +1 -0
- package/dist/services/imessage/index.js +30 -0
- package/dist/services/imessage/send.d.ts +57 -0
- package/dist/services/imessage/send.d.ts.map +1 -0
- package/dist/services/imessage/send.js +60 -0
- package/dist/services/imessage/typing.d.ts +40 -0
- package/dist/services/imessage/typing.d.ts.map +1 -0
- package/dist/services/imessage/typing.js +49 -0
- package/dist/services/lease/available.d.ts +193 -0
- package/dist/services/lease/available.d.ts.map +1 -0
- package/dist/services/lease/available.js +103 -0
- package/dist/services/lease/configure.d.ts +38 -0
- package/dist/services/lease/configure.d.ts.map +1 -0
- package/dist/services/lease/configure.js +40 -0
- package/dist/services/lease/create.d.ts +108 -0
- package/dist/services/lease/create.d.ts.map +1 -0
- package/dist/services/lease/create.js +78 -0
- package/dist/services/lease/details.d.ts +133 -0
- package/dist/services/lease/details.d.ts.map +1 -0
- package/dist/services/lease/details.js +65 -0
- package/dist/services/lease/get.d.ts +96 -0
- package/dist/services/lease/get.d.ts.map +1 -0
- package/dist/services/lease/get.js +68 -0
- package/dist/services/lease/index.d.ts +57 -0
- package/dist/services/lease/index.d.ts.map +1 -0
- package/dist/services/lease/index.js +58 -0
- package/dist/services/lease/leased.d.ts +228 -0
- package/dist/services/lease/leased.d.ts.map +1 -0
- package/dist/services/lease/leased.js +108 -0
- package/dist/services/lease/terminate.d.ts +71 -0
- package/dist/services/lease/terminate.d.ts.map +1 -0
- package/dist/services/lease/terminate.js +78 -0
- package/dist/services/otp/index.d.ts +33 -0
- package/dist/services/otp/index.d.ts.map +1 -0
- package/dist/services/otp/index.js +37 -0
- package/dist/services/otp/new.d.ts +29 -0
- package/dist/services/otp/new.d.ts.map +1 -0
- package/dist/services/otp/new.js +44 -0
- package/dist/services/otp/resend.d.ts +22 -0
- package/dist/services/otp/resend.d.ts.map +1 -0
- package/dist/services/otp/resend.js +31 -0
- package/dist/services/otp/send.d.ts +26 -0
- package/dist/services/otp/send.d.ts.map +1 -0
- package/dist/services/otp/send.js +38 -0
- package/dist/services/otp/verify.d.ts +24 -0
- package/dist/services/otp/verify.d.ts.map +1 -0
- package/dist/services/otp/verify.js +34 -0
- package/dist/services/text/index.d.ts +17 -0
- package/dist/services/text/index.d.ts.map +1 -0
- package/dist/services/text/index.js +16 -0
- package/dist/services/text/send.d.ts +25 -0
- package/dist/services/text/send.d.ts.map +1 -0
- package/dist/services/text/send.js +37 -0
- package/dist/services/whatsapp/index.d.ts +24 -0
- package/dist/services/whatsapp/index.d.ts.map +1 -0
- package/dist/services/whatsapp/index.js +23 -0
- package/dist/services/whatsapp/send.d.ts +57 -0
- package/dist/services/whatsapp/send.d.ts.map +1 -0
- package/dist/services/whatsapp/send.js +60 -0
- package/dist/services/whatsapp/typing.d.ts +40 -0
- package/dist/services/whatsapp/typing.d.ts.map +1 -0
- package/dist/services/whatsapp/typing.js +49 -0
- package/dist/types/base.d.ts +17 -0
- package/dist/types/base.d.ts.map +1 -0
- package/dist/types/base.js +20 -0
- package/dist/types/common.d.ts +56 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +48 -0
- package/dist/types/error.d.ts +37 -0
- package/dist/types/error.d.ts.map +1 -0
- package/dist/types/error.js +54 -0
- package/dist/types/metadata.d.ts +10 -0
- package/dist/types/metadata.d.ts.map +1 -0
- package/dist/types/response.d.ts +10 -0
- package/dist/types/response.d.ts.map +1 -0
- package/dist/types/response.js +10 -0
- package/dist/utils/parse.d.ts +8 -0
- package/dist/utils/parse.d.ts.map +1 -0
- package/dist/utils/parse.js +36 -0
- package/dist/utils/request.d.ts +5 -27
- package/dist/utils/request.d.ts.map +1 -1
- package/dist/utils/request.js +45 -39
- package/package.json +33 -30
- package/dist/cjs/client.d.ts +0 -27
- package/dist/cjs/client.d.ts.map +0 -1
- package/dist/cjs/client.js +0 -43
- package/dist/cjs/index.d.ts +0 -13
- package/dist/cjs/index.d.ts.map +0 -1
- package/dist/cjs/index.js +0 -11
- package/dist/cjs/resources/conversations.d.ts +0 -30
- package/dist/cjs/resources/conversations.d.ts.map +0 -1
- package/dist/cjs/resources/conversations.js +0 -24
- package/dist/cjs/resources/domains.d.ts +0 -39
- package/dist/cjs/resources/domains.d.ts.map +0 -1
- package/dist/cjs/resources/domains.js +0 -28
- package/dist/cjs/resources/email.d.ts +0 -17
- package/dist/cjs/resources/email.d.ts.map +0 -1
- package/dist/cjs/resources/email.js +0 -19
- package/dist/cjs/resources/imessage.d.ts +0 -49
- package/dist/cjs/resources/imessage.d.ts.map +0 -1
- package/dist/cjs/resources/imessage.js +0 -42
- package/dist/cjs/resources/lease.d.ts +0 -55
- package/dist/cjs/resources/lease.d.ts.map +0 -1
- package/dist/cjs/resources/lease.js +0 -34
- package/dist/cjs/resources/otp.d.ts +0 -63
- package/dist/cjs/resources/otp.d.ts.map +0 -1
- package/dist/cjs/resources/otp.js +0 -48
- package/dist/cjs/resources/text.d.ts +0 -17
- package/dist/cjs/resources/text.d.ts.map +0 -1
- package/dist/cjs/resources/text.js +0 -19
- package/dist/cjs/resources/voice.d.ts +0 -129
- package/dist/cjs/resources/voice.d.ts.map +0 -1
- package/dist/cjs/resources/voice.js +0 -95
- package/dist/cjs/resources/webhook.d.ts +0 -21
- package/dist/cjs/resources/webhook.d.ts.map +0 -1
- package/dist/cjs/resources/webhook.js +0 -47
- package/dist/cjs/resources/whatsapp.d.ts +0 -33
- package/dist/cjs/resources/whatsapp.d.ts.map +0 -1
- package/dist/cjs/resources/whatsapp.js +0 -32
- package/dist/cjs/schemas/conversations.d.ts +0 -5
- package/dist/cjs/schemas/conversations.d.ts.map +0 -1
- package/dist/cjs/schemas/conversations.js +0 -5
- package/dist/cjs/schemas/domains.d.ts +0 -7
- package/dist/cjs/schemas/domains.d.ts.map +0 -1
- package/dist/cjs/schemas/domains.js +0 -10
- package/dist/cjs/schemas/email.d.ts +0 -16
- package/dist/cjs/schemas/email.d.ts.map +0 -1
- package/dist/cjs/schemas/email.js +0 -16
- package/dist/cjs/schemas/imessage.d.ts +0 -25
- package/dist/cjs/schemas/imessage.d.ts.map +0 -1
- package/dist/cjs/schemas/imessage.js +0 -25
- package/dist/cjs/schemas/index.d.ts +0 -10
- package/dist/cjs/schemas/index.d.ts.map +0 -1
- package/dist/cjs/schemas/index.js +0 -25
- package/dist/cjs/schemas/leases.d.ts +0 -9
- package/dist/cjs/schemas/leases.d.ts.map +0 -1
- package/dist/cjs/schemas/leases.js +0 -9
- package/dist/cjs/schemas/otp.d.ts +0 -25
- package/dist/cjs/schemas/otp.d.ts.map +0 -1
- package/dist/cjs/schemas/otp.js +0 -16
- package/dist/cjs/schemas/text.d.ts +0 -9
- package/dist/cjs/schemas/text.d.ts.map +0 -1
- package/dist/cjs/schemas/text.js +0 -12
- package/dist/cjs/schemas/voice.d.ts +0 -5
- package/dist/cjs/schemas/voice.d.ts.map +0 -1
- package/dist/cjs/schemas/voice.js +0 -5
- package/dist/cjs/schemas/whatsapp.d.ts +0 -25
- package/dist/cjs/schemas/whatsapp.d.ts.map +0 -1
- package/dist/cjs/schemas/whatsapp.js +0 -25
- package/dist/cjs/types/index.d.ts +0 -3
- package/dist/cjs/types/index.d.ts.map +0 -1
- package/dist/cjs/types/index.js +0 -18
- package/dist/cjs/types/responses.d.ts +0 -8
- package/dist/cjs/types/responses.d.ts.map +0 -1
- package/dist/cjs/types/responses.js +0 -2
- package/dist/cjs/types/webhooks.d.ts +0 -10
- package/dist/cjs/types/webhooks.d.ts.map +0 -1
- package/dist/cjs/types/webhooks.js +0 -2
- package/dist/cjs/utils/errors.d.ts +0 -6
- package/dist/cjs/utils/errors.d.ts.map +0 -1
- package/dist/cjs/utils/errors.js +0 -15
- package/dist/cjs/utils/request.d.ts +0 -27
- package/dist/cjs/utils/request.d.ts.map +0 -1
- package/dist/cjs/utils/request.js +0 -36
- package/dist/cjs/utils/response.d.ts +0 -12
- package/dist/cjs/utils/response.d.ts.map +0 -1
- package/dist/cjs/utils/response.js +0 -12
- package/dist/cjs/webhook/parse.d.ts +0 -6
- package/dist/cjs/webhook/parse.d.ts.map +0 -1
- package/dist/cjs/webhook/parse.js +0 -14
- package/dist/cjs/webhook/verify.d.ts +0 -6
- package/dist/cjs/webhook/verify.d.ts.map +0 -1
- package/dist/cjs/webhook/verify.js +0 -39
- package/dist/client.d.ts +0 -27
- package/dist/client.d.ts.map +0 -1
- package/dist/client.js +0 -50
- package/dist/esm/client.d.ts +0 -27
- package/dist/esm/client.d.ts.map +0 -1
- package/dist/esm/client.js +0 -39
- package/dist/esm/index.d.ts +0 -13
- package/dist/esm/index.d.ts.map +0 -1
- package/dist/esm/index.js +0 -4
- package/dist/esm/resources/conversations.d.ts +0 -30
- package/dist/esm/resources/conversations.d.ts.map +0 -1
- package/dist/esm/resources/conversations.js +0 -20
- package/dist/esm/resources/domains.d.ts +0 -39
- package/dist/esm/resources/domains.d.ts.map +0 -1
- package/dist/esm/resources/domains.js +0 -24
- package/dist/esm/resources/email.d.ts +0 -17
- package/dist/esm/resources/email.d.ts.map +0 -1
- package/dist/esm/resources/email.js +0 -15
- package/dist/esm/resources/imessage.d.ts +0 -49
- package/dist/esm/resources/imessage.d.ts.map +0 -1
- package/dist/esm/resources/imessage.js +0 -38
- package/dist/esm/resources/lease.d.ts +0 -55
- package/dist/esm/resources/lease.d.ts.map +0 -1
- package/dist/esm/resources/lease.js +0 -30
- package/dist/esm/resources/otp.d.ts +0 -63
- package/dist/esm/resources/otp.d.ts.map +0 -1
- package/dist/esm/resources/otp.js +0 -44
- package/dist/esm/resources/text.d.ts +0 -17
- package/dist/esm/resources/text.d.ts.map +0 -1
- package/dist/esm/resources/text.js +0 -15
- package/dist/esm/resources/voice.d.ts +0 -129
- package/dist/esm/resources/voice.d.ts.map +0 -1
- package/dist/esm/resources/voice.js +0 -91
- package/dist/esm/resources/webhook.d.ts +0 -21
- package/dist/esm/resources/webhook.d.ts.map +0 -1
- package/dist/esm/resources/webhook.js +0 -43
- package/dist/esm/resources/whatsapp.d.ts +0 -33
- package/dist/esm/resources/whatsapp.d.ts.map +0 -1
- package/dist/esm/resources/whatsapp.js +0 -28
- package/dist/esm/schemas/conversations.d.ts +0 -5
- package/dist/esm/schemas/conversations.d.ts.map +0 -1
- package/dist/esm/schemas/conversations.js +0 -2
- package/dist/esm/schemas/domains.d.ts +0 -7
- package/dist/esm/schemas/domains.d.ts.map +0 -1
- package/dist/esm/schemas/domains.js +0 -7
- package/dist/esm/schemas/email.d.ts +0 -16
- package/dist/esm/schemas/email.d.ts.map +0 -1
- package/dist/esm/schemas/email.js +0 -13
- package/dist/esm/schemas/imessage.d.ts +0 -25
- package/dist/esm/schemas/imessage.d.ts.map +0 -1
- package/dist/esm/schemas/imessage.js +0 -22
- package/dist/esm/schemas/index.d.ts +0 -10
- package/dist/esm/schemas/index.d.ts.map +0 -1
- package/dist/esm/schemas/index.js +0 -9
- package/dist/esm/schemas/leases.d.ts +0 -9
- package/dist/esm/schemas/leases.d.ts.map +0 -1
- package/dist/esm/schemas/leases.js +0 -6
- package/dist/esm/schemas/otp.d.ts +0 -25
- package/dist/esm/schemas/otp.d.ts.map +0 -1
- package/dist/esm/schemas/otp.js +0 -13
- package/dist/esm/schemas/text.d.ts +0 -9
- package/dist/esm/schemas/text.d.ts.map +0 -1
- package/dist/esm/schemas/text.js +0 -9
- package/dist/esm/schemas/voice.d.ts +0 -5
- package/dist/esm/schemas/voice.d.ts.map +0 -1
- package/dist/esm/schemas/voice.js +0 -2
- package/dist/esm/schemas/whatsapp.d.ts +0 -25
- package/dist/esm/schemas/whatsapp.d.ts.map +0 -1
- package/dist/esm/schemas/whatsapp.js +0 -22
- package/dist/esm/types/index.d.ts +0 -3
- package/dist/esm/types/index.d.ts.map +0 -1
- package/dist/esm/types/index.js +0 -2
- package/dist/esm/types/responses.d.ts +0 -8
- package/dist/esm/types/responses.d.ts.map +0 -1
- package/dist/esm/types/webhooks.d.ts +0 -10
- package/dist/esm/types/webhooks.d.ts.map +0 -1
- package/dist/esm/types/webhooks.js +0 -1
- package/dist/esm/utils/errors.d.ts +0 -6
- package/dist/esm/utils/errors.d.ts.map +0 -1
- package/dist/esm/utils/errors.js +0 -11
- package/dist/esm/utils/request.d.ts +0 -27
- package/dist/esm/utils/request.d.ts.map +0 -1
- package/dist/esm/utils/request.js +0 -33
- package/dist/esm/utils/response.d.ts +0 -12
- package/dist/esm/utils/response.d.ts.map +0 -1
- package/dist/esm/utils/response.js +0 -9
- package/dist/esm/webhook/parse.d.ts +0 -6
- package/dist/esm/webhook/parse.d.ts.map +0 -1
- package/dist/esm/webhook/parse.js +0 -11
- package/dist/esm/webhook/verify.d.ts +0 -6
- package/dist/esm/webhook/verify.d.ts.map +0 -1
- package/dist/esm/webhook/verify.js +0 -36
- package/dist/resources/agreements.d.ts +0 -14
- package/dist/resources/agreements.d.ts.map +0 -1
- package/dist/resources/agreements.js +0 -10
- package/dist/resources/conversations.d.ts +0 -31
- package/dist/resources/conversations.d.ts.map +0 -1
- package/dist/resources/conversations.js +0 -21
- package/dist/resources/domains.d.ts +0 -39
- package/dist/resources/domains.d.ts.map +0 -1
- package/dist/resources/domains.js +0 -24
- package/dist/resources/email.d.ts +0 -17
- package/dist/resources/email.d.ts.map +0 -1
- package/dist/resources/email.js +0 -15
- package/dist/resources/entitlements.d.ts +0 -38
- package/dist/resources/entitlements.d.ts.map +0 -1
- package/dist/resources/entitlements.js +0 -19
- package/dist/resources/identity.d.ts +0 -56
- package/dist/resources/identity.d.ts.map +0 -1
- package/dist/resources/identity.js +0 -43
- package/dist/resources/imessage.d.ts +0 -70
- package/dist/resources/imessage.d.ts.map +0 -1
- package/dist/resources/imessage.js +0 -55
- package/dist/resources/lease.d.ts +0 -55
- package/dist/resources/lease.d.ts.map +0 -1
- package/dist/resources/lease.js +0 -30
- package/dist/resources/otp.d.ts +0 -63
- package/dist/resources/otp.d.ts.map +0 -1
- package/dist/resources/otp.js +0 -44
- package/dist/resources/product.d.ts +0 -23
- package/dist/resources/product.d.ts.map +0 -1
- package/dist/resources/product.js +0 -19
- package/dist/resources/text.d.ts +0 -56
- package/dist/resources/text.d.ts.map +0 -1
- package/dist/resources/text.js +0 -41
- package/dist/resources/voice.d.ts +0 -129
- package/dist/resources/voice.d.ts.map +0 -1
- package/dist/resources/voice.js +0 -91
- package/dist/resources/webhook.d.ts +0 -21
- package/dist/resources/webhook.d.ts.map +0 -1
- package/dist/resources/webhook.js +0 -43
- package/dist/resources/whatsapp.d.ts +0 -45
- package/dist/resources/whatsapp.d.ts.map +0 -1
- package/dist/resources/whatsapp.js +0 -39
- package/dist/schemas/conversations.d.ts +0 -8
- package/dist/schemas/conversations.d.ts.map +0 -1
- package/dist/schemas/conversations.js +0 -8
- package/dist/schemas/domains.d.ts +0 -7
- package/dist/schemas/domains.d.ts.map +0 -1
- package/dist/schemas/domains.js +0 -7
- package/dist/schemas/email.d.ts +0 -16
- package/dist/schemas/email.d.ts.map +0 -1
- package/dist/schemas/email.js +0 -22
- package/dist/schemas/imessage.d.ts +0 -45
- package/dist/schemas/imessage.d.ts.map +0 -1
- package/dist/schemas/imessage.js +0 -37
- package/dist/schemas/index.d.ts +0 -10
- package/dist/schemas/index.d.ts.map +0 -1
- package/dist/schemas/index.js +0 -9
- package/dist/schemas/leases.d.ts +0 -9
- package/dist/schemas/leases.d.ts.map +0 -1
- package/dist/schemas/leases.js +0 -6
- package/dist/schemas/otp.d.ts +0 -25
- package/dist/schemas/otp.d.ts.map +0 -1
- package/dist/schemas/otp.js +0 -13
- package/dist/schemas/product.d.ts +0 -12
- package/dist/schemas/product.d.ts.map +0 -1
- package/dist/schemas/product.js +0 -9
- package/dist/schemas/text.d.ts +0 -25
- package/dist/schemas/text.d.ts.map +0 -1
- package/dist/schemas/text.js +0 -19
- package/dist/schemas/voice.d.ts +0 -5
- package/dist/schemas/voice.d.ts.map +0 -1
- package/dist/schemas/voice.js +0 -2
- package/dist/schemas/whatsapp.d.ts +0 -32
- package/dist/schemas/whatsapp.d.ts.map +0 -1
- package/dist/schemas/whatsapp.js +0 -30
- package/dist/types/index.d.ts +0 -3
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -2
- package/dist/types/responses.d.ts +0 -8
- package/dist/types/responses.d.ts.map +0 -1
- package/dist/types/responses.js +0 -1
- package/dist/types/webhooks.d.ts +0 -48
- package/dist/types/webhooks.d.ts.map +0 -1
- package/dist/types/webhooks.js +0 -1
- package/dist/utils/errors.d.ts +0 -10
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js +0 -13
- package/dist/utils/normalize.d.ts +0 -13
- package/dist/utils/normalize.d.ts.map +0 -1
- package/dist/utils/normalize.js +0 -25
- package/dist/utils/response.d.ts +0 -12
- package/dist/utils/response.d.ts.map +0 -1
- package/dist/utils/response.js +0 -9
- package/dist/webhook/parse.d.ts +0 -6
- package/dist/webhook/parse.d.ts.map +0 -1
- package/dist/webhook/parse.js +0 -11
- package/dist/webhook/verify.d.ts +0 -6
- package/dist/webhook/verify.d.ts.map +0 -1
- package/dist/webhook/verify.js +0 -36
- /package/dist/{esm/types/responses.js → types/metadata.js} +0 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { SingleOrMultipleEmails } from "@/types/common";
|
|
3
|
+
export const EmailSendRequest = z.object({
|
|
4
|
+
/** Recipient email address(es). Can be a string or array of up to 10 addresses */
|
|
5
|
+
to: SingleOrMultipleEmails(10, "email"),
|
|
6
|
+
/** Provide either just your sender name (and use Contiguity's email) or provide your sender name and email (has to be verified in the Console) */
|
|
7
|
+
from: z.string().min(1, "From field cannot be empty"),
|
|
8
|
+
/** Subject of the email */
|
|
9
|
+
subject: z.string().min(1, "Subject cannot be empty"),
|
|
10
|
+
/** Email body content */
|
|
11
|
+
body: z.object({
|
|
12
|
+
/** Text content of the email */
|
|
13
|
+
text: z.string().optional(),
|
|
14
|
+
/** HTML content of the email */
|
|
15
|
+
html: z.string().optional()
|
|
16
|
+
}).refine((data) => data.text || data.html, "Either text or html content must be provided"),
|
|
17
|
+
/** Reply-to email address */
|
|
18
|
+
reply_to: z.string().email("Must be a valid email address").optional(),
|
|
19
|
+
/** Carbon copy email address(es). Can be a string or array of up to 10 addresses */
|
|
20
|
+
cc: SingleOrMultipleEmails(10, "email").optional(),
|
|
21
|
+
/** Blind carbon copy email address(es). Can be a string or array of up to 10 addresses */
|
|
22
|
+
bcc: SingleOrMultipleEmails(10, "email").optional(),
|
|
23
|
+
/** Custom email headers */
|
|
24
|
+
headers: z.array(z.object({
|
|
25
|
+
/** Header name */
|
|
26
|
+
name: z.string().min(1, "Header name cannot be empty"),
|
|
27
|
+
/** Header value */
|
|
28
|
+
value: z.string().min(1, "Header value cannot be empty")
|
|
29
|
+
})).optional()
|
|
30
|
+
});
|
|
31
|
+
export const EmailResponse = z.object({
|
|
32
|
+
email_id: z.string(),
|
|
33
|
+
});
|
|
34
|
+
/**
|
|
35
|
+
* Sends an email
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* const response = await contiguity.email.send({
|
|
40
|
+
* to: "recipient@example.com",
|
|
41
|
+
* from: "Contiguity <no-reply@contiguity.com>",
|
|
42
|
+
* subject: "Hello from Contiguity!",
|
|
43
|
+
* body: {
|
|
44
|
+
* text: "Hello, world!",
|
|
45
|
+
* html: "<p>Hello, world!</p>"
|
|
46
|
+
* }
|
|
47
|
+
* });
|
|
48
|
+
* console.log(`Email ID: ${response.email_id}`);
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @example
|
|
52
|
+
* ```typescript
|
|
53
|
+
* // Send to multiple recipients with CC and BCC
|
|
54
|
+
* const response = await contiguity.email.send({
|
|
55
|
+
* to: ["user1@example.com", "user2@example.com"],
|
|
56
|
+
* from: "Your Company <no-reply@yourcompany.com>",
|
|
57
|
+
* subject: "Newsletter Update",
|
|
58
|
+
* body: {
|
|
59
|
+
* html: "<h1>Newsletter</h1><p>Latest updates...</p>"
|
|
60
|
+
* },
|
|
61
|
+
* cc: "manager@example.com",
|
|
62
|
+
* bcc: ["analytics@company.com"],
|
|
63
|
+
* reply_to: "support@yourcompany.com"
|
|
64
|
+
* });
|
|
65
|
+
* console.log(`Email ID: ${response.email_id}`);
|
|
66
|
+
* ```
|
|
67
|
+
*/
|
|
68
|
+
export async function _emailSend(params) {
|
|
69
|
+
const validatedParams = EmailSendRequest.parse(params);
|
|
70
|
+
const response = await this.request("/email", {
|
|
71
|
+
method: "POST",
|
|
72
|
+
body: JSON.stringify(validatedParams),
|
|
73
|
+
});
|
|
74
|
+
return this.parse({
|
|
75
|
+
response,
|
|
76
|
+
schema: EmailResponse
|
|
77
|
+
});
|
|
78
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const iMessageAvailableRequest: z.ZodObject<{
|
|
3
|
+
to: z.ZodString;
|
|
4
|
+
}, z.core.$strip>;
|
|
5
|
+
export declare const iMessageAvailableResponse: z.ZodObject<{
|
|
6
|
+
available: z.ZodBoolean;
|
|
7
|
+
}, z.core.$strip>;
|
|
8
|
+
export type iMessageAvailableParams = z.infer<typeof iMessageAvailableRequest>;
|
|
9
|
+
export type iMessageAvailableResponseType = z.infer<typeof iMessageAvailableResponse>;
|
|
10
|
+
/**
|
|
11
|
+
* Check if a phone number supports iMessage
|
|
12
|
+
*/
|
|
13
|
+
export declare function _iMessageAvailable(this: any, params: iMessageAvailableParams): Promise<any>;
|
|
14
|
+
//# sourceMappingURL=available.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"available.d.ts","sourceRoot":"","sources":["../../../src/services/imessage/available.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,wBAAwB;;iBAGnC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;iBAGpC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC/E,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAEtF;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,GAAG,CAAC,CAUjG"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { E164PhoneNumber } from "@/types/common";
|
|
3
|
+
export const iMessageAvailableRequest = z.object({
|
|
4
|
+
/** Phone number to check. Must be in E.164 format */
|
|
5
|
+
to: E164PhoneNumber
|
|
6
|
+
});
|
|
7
|
+
export const iMessageAvailableResponse = z.object({
|
|
8
|
+
/** Whether the number supports iMessage */
|
|
9
|
+
available: z.boolean()
|
|
10
|
+
});
|
|
11
|
+
/**
|
|
12
|
+
* Check if a phone number supports iMessage
|
|
13
|
+
*/
|
|
14
|
+
export async function _iMessageAvailable(params) {
|
|
15
|
+
const validatedParams = iMessageAvailableRequest.parse(params);
|
|
16
|
+
const response = await this.request(`/conversations/availability/imessage/${encodeURIComponent(validatedParams.to)}`, {
|
|
17
|
+
method: "GET"
|
|
18
|
+
});
|
|
19
|
+
return this.parse({
|
|
20
|
+
response,
|
|
21
|
+
schema: iMessageAvailableResponse
|
|
22
|
+
});
|
|
23
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ContiguityClient } from "@/client/fetch";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import { iMessageSendRequest, iMessageResponse } from "@/services/imessage/send";
|
|
4
|
+
import { iMessageTypingRequest, iMessageTypingResponse } from "@/services/imessage/typing";
|
|
5
|
+
import { iMessageAvailableRequest, iMessageAvailableResponse } from "@/services/imessage/available";
|
|
6
|
+
import type { WithMetadata } from "@/types/metadata";
|
|
7
|
+
export type iMessageSendParams = z.infer<typeof iMessageSendRequest>;
|
|
8
|
+
export type iMessageSendResponse = z.infer<typeof iMessageResponse>;
|
|
9
|
+
export type iMessageTypingParams = z.infer<typeof iMessageTypingRequest>;
|
|
10
|
+
export type iMessageTypingResponseType = z.infer<typeof iMessageTypingResponse>;
|
|
11
|
+
export type iMessageAvailableParams = z.infer<typeof iMessageAvailableRequest>;
|
|
12
|
+
export type iMessageAvailableResponseType = z.infer<typeof iMessageAvailableResponse>;
|
|
13
|
+
/**
|
|
14
|
+
* iMessage service for sending iMessages and managing typing indicators
|
|
15
|
+
*/
|
|
16
|
+
export declare class iMessageService extends ContiguityClient {
|
|
17
|
+
constructor(token: string);
|
|
18
|
+
/**
|
|
19
|
+
* Send an iMessage
|
|
20
|
+
*/
|
|
21
|
+
send(params: iMessageSendParams): Promise<WithMetadata<iMessageSendResponse>>;
|
|
22
|
+
/**
|
|
23
|
+
* Start or stop sending typing indicators over iMessage
|
|
24
|
+
*/
|
|
25
|
+
typing(params: iMessageTypingParams): Promise<WithMetadata<iMessageTypingResponseType>>;
|
|
26
|
+
/**
|
|
27
|
+
* Check if a phone number supports iMessage
|
|
28
|
+
*/
|
|
29
|
+
availability(params: iMessageAvailableParams): Promise<WithMetadata<iMessageAvailableResponseType>>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/imessage/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIlD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACH,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AACpG,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACrE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACzE,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAChF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAC/E,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAEtF;;GAEG;AACH,qBAAa,eAAgB,SAAQ,gBAAgB;gBACrC,KAAK,EAAE,MAAM;IAIzB;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;IAInF;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC;IAI7F;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,YAAY,CAAC,6BAA6B,CAAC,CAAC;CAG5G"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { ContiguityClient } from "@/client/fetch";
|
|
2
|
+
import { _iMessageSend } from "@/services/imessage/send";
|
|
3
|
+
import { _iMessageTyping } from "@/services/imessage/typing";
|
|
4
|
+
import { _iMessageAvailable } from "@/services/imessage/available";
|
|
5
|
+
/**
|
|
6
|
+
* iMessage service for sending iMessages and managing typing indicators
|
|
7
|
+
*/
|
|
8
|
+
export class iMessageService extends ContiguityClient {
|
|
9
|
+
constructor(token) {
|
|
10
|
+
super(token);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Send an iMessage
|
|
14
|
+
*/
|
|
15
|
+
async send(params) {
|
|
16
|
+
return _iMessageSend.call(this, params);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Start or stop sending typing indicators over iMessage
|
|
20
|
+
*/
|
|
21
|
+
async typing(params) {
|
|
22
|
+
return _iMessageTyping.call(this, params);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Check if a phone number supports iMessage
|
|
26
|
+
*/
|
|
27
|
+
async availability(params) {
|
|
28
|
+
return _iMessageAvailable.call(this, params);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const iMessageSendRequest: z.ZodObject<{
|
|
3
|
+
to: z.ZodString;
|
|
4
|
+
from: z.ZodOptional<z.ZodString>;
|
|
5
|
+
message: z.ZodString;
|
|
6
|
+
fallback: z.ZodOptional<z.ZodObject<{
|
|
7
|
+
when: z.ZodArray<z.ZodEnum<{
|
|
8
|
+
imessage: "imessage";
|
|
9
|
+
imessage_unsupported: "imessage_unsupported";
|
|
10
|
+
imessage_fails: "imessage_fails";
|
|
11
|
+
}>>;
|
|
12
|
+
from: z.ZodOptional<z.ZodString>;
|
|
13
|
+
}, z.core.$strip>>;
|
|
14
|
+
attachments: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
export declare const iMessageResponse: z.ZodObject<{
|
|
17
|
+
message_id: z.ZodString;
|
|
18
|
+
}, z.core.$strip>;
|
|
19
|
+
export type iMessageFallbackParams = {
|
|
20
|
+
when: ("imessage_unsupported" | "imessage_fails")[];
|
|
21
|
+
from?: string;
|
|
22
|
+
};
|
|
23
|
+
export type iMessageSendParams = z.infer<typeof iMessageSendRequest>;
|
|
24
|
+
export type iMessageSendResponse = z.infer<typeof iMessageResponse>;
|
|
25
|
+
/**
|
|
26
|
+
* Sends an iMessage
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* const response = await contiguity.imessage.send({
|
|
31
|
+
* to: "+1234567890",
|
|
32
|
+
* message: "Hello from Contiguity!"
|
|
33
|
+
* });
|
|
34
|
+
* console.log(`Message ID: ${response.message_id}`);
|
|
35
|
+
* ```
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* // Send with fallback to SMS and attachments
|
|
40
|
+
* const response = await contiguity.imessage.send({
|
|
41
|
+
* to: "+1234567890",
|
|
42
|
+
* from: "+15555555555",
|
|
43
|
+
* message: "Check out this image!",
|
|
44
|
+
* fallback: {
|
|
45
|
+
* when: ["imessage_unsupported", "imessage_fails"],
|
|
46
|
+
* from: "+15555555555"
|
|
47
|
+
* },
|
|
48
|
+
* attachments: [
|
|
49
|
+
* "https://example.com/image.png",
|
|
50
|
+
* "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34..."
|
|
51
|
+
* ]
|
|
52
|
+
* });
|
|
53
|
+
* console.log(`Message ID: ${response.message_id}`);
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
export declare function _iMessageSend(this: any, params: iMessageSendParams): Promise<any>;
|
|
57
|
+
//# sourceMappingURL=send.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"send.d.ts","sourceRoot":"","sources":["../../../src/services/imessage/send.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;iBAW9B,CAAA;AAEF,eAAO,MAAM,gBAAgB;;iBAG3B,CAAA;AAKF,MAAM,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,CAAC,sBAAsB,GAAG,gBAAgB,CAAC,EAAE,CAAC;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AACrE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,CAWvF"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { E164PhoneNumber, OptionalSenderNumber, MessageContent, AttachmentList, createFallbackSchema } from "@/types/common";
|
|
3
|
+
export const iMessageSendRequest = z.object({
|
|
4
|
+
/** Recipient's iMessage address. Must be in E.164 format */
|
|
5
|
+
to: E164PhoneNumber,
|
|
6
|
+
/** Your leased iMessage number. If none is provided, we will use a random iMessage number of yours */
|
|
7
|
+
from: OptionalSenderNumber,
|
|
8
|
+
/** The iMessage to send */
|
|
9
|
+
message: MessageContent,
|
|
10
|
+
/** Should Contiguity fallback to SMS/RCS if the recipient does not have iMessage, or if iMessage fails to send? */
|
|
11
|
+
fallback: createFallbackSchema("imessage", ["imessage_unsupported", "imessage_fails"]),
|
|
12
|
+
/** Attachments to send. Can be a URL to your attachment (e.g. example.com/image.png) or a base64 string. Max 10 attachments, with a cumulative size of 50MB */
|
|
13
|
+
attachments: AttachmentList
|
|
14
|
+
});
|
|
15
|
+
export const iMessageResponse = z.object({
|
|
16
|
+
/** The message's ID. Use it to refer to this message in the future, when checking the status of the message or finding it in the Console */
|
|
17
|
+
message_id: z.string(),
|
|
18
|
+
});
|
|
19
|
+
/**
|
|
20
|
+
* Sends an iMessage
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* const response = await contiguity.imessage.send({
|
|
25
|
+
* to: "+1234567890",
|
|
26
|
+
* message: "Hello from Contiguity!"
|
|
27
|
+
* });
|
|
28
|
+
* console.log(`Message ID: ${response.message_id}`);
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* // Send with fallback to SMS and attachments
|
|
34
|
+
* const response = await contiguity.imessage.send({
|
|
35
|
+
* to: "+1234567890",
|
|
36
|
+
* from: "+15555555555",
|
|
37
|
+
* message: "Check out this image!",
|
|
38
|
+
* fallback: {
|
|
39
|
+
* when: ["imessage_unsupported", "imessage_fails"],
|
|
40
|
+
* from: "+15555555555"
|
|
41
|
+
* },
|
|
42
|
+
* attachments: [
|
|
43
|
+
* "https://example.com/image.png",
|
|
44
|
+
* "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34..."
|
|
45
|
+
* ]
|
|
46
|
+
* });
|
|
47
|
+
* console.log(`Message ID: ${response.message_id}`);
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export async function _iMessageSend(params) {
|
|
51
|
+
const validatedParams = iMessageSendRequest.parse(params);
|
|
52
|
+
const response = await this.request("/send/imessage", {
|
|
53
|
+
method: "POST",
|
|
54
|
+
body: JSON.stringify(validatedParams),
|
|
55
|
+
});
|
|
56
|
+
return this.parse({
|
|
57
|
+
response,
|
|
58
|
+
schema: iMessageResponse
|
|
59
|
+
});
|
|
60
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const iMessageTypingRequest: z.ZodObject<{
|
|
3
|
+
to: z.ZodString;
|
|
4
|
+
from: z.ZodOptional<z.ZodString>;
|
|
5
|
+
action: z.ZodEnum<{
|
|
6
|
+
start: "start";
|
|
7
|
+
stop: "stop";
|
|
8
|
+
}>;
|
|
9
|
+
}, z.core.$strip>;
|
|
10
|
+
export declare const iMessageTypingResponse: z.ZodObject<{
|
|
11
|
+
status: z.ZodString;
|
|
12
|
+
}, z.core.$strip>;
|
|
13
|
+
export type iMessageTypingParams = z.infer<typeof iMessageTypingRequest>;
|
|
14
|
+
export type iMessageTypingResponseType = z.infer<typeof iMessageTypingResponse>;
|
|
15
|
+
/**
|
|
16
|
+
* Start or stop sending typing indicators over iMessage
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* // Start typing indicator
|
|
21
|
+
* const response = await contiguity.imessage.typing({
|
|
22
|
+
* to: "+1234567890",
|
|
23
|
+
* action: "start"
|
|
24
|
+
* });
|
|
25
|
+
* console.log(`Typing status: ${response.status}`);
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // Stop typing indicator with specific sender number
|
|
31
|
+
* const response = await contiguity.imessage.typing({
|
|
32
|
+
* to: "+1234567890",
|
|
33
|
+
* from: "+15555555555",
|
|
34
|
+
* action: "stop"
|
|
35
|
+
* });
|
|
36
|
+
* console.log(`Typing status: ${response.status}`);
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare function _iMessageTyping(this: any, params: iMessageTypingParams): Promise<any>;
|
|
40
|
+
//# sourceMappingURL=typing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typing.d.ts","sourceRoot":"","sources":["../../../src/services/imessage/typing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,qBAAqB;;;;;;;iBAOhC,CAAA;AAEF,eAAO,MAAM,sBAAsB;;iBAGjC,CAAA;AAKF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACzE,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEhF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,CAW3F"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { E164PhoneNumber, OptionalSenderNumber, TypingAction } from "@/types/common";
|
|
3
|
+
export const iMessageTypingRequest = z.object({
|
|
4
|
+
/** Recipient's iMessage address. Must be in E.164 format */
|
|
5
|
+
to: E164PhoneNumber,
|
|
6
|
+
/** Your leased iMessage number. If none is provided, we will use a random iMessage number of yours */
|
|
7
|
+
from: OptionalSenderNumber,
|
|
8
|
+
/** Whether to start or stop sending typing indicators */
|
|
9
|
+
action: TypingAction
|
|
10
|
+
});
|
|
11
|
+
export const iMessageTypingResponse = z.object({
|
|
12
|
+
/** Status of the typing indicator */
|
|
13
|
+
status: z.string(),
|
|
14
|
+
});
|
|
15
|
+
/**
|
|
16
|
+
* Start or stop sending typing indicators over iMessage
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* // Start typing indicator
|
|
21
|
+
* const response = await contiguity.imessage.typing({
|
|
22
|
+
* to: "+1234567890",
|
|
23
|
+
* action: "start"
|
|
24
|
+
* });
|
|
25
|
+
* console.log(`Typing status: ${response.status}`);
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // Stop typing indicator with specific sender number
|
|
31
|
+
* const response = await contiguity.imessage.typing({
|
|
32
|
+
* to: "+1234567890",
|
|
33
|
+
* from: "+15555555555",
|
|
34
|
+
* action: "stop"
|
|
35
|
+
* });
|
|
36
|
+
* console.log(`Typing status: ${response.status}`);
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export async function _iMessageTyping(params) {
|
|
40
|
+
const validatedParams = iMessageTypingRequest.parse(params);
|
|
41
|
+
const response = await this.request("/send/imessage/typing", {
|
|
42
|
+
method: "POST",
|
|
43
|
+
body: JSON.stringify(validatedParams),
|
|
44
|
+
});
|
|
45
|
+
return this.parse({
|
|
46
|
+
response,
|
|
47
|
+
schema: iMessageTypingResponse
|
|
48
|
+
});
|
|
49
|
+
}
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const NumberCapabilities: z.ZodObject<{
|
|
3
|
+
intl_sms: z.ZodBoolean;
|
|
4
|
+
channels: z.ZodArray<z.ZodEnum<{
|
|
5
|
+
sms: "sms";
|
|
6
|
+
mms: "mms";
|
|
7
|
+
rcs: "rcs";
|
|
8
|
+
imessage: "imessage";
|
|
9
|
+
whatsapp: "whatsapp";
|
|
10
|
+
}>>;
|
|
11
|
+
}, z.core.$strip>;
|
|
12
|
+
export declare const NumberHealth: z.ZodObject<{
|
|
13
|
+
reputation: z.ZodNumber;
|
|
14
|
+
previous_owners: z.ZodNumber;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
export declare const NumberLocation: z.ZodObject<{
|
|
17
|
+
country: z.ZodString;
|
|
18
|
+
region: z.ZodString;
|
|
19
|
+
city: z.ZodString;
|
|
20
|
+
}, z.core.$strip>;
|
|
21
|
+
export declare const NumberFormat: z.ZodObject<{
|
|
22
|
+
e164: z.ZodString;
|
|
23
|
+
formatted: z.ZodString;
|
|
24
|
+
}, z.core.$strip>;
|
|
25
|
+
export declare const NumberData: z.ZodObject<{
|
|
26
|
+
requirements: z.ZodArray<z.ZodEnum<{
|
|
27
|
+
imessage_entitlement_required: "imessage_entitlement_required";
|
|
28
|
+
whatsapp_entitlement_required: "whatsapp_entitlement_required";
|
|
29
|
+
enterprise_plan_required: "enterprise_plan_required";
|
|
30
|
+
}>>;
|
|
31
|
+
e911_capable: z.ZodBoolean;
|
|
32
|
+
}, z.core.$strip>;
|
|
33
|
+
export declare const NumberPricing: z.ZodObject<{
|
|
34
|
+
currency: z.ZodEnum<{
|
|
35
|
+
USD: "USD";
|
|
36
|
+
EUR: "EUR";
|
|
37
|
+
GBP: "GBP";
|
|
38
|
+
CAD: "CAD";
|
|
39
|
+
AUD: "AUD";
|
|
40
|
+
}>;
|
|
41
|
+
upfront_fee: z.ZodNumber;
|
|
42
|
+
monthly_rate: z.ZodNumber;
|
|
43
|
+
}, z.core.$strip>;
|
|
44
|
+
export declare const AvailableNumber: z.ZodObject<{
|
|
45
|
+
id: z.ZodString;
|
|
46
|
+
status: z.ZodEnum<{
|
|
47
|
+
available: "available";
|
|
48
|
+
"g-available": "g-available";
|
|
49
|
+
leased: "leased";
|
|
50
|
+
unavailable: "unavailable";
|
|
51
|
+
}>;
|
|
52
|
+
number: z.ZodObject<{
|
|
53
|
+
e164: z.ZodString;
|
|
54
|
+
formatted: z.ZodString;
|
|
55
|
+
}, z.core.$strip>;
|
|
56
|
+
location: z.ZodObject<{
|
|
57
|
+
country: z.ZodString;
|
|
58
|
+
region: z.ZodString;
|
|
59
|
+
city: z.ZodString;
|
|
60
|
+
}, z.core.$strip>;
|
|
61
|
+
carrier: z.ZodEnum<{
|
|
62
|
+
"T-Mobile": "T-Mobile";
|
|
63
|
+
"AT&T": "AT&T";
|
|
64
|
+
Verizon: "Verizon";
|
|
65
|
+
Contiguity: "Contiguity";
|
|
66
|
+
"International Partner": "International Partner";
|
|
67
|
+
}>;
|
|
68
|
+
capabilities: z.ZodObject<{
|
|
69
|
+
intl_sms: z.ZodBoolean;
|
|
70
|
+
channels: z.ZodArray<z.ZodEnum<{
|
|
71
|
+
sms: "sms";
|
|
72
|
+
mms: "mms";
|
|
73
|
+
rcs: "rcs";
|
|
74
|
+
imessage: "imessage";
|
|
75
|
+
whatsapp: "whatsapp";
|
|
76
|
+
}>>;
|
|
77
|
+
}, z.core.$strip>;
|
|
78
|
+
health: z.ZodObject<{
|
|
79
|
+
reputation: z.ZodNumber;
|
|
80
|
+
previous_owners: z.ZodNumber;
|
|
81
|
+
}, z.core.$strip>;
|
|
82
|
+
data: z.ZodObject<{
|
|
83
|
+
requirements: z.ZodArray<z.ZodEnum<{
|
|
84
|
+
imessage_entitlement_required: "imessage_entitlement_required";
|
|
85
|
+
whatsapp_entitlement_required: "whatsapp_entitlement_required";
|
|
86
|
+
enterprise_plan_required: "enterprise_plan_required";
|
|
87
|
+
}>>;
|
|
88
|
+
e911_capable: z.ZodBoolean;
|
|
89
|
+
}, z.core.$strip>;
|
|
90
|
+
created_at: z.ZodNumber;
|
|
91
|
+
pricing: z.ZodObject<{
|
|
92
|
+
currency: z.ZodEnum<{
|
|
93
|
+
USD: "USD";
|
|
94
|
+
EUR: "EUR";
|
|
95
|
+
GBP: "GBP";
|
|
96
|
+
CAD: "CAD";
|
|
97
|
+
AUD: "AUD";
|
|
98
|
+
}>;
|
|
99
|
+
upfront_fee: z.ZodNumber;
|
|
100
|
+
monthly_rate: z.ZodNumber;
|
|
101
|
+
}, z.core.$strip>;
|
|
102
|
+
}, z.core.$strip>;
|
|
103
|
+
export declare const LeaseAvailableResponse: z.ZodObject<{
|
|
104
|
+
available: z.ZodNumber;
|
|
105
|
+
numbers: z.ZodArray<z.ZodObject<{
|
|
106
|
+
id: z.ZodString;
|
|
107
|
+
status: z.ZodEnum<{
|
|
108
|
+
available: "available";
|
|
109
|
+
"g-available": "g-available";
|
|
110
|
+
leased: "leased";
|
|
111
|
+
unavailable: "unavailable";
|
|
112
|
+
}>;
|
|
113
|
+
number: z.ZodObject<{
|
|
114
|
+
e164: z.ZodString;
|
|
115
|
+
formatted: z.ZodString;
|
|
116
|
+
}, z.core.$strip>;
|
|
117
|
+
location: z.ZodObject<{
|
|
118
|
+
country: z.ZodString;
|
|
119
|
+
region: z.ZodString;
|
|
120
|
+
city: z.ZodString;
|
|
121
|
+
}, z.core.$strip>;
|
|
122
|
+
carrier: z.ZodEnum<{
|
|
123
|
+
"T-Mobile": "T-Mobile";
|
|
124
|
+
"AT&T": "AT&T";
|
|
125
|
+
Verizon: "Verizon";
|
|
126
|
+
Contiguity: "Contiguity";
|
|
127
|
+
"International Partner": "International Partner";
|
|
128
|
+
}>;
|
|
129
|
+
capabilities: z.ZodObject<{
|
|
130
|
+
intl_sms: z.ZodBoolean;
|
|
131
|
+
channels: z.ZodArray<z.ZodEnum<{
|
|
132
|
+
sms: "sms";
|
|
133
|
+
mms: "mms";
|
|
134
|
+
rcs: "rcs";
|
|
135
|
+
imessage: "imessage";
|
|
136
|
+
whatsapp: "whatsapp";
|
|
137
|
+
}>>;
|
|
138
|
+
}, z.core.$strip>;
|
|
139
|
+
health: z.ZodObject<{
|
|
140
|
+
reputation: z.ZodNumber;
|
|
141
|
+
previous_owners: z.ZodNumber;
|
|
142
|
+
}, z.core.$strip>;
|
|
143
|
+
data: z.ZodObject<{
|
|
144
|
+
requirements: z.ZodArray<z.ZodEnum<{
|
|
145
|
+
imessage_entitlement_required: "imessage_entitlement_required";
|
|
146
|
+
whatsapp_entitlement_required: "whatsapp_entitlement_required";
|
|
147
|
+
enterprise_plan_required: "enterprise_plan_required";
|
|
148
|
+
}>>;
|
|
149
|
+
e911_capable: z.ZodBoolean;
|
|
150
|
+
}, z.core.$strip>;
|
|
151
|
+
created_at: z.ZodNumber;
|
|
152
|
+
pricing: z.ZodObject<{
|
|
153
|
+
currency: z.ZodEnum<{
|
|
154
|
+
USD: "USD";
|
|
155
|
+
EUR: "EUR";
|
|
156
|
+
GBP: "GBP";
|
|
157
|
+
CAD: "CAD";
|
|
158
|
+
AUD: "AUD";
|
|
159
|
+
}>;
|
|
160
|
+
upfront_fee: z.ZodNumber;
|
|
161
|
+
monthly_rate: z.ZodNumber;
|
|
162
|
+
}, z.core.$strip>;
|
|
163
|
+
}, z.core.$strip>>;
|
|
164
|
+
}, z.core.$strip>;
|
|
165
|
+
export type LeaseAvailableResponseType = z.infer<typeof LeaseAvailableResponse>;
|
|
166
|
+
export type AvailableNumberType = z.infer<typeof AvailableNumber>;
|
|
167
|
+
/**
|
|
168
|
+
* Gets all phone numbers available for lease
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```typescript
|
|
172
|
+
* const response = await contiguity.lease.available();
|
|
173
|
+
* console.log(`${response.available} numbers available`);
|
|
174
|
+
*
|
|
175
|
+
* // Find numbers with iMessage support
|
|
176
|
+
* const imessageNumbers = response.numbers.filter(
|
|
177
|
+
* num => num.capabilities.channels.includes('imessage')
|
|
178
|
+
* );
|
|
179
|
+
* console.log(`Found ${imessageNumbers.length} iMessage-capable numbers`);
|
|
180
|
+
* ```
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* ```typescript
|
|
184
|
+
* // Find high-reputation numbers in a specific city
|
|
185
|
+
* const response = await contiguity.lease.available();
|
|
186
|
+
* const miamiNumbers = response.numbers.filter(
|
|
187
|
+
* num => num.location.city === 'Miami' && num.health.reputation > 0.8
|
|
188
|
+
* );
|
|
189
|
+
* console.log(`Found ${miamiNumbers.length} high-reputation Miami numbers`);
|
|
190
|
+
* ```
|
|
191
|
+
*/
|
|
192
|
+
export declare function _leaseAvailable(this: any): Promise<any>;
|
|
193
|
+
//# sourceMappingURL=available.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"available.d.ts","sourceRoot":"","sources":["../../../src/services/lease/available.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,kBAAkB;;;;;;;;;iBAK7B,CAAC;AAEH,eAAO,MAAM,YAAY;;;iBAKvB,CAAC;AAEH,eAAO,MAAM,cAAc;;;;iBAOzB,CAAC;AAEH,eAAO,MAAM,YAAY;;;iBAKvB,CAAC;AAEH,eAAO,MAAM,UAAU;;;;;;;iBAKrB,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;iBAOxB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqB1B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKjC,CAAC;AAKH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAChF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAS7D"}
|