Slutpunkt för scheman
Scheman är ett verktyg som kan användas för att automatiskt köra batchsegmenteringsjobb en gång om dagen. Du kan använda slutpunkten /config/schedules
för att hämta en lista med scheman, skapa ett nytt schema, hämta information om ett specifikt schema, uppdatera ett specifikt schema eller ta bort ett specifikt schema.
Komma igång
Slutpunkterna som används i den här guiden ingår i Adobe Experience Platform Segmentation Service-API:t. Innan du fortsätter bör du läsa kom igång-guiden för att få viktig information som du behöver känna till för att kunna ringa anrop till API:t, inklusive nödvändiga rubriker och hur du läser exempel-API-anrop.
Hämta en lista med scheman retrieve-list
Du kan hämta en lista över alla scheman för din organisation genom att göra en GET-förfrågan till slutpunkten /config/schedules
.
API-format
Slutpunkten /config/schedules
har stöd för flera frågeparametrar som kan hjälpa dig att filtrera dina resultat. Även om dessa parametrar är valfria rekommenderar vi starkt att de används för att minska dyra overheadkostnader. Om du anropar den här slutpunkten utan parametrar hämtas alla scheman som är tillgängliga för din organisation. Flera parametrar kan inkluderas, avgränsade med et-tecken (&
).
GET /config/schedules
GET /config/schedules?start={START}
GET /config/schedules?limit={LIMIT}
{START}
{LIMIT}
Begäran
Följande förfrågan hämtar de tio senaste scheman som publicerats inom din organisation.
curl -X GET https://platform.adobe.io/data/core/ups/config/schedules?limit=10 \
-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}'
Svar
Ett lyckat svar returnerar HTTP-status 200 med en lista över scheman för den angivna organisationen som JSON.
{
"_page": {
"totalCount": 10,
"pageSize": 1
},
"children": [
{
"id": "4e538382-dbd8-449e-988a-4ac639ebe72b",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "28e74200-e3de-11e9-8f5d-7f27416c5f0d",
"sandboxName": "prod",
"type": "production",
"default": true
},
"name": "Batch Segmentation",
"state": "active",
"type": "batch_segmentation",
"schedule": "0 0 1 * * ?",
"properties": {
"segments": []
},
"createEpoch": 1573158851,
"updateEpoch": 1574365202
}
],
"_links": {
"next": {}
}
}
_page.totalCount
_page.pageSize
children.name
children.type
children.properties
children.properties.segments
["*"]
säkerställs att alla segment inkluderas.children.schedule
children.state
Skapa ett nytt schema create
Du kan skapa ett nytt schema genom att göra en POST-förfrågan till slutpunkten /config/schedules
.
API-format
POST /config/schedules
Begäran
curl -X POST https://platform.adobe.io/data/core/ups/config/schedules \
-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 '
{
"name":"profile-default",
"type":"batch_segmentation",
"properties":{
"segments":[
"*"
]
},
"schedule":"0 0 1 * * ?",
"state":"inactive"
}'
name
type
properties
properties.segments
type
är lika med"batch_segmentation". Om du använder ["*"]
säkerställs att alla segment inkluderas.schedule
Om strängen inte anges genereras ett systemgenererat schema automatiskt.
state
Svar
Ett lyckat svar returnerar HTTP-status 200 med information om ditt nyligen skapade schema.
{
"id": "4e538382-dbd8-449e-988a-4ac639ebe72b",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "e7e17720-c5bb-11e9-aafb-87c71c35cac8",
"sandboxName": "prod",
"type": "production",
"default": true
},
"name": "{SCHEDULE_NAME}",
"state": "inactive",
"type": "batch_segmentation",
"schedule": "0 0 1 * * ?",
"properties": {
"segments": [
"*"
]
},
"createEpoch": 1568267948,
"updateEpoch": 1568267948
}
Hämta ett specifikt schema get
Du kan hämta detaljerad information om ett specifikt schema genom att göra en GET-förfrågan till slutpunkten /config/schedules
och ange ID:t för det schema som du vill hämta i sökvägen till begäran.
API-format
GET /config/schedules/{SCHEDULE_ID}
{SCHEDULE_ID}
id
för schemat som du vill hämta.Begäran
curl -X GET https://platform.adobe.io/data/core/ups/config/schedules/4e538382-dbd8-449e-988a-4ac639ebe72b
-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}'
Svar
Ett lyckat svar returnerar HTTP-status 200 med detaljerad information om det angivna schemat.
{
"id": "4e538382-dbd8-449e-988a-4ac639ebe72b",
"imsOrgId": "{ORG_ID}",
"sandbox": {
"sandboxId": "e7e17720-c5bb-11e9-aafb-87c71c35cac8",
"sandboxName": "prod",
"type": "production",
"default": true
},
"name": "{SCHEDULE_NAME}",
"state": "inactive",
"type": "batch_segmentation",
"schedule": "0 0 1 * * ?",
"properties": {
"segments": [
"*"
]
},
"createEpoch": 1568267948,
"updateEpoch": 1568267948
}
name
type
batch_segmentation
och export
.properties
properties.segments
["*"]
säkerställs att alla segment inkluderas.schedule
state
active
och inactive
. Som standard är läget inställt på inactive
.Uppdatera information för ett specifikt schema update
Du kan uppdatera ett specifikt schema genom att göra en PATCH-begäran till slutpunkten /config/schedules
och ange ID:t för det schema som du försöker uppdatera i sökvägen till begäran.
Med PATCH-begäran kan du uppdatera antingen state eller cron schedule för ett enskilt schema.
Uppdatera schematillstånd update-state
Du kan använda en JSON-lagningsåtgärd för att uppdatera schemats status. Om du vill uppdatera läget deklarerar du egenskapen path
som /state
och anger value
som antingen active
eller inactive
. Mer information om JSON Patch finns i JSON Patch -dokumentationen.
API-format
PATCH /config/schedules/{SCHEDULE_ID}
{SCHEDULE_ID}
id
för schemat som du vill uppdatera.Begäran
curl -X PATCH https://platform.adobe.io/data/core/ups/config/schedules/4e538382-dbd8-449e-988a-4ac639ebe72b \
-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}'
-d '
[
{
"op": "add",
"path": "/state",
"value": "active"
}
]'
path
path
till /state eftersom du uppdaterar schemats tillstånd.value
Svar
Ett lyckat svar returnerar HTTP-status 204 (inget innehåll).
Uppdatera kundschema update-schedule
Du kan använda en JSON-korrigeringsåtgärd för att uppdatera kronschemat. Om du vill uppdatera schemat deklarerar du egenskapen path
som /schedule
och ställer in value
på ett giltigt cron-schema. Mer information om JSON Patch finns i JSON Patch -dokumentationen. Mer information om cron-scheman finns i bilagan i formatet cron expression.
API-format
PATCH /config/schedules/{SCHEDULE_ID}
{SCHEDULE_ID}
id
för schemat som du vill uppdatera.Begäran
curl -X PATCH https://platform.adobe.io/data/core/ups/config/schedules/4e538382-dbd8-449e-988a-4ac639ebe72b \
-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}'
-d '
[
{
"op":"add",
"path":"/schedule",
"value":"0 0 2 * * ?"
}
]'
path
path
till /schedule
eftersom du uppdaterar cron-schemat.value
Svar
Ett lyckat svar returnerar HTTP-status 204 (inget innehåll).
Ta bort ett specifikt schema
Du kan begära att ett visst schema ska tas bort genom att göra en DELETE-begäran till slutpunkten /config/schedules
och ange ID:t för det schema som du vill ta bort i sökvägen till begäran.
API-format
DELETE /config/schedules/{SCHEDULE_ID}
{SCHEDULE_ID}
id
för schemat som du vill ta bort.Begäran
curl -X DELETE https://platform.adobe.io/data/core/ups/config/schedules/4e538382-dbd8-449e-988a-4ac639ebe72b \
-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}'
Svar
Ett lyckat svar returnerar HTTP-status 204 (inget innehåll).
Nästa steg
När du har läst den här guiden får du nu en bättre förståelse för hur scheman fungerar.
Bilaga appendix
I följande bilaga förklaras formatet för de cron-uttryck som används i scheman.
Format
Ett cron-uttryck är en sträng som består av 6 eller 7 fält. Uttrycket skulle se ut ungefär så här:
0 0 12 * * ?
I en cron-uttryckssträng representerar det första fältet sekunder, det andra representerar minuter, det tredje representerar timmar, det fjärde fältet representerar dag i månaden, det femte fältet representerar månad och det sjätte fältet representerar veckodag. Du kan också inkludera ett sjunde fält som representerar året.
, - * /
, - * /
, - * /
, - * ? / L W
, - * /
, - * ? / L #
, - * /
SUN
användningen av sun
.De specialtecken som tillåts har följande betydelse:
*
*
i timfältet innebär det var timme.?
3
i fältet Dag i månaden och ?
i fältet Dag i veckan.-
9-15
i fältet Timmar innebär det att timmarna skulle innehålla 9, 10, 11, 12, 13, 14 och 15.,
MON, FRI, SAT
i veckodag innebär det att veckodagarna omfattar måndag, fredag och lördag./
/
avgör varifrån det ökas, medan värdet som placeras efter /
avgör hur mycket det ökar med. Om du till exempel placerar 1/7
i minutfältet innebär det att minuterna innehåller 1, 8, 15, 22, 29, 36, 43, 50 och 57.L
Last
och har en annan betydelse beroende på vilket fält det används av. Om den används med dagen i månadsfältet representerar det den sista dagen i månaden. Om den används med veckodagen i fältet representerar den den sista veckodagen, som är lördag (SAT
). Om den används med veckodagen i fältet tillsammans med ett annat värde representerar den sista dagen i den typen för månaden. Om du t.ex. placerar 5L
i veckodag kommer endast att inkludera den sista fredagen i månaden.W
18W
på dagen i månadsfältet, och den 18 i den månaden var en lördag, utlöses den 17:e fredagen, vilket är den närmaste veckodagen. Om den 18:e månaden var en söndag skulle den utlösas måndag den 19:e, vilket är den närmaste veckodagen. Observera, att om du anger 1W
som dag i månadsfältet och den närmast veckodagen kommer att vara föregående månad, kommer händelsen fortfarande att utlösas på den närmaste veckodagen i current -månaden.Dessutom kan du kombinera
L
och W
för att skapa LW
, vilket skulle ange den sista veckodagen i månaden.#
#
representerar veckodagen, medan värdet som placerats efter #
representerar vilken förekomst i månaden det är. Om du till exempel placerar 1#3
utlöses händelsen den tredje söndagen i månaden. Observera, att om du skickar X#5
och det inte finns någon femte förekomst av veckodagen den månaden, kommer händelsen inte att utlösas. Om du till exempel skickar 1#5
och det inte finns någon femte söndag den månaden, kommer händelsen inte att utlösas.Exempel
I följande tabell visas exempel på strängar för cron-uttryck och en förklaring av vad de betyder.
0 0 13 * * ?
0 30 9 * * ? 2022
0 * 18 * * ?
0 0/10 17 * * ?
0 13,38 5 ? 6 WED
0 30 12 ? * 4#3
0 30 12 ? * 6L
0 45 11 ? * MON-THU