Leitura de entidades do Pipedrive
Pré-requisitos
-
Um objeto do Pipedrive do qual você deseja ler. Consulte a tabela de entidades compatíveis abaixo para verificar as entidades disponíveis.
Entidades compatíveis
| Entidade | Pode ser filtrada | Oferece suporte a limite | Oferece suporte a Ordenar por | Oferece suporte a Selecionar * | Oferece suporte a particionamento |
|---|---|---|---|---|---|
| Atividades | Sim | Sim | Não | Sim | Sim |
| Tipo de atividade | Não | Não | Não | Sim | Não |
| Logs de chamadas | Não | Não | Não | Sim | Não |
| Moedas | Sim | Sim | Não | Sim | Não |
| Ofertas | Sim | Sim | Sim | Sim | Sim |
| Leads | Sim | Sim | Sim | Sim | Não |
| Fontes de leads | Não | Sim | Não | Sim | Não |
| Rótulos de leads | Não | Não | Não | Não | Não |
| Observações | Sim | Sim | Sim | Sim | Sim |
| Organização | Sim | Sim | Não | Sim | Sim |
| Conjuntos de permissões | Sim | Não | Não | Sim | Não |
| Pessoas | Sim | Sim | Sim | Sim | Sim |
| Pipelines | Não | Sim | Não | Sim | Não |
| Produtos | Sim | Sim | Não | Sim | Sim |
| Perfis | Não | Sim | Não | Sim | Não |
| Estágios | Sim | Sim | Não | Sim | Não |
| Usuários | Não | Não | Não | Sim | Não |
Exemplo
pipedrive_read= glueContext.create_dynamic_frame.from_options( connection_type="PIPEDRIVE", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "activites", "API_VERSION": "v1" }
Detalhes das entidades e dos campos do Pipedrive
Lista de entidades:
-
Atividades: https://developers.pipedrive.com/docs/api/v1/Activities
-
Tipo de atividade: https://developers.pipedrive.com/docs/api/v1/ActivityTypes
-
Logs de chamadas: https://developers.pipedrive.com/docs/api/v1/CallLogs
-
Moedas: https://developers.pipedrive.com/docs/api/v1/Currencies
-
Fontes de leads: https://developers.pipedrive.com/docs/api/v1/LeadSources
-
Rótulos de leads: https://developers.pipedrive.com/docs/api/v1/LeadLabels
-
Observações: https://developers.pipedrive.com/docs/api/v1/Notes
-
Organizações: https://developers.pipedrive.com/docs/api/v1/Organizations
-
Conjuntos de permissões: https://developers.pipedrive.com/docs/api/v1/PermissionSets
-
Pessoas: https://developers.pipedrive.com/docs/api/v1/Persons
-
Pipelines: https://developers.pipedrive.com/docs/api/v1/Pipelines
-
Produtos: https://developers.pipedrive.com/docs/api/v1/Products
-
Estágios: https://developers.pipedrive.com/docs/api/v1/Stages
-
Usuários: https://developers.pipedrive.com/docs/api/v1/Users
| Entidade | Tipo de dado | Operadores com suporte |
|---|---|---|
| Atividades, Ofertas, Observações, Organização, Pessoas e Produtos. | Data | '=' |
| Inteiro | '=' | |
| String | '=' | |
| Booleano | '=' |
Particionamento de consultas
No Pipedrive, apenas um campo (due_date) da entidade Atividades oferece suporte ao particionamento baseado em campos, que é um campo de Data.
Podem ser fornecidas as opções adicionais do Spark PARTITION_FIELD, LOWER_BOUND, UPPER_BOUND e NUM_PARTITIONS se você quiser utilizar a simultaneidade no Spark. Com esses parâmetros, a consulta original seria dividida em NUM_PARTITIONS subconsultas, que poderiam ser executadas pelas tarefas do Spark simultaneamente.
-
PARTITION_FIELD: o nome do campo a ser usado para particionar a consulta. -
LOWER_BOUND: um valor limite inferior inclusivo do campo de partição escolhido.Na data, aceitamos o formato de data do Spark usado em consultas SQL do Spark. Exemplo de valores válidos:
"2024-02-06". -
UPPER_BOUND: um valor limite superior exclusivo do campo de partição escolhido. -
NUM_PARTITIONS: número de partições.
Exemplo
pipedrive_read = glueContext.create_dynamic_frame.from_options( connection_type="PIPEDRIVE", connection_options={ "connectionName": "connectionName", "ENTITY_NAME": "activites", "API_VERSION": "v1", "PARTITION_FIELD": "due_date" "LOWER_BOUND": "2023-09-07T02:03:00.000Z" "UPPER_BOUND": "2024-05-07T02:03:00.000Z" "NUM_PARTITIONS": "10" }