UNPKG

node-ovh-ts

Version:

OVH API wrapper library for TypeScript

438 lines (435 loc) 25.5 kB
import { SmsPttDetails } from '../models/SmsPttDetails.js'; import { SmsTypeSenderEnum } from '../models/SmsTypeSenderEnum.js'; import { SmsOutgoing } from '../models/SmsOutgoing.js'; import { TelephonyTask } from '../models/TelephonyTask.js'; import { SmsTypeTemplateEnum } from '../models/SmsTypeTemplateEnum.js'; import { SmsHlrLookupNumber } from '../models/SmsHlrLookupNumber.js'; import { SmsTemplateControl } from '../models/SmsTemplateControl.js'; import { SmsVirtualNumberGenericService } from '../models/SmsVirtualNumberGenericService.js'; import { ServicesService } from '../models/ServicesService.js'; import { SmsCodingEnum } from '../models/SmsCodingEnum.js'; import { SmsPackDetails } from '../models/SmsPackDetails.js'; import { SmsUser } from '../models/SmsUser.js'; import { SmsBatchUpdateParams } from '../models/SmsBatchUpdateParams.js'; import { SmsClassEnum } from '../models/SmsClassEnum.js'; import { SmsPhonebook } from '../models/SmsPhonebook.js'; import { SmsChatAccess } from '../models/SmsChatAccess.js'; import { TelephonyPcsFile } from '../models/TelephonyPcsFile.js'; import { SmsBlacklist } from '../models/SmsBlacklist.js'; import { SmsCharsetEnum } from '../models/SmsCharsetEnum.js'; import { SmsAllowedIPs } from '../models/SmsAllowedIPs.js'; import { SmsVirtualNumber } from '../models/SmsVirtualNumber.js'; import { SmsAccount } from '../models/SmsAccount.js'; import { SmsPhonebookContact } from '../models/SmsPhonebookContact.js'; import { SmsSettings } from '../models/SmsSettings.js'; import { SmsVirtualNumberJob } from '../models/SmsVirtualNumberJob.js'; import { SmsSender } from '../models/SmsSender.js'; import { SmsBatchParams } from '../models/SmsBatchParams.js'; import { SmsSmsSendingReport } from '../models/SmsSmsSendingReport.js'; import { SmsTask } from '../models/SmsTask.js'; import { SmsIncoming } from '../models/SmsIncoming.js'; import { SmsBatchStatistics } from '../models/SmsBatchStatistics.js'; import { SmsReceiversAsynchronousCleanReport } from '../models/SmsReceiversAsynchronousCleanReport.js'; import { SmsHlr } from '../models/SmsHlr.js'; import { SmsReceiver } from '../models/SmsReceiver.js'; import { SmsException } from '../models/SmsException.js'; import { SmsJobEstimate } from '../models/SmsJobEstimate.js'; import { SmsJob } from '../models/SmsJob.js'; import { SmsSenderDocument } from '../models/SmsSenderDocument.js'; import { SmsDestinationRates } from '../models/SmsDestinationRates.js'; import { SmsSenderAvailable } from '../models/SmsSenderAvailable.js'; import { SmsPackOffer } from '../models/SmsPackOffer.js'; import { SmsBatch } from '../models/SmsBatch.js'; import { SmsPriorityEnum } from '../models/SmsPriorityEnum.js'; import OVHBase from '../ovh.js'; import '../models/SmsPttDurationTypeEnum.js'; import '../models/TelephonyTaskStatusEnum.js'; import '../models/SmsHlrStatuses.js'; import '../models/SmsStatusSenderEnum.js'; import '../models/SmsVirtualNumberIsoCountryCodeEnum.js'; import '../models/ServiceStateEnum.js'; import '../models/ServiceRenewType.js'; import '../models/ServiceRenewalTypeEnum.js'; import '../models/OrderPrice.js'; import '../models/OrderCurrencyCodeEnum.js'; import '../models/SmsCountryEnum.js'; import '../models/SmsQuota.js'; import '../models/SmsQuotaStatusUserEnum.js'; import '../models/SmsAlertThreshold.js'; import '../models/SmsSupportEnum.js'; import '../models/TelephonyPcsFileStatusEnum.js'; import '../models/SmsAllowedIPsActionEnum.js'; import '../models/SmsStatusAccountEnum.js'; import '../models/SmsTemplates.js'; import '../models/SmsPackQuantityAutomaticRecreditEnum.js'; import '../models/SmsChannelEnum.js'; import '../models/SmsResponse.js'; import '../models/SmsResponseTrackingOptions.js'; import '../models/SmsResponseTrackingMediaEnum.js'; import '../models/SmsResponseTypeEnum.js'; import '../models/SmsSettingsEndpoints.js'; import '../models/SmsSettingsStatusEnum.js'; import '../models/SmsRefererSenderEnum.js'; import '../models/SmsBatchClassEnum.js'; import '../models/SmsTodoGeneralPublicFunctionsEnum.js'; import '../models/SmsTodoGeneralPublicStepsEnum.js'; import '../models/SmsRestrictionCodeEnum.js'; import '../models/SmsEncodingEnum.js'; import '../models/SmsSenderRefererEnum.js'; import '../models/SmsBatchError.js'; import '../models/SmsBatchStatusEnum.js'; import '../endpoints.js'; declare class SmsHandler { ovh: OVHBase; constructor(ovh: OVHBase); /** List available services */ list: () => Promise<string[]>; /** Get the encoding, length and number of SMS parts of a text message */ postEstimate: (body: { message: string; noStopClause: boolean; senderType: SmsTypeSenderEnum; }) => Promise<SmsJobEstimate>; /** Get informations about the given ptt code */ getPtts: () => Promise<SmsPttDetails>; /** Get the prices and credits to send a SMS towards given country */ getRatesDestinations: () => Promise<SmsDestinationRates>; /** Get the prices and credits of all the SMS packs with informations about the destination country */ getRatesPacks: () => Promise<SmsPackDetails[]>; /** List available services */ listVirtualNumbers: () => Promise<string[]>; /** Get this object properties */ getVirtualNumbersByNumber: (number: string) => Promise<SmsVirtualNumberGenericService>; /** Get this object properties */ getVirtualNumbersServiceInfosByNumber: (number: string) => Promise<ServicesService>; /** Alter this object properties */ updateVirtualNumbersServiceInfosByNumber: (number: string, body: ServicesService) => Promise<void>; /** Get this object properties */ getByServiceName: (serviceName: string) => Promise<SmsAccount>; /** Alter this object properties */ updateByServiceName: (serviceName: string, body: SmsAccount) => Promise<void>; /** Get batches list */ getBatchesByServiceName: (serviceName: string) => Promise<SmsBatch[]>; /** Create a batch */ createBatchesByServiceName: (serviceName: string, body: SmsBatchParams) => Promise<SmsBatch>; /** Get a batch */ getBatchesByServiceNameAndId: (serviceName: string, id: string) => Promise<SmsBatch>; /** Update a batch */ updateBatchesByServiceNameAndId: (serviceName: string, id: string, body: SmsBatchUpdateParams) => Promise<SmsBatch>; /** Cancel a deferred batch (no SMS must have been sent) */ postBatchesCancelByServiceNameAndId: (serviceName: string, id: string) => Promise<SmsBatch>; /** Batch's statistics */ getBatchesStatisticsByServiceNameAndId: (serviceName: string, id: string) => Promise<SmsBatchStatistics>; /** Numbers blacklisted associated to the sms account */ getBlacklistsByServiceName: (serviceName: string) => Promise<string[]>; /** Delete the blacklisted sms number given */ deleteBlacklistsByServiceNameAndNumber: (number: string, serviceName: string) => Promise<void>; /** Get this object properties */ getBlacklistsByServiceNameAndNumber: (number: string, serviceName: string) => Promise<SmsBlacklist>; /** Get the /me/document id generated */ getDocumentByServiceName: (serviceName: string) => Promise<string>; /** Describe filter exceptions in sms sending from a specific receiver. */ getExceptionsByServiceName: (serviceName: string) => Promise<SmsException[]>; /** Home Location Register informations. Give informations about a given cellular phone. */ getHlrByServiceName: (serviceName: string) => Promise<number[]>; /** Add one or several sending hlr lookup request */ addHlrByServiceName: (serviceName: string, body: { receivers?: string[]; receiversDocumentUrl?: string; }) => Promise<SmsSmsSendingReport>; /** Get this object properties */ getHlrByServiceNameAndId: (id: number, serviceName: string) => Promise<SmsHlrLookupNumber>; /** Get this object properties */ getHlrOperatorByServiceNameAndId: (id: number, serviceName: string) => Promise<SmsHlr>; /** Sms received associated to the sms account */ getIncomingByServiceName: (serviceName: string) => Promise<number[]>; /** Delete the sms incoming history given */ deleteIncomingByServiceNameAndId: (id: number, serviceName: string) => Promise<void>; /** Get this object properties */ getIncomingByServiceNameAndId: (id: number, serviceName: string) => Promise<SmsIncoming>; /** Sms in pending associated to the sms account */ getJobsByServiceName: (serviceName: string) => Promise<number[]>; /** Add one or several sending jobs */ addJobsByServiceName: (serviceName: string, body: { charset?: SmsCharsetEnum; class?: SmsClassEnum; coding?: SmsCodingEnum; differedPeriod?: number; message: string; noStopClause?: boolean; priority?: SmsPriorityEnum; receivers?: string[]; receiversDocumentUrl?: string; receiversSlotId?: string; sender?: string; senderForResponse?: boolean; tag?: string; validityPeriod?: number; }) => Promise<SmsSmsSendingReport>; /** Delete the sms job given (stop sending) */ deleteJobsByServiceNameAndId: (id: number, serviceName: string) => Promise<void>; /** Get this object properties */ getJobsByServiceNameAndId: (id: number, serviceName: string) => Promise<SmsJob>; /** Get SMS list */ getOutgoingByServiceName: (serviceName: string) => Promise<number[]>; /** Delete outgoing SMS from history */ deleteOutgoingByServiceNameAndId: (serviceName: string, id: number) => Promise<void>; /** Get SMS details */ getOutgoingByServiceNameAndId: (serviceName: string, id: number) => Promise<SmsOutgoing>; /** Get this object properties */ getOutgoingHlrByServiceNameAndId: (id: number, serviceName: string) => Promise<SmsHlr>; /** Return phonebooks associated to this account */ getPhonebooksByServiceName: (serviceName: string) => Promise<string[]>; /** Add a phonebook. Return the bookKey. */ addPhonebooksByServiceName: (serviceName: string, body: { name: string; }) => Promise<string>; /** Delete a phonebook */ deletePhonebooksByServiceNameAndBookKey: (bookKey: string, serviceName: string) => Promise<void>; /** Get this object properties */ getPhonebooksByServiceNameAndBookKey: (bookKey: string, serviceName: string) => Promise<SmsPhonebook>; /** Alter this object properties */ updatePhonebooksByServiceNameAndBookKey: (bookKey: string, serviceName: string, body: SmsPhonebook) => Promise<void>; /** Export the phonebook's contacts */ exportPhonebooksByServiceNameAndBookKey: (bookKey: string, serviceName: string) => Promise<TelephonyPcsFile>; /** Import a contacts file. Supported formats are Excel (.xls and .xlsx) and CSV */ postPhonebooksImportByServiceNameAndBookKey: (bookKey: string, serviceName: string, body: { documentId: string; }) => Promise<TelephonyTask>; /** Phonebook contacts */ getPhonebooksPhonebookContactByServiceNameAndBookKey: (bookKey: string, serviceName: string) => Promise<number[]>; /** Create a phonebook contact. Return identifier of the phonebook contact. */ createPhonebooksPhonebookContactByServiceNameAndBookKey: (bookKey: string, serviceName: string, body: { group: string; homeMobile?: string; homePhone?: string; name: string; surname: string; workMobile?: string; workPhone?: string; }) => Promise<number>; /** Delete a phonebook contact */ deletePhonebooksPhonebookContactByServiceNameAndBookKeyAndId: (bookKey: string, id: number, serviceName: string) => Promise<void>; /** Get this object properties */ getPhonebooksPhonebookContactByServiceNameAndBookKeyAndId: (bookKey: string, id: number, serviceName: string) => Promise<SmsPhonebookContact>; /** Alter this object properties */ updatePhonebooksPhonebookContactByServiceNameAndBookKeyAndId: (bookKey: string, id: number, serviceName: string, body: SmsPhonebookContact) => Promise<void>; /** Receivers preloaded from text or csv document file */ getReceiversByServiceName: (serviceName: string) => Promise<number[]>; /** Add a new document of csv receivers */ addReceiversByServiceName: (serviceName: string, body: { autoUpdate: boolean; csvUrl?: string; description: string; documentId?: string; slotId: number; }) => Promise<SmsReceiver>; /** Delete the document from the slot */ deleteReceiversByServiceNameAndSlotId: (serviceName: string, slotId: number) => Promise<void>; /** Get this object properties */ getReceiversByServiceNameAndSlotId: (serviceName: string, slotId: number) => Promise<SmsReceiver>; /** Alter this object properties */ updateReceiversByServiceNameAndSlotId: (serviceName: string, slotId: number, body: SmsReceiver) => Promise<void>; /** Clean the invalid and inactive receivers in the document by requesting HLR on each receiver. A report is sent by e-mail at the end of the operation. */ postReceiversCleanByServiceNameAndSlotId: (serviceName: string, slotId: number, body: { freemium: boolean; priceOnly: boolean; }) => Promise<SmsReceiversAsynchronousCleanReport>; /** Get the document data container */ getReceiversCsvByServiceNameAndSlotId: (serviceName: string, slotId: number) => Promise<string>; /** Describe SMS offers available. */ getSeeOffersByServiceName: (serviceName: string) => Promise<SmsPackOffer[]>; /** Senders allowed associated to the sms account */ sendersByServiceName: (serviceName: string) => Promise<string[]>; /** Create the sms sender given */ createSendersByServiceName: (serviceName: string, body: { description?: string; reason?: string; sender: string; }) => Promise<string>; /** Delete the sms sender given */ deleteSendersByServiceNameAndSender: (sender: string, serviceName: string) => Promise<void>; /** Get this object properties */ getSendersByServiceNameAndSender: (sender: string, serviceName: string) => Promise<SmsSender>; /** Alter this object properties */ updateSendersByServiceNameAndSender: (sender: string, serviceName: string, body: SmsSender) => Promise<void>; /** Documents linked to SMS sender for validation purpose */ getSendersDocumentsByServiceNameAndSender: (sender: string, serviceName: string) => Promise<string[]>; /** Create a new empty document */ createSendersDocumentsByServiceNameAndSender: (sender: string, serviceName: string, body: { description?: string; name: string; }) => Promise<SmsSenderDocument>; /** Get this object properties */ getSendersDocumentsByServiceNameAndSenderAndDocumentID: (documentID: string, sender: string, serviceName: string) => Promise<SmsSenderDocument>; /** Alter this object properties */ updateSendersDocumentsByServiceNameAndSenderAndDocumentID: (documentID: string, sender: string, serviceName: string, body: SmsSenderDocument) => Promise<void>; /** Validate a given sender with an activation code. */ validateSendersByServiceNameAndSender: (sender: string, serviceName: string, body: { code: string; }) => Promise<void>; /** The senders that are attached to your personal informations or OVH services and that can be automatically validated */ getSendersAvailableForValidationByServiceName: (serviceName: string) => Promise<SmsSenderAvailable[]>; /** Get this object properties */ getServiceInfosByServiceName: (serviceName: string) => Promise<ServicesService>; /** Alter this object properties */ updateServiceInfosByServiceName: (serviceName: string, body: ServicesService) => Promise<void>; /** Get SMPP allowed IPs */ getSmppAllowedIPsByServiceName: (serviceName: string) => Promise<string[]>; /** Add or remove allowed IPs */ addSmppAllowedIPsByServiceName: (serviceName: string, body: SmsAllowedIPs) => Promise<string[]>; /** Renew SMPP password */ postSmppPasswordByServiceName: (serviceName: string) => Promise<void>; /** Get SMPP settings */ getSmppSettingsByServiceName: (serviceName: string) => Promise<SmsSettings>; /** Operations on a SMS service */ getTaskByServiceName: (serviceName: string) => Promise<number[]>; /** Get this object properties */ getTaskByServiceNameAndTaskId: (serviceName: string, taskId: number) => Promise<SmsTask>; /** Template pattern filled up for moderation (Needed to send in US country) */ getTemplatesControlByServiceName: (serviceName: string) => Promise<string[]>; /** Create the sms template control given */ createTemplatesControlByServiceName: (serviceName: string, body: { activity: SmsTypeTemplateEnum; description?: string; message: string; name: string; reason?: string; }) => Promise<void>; /** Delete the sms template control */ deleteTemplatesControlByServiceNameAndName: (name: string, serviceName: string) => Promise<void>; /** Get this object properties */ getTemplatesControlByServiceNameAndName: (name: string, serviceName: string) => Promise<SmsTemplateControl>; /** Alter this object properties */ updateTemplatesControlByServiceNameAndName: (name: string, serviceName: string, body: SmsTemplateControl) => Promise<void>; /** Attempt a new validation after moderation refusal */ postTemplatesControlRelaunchValidationByServiceNameAndName: (name: string, serviceName: string, body: { description: string; message: string; }) => Promise<void>; /** Credit transfer between two sms accounts. */ postTransferCreditsByServiceName: (serviceName: string, body: { credits: number; smsAccountTarget: string; }) => Promise<void>; /** Users associated to the sms account */ getUsersByServiceName: (serviceName: string) => Promise<string[]>; /** Create a new user for an sms account */ createUsersByServiceName: (serviceName: string, body: { login: string; password: string; }) => Promise<void>; /** Delete the sms user given */ deleteUsersByServiceNameAndLogin: (login: string, serviceName: string) => Promise<void>; /** Get this object properties */ getUsersByServiceNameAndLogin: (login: string, serviceName: string) => Promise<SmsUser>; /** Alter this object properties */ updateUsersByServiceNameAndLogin: (login: string, serviceName: string, body: SmsUser) => Promise<void>; /** Get the /me/document id generated */ getUsersDocumentByServiceNameAndLogin: (login: string, serviceName: string) => Promise<string>; /** Sms received associated to the sms user */ getUsersIncomingByServiceNameAndLogin: (login: string, serviceName: string) => Promise<number[]>; /** Delete the sms incoming history given */ deleteUsersIncomingByServiceNameAndLoginAndId: (id: number, login: string, serviceName: string) => Promise<void>; /** Get this object properties */ getUsersIncomingByServiceNameAndLoginAndId: (id: number, login: string, serviceName: string) => Promise<SmsIncoming>; /** Sms in pending associated to the sms user */ getUsersJobsByServiceNameAndLogin: (login: string, serviceName: string) => Promise<number[]>; /** Add one or several sending jobs */ addUsersJobsByServiceNameAndLogin: (login: string, serviceName: string, body: { charset?: SmsCharsetEnum; class?: SmsClassEnum; coding?: SmsCodingEnum; differedPeriod?: number; message: string; noStopClause?: boolean; priority?: SmsPriorityEnum; receivers?: string[]; receiversDocumentUrl?: string; receiversSlotId?: string; sender?: string; senderForResponse?: boolean; tag?: string; validityPeriod?: number; }) => Promise<SmsSmsSendingReport>; /** Delete the sms job given (stop sending) */ deleteUsersJobsByServiceNameAndLoginAndId: (id: number, login: string, serviceName: string) => Promise<void>; /** Get this object properties */ getUsersJobsByServiceNameAndLoginAndId: (id: number, login: string, serviceName: string) => Promise<SmsJob>; /** Sms sent associated to the sms user */ getUsersOutgoingByServiceNameAndLogin: (login: string, serviceName: string) => Promise<number[]>; /** Delete the sms outgoing history given */ deleteUsersOutgoingByServiceNameAndLoginAndId: (id: number, login: string, serviceName: string) => Promise<void>; /** Get this object properties */ getUsersOutgoingByServiceNameAndLoginAndId: (id: number, login: string, serviceName: string) => Promise<SmsOutgoing>; /** Get this object properties */ getUsersOutgoingHlrByServiceNameAndLoginAndId: (id: number, login: string, serviceName: string) => Promise<SmsHlr>; /** Receivers preloaded from text or csv document file */ getUsersReceiversByServiceNameAndLogin: (login: string, serviceName: string) => Promise<number[]>; /** Add a new document of csv receivers */ addUsersReceiversByServiceNameAndLogin: (login: string, serviceName: string, body: { autoUpdate: boolean; csvUrl?: string; description: string; documentId?: string; slotId: number; }) => Promise<SmsReceiver>; /** Delete the document from the slot */ deleteUsersReceiversByServiceNameAndLoginAndSlotId: (login: string, serviceName: string, slotId: number) => Promise<void>; /** Get this object properties */ getUsersReceiversByServiceNameAndLoginAndSlotId: (login: string, serviceName: string, slotId: number) => Promise<SmsReceiver>; /** Alter this object properties */ updateUsersReceiversByServiceNameAndLoginAndSlotId: (login: string, serviceName: string, slotId: number, body: SmsReceiver) => Promise<void>; /** Clean the invalid and inactive receivers in the document by requesting HLR on each receiver. A report is sent by e-mail at the end of the operation. */ postUsersReceiversCleanByServiceNameAndLoginAndSlotId: (login: string, serviceName: string, slotId: number, body: { freemium: boolean; priceOnly: boolean; }) => Promise<SmsReceiversAsynchronousCleanReport>; /** Get the document data container */ getUsersReceiversCsvByServiceNameAndLoginAndSlotId: (login: string, serviceName: string, slotId: number) => Promise<string>; /** Virtual numbers associated to the sms account */ getVirtualNumbersByServiceName: (serviceName: string) => Promise<string[]>; /** Get this object properties */ getVirtualNumbersByServiceNameAndNumber: (number: string, serviceName: string) => Promise<SmsVirtualNumber>; /** Delete the given web access */ deleteVirtualNumbersChatAccessByServiceNameAndNumber: (number: string, serviceName: string) => Promise<void>; /** Get this object properties */ getVirtualNumbersChatAccessByServiceNameAndNumber: (number: string, serviceName: string) => Promise<SmsChatAccess>; /** Create a new web access for this ressource */ createVirtualNumbersChatAccessByServiceNameAndNumber: (number: string, serviceName: string) => Promise<SmsChatAccess>; /** Sms received associated to the sms account */ getVirtualNumbersIncomingByServiceNameAndNumber: (number: string, serviceName: string) => Promise<number[]>; /** Delete the sms incoming history given */ deleteVirtualNumbersIncomingByServiceNameAndNumberAndId: (id: number, number: string, serviceName: string) => Promise<void>; /** Get this object properties */ getVirtualNumbersIncomingByServiceNameAndNumberAndId: (id: number, number: string, serviceName: string) => Promise<SmsIncoming>; /** Sms in pending associated to the sms account */ getVirtualNumbersJobsByServiceNameAndNumber: (number: string, serviceName: string) => Promise<number[]>; /** Add one or several sending jobs */ addVirtualNumbersJobsByServiceNameAndNumber: (number: string, serviceName: string, body: { charset?: SmsCharsetEnum; class?: SmsClassEnum; coding?: SmsCodingEnum; differedPeriod?: number; message: string; priority?: SmsPriorityEnum; receivers?: string[]; receiversDocumentUrl?: string; receiversSlotId?: string; tag?: string; validityPeriod?: number; }) => Promise<SmsSmsSendingReport>; /** Delete the sms job given (stop sending) */ deleteVirtualNumbersJobsByServiceNameAndNumberAndId: (id: number, number: string, serviceName: string) => Promise<void>; /** Get this object properties */ getVirtualNumbersJobsByServiceNameAndNumberAndId: (id: number, number: string, serviceName: string) => Promise<SmsVirtualNumberJob>; /** Sms sent associated to the sms account */ getVirtualNumbersOutgoingByServiceNameAndNumber: (number: string, serviceName: string) => Promise<number[]>; /** Delete the sms outgoing history given */ deleteVirtualNumbersOutgoingByServiceNameAndNumberAndId: (id: number, number: string, serviceName: string) => Promise<void>; /** Get this object properties */ getVirtualNumbersOutgoingByServiceNameAndNumberAndId: (id: number, number: string, serviceName: string) => Promise<SmsOutgoing>; /** Get this object properties */ getVirtualNumbersOutgoingHlrByServiceNameAndNumberAndId: (id: number, number: string, serviceName: string) => Promise<SmsHlr>; } export { SmsHandler };