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

Lecture à partir d’entités Freshdesk

Prérequis

Un objet Freshdesk à partir duquel vous souhaitez lire. Vous aurez besoin du nom de l’objet.

Entités prises en charge pour la source de synchronisation :

Entité Peut être filtré Limit prise en charge Order by prise en charge Select prise en charge* Partitionnement pris en charge
Agents Oui Oui Non Oui Oui
Business Hours Non Oui Non Oui Oui
Société Oui Oui Non Oui Oui
Contacts Oui Oui Non Oui Oui
Conversations Non Oui Non Oui Non
Email Configs Non Oui Non Oui Non
Email Inboxes Oui Oui Oui Oui Non
Forum Categories Non Oui Non Oui Non
Forums Non Oui Non Oui Non
Groups (Groupes) Non Oui Non Oui Non
Produits Non Oui Non Oui Non
Rôles Non Oui Non Oui Non
Satisfaction Ratings Oui Oui Non Oui Non
Skills Non Oui Non Oui Non
Solutions Oui Oui Non Oui Non
Enquêtes Non Oui Non Oui Non
Tickets Oui Oui Oui Oui Oui
Time Entries Oui Oui Non Oui Non
Rubriques Non Oui Non Oui Non
Topic Comments Non Oui Non Oui Non

Entités prises en charge pour la source asynchrone :

Entité Version de l’API Peut être filtré Limit prise en charge Order by prise en charge Select prise en charge* Partitionnement pris en charge
Companies v2 Non Non Non Non Non
Contacts v2 Non Non Non Non Non

Exemple :

freshdesk_read = glueContext.create_dynamic_frame.from_options( connection_type="freshdesk", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v2" }

Détails des entités et des champs Freshdesk :

Entité Champ
Agents https://developers.freshdesk.com/api/#list_all_agents
Business-hours https://developers.freshdesk.com/api/#list_all_business_hours
Commentaires https://developers.freshdesk.com/api/#comment_attributess
Société https://developers.freshdesk.com/api/#companies
Contacts https://developers.freshdesk.com/api/#list_all_contacts
Conversations https://developers.freshdesk.com/api/#list_all_ticket_notes
Email-configs https://developers.freshdesk.com/api/#list_all_email_configs
Email-inboxes https://developers.freshdesk.com/api/#list_all_email_mailboxes
Forum-categories https://developers.freshdesk.com/api/#category_attributes
Forums https://developers.freshdesk.com/api/#forum_attributes
Groups (Groupes) https://developers.freshdesk.com/api/#list_all_groups
Produits https://developers.freshdesk.com/api/#list_all_products
Rôles https://developers.freshdesk.com/api/#list_all_roles
Satisfaction-rating https://developers.freshdesk.com/api/#view_all_satisfaction_ratingss
Skills https://developers.freshdesk.com/api/#list_all_skills
Solutions https://developers.freshdesk.com/api/#solution_content
Enquêtes https://developers.freshdesk.com/api/#list_all_survey
Tickets https://developers.freshdesk.com/api/#list_all_tickets
Time-entries https://developers.freshdesk.com/api/#list_all_time_entries
Rubriques https://developers.freshdesk.com/api/#topic_attributes

Requêtes de partitionnement

Partitionnement basé sur des filtres :

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 le format d’horodatage Spark utilisé dans les requêtes SQL Spark.

    Exemples de valeurs valides :

    "2024-09-30T01:01:01.000Z"
  • UPPER_BOUND : une valeur limite supérieure exclusive du champ de partition choisi.

  • NUM_PARTITIONS : le nombre de partitions.

Exemple :

freshDesk_read = glueContext.create_dynamic_frame.from_options( connection_type="freshdesk", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "entityName", "API_VERSION": "v2", "PARTITION_FIELD": "Created_Time" "LOWER_BOUND": " 2024-10-27T23:16:08Z“ "UPPER_BOUND": " 2024-10-27T23:16:08Z" "NUM_PARTITIONS": "10" }