Experience Platform API's gebruiken

Voor informatie over hoe te om vraag aan Experience Platform APIs met succes te maken, zie de gids op ​ begonnen wordt met Experience Platform APIs ​.

Een bronverbinding maken

U kunt een bronverbinding maken door een POST-aanvraag in te dienen bij het sourceConnections eindpunt van Flow Service API en tegelijkertijd uw basis-verbindings-id, het pad naar het bronbestand dat u wilt invoeren en de bijbehorende verbindingsspecificatie-id van uw bron op te geven.

Wanneer u een bronverbinding maakt, moet u ook een opsommingswaarde voor het kenmerk voor de gegevensindeling definiëren.

Gebruik de volgende opsommingswaarden voor bestandsgebaseerde bronnen:

GegevensindelingEnumwaarde
Gescheidendelimited
JSONjson
Parquetparquet

Stel de waarde in op tabular voor alle op tabellen gebaseerde bronnen.

API formaat

POST /sourceConnections

Verzoek

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Cloud Storage source connection",
      "description: "Source connection for a cloud storage source",
      "baseConnectionId": "1f164d1b-debe-4b39-b4a9-df767f7d6f7c",
      "data": {
          "format": "delimited",
          "properties": {
              "columnDelimiter": "{COLUMN_DELIMITER}",
              "encoding": "{ENCODING}",
              "compressionType": "{COMPRESSION_TYPE}"
          }
      },
      "params": {
          "path": "/acme/summerCampaign/account.csv",
          "type": "file",
          "cdcEnabled": true
      },
      "connectionSpec": {
          "id": "4c10e202-c428-4796-9208-5f1f5732b1cf",
          "version": "1.0"
      }
  }'
EigenschapBeschrijving
baseConnectionIdDe basis verbindings-id van de bron voor cloudopslag.
data.formatDe indeling van de gegevens die u naar Experience Platform wilt verzenden. Ondersteunde waarden zijn: delimited , JSON en parquet .
data.properties(Optioneel) Een set eigenschappen die u op uw gegevens kunt toepassen wanneer u een bronverbinding maakt.
data.properties.columnDelimiter(Optioneel) Een scheidingsteken voor één tekenkolom dat u kunt opgeven bij het verzamelen van vlakke bestanden. Elke waarde van één teken is een toegestaan kolomscheidingsteken. Indien niet verstrekt, wordt een komma (,) gebruikt als standaardwaarde. Nota: Het columnDelimiter bezit kan slechts worden gebruikt wanneer het opnemen van afgebakende dossiers.
data.properties.encoding(Optioneel) Een eigenschap die het coderingstype definieert dat moet worden gebruikt bij het invoeren van gegevens naar Experience Platform. De volgende coderingstypen worden ondersteund: UTF-8 en ISO-8859-1 . Nota: De encoding parameter is slechts beschikbaar wanneer het opnemen van afgebakende Csv- dossiers. Andere bestandstypen worden met de standaardcodering UTF-8 opgenomen.
data.properties.compressionType(Optioneel) Een eigenschap die het gecomprimeerde bestandstype voor inname definieert. De ondersteunde gecomprimeerde bestandstypen zijn: bzip2 , gzip , deflate , zipDeflate , tarGzip en tar . Nota: Het compressionType bezit kan slechts worden gebruikt wanneer het opnemen van afgebakende of JSON- dossiers.
params.pathHet pad van het bronbestand dat u opent. Deze parameter verwijst naar een afzonderlijk bestand of naar een volledige map. Nota: U kunt een asterisk in plaats van het dossier gebruiken - naam om de opname van een volledige omslag te specificeren. /acme/summerCampaign/*.csv voert bijvoorbeeld de gehele /acme/summerCampaign/ -map in.
params.typeHet bestandstype van het brongegevensbestand dat u opgeeft. Gebruik het type file om een afzonderlijk bestand in te voeren en gebruik het type folder om een volledige map in te voeren.
params.cdcEnabled

Een booleaanse waarde die aangeeft of het vastleggen van de wijzigingshistorie is ingeschakeld. Bij gebruik met relationele schema's, baseert de vangst van veranderingsgegevens zich op de _change_request_type controlekolom (u — upsert, d — schrapping), die tijdens opneming maar niet opgeslagen in het doelschema wordt geëvalueerd. Deze eigenschap wordt ondersteund door de volgende bronnen voor cloudopslag:

  • Azure Blob
  • Data Landing Zone
  • Google Cloud Storage
  • SFTP

Voor een overzicht van dit vermogen, zie het ​ overzicht van Data Mirror ​. Voor implementatiedetails, lees de gids bij het gebruiken van ​ veranderingsgegevens vangen in bronnen ​ en ​ relationele schema's technische verwijzing ​.

connectionSpec.idDe verbindingsspecificatie-id die is gekoppeld aan uw specifieke bron voor cloudopslag. Zie ​ bijlage ​ voor een lijst van verbindingsspecificiteit IDs.

Reactie

Een succesvolle reactie keert het unieke herkenningsteken (id) van de pas gecreëerde bronverbinding terug. Deze id is in een latere stap vereist om een gegevensstroom te maken.

{
    "id": "26b53912-1005-49f0-b539-12100559f0e2",
    "etag": "\"11004d97-0000-0200-0000-5f3c3b140000\""
}

Reguliere expressies gebruiken om een specifieke set bestanden voor inname te selecteren

U kunt reguliere expressies gebruiken om een bepaalde set bestanden van uw bron naar Experience Platform in te voeren wanneer u een bronverbinding maakt.

API formaat

POST /sourceConnections

Verzoek

In het onderstaande voorbeeld wordt een reguliere expressie gebruikt in het bestandspad om de opname op te geven van alle CSV-bestanden die premium in hun naam hebben.

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Cloud Storage source connection",
      "description: "Source connection for a cloud storage source",
      "baseConnectionId": "1f164d1b-debe-4b39-b4a9-df767f7d6f7c",
      "data": {
          "format": "delimited"
      },
      "params": {
          "path": "/acme/summerCampaign/*premium*.csv",
          "type": "folder"
      },
      "connectionSpec": {
          "id": "4c10e202-c428-4796-9208-5f1f5732b1cf",
          "version": "1.0"
      }
  }'

Een bronverbinding configureren om gegevens recursief in te voeren

Wanneer u een bronverbinding maakt, kunt u de parameter recursive gebruiken om gegevens uit diep geneste mappen in te voeren.

API formaat

POST /sourceConnections

Verzoek

In het onderstaande voorbeeld geeft de parameter recursive: true Flow Service de informatie dat alle submappen tijdens het innameproces recursief moeten worden gelezen.

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}' \
  -H 'Content-Type: application/json' \
  -d '{
      "name": "Cloud Storage source connection",
      "description: "Source connection for a cloud storage source with recursive ingestion",
      "baseConnectionId": "1f164d1b-debe-4b39-b4a9-df767f7d6f7c",
      "data": {
          "format": "delimited"
      },
      "params": {
          "path": "/acme/summerCampaign/customers/premium/buyers/recursive",
          "type": "folder",
          "recursive": true
      },
      "connectionSpec": {
          "id": "4c10e202-c428-4796-9208-5f1f5732b1cf",
          "version": "1.0"
      }
  }'

Een doel-XDM-schema maken

Als u de brongegevens in Experience Platform wilt gebruiken, moet u een doelschema maken om de brongegevens naar wens te structureren. Het doelschema wordt dan gebruikt om een dataset van Experience Platform tot stand te brengen waarin de brongegevens bevat zijn.

Een doelXDM schema kan worden gecreeerd door een POST- verzoek aan de ​ Registratie API van het Schema ​ uit te voeren.

Voor gedetailleerde stappen op hoe te om een doelXDM schema tot stand te brengen, zie het leerprogramma op ​ creërend een schema gebruikend API ​.

Een doelgegevensset maken

Een doeldataset kan worden gecreeerd door een POST- verzoek aan de ​ Dienst API van de Catalogus uit te voeren ​, verstrekkend identiteitskaart van het doelschema binnen de nuttige lading.

Voor gedetailleerde stappen op hoe te om een doeldataset tot stand te brengen, zie het leerprogramma op ​ het creëren van een dataset gebruikend API ​.

Een doelverbinding maken

Een doelverbinding vertegenwoordigt de verbinding aan de bestemming waar de ingesloten gegevens binnen landen. Om een doelverbinding tot stand te brengen, moet u vaste identiteitskaart verstrekken van verbindingsspecificatie verbonden aan het meer van Gegevens. Deze verbindingsspecificatie-id is: c604ff05-7f1a-43c0-8e18-33bf874cb11c .

U hebt nu unieke herkenningstekens een doelschema een doeldataset en identiteitskaart van de verbindingsspecificatie aan het meer van Gegevens. Met behulp van deze id's kunt u een doelverbinding maken met de Flow Service API om de gegevensset op te geven die de binnenkomende brongegevens zal bevatten.

API formaat

POST /targetConnections

Verzoek

curl -X POST \
    'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "name": "Target Connection for a Cloud Storage connector",
        "description": "Target Connection for a Cloud Storage connector",
        "data": {
            "schema": {
                "id": "https://ns.adobe.com/{TENANT_ID}/schemas/995dabbea86d58e346ff91bd8aa741a9f36f29b1019138d4",
                "version": "application/vnd.adobe.xed-full+json;version=1"
            }
        },
        "params": {
            "dataSetId": "5f3c3cedb2805c194ff0b69a"
        },
            "connectionSpec": {
            "id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
            "version": "1.0"
        }
    }'
EigenschapBeschrijving
data.schema.idThe $id of the target XDM schema.
data.schema.versionDe versie van het schema. Deze waarde moet worden ingesteld application/vnd.adobe.xed-full+json;version=1 , die de laatste secundaire versie van het schema retourneert.
params.dataSetIdIdentiteitskaart van de doeldataset die in de vorige stap wordt geproduceerd. Nota: U moet een geldige datasetidentiteitskaart verstrekken wanneer het creëren van een doelverbinding. Een ongeldige dataset ID zal in een fout resulteren.
connectionSpec.idDe verbinding-specificatie-id die wordt gebruikt om verbinding te maken met het datumpeer. Deze id is: c604ff05-7f1a-43c0-8e18-33bf874cb11c .

Reactie

Een succesvolle reactie keert het unieke herkenningsteken van de nieuwe doelverbinding (id) terug. Deze id is vereist in latere stappen.

{
    "id": "dbc5c132-bc2a-4625-85c1-32bc2a262558",
    "etag": "\"8e000533-0000-0200-0000-5f3c40fd0000\""
}

Een toewijzing maken

Opdat de brongegevens in een doeldataset moeten worden opgenomen, moet het eerst aan het doelschema worden in kaart gebracht dat de doeldataset zich aan houdt.

Om een mappingsreeks tot stand te brengen, doe een POST- verzoek aan het mappingSets eindpunt van Data Prep API ​ terwijl het verstrekken van uw doelXDM schema $id en de details van de mappingsreeksen u wilt tot stand brengen.

TIP
U kunt complexe gegevenstypen, zoals arrays, toewijzen in JSON-bestanden met behulp van een bronconnector voor cloudopslag.

API formaat

POST /conversion/mappingSets

Verzoek

curl -X POST \
    'https://platform.adobe.io/data/foundation/conversion/mappingSets' \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -H 'x-api-key: {API_KEY}' \
    -H 'x-gw-ims-org-id: {ORG_ID}' \
    -H 'x-sandbox-name: {SANDBOX_NAME}' \
    -H 'Content-Type: application/json' \
    -d '{
        "version": 0,
        "xdmSchema": "https://ns.adobe.com/{TENANT_ID}/schemas/995dabbea86d58e346ff91bd8aa741a9f36f29b1019138d4",
        "xdmVersion": "1.0",
        "id": null,
        "mappings": [
            {
                "destinationXdmPath": "_id",
                "sourceAttribute": "Id",
                "identity": false,
                "identityGroup": null,
                "namespaceCode": null,
                "version": 0
            },
            {
                "destinationXdmPath": "person.name.firstName",
                "sourceAttribute": "FirstName",
                "identity": false,
                "identityGroup": null,
                "namespaceCode": null,
                "version": 0
            },
            {
                "destinationXdmPath": "person.name.lastName",
                "sourceAttribute": "LastName",
                "identity": false,
                "identityGroup": null,
                "namespaceCode": null,
                "version": 0
            }
        ]
    }'
EigenschapBeschrijving
xdmSchemaDe id van het doel-XDM-schema.

Reactie

Een succesvolle reactie keert details van de pas gecreëerde afbeelding met inbegrip van zijn uniek herkenningsteken (id) terug. Deze waarde is in een latere stap vereist om een gegevensstroom te maken.

{
    "id": "bf5286a9c1ad4266baca76ba3adc9366",
    "version": 0,
    "createdDate": 1597784069368,
    "modifiedDate": 1597784069368,
    "createdBy": "{CREATED_BY}",
    "modifiedBy": "{MODIFIED_BY}"
}