Jump to Content
Dotdigital Enterprise Communications APIEnterprise Communications APIGet StartedReference
HomeGet StartedReference
Enterprise Communications APIGet StartedReferenceSelect ProductPortalLog InDotdigital Enterprise Communications API
Reference
Select ProductPortalLog In

The "One" API

  • The One API Overview
    • Calling the One API
    • Addressing your messages
    • Message sending across channels
    • Custom messages
    • Multi part messages
    • Templates
    • Channel selection
    • Additional options
    • Message send response
    • Inbound messages and receipts
  • Channels
    • SMS
    • Email
    • Push
    • WhatsApp
    • Facebook
    • Twitter DM
    • App Messaging
    • Custom Channels
  • Branch

Webhooks

  • Webhooks
    • One API - Message Events
    • One API - Profile Events
    • Facebook Events
    • App Messaging - Conversation Events
    • App Messaging - Message Events
    • App Messaging - Session Events
    • Chat - Events
    • Chat - Message Events
    • Chat - Presence Events

App Messaging

  • App Messaging Overview
  • Android
    • Installing the SDK
    • Initialise
    • Start session
    • Client APIs
    • Listen to events
    • Push messages
    • Messaging service
    • Profile service
  • iOS
    • Installing the SDK
    • Initialise
    • Start session
    • Push messages
    • Listen to events
    • Client APIs
    • Profile services
    • Messaging services
  • JavaScript
    • Install the SDK
    • Initialise
    • Create conversation
    • Send message
    • Query conversations
    • Query conversation messages
    • Query events
    • Websocket events
    • Message status updates
    • Profile API
    • Typescript
  • Cordova

Chat

  • Chat API
  • Web Chat Widget
  • Android Chat
    • Installing the SDK
    • Initialise
    • Chat Store
    • Start session
    • Client APIs
    • Listen to events
    • Messaging service
    • Profile service
  • JavaScript Chat
    • Install the Chat SDK
    • Initialise the Chat SDK
    • Chat Conversation Store
    • Chat Client APIs
    • Chat Client Events
    • Chat Client Messaging Service
  • iOS Chat
    • Installing the SDK
    • Initialise
    • Chat Store
    • Start session
    • Profile services
    • Messaging services
    • Listen to events
    • Client APIs

SMS

  • SMS API Overview
  • SMS Reference
    • SMS Message Encoding
    • SMS Message Segmentation
    • SMS Message Statuses

Verify

  • Verify API
  • Create and Send Code
  • Validate Code
  • Verify Error Codes

Message "One" API

  • /apispaces/{apiSpaceId}/messages/{messageId}/statuses/{status}
    • Posts a status for a messagepost
  • /apispaces/{apiSpaceId}/messages/{messageId}
    • Retrieves the current state of a specific message.get
    • Deletes a Messagedelete
    • Patches a Messagepatch
  • /apispaces/{apiSpaceId}/messages
    • Send a new messagepost
  • /apispaces/{apiSpaceId}/messages/batch
    • Send a batch of new messagespost
  • /apispaces/{apiSpaceId}/messages/inbounds
    • Posts an inbound messagepost
  • /apispaces/{apiSpaceId}/messages/inbounds/{inboundMessageId}/statuses/{status}
    • Posts a status for an inboundpost

Message History API

  • /apispaces/{apiSpaceId}/profiles/{profileId}/messages
    • Retrieves message history for the specified profile. Messages retrieved from the date spacified (default now), in descending time order.get

Content API

  • /apispaces/{apiSpaceId}/content/{fileId}
    • Retrieve a fileget

Profile API

  • /apispaces/{apiSpaceId}/profiles/export
    • Exports the result of a profile query in a formatted file for downloadpost
  • /apispaces/{apiSpaceId}/profiles/bulk
    • Creates or updates the supplied profiles with the supplied datapatch
    • Deletes the requested profilesdelete
  • /apispaces/{apiSpaceId}/profiles/{id}
    • Retrieves a Profileget
    • Updates or undeletes a Profileput
    • Patches a Profilepatch
    • Deletes a Profiledelete
  • /apispaces/{apiSpaceId}/profiles/{id}/optin
    • Set profile opt in for specified channelsput
    • Set profile opt in for specified channelsdelete
  • /apispaces/{apiSpaceId}/profiles/{id}/rels/primary/{linkedId}
    • Creates a relationship where the linked profile is the primary and this profile is a childput
    • Deletes the profile's relationship to a primary profiledelete
  • /apispaces/{apiSpaceId}/profiles/{id}/rels/link/{linkedId}
    • Creates a relationship where this profile is the primary and the linked profile is a childput
    • Deletes the primary profile's relationship to a linked Profiledelete
  • /apispaces/{apiSpaceId}/profiles
    • Query profilesget
    • Creates a new Profilepost
  • /apispaces/{apiSpaceId}/profiles/import
    • Start the import processpost
  • /apispaces/{apiSpaceId}/profiles/optin
    • Gets default profiles opt in/out options for each channel in channel serviceget
    • Set default profiles opt in/out options for each channel in channel serviceput
  • /apispaces/{apiSpaceId}/profiles/import/{id}/duplicates
    • Get information about duplicated profilesget
  • /apispaces/{apiSpaceId}/profiles/import/{id}/start
    • Start the import processput
  • /apispaces/{apiSpaceId}/audiences/{id}
    • Retrieves an audienceget
    • Updates an audienceput
    • Deletes an audiencedelete
  • /apispaces/{apiSpaceId}/audiences
    • Query audienceget
    • Creates a new audiencepost

Conversation API

  • /apispaces/{apiSpaceId}/conversations/{conversationId}
    • Retrieves a conversationget
    • Updates a conversationput
    • Deletes a conversationdelete
  • /apispaces/{apiSpaceId}/conversations
    • Creates a new conversationpost
    • Retrieves a list of conversationsget
  • /apispaces/{apiSpaceId}/conversations/{conversationId}/typing
    • Indicates that the caller is typing in this conversationpost
    • Indicates that the caller has stopped typing in this conversationdelete
  • /apispaces/{apiSpaceId}/conversations/{conversationId}/participants
    • Retrieves the conversation participantsget
    • Adds a list of participants to a conversationpost
    • Deletes a list of participants from a conversationdelete

Conversation Message API

  • /apispaces/{apiSpaceId}/conversations/{conversationId}/events
    • Retrieves a conversation's eventsget
  • /apispaces/{apiSpaceId}/conversations/{conversationId}/messages
    • Sends a message to conversationpost
    • Retrieves a conversation's messages from an point (event) in time and works backwardsget
  • /apispaces/{apiSpaceId}/conversations/{conversationId}/messages/statusupdates
    • Posts message updates backpost

Analytics API

  • /apispaces/{apiSpaceId}/analytics/conversationmessages
    • Retrieves conversation message analyticsget
  • /apispaces/{apiSpaceId}/analytics/messages
    • Retrieves message analyticsget
  • /apispaces/{apiSpaceId}/analytics/sessions
    • Retrieves session analyticsget
  • /apispaces/{apiSpaceId}/analytics/sms/tracking
    • Retrieves url tracking analyticsget
  • /apispaces/{apiSpaceId}/analytics/sms/verify
    • Retrieves sms verify analyticsget
  • /apispaces/{apiSpaceId}/analytics/sms/inbound
    • Retrieves inbound SMS analyticsget
  • /apispaces/{apiSpaceId}/analytics/sms/outbound
    • Retrieves outbound SMS analyticsget

Phone Number Validation API

  • /apispaces/{apiSpaceId}/phonevalidation/single
    • Validates a single phone numberget

Facebook API

  • Facebook Meta Data Servicepost

Integrator API

  • Getting Message Statusesget
  • Profile Schema Retrievalget
  • Authenticatepost

API Space Management API

  • /apispaces/{id}
    • Retrieves an API Spaceget
    • Updates an API Spaceput
    • Deletes an API spacedelete
  • /apispaces
    • Retrieves all API Spaces accessible by the current userget
    • Creates a new API Spacepost
  • /apispaces/{id}/auth
    • Retrieves an API Space's authentication configurationget
    • Updates an API Space's authentication configurationput
  • /apispaces/{id}/push
    • Retrieves an API Space's push configurationget
  • /apispaces/{id}/retention
    • Retrieves an API Space's data retention configurationget
    • Updates an API Space's data retention configurationput
  • /apispaces/{id}/push/apns
    • Updates an API Space's APNS push certificate configurationput
  • /apispaces/{id}/push/apns/{bundleId}/{environment}
    • Deletes a specific bundle from an API Space's APNS push configurationdelete
  • /apispaces/{id}/push/apns/{bundleId}/{environment}/cert
    • Retrieves a bundle's APNS certificateget
  • /apispaces/{id}/push/apnstoken
    • Updates an API Space's APNS push token configurationput
    • Deletes the APNS push token configuration from an API Space's APNS push configurationdelete
  • /apispaces/{id}/push/apnstoken/key
    • Retrieves the APNS key file for the API Spaceget
  • /apispaces/{id}/push/fcm/{package}
    • Updates an API Space's FCM push configurationput
    • Deletes a specific package from an API Space's FCM push configurationdelete

Billing API

  • /accounts/{accountId}/tariff
    • Retrieves an account's tariffget
  • /accounts/{accountId}/transactions
    • Retrieves an account's transaction history. Spends such as monthly profile bill, SMS message sends, PNV lookups and SMS inbound numbers appear as debits, i.e. negative amounts. Invoice or card payments appear as positive credits to the account.get

Session API

  • /apispaces/{apiSpaceId}/sessions/tokens/anon
    • Gets a token that can be used to start an anonymous sessionget
  • /apispaces/{apiSpaceId}/sessions/{id}
    • Retrieves details about a sessionget
    • Ends a session, revoking access to services.delete

Webhook API

  • /apispaces/{apiSpaceId}/webhooks
    • Retrieves a webhook configurationget
    • Create a webhook configurationpost
  • /apispaces/{apiSpaceId}/webhooks/availableevents
    • Retrieves a webhook available eventsget
  • /apispaces/{apiSpaceId}/accesstokens/availabletemplates
    • Gets a list of available events templates that the caller can use when creating webhookget
  • /apispaces/{apiSpaceId}/webhooks/{webhookId}
    • Retrieves a webhook configurationget
    • Updates a webhook configurationput
    • Deletes a webhook configurationdelete

Message Rules API

  • /apispaces/{apiSpaceId}/automation/inboundrules/optout
    • Retrieves a message opt out configuration listget
    • Create a message opt out configurationpost
  • /apispaces/{apiSpaceId}/automation/inboundrules/optout/{messageRulesId}
    • Retrieves single message opt out configurationget
    • Update single message opt out configurationput
    • Delete single message rule configurationdelete
  • /apispaces/{apiSpaceId}/automation/inboundrules
    • Retrieves a message rules configuration listget
    • Create a message rule configurationpost
  • /apispaces/{apiSpaceId}/automation/inboundrules/{messageRulesId}
    • Retrieves single message rule configurationget
    • Update single message rule configurationput
    • Delete single message rule configurationdelete

Chat API

  • /apispaces/{apiSpaceId}/chats/{chatId}
    • Retrieves a chatget
    • Updates a chatput
    • Deletes a chatdelete
  • /apispaces/{apiSpaceId}/chats/{chatId}/assign
    • Assigns a chatput
  • /apispaces/{apiSpaceId}/chats/{chatId}/close
    • Closes a chatput
  • /apispaces/{apiSpaceId}/chats/{chatId}/channel
    • Changes the channel for an existing chatput
  • /apispaces/{apiSpaceId}/chats/{chatId}/form
    • Sends a form to a chatpost
  • /apispaces/{apiSpaceId}/chats
    • Creates a new chatpost
    • Retrieves a list of chatsget
  • /apispaces/{apiSpaceId}/chats/{chatId}/typing
    • Indicates that the caller is typing in this chatpost
    • Indicates that the caller has stopped typing in this chatdelete
  • /apispaces/{apiSpaceId}/chats/{chatId}/participants
    • Retrieves the chat participantsget

Chat Message API

  • /apispaces/{apiSpaceId}/chats/{chatId}/events
    • Retrieves a chat's eventsget
  • /apispaces/{apiSpaceId}/chats/{chatId}/messages
    • Sends a message to chatpost
    • Retrieves a chat's messages from an point (event) in time and works backwardsget
  • /apispaces/{apiSpaceId}/chats/{chatId}/messages/statusupdates
    • Posts message updates backpost

Chat Presence API

  • /apispaces/{apiSpaceId}/presence
    • Retrieves the presence for a list of agent's profileIdsget
  • /apispaces/{apiSpaceId}/presence/away
    • Sets the profile identified in the JWT to be 'away'post
    • Sets the profile identified in the JWT to be availabledelete
  • /apispaces/{apiSpaceId}/presence/appmessaging
    • Retrieves the presence for a list of user's profileIdsget

Chat Config API

  • /apispaces/{apiSpaceId}/chat/config
    • Retrieves the chat configuration for an apiSpaceget
  • /apispaces/{apiSpaceId}/chat/config/teams/{teamId}
    • Retrieves the members of a teamget
    • Removes the config for a teamdelete
  • /apispaces/{apiSpaceId}/chat/config/teams/{teamId}/sms
    • Update the SMS config for a teamput
    • Removes the SMS config for a teamdelete
  • /apispaces/{apiSpaceId}/chat/config/teams/{teamId}/fbMessenger
    • Update the Facebook Messenger config for a teamput
    • Removes the Facebook Messenger config for a teamdelete
  • /apispaces/{apiSpaceId}/chat/config/teams/{teamId}/appMessaging
    • Update the App Messaging config for a teamput
    • Removes the App Messaging config for a teamdelete
  • /apispaces/{apiSpaceId}/chat/config/teams/{teamId}/email
    • Update the email config for a teamput
    • Removes the email config for a teamdelete
  • /apispaces/{apiSpaceId}/chat/config/teams/{teamId}/settings
    • Update general settings for a teamput
    • Removes the settings for a teamdelete

Reference

  • MIME Types

Android

The following sections will take you through using the App Messaging Foundation Android SDK

comapi/comapi-sdk-android
github.comgithub.com
comapi/comapi-sdk-android

There is also a repository containing some sample apps here ...

comapi/comapi-sdk-android-samples
github.comgithub.com
comapi/comapi-sdk-android-samples