Skapa en ny segmentdefinition

Du kan skapa en ny segmentdefinition genom att göra en POST-förfrågan till slutpunkten /segment/definitions.

VIKTIGT
Segmentdefinitioner som har skapats med API:t kan inte redigeras med segmentverktyget.

API-format

POST /segment/definitions

Begäran

När du skapar en ny segmentdefinition kan du skapa den i formatet pql/text eller pql/json.

En exempelbegäran om att skapa en segmentdefinition.
curl -X POST https://platform.adobe.io/data/core/ups/segment/definitions
 -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": "People who ordered in the last 30 days",
        "description": "Last 30 days",
        "expression": {
            "type": "PQL",
            "format": "pql/text",
            "value": "workAddress.country = \"US\""
        },
        "evaluationInfo": {
            "batch": {
                "enabled": true
            },
            "continuous": {
                "enabled": false
            },
            "synchronous": {
                "enabled": false
            }
        },
        "schema": {
            "name": "_xdm.context.profile"
        }
    }'
EgenskapBeskrivning
nameEtt unikt namn som ska referera till segmentdefinitionen.
description(Valfritt) En beskrivning av segmentdefinitionen som du skapar.
expressionEn entitet som innehåller fältinformation om segmentdefinitionen.
expression.typeAnger uttryckstypen. För närvarande stöds bara "PQL".
expression.formatAnger strukturen för uttrycket i värdet. Värden som stöds är pql/text och pql/json.
expression.valueEtt uttryck som överensstämmer med typen som anges i expression.format.
evaluationInfo(Valfritt) Den typ av segmentdefinition som du skapar. Om du vill skapa ett gruppsegment anger du evaluationInfo.batch.enabled som true. Om du vill skapa ett direktuppspelningssegment anger du evaluationInfo.continuous.enabled som true. Om du vill skapa ett kantsegment anger du evaluationInfo.synchronous.enabled som true. Om segmentdefinitionen lämnas tom skapas den som ett batch-segment.
schemaDet schema som är associerat med entiteterna i segmentet. Består av antingen ett id- eller name-fält.
En exempelbegäran om att skapa en segmentdefinition.
curl -X POST https://platform.adobe.io/data/core/ups/segment/definitions
 -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": "People who ordered in the last 30 days",
        "profileInstanceId": "ups",
        "description": "Last 30 days",
        "expression": {
            "type": "PQL",
            "format": "pql/json",
            "value": "{\"nodeType\":\"fnApply\",\"fnName\":\"=\",\"params\":[{\"nodeType\":\"fieldLookup\",\"fieldName\":\"a\",\"object\":{\"nodeType\":\"parameterReference\",\"position\":1}},{\"nodeType\":\"fieldLookup\",\"fieldName\":\"b\",\"object\":{\"nodeType\":\"parameterReference\",\"position\":1}}]}"
        },
        "evaluationInfo": {
            "batch": {
                "enabled": true
            },
            "continuous": {
                "enabled": false
            },
            "synchronous": {
                "enabled": false
            }
        },
        "schema": {
            "name": "_xdm.context.profile"
        },
        "payloadSchema": "string"
    }'
EgenskapBeskrivning
nameEtt unikt namn som ska referera till segmentdefinitionen.
description(Valfritt) En beskrivning av segmentdefinitionen som du skapar.
evaluationInfo(Valfritt) Den typ av segmentdefinition som du skapar. Om du vill skapa ett gruppsegment anger du evaluationInfo.batch.enabled som true. Om du vill skapa ett direktuppspelningssegment anger du evaluationInfo.continuous.enabled som true. Om du vill skapa ett kantsegment anger du evaluationInfo.synchronous.enabled som true. Om segmentdefinitionen lämnas tom skapas den som ett batch-segment.
schemaDet schema som är associerat med entiteterna i segmentet. Består av antingen ett id- eller name-fält.
expressionEn entitet som innehåller fältinformation om segmentdefinitionen.
expression.typeAnger uttryckstypen. För närvarande stöds bara "PQL".
expression.formatAnger strukturen för uttrycket i värdet.
expression.valueEtt uttryck som överensstämmer med typen som anges i expression.format.

Svar

Ett lyckat svar returnerar HTTP-status 200 med information om den segmentdefinition du nyss skapade.

Ett exempelsvar när du skapar en segmentdefinition.
{
    "id": "4afe34ae-8c98-4513-8a1d-67ccaa54bc05",
    "schema": {
        "name": "_xdm.context.profile"
    },
    "profileInstanceId": "ups",
    "imsOrgId": "{ORG_ID}",
    "sandbox": {
        "sandboxId": "28e74200-e3de-11e9-8f5d-7f27416c5f0d",
        "sandboxName": "prod",
        "type": "production",
        "default": true
    },
    "name": "People who ordered in the last 30 days",
    "description": "Last 30 days",
    "expression": {
        "type": "PQL",
        "format": "pql/text",
        "value": "workAddress.country = \"US\""
    },
    "evaluationInfo": {
        "batch": {
            "enabled": true
        },
        "continuous": {
            "enabled": false
        },
        "synchronous": {
            "enabled": false
        }
    },
    "dataGovernancePolicy": {
        "excludeOptOut": true
    },
    "creationTime": 0,
    "updateEpoch": 1579292094,
    "updateTime": 1579292094000
}
EgenskapBeskrivning
idEtt systemgenererat ID för den segmentdefinition du nyss skapade.
evaluationInfoEtt objekt som anger vilken typ av utvärdering som segmentdefinitionen ska genomgå. Det kan vara gruppsegmentering, direktuppspelning (kallas även kontinuerlig) eller kantsegmentering (kallas även synkron).

Hämta en specifik segmentdefinition

Du kan hämta detaljerad information om en specifik segmentdefinition genom att göra en GET-förfrågan till slutpunkten /segment/definitions och ange ID:t för segmentdefinitionen som du vill hämta i sökvägen till begäran.

API-format

GET /segment/definitions/{SEGMENT_ID}
ParameterBeskrivning
{SEGMENT_ID}Värdet id för segmentdefinitionen som du vill hämta.

Begäran

En exempelbegäran om att hämta en segmentdefinition.
curl -X GET https://platform.adobe.io/data/core/ups/segment/definitions/4afe34ae-8c98-4513-8a1d-67ccaa54bc05 \
 -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 den angivna segmentdefinitionen.

Ett exempelsvar när en segmentdefinition hämtas.
{
    "id": "4afe34ae-8c98-4513-8a1d-67ccaa54bc05",
    "schema": {
        "name": "_xdm.context.profile"
    },
    "profileInstanceId": "ups",
    "imsOrgId": "{ORG_ID}",
    "sandbox": {
        "sandboxId": "28e74200-e3de-11e9-8f5d-7f27416c5f0d",
        "sandboxName": "prod",
        "type": "production",
        "default": true
    },
    "name": "People who ordered in the last 30 days",
    "description": "Last 30 days",
    "expression": {
        "type": "PQL",
        "format": "pql/text",
        "value": "workAddress.country = \"US\""
    },
    "evaluationInfo": {
        "batch": {
            "enabled": true
        },
        "continuous": {
            "enabled": false
        },
        "synchronous": {
            "enabled": false
        }
    },
    "dataGovernancePolicy": {
        "excludeOptOut": true
    },
    "creationTime": 0,
    "updateEpoch": 1579292094,
    "updateTime": 1579292094000
}
EgenskapBeskrivning
idEtt systemgenererat skrivskyddat ID för segmentdefinitionen.
nameEtt unikt namn som ska referera till segmentdefinitionen.
schemaDet schema som är associerat med entiteterna i segmentet. Består av antingen ett id- eller name-fält.
expressionEn entitet som innehåller fältinformation om segmentdefinitionen.
expression.typeAnger uttryckstypen. För närvarande stöds bara "PQL".
expression.format

Anger strukturen för uttrycket i värdet. Följande format stöds för närvarande:

  • pql/text: En textbeteckning för en segmentdefinition enligt den publicerade PQL-grammatiken. Exempel: workAddress.stateProvince = homeAddress.stateProvince.
expression.valueEtt uttryck som överensstämmer med typen som anges i expression.format.
descriptionEn läsbar beskrivning av definitionen.
evaluationInfoEtt objekt som anger vilken typ av utvärdering, batch, direktuppspelning (kallas även kontinuerlig) eller kant (kallas även synkron), kommer segmentdefinitionen att genomgå.

Hämta segmentdefinitioner gruppvis

Du kan hämta detaljerad information om flera angivna segmentdefinitioner genom att göra en POST-förfrågan till /segment/definitions/bulk-get-slutpunkten och ange id-värdena för segmentdefinitionerna i begärandetexten.

API-format

POST /segment/definitions/bulk-get

Begäran

En exempelbegäran när du använder bulkens get-slutpunkt.
curl -X POST https://platform.adobe.io/data/core/ups/segment/definitions/bulk-get \
  -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 '{
        "ids": [
            {
                "id": "54669488-03ab-4e0d-a694-37fe49e32be8"
            },
            {
                "id": "4afe34ae-8c98-4513-8a1d-67ccaa54bc05"
            }
        ]
    }'
EgenskapBeskrivning
idsEn array som innehåller objekt som anger ID:n för de segmentdefinitioner som du vill hämta.

Svar

Ett lyckat svar returnerar HTTP-status 207 med de begärda segmentdefinitionerna.

Ett samplingssvar när du använder bulkens get-slutpunkt.
{
    "results": {
        "54669488-03ab-4e0d-a694-37fe49e32be8": {
            "id": "54669488-03ab-4e0d-a694-37fe49e32be8",
            "schema": {
                "name": "_xdm.context.profile"
            },
            "profileInstanceId": "ups",
            "imsOrgId": "{ORG_ID}",
            "sandbox": {
                "sandboxId": "28e74200-e3de-11e9-8f5d-7f27416c5f0d",
                "sandboxName": "prod",
                "type": "production",
                "default": true
            },
            "name": "People who ordered in the last 30 days",
            "description": "Last 30 days",
            "expression": {
                "type": "PQL",
                "format": "pql/text",
                "value": "workAddress.country = \"US\""
            },
            "evaluationInfo": {
                "batch": {
                    "enabled": true
                },
                "continuous": {
                    "enabled": false
                },
                "synchronous": {
                    "enabled": false
                }
            },
            "dataGovernancePolicy": {
                "excludeOptOut": true
            },
            "creationTime": 0,
            "updateEpoch": 1579292094,
            "updateTime": 1579292094000
        },
        "4afe34ae-8c98-4513-8a1d-67ccaa54bc05": {
            "id": "4afe34ae-8c98-4513-8a1d-67ccaa54bc05",
            "schema": {
                "name": "_xdm.context.profile"
            },
            "profileInstanceId": "ups",
            "imsOrgId": "{ORG_ID}",
            "sandbox": {
                "sandboxId": "28e74200-e3de-11e9-8f5d-7f27416c5f0d",
                "sandboxName": "prod",
                "type": "production",
                "default": true
            },
            "name": "People who ordered in the last 30 days",
            "description": "Last 30 days",
            "expression": {
                "type": "PQL",
                "format": "pql/text",
                "value": "workAddress.country = \"US\""
            },
            "evaluationInfo": {
                "batch": {
                    "enabled": true
                },
                "continuous": {
                    "enabled": false
                },
                "synchronous": {
                    "enabled": false
                }
            },
            "dataGovernancePolicy": {
                "excludeOptOut": true
            },
            "creationTime": 0,
            "updateEpoch": 1579292094,
            "updateTime": 1579292094000
        }

    }
}
EgenskapBeskrivning
idEtt systemgenererat skrivskyddat ID för segmentdefinitionen.
nameEtt unikt namn som ska referera till segmentdefinitionen.
schemaDet schema som är associerat med entiteterna i segmentet. Består av antingen ett id- eller name-fält.
expressionEn entitet som innehåller fältinformation om segmentdefinitionen.
expression.typeAnger uttryckstypen. För närvarande stöds bara "PQL".
expression.format

Anger strukturen för uttrycket i värdet. Följande format stöds för närvarande:

  • pql/text: En textbeteckning för en segmentdefinition enligt den publicerade PQL-grammatiken. Exempel: workAddress.stateProvince = homeAddress.stateProvince.
expression.valueEtt uttryck som överensstämmer med typen som anges i expression.format.
descriptionEn läsbar beskrivning av definitionen.
evaluationInfoEtt objekt som anger vilken typ av utvärdering, batch, direktuppspelning (kallas även kontinuerlig) eller kant (kallas även synkron), kommer segmentdefinitionen att genomgå.

Ta bort en specifik segmentdefinition

Du kan begära att få ta bort en viss segmentdefinition genom att göra en DELETE-begäran till /segment/definitions-slutpunkten och ange ID:t för segmentdefinitionen som du vill ta bort i sökvägen till begäran.

OBSERVERA
En segmentdefinition som används i målaktiveringen kan inte tas bort.

API-format

DELETE /segment/definitions/{SEGMENT_ID}
ParameterBeskrivning
{SEGMENT_ID}Värdet id för segmentdefinitionen som du vill ta bort.

Begäran

En exempelbegäran om att ta bort en segmentdefinition.
curl -X DELETE https://platform.adobe.io/data/core/ups/segment/definitions/4afe34ae-8c98-4513-8a1d-67ccaa54bc05 \
 -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 utan något meddelande.

Uppdatera en specifik segmentdefinition

Du kan uppdatera en specifik segmentdefinition genom att göra en PATCH-begäran till /segment/definitions-slutpunkten och ange ID:t för segmentdefinitionen som du vill uppdatera i begärandesökvägen.

API-format

PATCH /segment/definitions/{SEGMENT_ID}
ParameterBeskrivning
{SEGMENT_ID}Värdet id för segmentdefinitionen som du vill uppdatera.

Begäran

Följande begäran kommer att uppdatera arbetsadresslandet från USA till Kanada.

OBSERVERA
Eftersom det här API-anropet ersätter innehållet i segmentdefinitionen måste du se till att alla fält som du vill behålla ingår i begärandetexten.
Ett exempel på en begäran om att uppdatera en segmentdefinition.
curl -X PATCH https://platform.adobe.io/data/core/ups/segment/definitions/4afe34ae-8c98-4513-8a1d-67ccaa54bc05 \
 -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 '
{
    "id": "4afe34ae-8c98-4513-8a1d-67ccaa54bc05",
    "name": "Updated people who ordered in the last 30 days",
    "profileInstanceId": "ups",
    "description": "Last 30 days",
    "expression": {
        "type": "PQL",
        "format": "pql/text",
        "value": "workAddress.country = \"CA\""
    },
    "schema": {
        "name": "_xdm.context.profile"
    },
    "payloadSchema": "string",
    "creationTime": 0,
    "updateTime": 0,
    "updateEpoch": 0
}'

Svar

Ett lyckat svar returnerar HTTP-status 200 med information om den nyligen uppdaterade segmentdefinitionen.

Ett exempelsvar när en segmentdefinition uppdateras.
{
    "id": "4afe34ae-8c98-4513-8a1d-67ccaa54bc05",
    "schema": {
        "name": "_xdm.context.profile"
    },
    "profileInstanceId": "ups",
    "imsOrgId": "{ORG_ID}",
    "sandbox": {
        "sandboxId": "28e74200-e3de-11e9-8f5d-7f27416c5f0d",
        "sandboxName": "prod",
        "type": "production",
        "default": true
    },
    "name": "Updated people who ordered in the last 30 days",
    "description": "Last 30 days",
    "expression": {
        "type": "PQL",
        "format": "pql/text",
        "value": "workAddress.country = \"CA\""
    },
    "evaluationInfo": {
        "batch": {
            "enabled": true
        },
        "continuous": {
            "enabled": false
        },
        "synchronous": {
            "enabled": false
        }
    },
    "dataGovernancePolicy": {
        "excludeOptOut": true
    },
    "creationTime": 0,
    "updateEpoch": 1579295340,
    "updateTime": 1579295340000
}

Konvertera segmentdefinition

Du kan konvertera en segmentdefinition mellan pql/text och pql/json eller pql/json till pql/text genom att göra en POST-förfrågan till /segment/conversion-slutpunkten.

API-format

POST /segment/conversion

Begäran

Följande begäran ändrar segmentdefinitionens format från pql/text till pql/json.

En exempelbegäran om att konvertera segmentdefinitionen.
curl -X POST https://platform.adobe.io/data/core/ups/segment/conversion \
 -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": "People who ordered in the last 30 days",
        "profileInstanceId": "ups",
        "description": "Last 30 days",
        "expression": {
            "type": "PQL",
            "format": "pql/text",
            "value": "workAddress.country = \"US\""
        },
        "schema": {
            "name": "_xdm.context.profile"
        },
        "payloadSchema": "string"
    }'

Svar

Ett lyckat svar returnerar HTTP-status 200 med information om din nyligen konverterade segmentdefinition.

Ett samplingssvar när segmentdefinitionen konverteras.
{
    "imsOrgId": "6A29340459CA8D350A49413A@AdobeOrg",
    "sandbox": {
        "sandboxId": "ff0f6870-c46d-11e9-8ca3-036939a64204",
        "sandboxName": "prod",
        "type": "production",
        "default": true
    },
    "description": "Last 30 days",
    "expression": {
        "type": "PQL",
        "format": "pql/json",
        "value": "{\"nodeType\":\"fnApply\",\"fnName\":\"=\",\"params\":[{\"nodeType\":\"fieldLookup\",\"fieldName\":\"country\",\"object\":{\"nodeType\":\"fieldLookup\",\"fieldName\":\"workAddress\",\"object\":{\"nodeType\":\"parameterReference\",\"position\":1}}},{\"nodeType\":\"literal\",\"literalType\":\"String\",\"value\":\"US\"}]}"
    }
}

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 segmentdefinitioner fungerar. Mer information om hur du skapar ett segment finns i självstudiekursen Skapa ett segment.