Endpoint API di conversione da modello CSV a schema
L'endpoint /rpc/csv2schema
nell'API Schema Registry consente di creare automaticamente uno schema Experience Data Model (XDM) utilizzando un file CSV come modello. Utilizzando questo endpoint, puoi creare modelli per importare in blocco i campi dello schema e ridurre il lavoro manuale dell’API o dell’interfaccia utente.
Introduzione
L'endpoint /rpc/csv2schema
fa parte dell'Schema Registry API. Prima di continuare, consulta la guida introduttiva per i collegamenti alla documentazione correlata, una guida alla lettura delle chiamate API di esempio in questo documento e per le informazioni importanti sulle intestazioni necessarie per effettuare correttamente le chiamate a qualsiasi API Adobe Experience Platform.
L'endpoint /rpc/csv2schema
fa parte delle chiamate di procedura remota (RPC) supportate da Schema Registry. A differenza di altri endpoint nell'API Schema Registry, gli endpoint RPC non richiedono intestazioni aggiuntive come Accept
o Content-Type
e non utilizzano un CONTAINER_ID
. Devono invece utilizzare lo spazio dei nomi /rpc
, come dimostrato nelle chiamate API riportate di seguito.
Requisiti del file CSV
Per utilizzare questo endpoint, devi innanzitutto creare un file CSV con le intestazioni di colonna appropriate e i valori corrispondenti. Alcune colonne sono obbligatorie, mentre le altre sono facoltative. La tabella seguente descrive queste colonne e il loro ruolo nella costruzione dello schema.
isIgnored
true
, indica che il campo non è pronto per il caricamento API e deve essere ignorato.isCustom
fieldGroupId
fieldGroupName
Facoltativo per i campi personalizzati che non estendono i campi standard esistenti. Se non specificato, il sistema assegnerà automaticamente il nome.
Obbligatorio per campi standard o campi personalizzati che estendono gruppi di campi standard, utilizzato per eseguire query su
fieldGroupId
.fieldPath
fieldGroupName
), impostare il valore su ALL
.displayName
fieldDescription
dataType
Se
dataType
è impostato su object
, è necessario definire anche properties
o $ref
per la stessa riga, ma non entrambi.isRequired
isArray
dataType
indicati.isIdentity
identityNamespace
isIdentity
è trueisPrimaryIdentity
minimum
maximum
enum
[value1,value2,value3]
).stringPattern
format
minLength
maxLength
properties
dataType
è impostato su object
e $ref
non è definito. Definisce il corpo dell'oggetto come stringa JSON (esempio: {"myField": {"type": "string"}}
).$ref
dataType
è impostato su object
e properties
non è definito. Definisce il $id
dell'oggetto di riferimento per il tipo di oggetto (ad esempio https://ns.adobe.com/xdm/context/person
).comment
isIgnored
è impostato su true
, questa colonna viene utilizzata per fornire le informazioni di intestazione dello schema.Consulta il seguente modello CSV per determinare come formattare il file CSV.
Creare un payload di esportazione da un file CSV
Dopo aver configurato il modello CSV, puoi inviare il file all'endpoint /rpc/csv2schema
e convertirlo in un payload di esportazione.
Formato API
POST /rpc/csv2schema
Richiesta
Il payload della richiesta deve utilizzare i dati del modulo come formato. I campi modulo richiesti sono mostrati di seguito.
curl -X POST \
https://platform.adobe.io/data/foundation/schemaregistry/rpc/csv2schema \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-F 'csv-file=@"/Users/userName/Documents/sample-csv-template.csv"' \
-F 'schema-class-id="https://ns.adobe.com/xdm/context/profile"' \
-F 'schema-name="Example Schema"' \
-F 'schema-description="Example schema description."'
csv-file
schema-class-id
$id
della classe XDM che questo schema utilizzerà.schema-name
schema-description
Risposta
In caso di esito positivo, la risposta restituisce un payload di esportazione generato dal file CSV. Il payload assume la forma di un array e ogni elemento dell’array è un oggetto che rappresenta un componente XDM dipendente per lo schema. Seleziona la sezione seguente per visualizzare un esempio completo di payload di esportazione generato da un file CSV.
code language-json |
---|
|
Importare il payload dello schema
Dopo aver generato il payload di esportazione dal file CSV, puoi inviare tale payload all'endpoint /rpc/import
per generare lo schema.
Per informazioni dettagliate su come generare schemi dai payload di esportazione, consulta la guida dell'endpoint "import".