Externe databronnen concept_t2s_kqt_52b

CAUTION
zoekend Adobe Journey Optimizer? Klik ​ hier ​ voor de documentatie van Journey Optimizer.
Deze documentatie verwijst naar erfenismaterialen van Journey Orchestration die door Journey Optimizer zijn vervangen. Neem contact op met uw accountteam als u vragen hebt over uw toegang tot Journey Orchestration of Journey Optimizer.

Met externe gegevensbronnen kunt u een verbinding met systemen van derden definiëren, bijvoorbeeld als u een boekingssysteem voor hotels gebruikt om te controleren of de persoon een kamer heeft geregistreerd. In tegenstelling tot de ingebouwde Adobe Experience Platform-gegevensbron kunt u zoveel externe gegevensbronnen maken als u nodig hebt.

REST API’s die POST of GET gebruiken en JSON retourneren, worden ondersteund. API-sleutel, standaard- en aangepaste verificatiemodi worden ondersteund.

Laten we het voorbeeld nemen van een weerdienst van API die ik wil gebruiken om het gedrag van mijn reis aan te passen aan weergegevens in real time.

Hier volgen twee voorbeelden van de API-aanroep:

  • https://api.adobeweather.org/weather?city=London,uk&appid=1234
  • https://api.adobeweather.org/weather?lat=35&lon=139&appid=1234

De vraag wordt samengesteld uit een belangrijkste URL (https://api.adobeweather.org/weather), twee parametersreeksen ("stad"voor de stad en "lang/lang"voor de breedte en lengtegraad) en API sleutel (toegevoegd).

Hier volgen de belangrijkste stappen voor het maken en configureren van een nieuwe externe gegevensbron:

  1. Klik in de lijst met gegevensbronnen op Create data source om een nieuwe externe gegevensbron te maken.

    Hiermee opent u het configuratievenster voor de gegevensbron aan de rechterkant van het scherm.

  2. Voer een naam in voor de gegevensbron.

    note
    NOTE
    Gebruik geen spaties of speciale tekens. Gebruik niet meer dan 30 tekens.
  3. Voeg een beschrijving toe aan uw gegevensbron. Deze stap is optioneel.

  4. Voeg de URL van de externe service toe. In ons voorbeeld: https://api.adobeweather.org/weather.

    note caution
    CAUTION
    We raden u ten zeerste aan HTTPS te gebruiken om beveiligingsredenen. Merk ook op dat wij niet het gebruik van de adressen van Adobe toestaan die niet openbaar beschikbaar en het gebruik van IP adressen zijn.

  5. Configureer de verificatie afhankelijk van de externe serviceconfiguratie: No authentication, Basic , Custom of API key . Voor meer informatie over de wijze van de douaneauthentificatie, zie ​ deze sectie ​. In ons voorbeeld kiezen wij:

    • Type: “API-sleutel”
    • Value: “1234” (dit is de waarde van onze API-sleutel)
    • Name: “appid” (dit is de naam van de API-sleutelparameter)
    • Location: “Query-parameter” (de API-sleutel bevindt zich in de URL)

  6. Voeg een nieuwe veldgroep voor elke API-parameterset toe door op Add a New Field Group te klikken. Gebruik geen spaties of speciale tekens in de naam van de veldgroep. In ons voorbeeld moeten we twee veldgroepen maken, één voor elke parameterset (stad en lang/lang).

Voor de parameterset “long/lat” maken we een veldgroep met de volgende informatie:

  • Used in: geeft het aantal ritten weer dat een veldgroep gebruikt. U kunt op het pictogram View journeys klikken om de lijst met reizen weer te geven met deze veldgroep.
  • Method : selecteer de methode POST of GET. In ons geval selecteren we de GET-methode.
  • Response Payload: klik binnen het Payload gebied en deeg een voorbeeld van de lading die door de vraag is teruggekeerd. Voor ons voorbeeld hebben we een payload gebruikt die op een API-website voor weersomstandigheden is gevonden. Controleer of de veldtypen correct zijn. Telkens wanneer de API wordt aangeroepen, haalt het systeem alle velden op die in het payload-voorbeeld zijn opgenomen. U kunt op Paste a new payload klikken als u de huidige lading wilt veranderen.
  • Dynamic Values: voer in ons voorbeeld de verschillende parameters in, gescheiden door een komma, “long,lat”. Aangezien de parameterwaarden afhankelijk zijn van de uitvoeringscontext, worden ze tijdens de reizen gedefinieerd. Zie ​ deze pagina ​.
  • Sent Payload : dit veld wordt niet weergegeven in ons voorbeeld. Deze optie is alleen beschikbaar als u de methode POST selecteert. Plak de lading die naar het derdesysteem zal worden verzonden.

Als een GET-aanroep parameters vereist, voert u de parameter(s) in het veld Dynamic Values in en worden deze automatisch aan het einde van de aanroep toegevoegd. In het geval van een vraag van de POST, moet u:

  • geeft een lijst weer van de parameters die tijdens de aanroep moeten worden doorgegeven in het veld Dynamic Values (in het onderstaande voorbeeld: “identifier”).

  • zij worden ook met exact dezelfde syntaxis in de hoofdtekst van de verzonden lading gespecificeerd. Hiervoor moet u het volgende toevoegen: “param”: “name of your parameter” (in het onderstaande voorbeeld: “identifier”). Volg de onderstaande syntaxis:

    code language-none
    {"id":{"param":"identifier"}}
    

Klik op Save .

De gegevensbron is nu geconfigureerd en klaar om te worden gebruikt in uw reizen, bijvoorbeeld in uw omstandigheden, of om een e-mail aan te passen. Als de temperatuur boven 30°C ligt, kunt u besluiten een specifieke communicatie te sturen.

Aangepaste verificatiemodus section_wjp_nl5_nhb

Deze authentificatiemodus wordt gebruikt voor complexe authentificatie, vaak gebruikt om API omsluitende protocollen zoals OAuth2 te roepen, om een toegangstoken terug te winnen dat in het echte HTTP- verzoek voor de actie moet worden ingespoten.

Wanneer u de douaneauthentificatie vormt, kunt u op de hieronder knoop klikken om te controleren of wordt de lading van de douaneauthentificatie correct gevormd.

Als de test succesvol is, wordt de knoop groen.

Bij deze verificatie is de uitvoering van de handeling een proces dat uit twee stappen bestaat:

  1. Roep het eindpunt aan om het toegangstoken te produceren.
  2. Roep REST API door op de juiste manier het toegangstoken te injecteren.

Deze verificatie bestaat uit twee delen.

De definitie van het eindpunt dat moet worden geroepen om het toegangstoken te produceren:

  • eindpunt: URL om het eindpunt te genereren

  • methode van het HTTP- verzoek op het eindpunt (GET of POST)

  • kopballen: sleutel/waardeparen die als kopballen in deze vraag moeten worden ingespoten indien vereist

  • body: beschrijft het lichaam van de vraag als de methode POST is. Wij steunen een beperkte lichaamsstructuur, die in bodyParams (sleutel/waardeparen) wordt bepaald. Het bodyType beschrijft het formaat en het coderen van het lichaam in de vraag:

    • ‘form’: betekent dat het inhoudstype application/x-www-form-urlencoded (charset UTF-8) is en dat de sleutel/waardeparen serieel worden geordend zoals: key1=value1&key2=value2&…
    • ‘json’: betekent dat het inhoudstype application/json (charset UTF-8) is en dat de sleutelwaardeparen als een json-object worden geserialiseerd zoals: { “key1”: “value1”, “key2”: “value2”, …}

De definitie van de manier waarop het toegangstoken in het HTTP- verzoek van de actie moet worden ingespoten:

  • authenticationType: bepaalt hoe het geproduceerde toegangstoken in de vraag van HTTP voor de actie moet worden geïnjecteerd. De mogelijke waarden zijn:

    • drager: wijst erop dat het toegangstoken in de kopbal van de Vergunning moet worden ingespoten, zoals: Vergunning: Drager <access token>
    • header: geeft aan dat het toegangstoken moet worden geïnjecteerd als een header, de headernaam gedefinieerd door de eigenschap tokenTarget. Bijvoorbeeld, als tokenTarget myHeader is, zal het toegangstoken als kopbal als worden geïnjecteerd: myHeader: <access token>
    • queryParam: wijst erop dat het toegangstoken als queryParam moet worden ingespoten, de naam van het vraagparam die door het bezit tokenTarget wordt bepaald. Bijvoorbeeld, als tokenTarget myQueryParam is, zal URL van de actievraag: <url>?myQueryParam=<access token> zijn
  • tokenInResponse: geeft aan hoe het toegangstoken uit de verificatieaanroep kan worden geëxtraheerd. Deze eigenschap kan zijn:

    • ‘response’: geeft aan dat het HTTP-antwoord het toegangstoken is
    • een kiezer in een json (ervan uitgaande dat de reactie een json is, ondersteunen we geen andere indelingen, zoals XML). Het formaat van deze selecteur is json://<path aan het toegangstoken bezit>. Bijvoorbeeld, als de reactie van de vraag is: { "access token": “theToken”, “timestamp”: 12323445656} , zal tokenInResponse: json: //access_token _ zijn

De indeling van deze verificatie is:

{
    "type": "customAuthorization",
    "authorizationType": "<value in 'bearer', 'header' or 'queryParam'>",
    (optional, mandatory if authorizationType is 'header' or 'queryParam') "tokenTarget": "<name of the header or queryParam if the authorizationType is 'header' or 'queryParam'>",
    "endpoint": "<URL of the authentication endpoint>",
    "method": "<HTTP method to call the authentication endpoint, in 'GET' or 'POST'>",
    (optional) "headers": {
        "<header name>": "<header value>",
        ...
    },
    (optional, mandatory if method is 'POST') "body": {
        "bodyType": "<'form'or 'json'>,
        "bodyParams": {
            "param1": value1,
            ...

        }
    },
    "tokenInResponse": "<'response' or json selector in format 'json://<field path to access token>'"
}

U kunt de geheim voorgeheugenduur van het teken voor een bron van de douaneauthentificatiegegevens veranderen. Hieronder ziet u een voorbeeld van een aangepaste payload voor verificatie. De cacheduur wordt gedefinieerd in de parameter “cacheDuration”. Hiermee wordt de retentieduur van het gegenereerde token in de cache opgegeven. De eenheid kan milliseconden, seconden, minuten, uren, dagen, maanden, jaren zijn.

"authentication": {
    "type":"customAuthorization",
    "authorizationType":"Bearer",
    "endpoint":"http://localhost:${port}/epsilon/oauth2/access_token",
    "method":"POST",
    "headers": {
        "Authorization":"Basic EncodeBase64(${epsilonClientId}:${epsilonClientSecret})"
        },
    "body": {
        "bodyType":"form",
        "bodyParams": {
             "scope":"cn mail givenname uid employeeNumber",
             "grant_type":"password",
             "username":"${epsilonUserName}",
             "password":"${epsilonUserPassword}"
             }
        },
    "tokenInResponse":"json://access_token",
    "cacheDuration":
             { "duration":5, "timeUnit":"seconds" }
    }
NOTE
De duur van het geheime voorgeheugen helpt om teveel vraag aan de authentificatieeindpunten te vermijden. Het symbolenbehoud van de authentificatie wordt caching in de diensten, er is geen persistentie. Als de dienst opnieuw wordt begonnen, begint het met een schone geheime voorgeheugen. De cache-duur is standaard 1 uur. In de lading van de douaneauthentificatie, kan het worden aangepast door een andere bewaarduur te specificeren.
recommendation-more-help
journeys-help