Phoenix Messaging

Multi-platform communications

Account

Accounts are required to send and receive Messages through Aggregators.

Properties

Name Type Description
IdSystem.Int32 The primary identifier for the Message that was sent/received[queryable][sortable]
PhoenixIdentity_CompanyIdSystem.Int32 The Company that this Account belongs to[queryable][sortable][required]
AggregatorIdAggregatorEnum The Aggregator that this Account belongs to[queryable][sortable]
MessageTypeIdMessageTypeEnum The type of Message - eg SMS, MMS, Email, Push Notification[queryable][sortable]
NameSystem.StringA human readable name for this Account[required]
SystemNameSystem.String The Aggregator-generated name for this Account[queryable][sortable][required]
OriginatorSystem.StringThe address that the Message appears to come from (eg '199123' for an SMS)
UsernameSystem.StringRequired when authenticating the Account to the Aggregator
PasswordSystem.StringRequired when authenticating the Account to the Aggregator
TokenSystem.StringRequired when authenticating the Account to the Aggregator
ProviderUrlSystem.StringThe Aggregator endpoint for message requests
SupportsInboundSystem.Boolean Indicates whether this account supports inbound messages[queryable][sortable][required]
SupportsOutboundSystem.Boolean Indicates whether this account supports outbound messages[queryable][sortable][required]
IsProductionGatewaySystem.Boolean Indicates whether this account routes messages through the Aggregators production gateway[queryable][sortable][required]
CertificateSystem.ByteBinary version of the certificate required when authenticating the Account with the Aggregator
IsActiveSystem.Boolean Indicates whether this account is active or not[queryable][sortable][required]
CreateDateSystem.DateTime UTC date of when this Object was created[queryable][readonly][sortable]
ModifyDateSystem.DateTime UTC date of when this Object last viewed[queryable][sortable]
ProjectAccountMapsICollection[]Navigation property to ProjectAccountMap [expandable]

Operations

CreateAccount
Create a new accountSoapRestC#
GetAccount
Gets a particular account by its IdSoapRestC#
ListAccount
Returns a paged list of accounts optionally filtered and sortedSoapRestC#
UpdateAccount
Update an existing accountSoapRestC#

Broadcast

Broadcasts are scheduled bulk sends of Messages to Recipients. The Broadcast can carry either a custom message data through a single Account, or leverage Template Groups at peform a multi-platform Broadcast through multiple Accounts each with different message types (such as Push Notifications, Email and SMS).

Properties

Name Type Description
IdSystem.Int32 the identifier for the Broadcast[queryable][sortable]
ProjectIdSystem.Int32 the Project that this Broadcast belongs to[queryable][sortable][required]
PhoenixIdentity_GroupIdSystem.Int32 the CustomerGroup that this Broadcast should be sent to[queryable][sortable][required]
ExcludeRecipientAddressSystem.Stringa comma delimited list of recipient addresses to exclude from the Broadcast
TemplateGroupIdSystem.Int32the Identity group that this Template belongs too
AccountIdSystem.Int32 the Account that this Broadcast should be sent with[queryable][sortable]
SubjectSystem.Stringthe Subject line or Title of the broadcast
PayloadSystem.Stringthe message body/payload of the Broadcast
SenderAddressSystem.Stringthe address of the Sender (in the case of SMS, the mask)
DeliverAfterDateSystem.DateTime the UTC datetime to deliver this broadcast[queryable][sortable][required]
SendIndividualMessagesSystem.BooleanDetermines whether the Broadcast should be sent as a single Message or one Message per Recipient[required]
IsProcessingSystem.Boolean whether this pending broadcast is currently being processed by the MessagingScheduler[queryable][sortable][required]
StatusTypeIdBroadcastStatusTypeEnum the Status of the Broadcast[queryable]
SentDateSystem.DateTimethe Actual date the Broadcast was sent
CreateDateSystem.DateTime UTC date of when this Object was created[queryable][readonly][sortable]
ModifyDateSystem.DateTime UTC date of when this Object last viewed[queryable][sortable]
StatusDescriptionSystem.StringUnavailable
AccountAccountNavigation property to Account [expandable]
ProjectProjectNavigation property to Project [expandable]
SubstitutesDictionary<string, string>Serialised version of the Substitute property

Operations

CreateBroadcast
Create a new broadcast to be sent at a later dateSoapRestC#
DequeueBroadcast
Description not availableSoapRestC#
GetBroadcast
Gets a particular message by its IdSoapRestC#
ListBroadcast
Returns a paginated list of Broadcasts, optionally filtered and sortedSoapRestC#
UpdateBroadcast
Updates a Broadcast entitySoapRestC#

DeleteResponse

Properties

Name Type Description

Operations

DeleteAccount
Delete an accountSoapRestC#
DeleteBroadcast
Deletes a Broadcast entitySoapRestC#
DeleteMessage
Delete an existing message based on it's IdSoapRestC#
DeleteTemplate
Deletes a TemplateSoapRestC#
DeleteTemplateGroup
Deletes a TemplateGroupSoapRestC#

Message

Messages are sent and received to and from Users.

Properties

Name Type Description
IdSystem.Int32 the identifier for the Message[queryable][sortable]
ProjectIdSystem.Int32 the Project of which the Message belongs to[queryable][sortable][required]
AccountIdSystem.Int32 the Account of which the Message belongs to[queryable][sortable][required]
MessageTypeIdMessageTypeEnum the Type of Message this is[queryable][sortable]
DirectionTypeIdDirectionTypeEnum the Direction the Message was sent in[queryable][sortable]
SenderAddressSystem.String the address of the sender - email, msisdn[queryable][sortable]
StatusTypeIdStatusTypeEnum the Status of the Message[queryable][sortable]
StatusDescSystem.Stringa verbose description of the status
ProcessDateSystem.DateTime when the record was processed[queryable][sortable]
LocationSystem.Data.Spatial.DbGeographythe geo-location of the message (if any)
PayloadSystem.Stringthe body/payload of the message
RecipientCountSystem.Int32 the total number of recipients this message was sent to[queryable][readonly][sortable][required]
ExpectedRecipientCountSystem.Int32 expected number of Recipients to receive this message[queryable][sortable]
SubjectSystem.String Topic or theme of the message[queryable][sortable]
CreateDateSystem.DateTime UTC date of when this Object was created[queryable][readonly][sortable]
ModifyDateSystem.DateTime UTC date of when this Object last viewed[queryable][sortable]
AccountAccountNavigation property to Account [expandable]
ProjectProjectNavigation property to Project [expandable]
RecipientsICollection[]Navigation property to Recipient [expandable]

Operations

CreateMessage
Create a new messageSoapRestC#
GetMessage
Gets a particular message by its IdSoapRestC#
ListMessage
Returns a paginated list of messages, optionally filtered and sortedSoapRestC#
SendMessage
Send a message to the system to be processed laterSoapRestC#
UpdateMessage
Update an existing messageSoapRestC#

Project

Refers to the core Project in PhoenixIdentity.

Properties

Name Type Description
PhoenixIdentity_ProjectIdSystem.Int32 refers to the master ProjectId in the PhoenixSecurity database[queryable][sortable][required]
CreateDateSystem.DateTime UTC date of when this Object was created[queryable][readonly][sortable]
ModifyDateSystem.DateTime UTC date of when this Object last viewed[queryable][sortable]

Operations

ActivateModule
Description not availableSoapRestC#
DeactivateModule
Description not availableSoapRestC#
GetModuleSettings
Description not availableSoapRestC#
UpdateModuleSettings
Description not availableSoapRestC#

ProjectAccountMap

A mapping table determining which projects have access to which Accounts.

Properties

Name Type Description
ProjectIdSystem.Int32 the Project that this mapping relates to[queryable][sortable][required]
AccountIdSystem.Int32 the Account that this mapping relates to[queryable][sortable][required]
CreateDateSystem.DateTime UTC date of when this Object was created[readonly]
ModifyDateSystem.DateTimeUTC date of when this Object last viewed
ProjectProjectNavigation property to Project [expandable]

Operations

CreateProjectAccountMap
Create a new ProjectAccountMap to be sent at a later dateSoapRestC#
GetProjectAccountMap
Gets a particular ProjectAccountMap by its IdSoapRestC#
ListProjectAccountMap
Returns a paginated list of ProjectAccountMaps, optionally filtered and sortedSoapRestC#

Recipient

Each outbound Message can have multiple Recipients - for example in the case where a Broadcast is sent to a group of users.

Properties

Name Type Description
IdSystem.Int32 the identifier of the MessageRecipient[queryable][sortable]
MessageIdSystem.Int32 the Message that was sent to the recipient[queryable][sortable][required]
RecipientAddressSystem.Stringthe address of the recipient, as per the Message.MessageType[required]
SendDateSystem.DateTime the UTC datetime the message was sent to the recipient[queryable][sortable]
ReceiveDateSystem.DateTime the UTC datetime the message was read by the recipient[queryable][sortable]
LocationSystem.Data.Spatial.DbGeographyThe geographical Longitude and Latitude of the recipient
StatusTypeIdStatusTypeEnum the status of the recipient[queryable][sortable]
StatusDescSystem.Stringa verbose description of the status
CreateDateSystem.DateTime UTC date of when this Object was created[queryable][readonly][sortable]
ModifyDateSystem.DateTime UTC date of when this Object last viewed[queryable][sortable]
PhoenixIdentity_UserIdSystem.Int32the associated Phoenix Identity User to this Recipient
ReferenceSystem.String The provider unique reference for the send[queryable][sortable]

Operations

CreateRecipient
Create a new RecipientSoapRestC#
ListRecipient
Returns a paginated list of Recipients, optionally filtered and sortedSoapRestC#
UpdateRecipient
Update an existing RecipientSoapRestC#

Template

Templates are predefined Message properties from which future Messages can be derived from.

Properties

Name Type Description
IdSystem.Int32 the identifier for the Template[queryable][sortable]
ProjectIdSystem.Int32 the Project that this Template belongs to[queryable][sortable][required]
AccountIdSystem.Int32 the Account that this Template belongs to[queryable][sortable][required]
SubjectSystem.String the Subject of this Template[queryable][required]
PayloadSystem.Stringthe MessageText of the Messages that will be derived from this Template[required]
SenderAddressSystem.Stringthe SenderAddress for Messages that will be derived from this Template
ReferenceSystem.String an optional reference for consumers to retrieve this Template[queryable]
CreateDateSystem.DateTime UTC date of when this entity was created[queryable][readonly][sortable]
ModifyDateSystem.DateTime UTC date of when this entity was last modified[queryable][sortable]
TemplateGroupIdSystem.Int32 this Template can optionally belong to a TemplateGroup[queryable][sortable]
PayloadUrlSystem.Stringthe URL to retrieve the payload for the Template (i.e. a templated web page)
NameSystem.String a short Name for this Template[queryable]
AccountAccountNavigation property to Account [expandable]
ProjectProjectNavigation property to Project [expandable]
TemplateGroupTemplateGroupNavigation property to TemplateGroup [expandable]

Operations

CreateTemplate
Creates a new templateSoapRestC#
GetTemplate
Gets a particular Template by its IdSoapRestC#
ListTemplate
Returns a paginated list of templates, optionally filtered and sortedSoapRestC#
UpdateTemplate
Updates a TemplateSoapRestC#

TemplateGroup

TemplateGroups allow the logical grouping of Templates and are used within Broadcasts for a multi-platform sends.

Properties

Name Type Description
IdSystem.Int32 the identifier for the TemplateGroup[queryable][sortable][required]
ProjectIdSystem.Int32 the Project that this Template belongs to[queryable][sortable][required]
NameSystem.Stringthe Name given to this TemplateGroup[required]
ReferenceSystem.String an optional reference for consumers to retrieve this TemplateGroup[queryable]
CreateDateSystem.DateTime UTC date of when this entity was created[queryable][readonly][sortable]
ModifyDateSystem.DateTime UTC date of when this entity was last modified[queryable][sortable]
ProjectProjectNavigation property to Project [expandable]

Operations

CreateTemplateGroup
Creates a new TemplateGroupSoapRestC#
GetTemplateGroup
Gets a particular TemplateGroup by its IdSoapRestC#
ListTemplateGroup
Returns a paginated list of TemplateGroups, optionally filtered and sortedSoapRestC#
UpdateTemplateGroup
Updates a TemplateGroupSoapRestC#

UploadAccountCertificateResponse

Properties

Name Type Description

Operations

UploadAccountCertificate
Uploads a certificate for an AccountSoapRestC#

UploadMessageFileResponse

Properties

Name Type Description

Operations

UploadAttachment
Upload an attachment to an existing messageSoapRestC#