sms-ir-api
TypeScript icon, indicating that this package has built-in type declarations

1.2.1 • Public • Published

SMS.ir API

sms-ir-api allows you to communicate with the SMS.ir API to send and receive SMS messages. The API key and default line number for your SMS.ir account are required to create a new instance of the Smsir class.

Installation

This package is available on npm as sms-ir-api. You can install it using either npm or yarn.

With npm:

npm install sms-ir-api

With yarn:

yarn add sms-ir-api

Usage

To use this class in your JavaScript or TypeScript code, first import it:

import { Smsir } from "sms-ir-api";

Then create a new instance of the Smsir class using your SMS.ir API key and default line number:

const sms = new Smsir("YOUR_API_KEY", YOUR_LINE_NUMBER);

You can then use the methods of the Smsir class to interact with the SMS.ir API. For example, to send a single SMS message to a single recipient:

sms.Send("Hello World!", "RECIPIENT_MOBILE_NUMBER");

Methods

The following methods are available in the Smsir class:

constructor()

constructor(apiKey: string, lineNumber: number)

Create a new instance of the Smsir class.

  • apiKey: The API key for your SMS.ir account.
  • lineNumber: The default line number to use for sending messages.

Example

const sms = new Smsir("YOUR_API_KEY", YOUR_LINE_NUMBER);

Send()

Send(MessageText: string, Mobile: string, SendDateTime: number | null = null, lineNumber: number = this.DefaultLineNumber): Promise<any>

Send a single SMS message to a single recipient.

  • MessageText: The text of the message to send.
  • Mobile: The mobile number of the recipient.
  • SendDateTime: (optional) The Unix timestamp of when to send the message (null for immediate sending).
  • lineNumber: (optional) The line number to use for sending the message.

Example

sms.Send("Hello World!", "RECIPIENT_MOBILE_NUMBER");

SendBulk()

SendBulk(MessageText: string, Mobiles: Array<string>, SendDateTime: number | null = null, lineNumber: number = this.DefaultLineNumber): Promise<any>

Send a single SMS message to multiple recipients.

  • MessageText: The text of the message to send.
  • Mobiles: An array of mobile numbers of the recipients.
  • SendDateTime: (optional) The Unix timestamp of when to send the message (null for immediate sending).
  • lineNumber: (optional) The line number to use for sending the message.

Example

sms.SendBulk("Hello World!", ["RECIPIENT_MOBILE_NUMBER_1", "RECIPIENT_MOBILE_NUMBER_2"]);

SendLikeToLike()

SendLikeToLike(MessageTexts: string, Mobiles: Array<string>, SendDateTime: number | null = null, lineNumber: number | null = null): Promise<any>

Send multiple SMS messages to multiple recipients (one message per recipient).

  • MessageTexts: The text of the messages to send.
  • Mobiles: An array of mobile numbers of the recipients.
  • SendDateTime: (optional) The Unix timestamp of when to send the message (null for immediate sending).
  • lineNumber: (optional) The line number to use for sending the message (null for default line number).

Example

sms.SendLikeToLike(["Hello World 1!", "Hello World 2!"], ["RECIPIENT_MOBILE_NUMBER_1", "RECIPIENT_MOBILE_NUMBER_2"]);

DeleteScheduled()

DeleteScheduled(PackId: number): Promise<any>

Delete a scheduled SMS message.

  • PackId: The ID of the scheduled message pack to delete.

Example

sms.DeleteScheduled(SCHEDULED_MESSAGE_PACK_ID);

SendVerifyCode()

SendVerifyCode(Mobile: string, TemplateId: number, Parameters: Array<any>): Promise<any>

Send a verification code via SMS.

  • Mobile: The mobile number of the recipient.
  • TemplateId: The ID of the verification code template to use.
  • Parameters: An array of parameters to use in the verification code template.

Example

sms.SendVerifyCode("RECIPIENT_MOBILE_NUMBER", TEMPLATE_ID, [PARAMETER_1, PARAMETER_2]);

ReportMessage()

ReportMessage(MessageId: number): Promise<any>

Get a report on a specific sent SMS message.

  • MessageId: The ID of the sent message to get a report on.

Example

sms.ReportMessage(MESSAGE_ID);

ReportPack()

ReportPack(PackId: number): Promise<any>

Get a report on a specific sent SMS message pack.

  • PackId: The ID of the sent message pack to get a report on.

Example

sms.ReportPack(PACK_ID);

ReportToday()

ReportToday(pageSize: number = 10, pageNumber: number = 1): Promise<any>

Get a report on today's sent SMS messages.

  • pageSize: (optional) The number of results to return per page.
  • pageNumber: (optional) The page number to return results for.

Example

sms.ReportToday(PAGE_SIZE, PAGE_NUMBER);

ReportArchived()

ReportArchived(fromDate: number | null = null, toDate: number | null = null, pageSize: number = 10, pageNumber: number = 1): Promise<any>

Get a report on archived sent SMS messages.

  • fromDate: (optional) The start date to get results for (null for no start date).
  • toDate: (optional) The end date to get results for (null for no end date).
  • pageSize: (optional) The number of results to return per page.
  • pageNumber: (optional) The page number to return results for.

Example

sms.ReportArchived(FROM_DATE, TO_DATE, PAGE_SIZE, PAGE_NUMBER);

ReportLatestReceived()

ReportLatestReceived(count: number = 100): Promise<any>

Get a report on the latest received SMS messages.

  • count: (optional) The number of results to return.

Example

sms.ReportLatestReceived(COUNT);

ReportTodayReceived()

ReportTodayReceived(pageSize: number = 10, pageNumber: number = 1): Promise<any>

Get a report on today's received SMS messages.

  • pageSize: (optional) The number of results to return per page.
  • pageNumber: (optional) The page number to return results for.

Example

sms.ReportTodayReceived(PAGE_SIZE, PAGE_NUMBER);

ReportArchivedReceived()

ReportArchivedReceived(fromDate: number | null = null, toDate: number | null = null, pageSize: number = 10, pageNumber: number = 1): Promise<any>

Get a report on archived received SMS messages.

  • fromDate: (optional) The start date to get results for (null for no start date).
  • toDate: (optional) The end date to get results for (null for no end date).
  • pageSize: (optional) The number of results to return per page.
  • pageNumber: (optional) The page number to return results for.

Example

sms.ReportArchivedReceived(FROM_DATE, TO_DATE, PAGE_SIZE, PAGE_NUMBER);

GetCredit()

GetCredit(): Promise<any>

Get the remaining credit balance for your SMS.ir account.

Example

sms.GetCredit();

GetLineNumbers()

GetLineNumbers(): Promise<any>

Get a list of available line numbers for your SMS.ir account.

Example

sms.GetLineNumbers();

License

Developed by Shahab Movahhedi

MIT Licensed.

Package Sidebar

Install

npm i sms-ir-api

Weekly Downloads

0

Version

1.2.1

License

MIT

Unpacked Size

123 kB

Total Files

13

Last publish

Collaborators

  • movahhedi