Definovanie vlastných rozhraní API
Outbound custom API
Použiteľné kanály: SMS, vlastné
Keď vytvoríte vlastný kanál v Dynamics 365 Customer Insights - Journeys, musíte definovať odchádzajúce vlastné rozhranie API , ktoré sa má volať počas spustenia cesty. Vlastné API je vstupným bodom pre spustenie vlastného kódu. Volá rozhrania API poskytovateľa a musí prijať zmluvu definovanú v Customer Insights - Journeys a vrátiť odpoveď. Vlastné rozhranie API pre výstup je priradené k atribútu msdyn_outboundendpointurltemplate v kroku definície kanála.
Zmluva, ktorú by malo implementovať outbound custom API, musí mať jeden vstupný parameter (payload) a jeden výstupný atribút (response).
Užitočné zaťaženie je serializovaný JSON s nasledujúcou zmluvou:
- ChannelDefinitionId: GUID – ID definície kanála.
- RequestId: string – ID požiadavky.
- From: string – Odosielateľ (inštancia kanála).
- Komu: reťazec – Príjemca.
- Správa: Slovník <reťazec, reťazec> - Obsahuje všetky časti správy pre kanál. Kľúče sú názvy častí správy, ako sú hodnoty zodpovedajúceho atribútu
msdyn_name
. - MarketingAppContext: objekt – objekt predstavujúci kontext odoslania. Tento objekt je dostupný len vtedy, keď sa odoslanie vykoná z Customer Insights - Journeys aplikácie. Objekt obsahuje nasledujúce polia:
- CustomerJourneyId: string – ID činnosť zákazníka, ktorý iniciuje hovor. Null, keď sa odoslanie požaduje z testovacieho odoslania.
- UserId: GUID – ID používateľa, ktorý prijíma správu. Null, keď sa odoslanie požaduje z testovacieho odoslania.
- UserEntityType: string – Typ entity reprezentujúcej užívateľa, ktorý prijíma správu. Null, keď sa odoslanie požaduje z testovacieho odoslania.
- IsTestSend: boolean – True, keď bolo odoslanie iniciované z testovacieho odoslania, False v opačnom prípade.
Odpoveď je serializovaný JSON s nasledujúcou zmluvou:
- ChannelDefinitionId: GUID – ID definície kanála.
- MessageId: string – (voliteľné) ID správy. Voliteľné; môže existovať v odpovedi API poskytovateľa.
- RequestId: string – ID požiadavky. Mala by sa rovnať hodnote ID požiadavky v rámci užitočného zaťaženia požiadavky.
- Stav: reťazec – Možné hodnoty sú:
- NotSent – Došlo k pokusu o vykonanie odoslania poskytovateľovi, ale bolo odmietnuté bez možnosti opätovného pokusu.
- Odoslané – Žiadosť o odoslanie bola poskytovateľom úspešne prijatá.
Vlastné rozhranie API správy o doručení
Použiteľné kanály: SMS, vlastné
Ak váš kanál podporuje správy o doručení správ alebo stavy, musíte definovať vlastné rozhranie API správy o doručení. Vaše API je volané poskytovateľom a musí volať základné riešenie msdyn_D365ChannelsNotification API, ktoré vráti informácie do Dataverse. Tieto informácie sú dostupné v Customer Insights - Journeys analytics.
Vlastné API správy o doručení volá msdyn_D365ChannelsNotification API so zmluvou ako jedným vstupným parametrom:
notificationPayLoad je serializovaný JSON s nasledujúcou zmluvou:
- ChannelDefinitionId: GUID – ID definície kanála.
- RequestId: string – ID požiadavky.
- MessageId: string – ID správy.
- From: string – Odosielateľ (inštancia kanála).
- OrganizationId: string – ID organizácie.
- Status: string – Stav správy o doručení. Možné hodnoty sú:
- Doručené – Prijatá správa bola úspešne doručená do cieľa.
- NotDelivered – Prijatá správa nebola úspešne doručená do cieľa.
Prichádzajúce vlastné rozhranie API
Použiteľné kanály: SMS
Ak váš kanál podporuje prichádzajúce požiadavky, musíte definovať prichádzajúce vlastné rozhranie API. Vaše API volá poskytovateľ a musí volať základné riešenie msdyn_D365ChannelsInbound API, ktoré vráti informácie do Dataverse.
Prichádzajúce vlastné API volá msdyn_D365ChannelsInbound API so zmluvou ako jedným vstupným parametrom:
inboundPayLoad je serializovaný JSON s nasledujúcou zmluvou:
- ChannelDefinitionId: GUID – ID definície kanála.
- Komu: reťazec – telefónne číslo C1 (inštancia kanála).
- From: string - C2 užívateľský kontaktný bod.
- OrganizationId: string – ID organizácie.
- Správa: Slovník <reťazec, reťazec> - Obsahuje všetky časti správy pre kanál.