API-guide för Catalog Service

Det här dokumentet innehåller ytterligare information som kan hjälpa dig att arbeta med Catalog-API:t.

Visa relaterade objekt view-interrelated-objects

Vissa Catalog-objekt kan vara relaterade till andra Catalog-objekt. Alla fält som prefix av @ i svarsnyttolaster anger relaterade objekt. Värdena för dessa fält har formen av en URI, som kan användas i en separat GET-begäran för att hämta relaterade objekt som de representerar.

Exempeldatamängden som returneras i dokumentet vid sökning efter en specifik datamängd innehåller ett files-fält med följande URI-värde: "@/datasetFiles?datasetId={DATASET_ID}". Innehållet i fältet files kan visas med denna URI som sökväg för en ny GET-begäran.

API-format

GET {OBJECT_URI}
Parameter
Beskrivning
{OBJECT_URI}
Den URI som anges av det interrelaterade objektfältet (exklusive symbolen @).

Begäran

Följande begäran använder URI:n som tillhandahöll exempeldatauppsättningens files-egenskap för att hämta en lista över datauppsättningens associerade filer.

curl -X GET \
  'https://platform.adobe.io/data/foundation/catalog/dataSets/datasetFiles?datasetId={DATASET_ID}' \
  -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}'

Svar

Ett godkänt svar returnerar en lista med relaterade objekt. I det här exemplet returneras en lista med datauppsättningsfiler.

{
    "7d501090-0280-11ea-a6bb-f18323b7005c-1": {
        "id": "7d501090-0280-11ea-a6bb-f18323b7005c-1",
        "batchId": "7d501090-0280-11ea-a6bb-f18323b7005c",
        "dataSetViewId": "5ba9452f7de80400007fc52b",
        "imsOrg": "{ORG_ID}",
        "createdUser": "{USER_ID}",
        "createdClient": "{CLIENT_ID}",
        "updatedUser": "{USER_ID}",
        "version": "1.0.0",
        "created": 1573256315368,
        "updated": 1573256315368
    },
    "148ac690-0280-11ea-8d23-8571a35dce49-1": {
        "id": "148ac690-0280-11ea-8d23-8571a35dce49-1",
        "batchId": "148ac690-0280-11ea-8d23-8571a35dce49",
        "dataSetViewId": "5ba9452f7de80400007fc52b",
        "imsOrg": "{ORG_ID}",
        "createdUser": "{USER_ID}",
        "createdClient": "{CLIENT_ID}",
        "updatedUser": "{USER_ID}",
        "version": "1.0.0",
        "created": 1573255982433,
        "updated": 1573255982433
    },
    "64dd5e19-8ea4-4ddd-acd1-f43cccd8eddb-1": {
        "id": "64dd5e19-8ea4-4ddd-acd1-f43cccd8eddb-1",
        "batchId": "64dd5e19-8ea4-4ddd-acd1-f43cccd8eddb",
        "dataSetViewId": "5ba9452f7de80400007fc52b",
        "imsOrg": "{ORG_ID}",
        "createdUser": "{USER_ID}",
        "createdClient": "{CLIENT_ID}",
        "updatedUser": "{USER_ID}",
        "version": "1.0.0",
        "created": 1569499425037,
        "updated": 1569499425037
    }
}

Ytterligare begäranderubriker

Catalog innehåller flera huvudkonventioner som hjälper dig att upprätthålla integriteten för dina data under uppdateringar.

If-Match

Det är en god vana att använda objektversionshantering för att förhindra den typ av datafel som uppstår när ett objekt sparas av flera användare nästan samtidigt.

När du uppdaterar ett objekt bör du först göra ett API-anrop för att visa (GET) det objekt som ska uppdateras. Finns i svaret (och alla anrop där svaret innehåller ett enda objekt) är en E-Tag-rubrik som innehåller objektets version. Om du lägger till objektversionen som ett begärandehuvud med namnet If-Match i dina uppdateringsanrop (PUT eller PATCH) kommer uppdateringen bara att lyckas om versionen fortfarande är densamma, vilket förhindrar datakonflikter.

Om versionerna inte matchar (objektet ändrades av en annan process sedan du hämtade det) får du HTTP-status 412 (Förhandsvillkor misslyckades) som anger att åtkomst till målresursen har nekats.

Pragma

Ibland kanske du vill validera ett objekt utan att spara informationen. Om du använder rubriken Pragma med värdet validate-only kan du skicka POST- eller PUT-begäranden endast i valideringssyfte, vilket förhindrar att ändringar i data sparas.

Datakomprimering

Komprimering är en Experience Platform-tjänst som sammanfogar data från små filer till större filer utan att ändra några data. Av prestandaskäl kan det ibland vara bra att kombinera en uppsättning små filer till större filer för att ge snabbare åtkomst till data när frågor ställs.

När filerna i en inkapslad grupp har komprimerats uppdateras dess associerade Catalog-objekt i övervakningssyfte.

recommendation-more-help
c5c02be6-79a3-4a2f-b766-136bffe8b676