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 | |
| 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" }