Lecture à partir d’entités Kustomer - AWS Glue

Lecture à partir d’entités Kustomer

Prérequis

Un objet Kustomer à partir duquel vous souhaitez lire. Vous aurez besoin du nom de l’objet, comme Brands ou Cards. Le tableau suivant présente les entités prises en charge.

Entités prises en charge pour la source :

Entité Peut être filtré Limit prise en charge Order by prise en charge Select prise en charge* Partitionnement pris en charge
Brands Non Oui Non Oui Non
Cartes Non Oui Non Oui Non
Chat Settings Non Non Non Oui Non
Companies Oui Oui Oui Oui Oui
Conversations Oui Oui Oui Oui Oui
Customers Oui Oui Oui Oui Oui
Customer Searches Pinned Non Oui Non Oui Non
Customer Searches Position Non Non Non Oui Non
Email Hooks Non Oui Non Oui Non
Web Hooks Non Oui Non Oui Non
KB Articles Non Oui Non Oui Non
KB Categories Non Oui Non Oui Non
KB Forms Non Oui Non Oui Non
KB Routes Non Oui Non Oui Non
KB Tags Non Oui Non Oui Non
KB Templates Non Oui Non Oui Non
KB Themes Non Oui Non Oui Non
Klasses Non Oui Non Oui Non
KViews Non Oui Non Oui Non
Messages Oui Oui Oui Oui Oui
Remarques Oui Oui Oui Oui Oui
Notifications Non Oui Non Oui Non

Exemple :

Kustomer_read = glueContext.create_dynamic_frame.from_options( connection_type="kustomer", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "brands", "API_VERSION": "v1" }

Détails des entités et des champs Kustomer

Pour plus d’informations sur les entités et de détails sur les champs, consultez :

API Kustomer v1

Entité Champ Type de données Opérateurs pris en charge
Brands id Chaîne N/A
name Chaîne N/A
iconUrl Chaîne N/A
createdAt DateTime N/A
updatedAt DateTime N/A
modifiedAt DateTime N/A
default Booléen N/A
Cartes id Chaîne N/A
name Chaîne N/A
createdAt DateTime N/A
updatedAt DateTime N/A
modifiedAt DateTime N/A
description Chaîne N/A
url Chaîne N/A
contexts Liste N/A
Chat Settings id Chaîne N/A
settingsVersion Entier N/A
widgetType Chaîne N/A
version Entier N/A
teamName Chaîne N/A
greeting Chaîne N/A
autoreply Chaîne N/A
embedIconUrl Chaîne N/A
embedIconColor Chaîne N/A
fallbackEmailSubject Chaîne N/A
fallbackEmailIntroduction Chaîne N/A
enabled Booléen N/A
outboundChatEnabled Booléen N/A
updatedAt DateTime N/A
modifiedAt DateTime N/A
offhoursMessage Chaîne N/A
offhoursImageUrl Chaîne N/A
closableChat Booléen N/A
noHistory Booléen N/A
disableAttachments Booléen N/A
volumeControl Struct N/A
singleSessonChat Booléen N/A
showTypingIndicatorWeb Booléen N/A
Companies id Chaîne N/A
name Chaîne =, !=, CONTAINS
createdAt DateTime N/A
updatedAt DateTime N/A
modifiedAt DateTime =, !=, >, >=, <, <=, BETWEEN
balises Liste N/A
domains Liste N/A
emails Liste N/A
phones Liste N/A
whatsapps Liste N/A
socials Liste N/A
urls Liste N/A
locations Liste N/A
roleGroupVersions Liste N/A
rev Entier N/A
Conversations id Chaîne N/A
name Chaîne =, !=, CONTAINS
preview Chaîne N/A
canaux Liste N/A
status Chaîne =, !=, CONTAINS
messageCount Entier =, !=, >, >=, <, <=
noteCount Entier =, !=, >, >=, <, <=
satisfaction Entier =, !=, >, >=, <, <=
satisfactionLevel Struct N/A
createdAt DateTime =, !=, >, >=, <, <=, BETWEEN
updatedAt DateTime =, !=, >, >=, <, <=, BETWEEN
modifiedAt DateTime =, !=, >, >=, <, <=, BETWEEN
lastActivityAt DateTime N/A
spam Booléen N/A
ended Booléen =, !=
endedAt DateTime =, !=, >, >=, <, <=, BETWEEN
endedReason Chaîne CONTAINS
endedByType Chaîne N/A
importedAt Chaîne N/A
balises Liste N/A
suggestedTags Liste N/A
sentiment Chaîne N/A
prédictions Liste N/A
suggestedShortcuts Liste N/A
firstMessageIn Struct N/A
firstMessageOut Struct N/A
lastMessageIn Struct N/A
lastMessageOut Struct N/A
lastMessageAt DateTime =, !=, >, >=, <, <=, BETWEEN
lastMessageUnrespondedTo Struct N/A
lastMessageUnrespondedToSinceLastDone Struct N/A
assignedUsers Liste N/A
assignedTeams Liste N/A
firstResponse Struct N/A
firstResponseSinceLastDone Struct N/A
lastResponse Struct N/A
firstDone Struct N/A
lastDone Struct N/A
direction Chaîne =, !=, CONTAINS
lastMessageDirection Chaîne N/A
outboundMessageCount Entier N/A
inboundMessageCount Entier N/A
rev Entier N/A
priority Entier =, !=, >, >=, <, <=
roleGroupVersions Liste N/A
accessOverride Liste N/A
assistant Struct N/A
phase Chaîne N/A
Skills Liste N/A
matchedTimeBasedRules Liste N/A
Customers id Chaîne N/A
name Chaîne =, !=, CONTAINS
displayName Chaîne N/A
displayColor Chaîne N/A
displayIcon Chaîne N/A
externalId Chaîne =, !=, CONTAINS
externalIds Liste N/A
sharedExternalIds Liste N/A
emails Liste N/A
sharedEmails Liste N/A
phones Liste N/A
sharedPhones Liste N/A
whatsapps Liste N/A
facebookIds Liste N/A
instagramIds Liste N/A
socials Liste N/A
sharedSocials Liste N/A
urls Liste N/A
locations Liste N/A
activeUsers Liste N/A
watchers Liste N/A
recentLocation Struct N/A
locale Chaîne =, !=, CONTAINS
timeZone Chaîne N/A
gender Chaîne =, !=, CONTAINS
createdAt DateTime =, !=, >, >=, <, <=, BETWEEN
updatedAt DateTime =, !=, >, >=, <, <=, BETWEEN
modifiedAt DateTime =, !=, >, >=, <, <=, BETWEEN
lastActivityAt DateTime N/A
deleted Booléen N/A
lastConversation Struct N/A
conversationCounts Struct N/A
preview Struct N/A
balises Liste N/A
progressiveStatus Chaîne =, !=, CONTAINS
verified Booléen N/A
rev Entier N/A
recentItems Liste N/A
defaultLang Chaîne =, !=, CONTAINS
satisfactionLevel Struct N/A
roleGroupVersions Liste N/A
accessOverride Liste N/A
companyName Chaîne N/A
firstName Chaîne N/A
lastName Chaîne N/A
Customer Searches Pinned id Chaîne N/A
rechercher Chaîne N/A
createdAt DateTime N/A
Customer Searches Positions id Chaîne N/A
positions Liste N/A
children Liste N/A
createdAt DateTime N/A
updatedAt DateTime N/A
modifiedAt DateTime N/A
rev Entier N/A
Email Hooks id Chaîne N/A
description Chaîne N/A
debug Booléen N/A
e-mail Chaîne N/A
eventName Chaîne N/A
title Chaîne N/A
hachage Chaîne N/A
key Chaîne N/A
createdAt DateTime N/A
modifiedAt DateTime N/A
updatedAt DateTime N/A
Web Hooks id Chaîne N/A
description Chaîne N/A
eventName Chaîne N/A
hachage Chaîne N/A
url Chaîne N/A
createdAt DateTime N/A
modifiedAt DateTime N/A
updatedAt DateTime N/A
title Chaîne N/A
version Entier N/A
debug Booléen N/A
KB Articles id Chaîne N/A
hachage Chaîne N/A
title Chaîne N/A
source Chaîne N/A
status Chaîne N/A
scope Chaîne N/A
createdAt DateTime N/A
updatedAt DateTime N/A
deleted Booléen N/A
deletedAt DateTime N/A
modifiedAt DateTime N/A
publishedAt DateTime N/A
balises Liste N/A
categories Liste N/A
knowledgeBases Liste N/A
metaTitle Chaîne N/A
metaDescription Chaîne N/A
metaKeywords Liste N/A
langVersions Struct N/A
latestLangs Struct N/A
KB Categories id Chaîne N/A
hachage Chaîne N/A
createdAt DateTime N/A
modifiedAt DateTime N/A
updatedAt DateTime N/A
published Booléen N/A
positions Liste N/A
categoryPositions Liste N/A
racine Booléen N/A
langs Struct N/A
KB Forms id Chaîne N/A
name Chaîne N/A
slug Chaîne N/A
hachage Chaîne N/A
body Chaîne N/A
layout Liste N/A
layoutV2 Liste N/A
componentsV2 Struct N/A
conditions Struct N/A
advanced Booléen N/A
createdAt DateTime N/A
updatedAt DateTime N/A
publishedAt DateTime N/A
modifiedAt Chaîne N/A
published Booléen N/A
snippets Liste N/A
recaptcha Booléen N/A
klass Chaîne N/A
channel Chaîne N/A
deflection Booléen N/A
formHookEnabled Booléen N/A
replyFrom Chaîne N/A
wcag Booléen N/A
KB Routes id Chaîne N/A
url Chaîne N/A
routableType Chaîne N/A
routableId Chaîne N/A
createdAt DateTime N/A
updatedAt DateTime N/A
modifiedAt DateTime N/A
KB Tags id Chaîne N/A
name Chaîne N/A
createdAt DateTime N/A
updatedAt DateTime N/A
modifiedAt DateTime N/A
KB Templates id Chaîne N/A
title Chaîne N/A
description Chaîne N/A
beta Booléen N/A
manifeste Struct N/A
jsxSnippets Liste N/A
images Liste N/A
version Chaîne N/A
createdAt DateTime N/A
updatedAt DateTime N/A
KB Themes id Chaîne N/A
name Chaîne N/A
actif Booléen N/A
default Booléen N/A
lastfileUpdatedAt DateTime N/A
personnalisé Booléen N/A
status Chaîne N/A
templateVersionId Chaîne N/A
templateTitle Chaîne N/A
templateVersion Chaîne N/A
manifeste Struct N/A
configSnippets Liste N/A
jsxSnippets Liste N/A
createdAt DateTime N/A
updatedAt DateTime N/A
modifiedAt DateTime N/A
rev Entier N/A
Klasses id Chaîne N/A
name Chaîne N/A
icon Chaîne N/A
color Chaîne N/A
appDisabled Booléen N/A
status Chaîne N/A
updatedAt DateTime N/A
createdAt DateTime N/A
s3DataUrl Chaîne N/A
KViews id Chaîne N/A
ressource Chaîne N/A
modèle Chaîne N/A
context Chaîne N/A
meta Struct N/A
appDisabled Booléen N/A
enabled Booléen N/A
advanced Booléen N/A
layout Liste N/A
components Struct N/A
conditions Struct N/A
rev Entier N/A
createdAt DateTime N/A
modifiedAt DateTime N/A
updatedAt DateTime N/A
Notifications id Chaîne N/A
name Chaîne N/A
status Chaîne N/A
event Struct N/A
createdAt DateTime N/A
updatedAt DateTime N/A
Messages id Chaîne N/A
externalId Chaîne N/A
channel Chaîne =, !=, CONTAINS
app Chaîne N/A
size Entier =, !=, >, >=, <, <=
direction Chaîne =, !=, CONTAINS
preview Chaîne N/A
subject Chaîne N/A
meta Struct N/A
status Chaîne =, !=, CONTAINS
directionType Chaîne =, !=, CONTAINS
assignedTeams Liste N/A
assignedUsers Liste N/A
errorAt DateTime =, !=, >, >=, <, <=, BETWEEN
auto Booléen =, !=
sentAt DateTime =, !=, >, >=, <, <=, BETWEEN
createdAt DateTime =, !=, >, >=, <, <=, BETWEEN
updatedAt DateTime N/A
modifiedAt DateTime N/A
redacted Booléen N/A
createdByTeams Liste N/A
rev Entier N/A
reactions Liste N/A
intentDetections Liste N/A
Remarques id Chaîne N/A
body Chaîne CONTAINS
createdAt DateTime =, !=, >, >=, <, <=, BETWEEN
updatedAt DateTime =, !=, >, >=, <, <=, BETWEEN
modifiedAt DateTime =, !=, >, >=, <, <=, BETWEEN
createdByTeams Liste N/A

Requêtes de partitionnement

Partitionnement basé sur les champs

Vous pouvez indiquer les options Spark supplémentaires PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND et NUM_PARTITIONS si vous souhaitez utiliser la simultanéité dans Spark. Avec ces paramètres, la requête d’origine serait divisée en NUM_PARTITIONS nombres de sous-requêtes pouvant être exécutées simultanément par les tâches Spark.

  • PARTITION_FIELD : le nom du champ à utiliser pour partitionner la requête.

  • LOWER_BOUND : une valeur limite inférieure inclusive du champ de partition choisi.

    Pour le champ DateTime, nous acceptons la valeur au format ISO.

    Exemple de valeur valide :

    "2023-01-15T11:18:39.205Z"
  • UPPER_BOUND : une valeur limite supérieure exclusive du champ de partition choisi.

  • NUM_PARTITIONS : le nombre de partitions.

Les détails relatifs à la prise en charge des champs de partitionnement par entité sont présentés dans le tableau suivant :

Nom de l’entité Champs de partitionnement Type de données
Companies modifiedAt DateTime
Conversations createdAt, updatedAt, modifiedAt, endedAt, lastMessageAt DateTime
messageCount, noteCount BigInteger
priority Entier
Customers createdAt, updatedAt, modifiedAt DateTime
Messages errorAt, sentAt, createdAt DateTime
size BigInteger
Remarques createdAt, updatedAt, modifiedAt DateTime

Exemple :

Kustomer_read = glueContext.create_dynamic_frame.from_options( connection_type="kustomer", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "conversation", "API_VERSION": "v1", "PARTITION_FIELD": "createdAt" "LOWER_BOUND": "2023-01-15T11:18:39.205Z" "UPPER_BOUND": "2023-02-15T11:18:39.205Z" "NUM_PARTITIONS": "2" }