Het eindpunt van segmentexporttaken
De banen van de uitvoer zijn asynchrone processen die worden gebruikt om de leden van het publiekssegment aan datasets voort te zetten. U kunt de /export/jobs
eindpunt in de Adobe Experience Platform Segmentation API, die u toestaat programmatically om, uitvoerbanen terug te winnen tot stand te brengen en te annuleren.
Aan de slag
De eindpunten die in deze handleiding worden gebruikt, maken deel uit van de Adobe Experience Platform Segmentation Service API. Controleer voordat je doorgaat de gids Aan de slag voor belangrijke informatie die u moet weten om met succes vraag aan API te maken, met inbegrip van vereiste kopballen en hoe te om voorbeeld API vraag te lezen.
Een lijst met exporttaken ophalen retrieve-list
U kunt een lijst met alle exporttaken voor uw organisatie opvragen door een GET-aanvraag in te dienen bij de /export/jobs
eindpunt.
API-indeling
De /export/jobs
het eindpunt steunt verscheidene vraagparameters helpen uw resultaten filtreren. Hoewel deze parameters optioneel zijn, wordt het gebruik ervan sterk aanbevolen om kostbare overhead te helpen verminderen. Het maken van een vraag aan dit eindpunt zonder parameters zal alle uitvoerbanen beschikbaar voor uw organisatie terugwinnen. U kunt meerdere parameters opnemen, gescheiden door ampersands (&
).
GET /export/jobs
GET /export/jobs?limit={LIMIT}
GET /export/jobs?offset={OFFSET}
GET /export/jobs?status={STATUS}
{LIMIT}
{OFFSET}
{STATUS}
Verzoek
Het volgende verzoek zal de laatste twee uitvoerbanen binnen uw organisatie terugwinnen.
curl -X GET https://platform.adobe.io/data/core/ups/export/jobs?limit=2 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwoord
De volgende reactie keert HTTP status 200 met een lijst van met succes voltooide uitvoerbanen terug, die op de vraagparameter wordt gebaseerd in de verzoekweg wordt verstrekt.
{
"records": [
{
"id": 100,
"jobType": "BATCH",
"destination": {
"datasetId": "5b7c86968f7b6501e21ba9df",
"segmentPerBatch": false,
"batchId": "da5cfb4de32c4b93a09f7e37fa53ad52",
},
"fields": "identities.id,personalEmail.address",
"schema": {
"name": "_xdm.context.profile"
},
"imsOrgId": "1BD6382559DF0C130A49422D@AdobeOrg",
"status": "SUCCEEDED",
"filter": {
"segments": [
{
"segmentId": "52c26d0d-45f2-47a2-ab30-ed06abc981ff",
"segmentNs": "ups",
"status": [
"realized"
]
}
]
},
"mergePolicy": {
"id": "timestampOrdered-none-mp",
"version": 1
},
"profileInstanceId": "ups",
"errors": [
{
"code": "0100000003",
"msg": "Error in Export Job",
"callStack": "com.adobe.aep.unifiedprofile.common.logging.Logger"
}
],
"metrics": {
"totalTime": {
"startTimeInMs": 123456789000,
"endTimeInMs": 123456799000,
"totalTimeInMs": 10000
},
"profileExportTime": {
"startTimeInMs": 123456789000,
"endTimeInMs": 123456799000,
"totalTimeInMs": 10000
},
"totalExportedProfileCounter": 20,
"exportedProfileByNamespaceCounter": {
"namespace1": 10,
"namespace2": 5
}
},
"computeGatewayJobId": {
"exportJob": "f3058161-7349-4ca9-807d-212cee2c2e94"
},
"creationTime": 1538615973895,
"updateTime": 1538616233239,
"requestId": "d995479c-8a08-4240-903b-af469c67be1f"
},
{
"profileInstanceId": "test_xdm_latest_profile_20_e2e_1538573005395",
"errors": [
{
"code": "0090000009",
"msg": "Error writing profiles to output path 'adl://va7devprofilesnapshot.azuredatalakestore.net/snapshot/722'",
"callStack": "com.adobe.aep.unifiedprofile.common.logging.Logger"
},
{
"code": "unknown",
"msg": "Job aborted.",
"callStack": "org.apache.spark.SparkException: Job aborted."
}
],
"jobType": "BATCH",
"filter": {
"segments": [
{
"segmentId": "52c26d0d-45f2-47a2-ab30-ed06abc981ff",
"segmentNs": "AAM",
"status": ["realized"]
}
]
},
"id": 722,
"schema": {
"name": "_xdm.context.profile"
},
"mergePolicy": {
"id": "7972e3d6-96ea-4ece-9627-cbfd62709c5d",
"version": 1
},
"status": "FAILED",
"requestId": "KbOAsV7HXmdg262lc4yZZhoml27UWXPZ",
"computeGatewayJobId": {
"exportJob": "15971e0f-317c-4390-9038-1a0498eb356f"
},
"metrics": {
"totalTime": {
"startTimeInMs": 1538573416687,
"endTimeInMs": 1538573922551,
"totalTimeInMs": 505864
},
"profileExportTime": {
"startTimeInMs": 1538573872211,
"endTimeInMs": 1538573918809,
"totalTimeInMs": 46598
}
},
"destination": {
"datasetId": "5bb4c46757920712f924a3eb",
"segmentPerBatch": false,
"batchId": "IWEQ6920712f9475762D"
},
"updateTime": 1538573922551,
"imsOrgId": "1BD6382559DF0C130A49422D@AdobeOrg",
"creationTime": 1538573416687
}
],
"page":{
"sortField": "createdTime",
"sort": "desc",
"pageOffset": "1540974701302_96",
"pageSize": 2
},
"link":{
"next": "/export/jobs/?limit=2&offset=1538573416687_722"
}
}
destination
Doelgegevens voor de geëxporteerde gegevens:
datasetId
: De id van de gegevensset waarin de gegevens zijn geëxporteerd.segmentPerBatch
: Een Booleaanse waarde die aangeeft of segment-id's worden geconsolideerd. De waarde "false" betekent dat alle segment-id's worden geëxporteerd naar één batch-id. De waarde "true" houdt in dat één segment-id wordt geëxporteerd naar één batch-id. Opmerking: Het instellen van de waarde op true kan van invloed zijn op de exportprestaties van batches.
fields
schema.name
filter.segments
De segmenten die worden geëxporteerd. De volgende velden worden opgenomen:
segmentId
: De segment-id waarnaar profielen worden geëxporteerd.segmentNs
: Segmentnaamruimte voor het opgegeven objectsegmentID
.status
: Een array van tekenreeksen die een statusfilter voor desegmentID
. Standaard,status
heeft de waarde["realized"]
Dit vertegenwoordigt alle profielen die in het segment in de huidige tijd vallen. Mogelijke waarden zijn:realized
enexited
. Een waarde vanrealized
betekent dat het profiel voor het segment in aanmerking komt. Een waarde vanexiting
betekent dat het profiel het segment verlaat.
mergePolicy
metrics.totalTime
metrics.profileExportTime
page
link.next
Een nieuwe exporttaak maken create
U kunt een nieuwe exporttaak maken door een POST aan te vragen bij de /export/jobs
eindpunt.
API-indeling
POST /export/jobs
Verzoek
Het volgende verzoek leidt tot een nieuwe uitvoerbaan, die door de parameters wordt gevormd die in de lading worden verstrekt.
curl -X POST https://platform.adobe.io/data/core/ups/export/jobs \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '
{
"fields": "identities.id,personalEmail.address",
"mergePolicy": {
"id": "timestampOrdered-none-mp",
"version": 1
},
"filter": {
"segments": [
{
"segmentId": "52c26d0d-45f2-47a2-ab30-ed06abc981ff",
"segmentNs": "ups",
"status": [
"realized"
]
}
],
"segmentQualificationTime": {
"startTime": "2018-01-01T00:00:00Z",
"endTime": "2018-02-01T00:00:00Z"
},
"fromIngestTimestamp": "2018-01-01T00:00:00Z",
"emptyProfiles": true
},
"additionalFields": {
"eventList": {
"fields": "string",
"filter": {
"fromIngestTimestamp": "2018-01-01T00:00:00Z",
"toIngestTimestamp": "2020-01-01T00:00:00Z"
}
}
},
"destination":{
"datasetId": "5b7c86968f7b6501e21ba9df",
"segmentPerBatch": false
},
"schema":{
"name": "_xdm.context.profile"
},
"evaluationInfo": {
"segmentation": true
}
}'
fields
mergePolicy
filter
filter.segments
Hiermee geeft u de segmenten op die u wilt exporteren. Als u deze waarde weglaat, worden alle gegevens van alle profielen geëxporteerd. Accepteert een array van segmentobjecten die elk de volgende velden bevatten:
segmentId
: (Vereist als usegments
) Segment-id voor profielen die moeten worden geëxporteerd.segmentNs
(Optioneel) Segmentnaamruimte voor de opgegevensegmentID
.status
(Optioneel) Een array van tekenreeksen die een statusfilter voor desegmentID
. Standaard,status
heeft de waarde["realized"]
Dit vertegenwoordigt alle profielen die in het segment in de huidige tijd vallen. Mogelijke waarden zijn:realized
enexited
. Een waarde vanrealized
betekent dat het profiel voor het segment in aanmerking komt. Een waarde vanexiting
betekent dat het profiel het segment verlaat.
filter.segmentQualificationTime
filter.segmentQualificationTime.startTime
filter.segmentQualificationTime.endTime
filter.fromIngestTimestamp
Hiermee worden geëxporteerde profielen beperkt tot profielen die na deze tijdstempel zijn bijgewerkt. De tijdstempel moet worden opgegeven in RFC 339 gebruiken.
fromIngestTimestamp
for profielen, indien opgegeven: Bevat alle samengevoegde profielen waarin de samengevoegde bijgewerkte tijdstempel groter is dan de opgegeven tijdstempel. Ondersteuntgreater_than
operand.fromIngestTimestamp
for gebeurtenissen: Alle gebeurtenissen die na deze tijdstempel worden ingevoerd, worden geëxporteerd in overeenstemming met het resultaat van het profiel. Dit is niet de tijd van de gebeurtenis zelf, maar de tijd van inname voor de gebeurtenissen.
filter.emptyProfiles
emptyProfiles
tot true
. Indien emptyProfiles
is ingesteld op false
worden alleen profielen met profielrecords in de winkel geëxporteerd. Standaard, als emptyProfiles
-kenmerk is niet opgenomen, alleen profielen met profielrecords worden geëxporteerd.additionalFields.eventList
Bepaalt de tijdlijngebeurtenisvelden die worden geëxporteerd voor onderliggende of gekoppelde objecten door een of meer van de volgende instellingen op te geven:
fields
: Bestel de velden die u wilt exporteren.filter
: Geeft criteria op die de resultaten beperken die van gekoppelde objecten worden opgenomen. Hiermee wordt een minimumwaarde verwacht die vereist is voor het exporteren, meestal een datum.filter.fromIngestTimestamp
: Filtert tijdreeksgebeurtenissen naar gebeurtenissen die na de opgegeven tijdstempel zijn ingevoegd. Dit is niet de tijd van de gebeurtenis zelf, maar de tijd van inname voor de gebeurtenissen.filter.toIngestTimestamp
: Filtert de tijdstempel naar de tijdstempel die vóór de opgegeven tijdstempel is ingesloten. Dit is niet de tijd van de gebeurtenis zelf, maar de tijd van inname voor de gebeurtenissen.
destination
(Vereist) Informatie over de geëxporteerde gegevens:
datasetId
: (Vereist) De id van de gegevensset waarin gegevens moeten worden geëxporteerd.segmentPerBatch
: (Optioneel) Een Booleaanse waarde die, indien niet opgegeven, standaard "false" is. De waarde "false" exporteert alle segment-id's naar één batch-id. De waarde "waar" exporteert één segment-id naar één batch-id. Merk op dat het plaatsen van de waarde om "waar"te zijn de prestaties van de partijuitvoer kan beïnvloeden.
schema.name
evaluationInfo.segmentation
false
. Een waarde van true
Hiermee wordt aangegeven dat segmentatie moet worden uitgevoerd op de exporttaak.Antwoord
Een geslaagde reactie retourneert HTTP-status 200 met details van de nieuwe exporttaak.
{
"id": 100,
"jobType": "BATCH",
"destination": {
"datasetId": "5b7c86968f7b6501e21ba9df",
"segmentPerBatch": false,
"batchId": "da5cfb4de32c4b93a09f7e37fa53ad52"
},
"fields": "identities.id,personalEmail.address",
"schema": {
"name": "_xdm.context.profile"
},
"imsOrgId": "{ORG_ID}",
"status": "NEW",
"filter": {
"segments": [
{
"segmentId": "52c26d0d-45f2-47a2-ab30-ed06abc981ff",
"segmentNs": "ups",
"status": [
"realized"
]
}
],
"segmentQualificationTime": {
"startTime": "2018-01-01T00:00:00Z",
"endTime": "2018-02-01T00:00:00Z"
},
"fromIngestTimestamp": "2018-01-01T00:00:00Z",
"emptyProfiles": true
},
"additionalFields": {
"eventList": {
"fields": "_id, _experience",
"filter": {
"fromIngestTimestamp": "2018-01-01T00:00:00Z"
}
}
},
"mergePolicy": {
"id": "timestampOrdered-none-mp",
"version": 1
},
"profileInstanceId": "ups",
"metrics": {
"totalTime": {
"startTimeInMs": 123456789000,
}
},
"computeGatewayJobId": {
"exportJob": ""
},
"creationTime": 1538615973895,
"updateTime": 1538616233239,
"requestId": "d995479c-8a08-4240-903b-af469c67be1f"
}
id
Alternatief, indien destination.segmentPerBatch
was ingesteld op true
de destination
bovenstaand object zou een batches
array, zoals hieronder wordt getoond:
"destination": {
"dataSetId": "{DATASET_ID}",
"segmentPerBatch": true,
"batches": [
{
"segmentId": "segment1",
"segmentNs": "ups",
"status": ["realized"],
"batchId": "da5cfb4de32c4b93a09f7e37fa53ad52"
},
{
"segmentId": "segment2",
"segmentNs": "AdCloud",
"status": "exited",
"batchId": "df4gssdfb93a09f7e37fa53ad52"
}
]
}
Een specifieke exporttaak ophalen get
U kunt gedetailleerde informatie over een specifieke exporttaak opvragen door een GET-aanvraag in te dienen bij de /export/jobs
eindpunt en het verstrekken van identiteitskaart van de uitvoerbaan u wenst om in de verzoekweg terug te winnen.
API-indeling
GET /export/jobs/{EXPORT_JOB_ID}
{EXPORT_JOB_ID}
id
van de exporttaak die u wilt openen.Verzoek
curl -X GET https://platform.adobe.io/data/core/ups/export/jobs/11037 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwoord
Een geslaagde reactie retourneert HTTP-status 200 met gedetailleerde informatie over de opgegeven exporttaak.
{
"id": 11037,
"jobType": "BATCH",
"destination": {
"datasetId": "5b7c86968f7b6501e21ba9df",
"segmentPerBatch": false,
"batchId": "da5cfb4de32c4b93a09f7e37fa53ad52"
},
"fields": "identities.id,personalEmail.address",
"schema": {
"name": "_xdm.context.profile"
},
"imsOrgId": "{ORG_ID}",
"status": "SUCCEEDED",
"filter": {
"segments": [
{
"segmentId": "52c26d0d-45f2-47a2-ab30-ed06abc981ff",
"segmentNs": "ups",
"status":[
"realized"
]
}
]
},
"mergePolicy": {
"id": "timestampOrdered-none-mp",
"version": 1
},
"profileInstanceId": "ups",
"metrics": {
"totalTime": {
"startTimeInMs": 123456789000,
"endTimeInMs": 123456799000,
"totalTimeInMs": 10000
},
"profileExportTime": {
"startTimeInMs": 123456789000,
"endTimeInMs": 123456799000,
"totalTimeInMs": 10000
},
"totalExportedProfileCounter": 20,
"exportedProfileByNamespaceCounter": {
"namespace1": 10,
"namespace2": 5
}
},
"computeGatewayJobId": {
"exportJob": "f3058161-7349-4ca9-807d-212cee2c2e94"
},
"creationTime": 1538615973895,
"updateTime": 1538616233239,
"requestId": "d995479c-8a08-4240-903b-af469c67be1f"
}
destination
Doelgegevens voor de geëxporteerde gegevens:
datasetId
: De id van de gegevensset waarin de gegevens zijn geëxporteerd.segmentPerBatch
: Een Booleaanse waarde die aangeeft of segment-id's worden geconsolideerd. Een waarde vanfalse
betekent al segment IDs in één enkele partij ID was. Een waarde vantrue
betekent dat één segment-id wordt geëxporteerd naar één batch-id.
fields
schema.name
filter.segments
De segmenten die worden geëxporteerd. De volgende velden worden opgenomen:
segmentId
: Segment-id voor profielen die moeten worden geëxporteerd.segmentNs
: Segmentnaamruimte voor het opgegeven objectsegmentID
.status
: Een array van tekenreeksen die een statusfilter voor desegmentID
. Standaard,status
heeft de waarde["realized"]
Dit vertegenwoordigt alle profielen die in het segment in de huidige tijd vallen. Mogelijke waarden zijn:realized
enexited
. Een waarde vanrealized
betekent dat het profiel voor het segment in aanmerking komt. Een waarde vanexiting
betekent dat het profiel het segment verlaat.
mergePolicy
metrics.totalTime
metrics.profileExportTime
totalExportedProfileCounter
Een specifieke exporttaak annuleren of verwijderen delete
U kunt verzoeken om de opgegeven exporttaak te verwijderen door een DELETE-aanvraag in te dienen bij de /export/jobs
en het verstrekken van identiteitskaart van de de uitvoerbaan u wenst om in het verzoekweg te schrappen.
API-indeling
DELETE /export/jobs/{EXPORT_JOB_ID}
{EXPORT_JOB_ID}
id
van de exporttaak die u wilt verwijderen.Verzoek
curl -X DELETE https://platform.adobe.io/data/core/ups/export/jobs/{EXPORT_JOB_ID} \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Antwoord
Een succesvolle reactie retourneert HTTP-status 204 met het volgende bericht:
{
"status": true,
"message": "Export job has been marked for cancelling"
}
Volgende stappen
Na het lezen van deze handleiding hebt u nu een beter inzicht in hoe exporttaken werken.