Zdieľať cez


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.