dhisana 0.0.1.dev251__py3-none-any.whl → 0.0.1.dev253__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- dhisana/schemas/sales.py +8 -2
- dhisana/utils/apollo_tools.py +14 -0
- dhisana/utils/check_email_validity_tools.py +4 -4
- {dhisana-0.0.1.dev251.dist-info → dhisana-0.0.1.dev253.dist-info}/METADATA +1 -1
- {dhisana-0.0.1.dev251.dist-info → dhisana-0.0.1.dev253.dist-info}/RECORD +8 -8
- {dhisana-0.0.1.dev251.dist-info → dhisana-0.0.1.dev253.dist-info}/WHEEL +0 -0
- {dhisana-0.0.1.dev251.dist-info → dhisana-0.0.1.dev253.dist-info}/entry_points.txt +0 -0
- {dhisana-0.0.1.dev251.dist-info → dhisana-0.0.1.dev253.dist-info}/top_level.txt +0 -0
dhisana/schemas/sales.py
CHANGED
|
@@ -728,7 +728,10 @@ class LeadsQueryFilters(BaseModel):
|
|
|
728
728
|
# CHANGED: Renamed to be more descriptive
|
|
729
729
|
industries: Optional[List[str]] = Field(
|
|
730
730
|
default=None,
|
|
731
|
-
description=
|
|
731
|
+
description=(
|
|
732
|
+
"List of organization industries (case sensitive). "
|
|
733
|
+
"Maps to organization_industries in Apollo."
|
|
734
|
+
)
|
|
732
735
|
)
|
|
733
736
|
|
|
734
737
|
# Potential existing fields
|
|
@@ -800,7 +803,10 @@ class LeadsQueryFilters(BaseModel):
|
|
|
800
803
|
# CHANGED: Renamed for consistency
|
|
801
804
|
company_industry_tag_ids: Optional[List[str]] = Field(
|
|
802
805
|
default=None,
|
|
803
|
-
description=
|
|
806
|
+
description=(
|
|
807
|
+
"List of industry tag IDs, e.g. ['5567cd4773696439b10b0000']. "
|
|
808
|
+
"Maps to organization_industry_tag_ids."
|
|
809
|
+
)
|
|
804
810
|
)
|
|
805
811
|
|
|
806
812
|
q_organization_keyword_tags: Optional[List[str]] = Field(
|
dhisana/utils/apollo_tools.py
CHANGED
|
@@ -547,6 +547,7 @@ async def search_leads_with_apollo(
|
|
|
547
547
|
"revenueRange[max]": "revenue_range_max",
|
|
548
548
|
"revenueRange[min]": "revenue_range_min",
|
|
549
549
|
"currentlyUsingAnyOfTechnologyUids": "currently_using_any_of_technology_uids",
|
|
550
|
+
"organizationIndustries": "organization_industries",
|
|
550
551
|
"organizationIndustryTagIds": "organization_industry_tag_ids",
|
|
551
552
|
"notOrganizationIds": "not_organization_ids",
|
|
552
553
|
"qOrganizationDomainsList": "q_organization_domains_list",
|
|
@@ -614,6 +615,8 @@ async def search_leads_with_apollo(
|
|
|
614
615
|
"person_not_titles", # <--- added so single item is forced into list
|
|
615
616
|
"q_organization_job_titles",
|
|
616
617
|
"organization_latest_funding_stage_cd",
|
|
618
|
+
"organization_industries",
|
|
619
|
+
"organization_industry_tag_ids",
|
|
617
620
|
):
|
|
618
621
|
if isinstance(final_value, str):
|
|
619
622
|
final_value = [final_value]
|
|
@@ -664,6 +667,10 @@ async def search_leads_with_apollo(
|
|
|
664
667
|
dynamic_payload["sort_ascending"] = query.sort_ascending
|
|
665
668
|
if query.person_seniorities:
|
|
666
669
|
dynamic_payload["person_seniorities"] = query.person_seniorities
|
|
670
|
+
if query.industries:
|
|
671
|
+
dynamic_payload["organization_industries"] = query.industries
|
|
672
|
+
if query.company_industry_tag_ids:
|
|
673
|
+
dynamic_payload["organization_industry_tag_ids"] = query.company_industry_tag_ids
|
|
667
674
|
# Add company domains to include in search
|
|
668
675
|
if query.company_domains:
|
|
669
676
|
dynamic_payload["q_organization_domains_list"] = query.company_domains
|
|
@@ -782,6 +789,7 @@ async def search_leads_with_apollo_page(
|
|
|
782
789
|
"revenueRange[max]": "revenue_range_max",
|
|
783
790
|
"revenueRange[min]": "revenue_range_min",
|
|
784
791
|
"currentlyUsingAnyOfTechnologyUids": "currently_using_any_of_technology_uids",
|
|
792
|
+
"organizationIndustries": "organization_industries",
|
|
785
793
|
"organizationIndustryTagIds": "organization_industry_tag_ids",
|
|
786
794
|
"notOrganizationIds": "not_organization_ids",
|
|
787
795
|
"qOrganizationDomainsList": "q_organization_domains_list",
|
|
@@ -834,6 +842,8 @@ async def search_leads_with_apollo_page(
|
|
|
834
842
|
"person_not_titles",
|
|
835
843
|
"q_organization_job_titles",
|
|
836
844
|
"organization_latest_funding_stage_cd",
|
|
845
|
+
"organization_industries",
|
|
846
|
+
"organization_industry_tag_ids",
|
|
837
847
|
):
|
|
838
848
|
if isinstance(final_value, str):
|
|
839
849
|
final_value = [final_value]
|
|
@@ -880,6 +890,10 @@ async def search_leads_with_apollo_page(
|
|
|
880
890
|
|
|
881
891
|
if query.q_not_organization_keyword_tags:
|
|
882
892
|
dynamic_payload["q_not_organization_keyword_tags"] = query.q_not_organization_keyword_tags
|
|
893
|
+
if query.industries:
|
|
894
|
+
dynamic_payload["organization_industries"] = query.industries
|
|
895
|
+
if query.company_industry_tag_ids:
|
|
896
|
+
dynamic_payload["organization_industry_tag_ids"] = query.company_industry_tag_ids
|
|
883
897
|
|
|
884
898
|
# Add company domains to include in search (Apollo API: q_organization_domains_list[])
|
|
885
899
|
if query.company_domains:
|
|
@@ -514,8 +514,8 @@ async def guess_email_with_apollo(
|
|
|
514
514
|
if not apollo_email:
|
|
515
515
|
return {"email": "", "email_confidence": "low"}
|
|
516
516
|
|
|
517
|
-
# quick re‑check with
|
|
518
|
-
validation = await
|
|
517
|
+
# quick re‑check with ZeroBounce
|
|
518
|
+
validation = await check_email_validity_with_zero_bounce(apollo_email, tool_config)
|
|
519
519
|
conf = validation.get("confidence", "low")
|
|
520
520
|
return {"email": apollo_email, "email_confidence": conf}
|
|
521
521
|
|
|
@@ -547,7 +547,7 @@ async def check_email_validity(
|
|
|
547
547
|
return {"email": email_id, "confidence": "low", "is_valid": False}
|
|
548
548
|
|
|
549
549
|
names = [c.get("name") for c in tool_config if c.get("name")]
|
|
550
|
-
priority = ["
|
|
550
|
+
priority = ["zerobounce", "findymail", "hunter"]
|
|
551
551
|
|
|
552
552
|
result: Dict[str, Any] = {"email": email_id, "confidence": "low", "is_valid": False}
|
|
553
553
|
|
|
@@ -586,7 +586,7 @@ async def guess_email(
|
|
|
586
586
|
return {"email": "", "email_confidence": "low"}
|
|
587
587
|
|
|
588
588
|
names = [c.get("name") for c in tool_config if c.get("name")]
|
|
589
|
-
priority = ["
|
|
589
|
+
priority = ["apollo", "findymail", "hunter", "zerobounce"]
|
|
590
590
|
|
|
591
591
|
result: Dict[str, Any] = {"email": "", "email_confidence": "low"}
|
|
592
592
|
|
|
@@ -6,18 +6,18 @@ dhisana/cli/models.py,sha256=IzUFZW_X32mL3fpM1_j4q8AF7v5nrxJcxBoqvG-TTgA,706
|
|
|
6
6
|
dhisana/cli/predictions.py,sha256=VYgoLK1Ksv6MFImoYZqjQJkds7e5Hso65dHwbxTNNzE,646
|
|
7
7
|
dhisana/schemas/__init__.py,sha256=jv2YF__bseklT3OWEzlqJ5qE24c4aWd5F4r0TTjOrWQ,65
|
|
8
8
|
dhisana/schemas/common.py,sha256=dO3JJvu6uZQPGGwvwtstjogEVJZjvwY4nPF2B7w0tIY,9465
|
|
9
|
-
dhisana/schemas/sales.py,sha256=
|
|
9
|
+
dhisana/schemas/sales.py,sha256=mR5ekyeFeSiD_nGEf1KmtXnZcqg4UAPjeMRZOpfwgr4,34446
|
|
10
10
|
dhisana/ui/__init__.py,sha256=jv2YF__bseklT3OWEzlqJ5qE24c4aWd5F4r0TTjOrWQ,65
|
|
11
11
|
dhisana/ui/components.py,sha256=4NXrAyl9tx2wWwoVYyABO-EOGnreGMvql1AkXWajIIo,14316
|
|
12
12
|
dhisana/utils/__init__.py,sha256=jv2YF__bseklT3OWEzlqJ5qE24c4aWd5F4r0TTjOrWQ,65
|
|
13
13
|
dhisana/utils/add_mapping.py,sha256=oq_QNqag86DhgdwINBRRXNx7SOb8Q9M-V0QLP6pTzr8,13837
|
|
14
14
|
dhisana/utils/agent_tools.py,sha256=pzBFvfhU4wfSB4zv1eiRzjmnteJnfhC5V32r_v1m38Y,2321
|
|
15
|
-
dhisana/utils/apollo_tools.py,sha256=
|
|
15
|
+
dhisana/utils/apollo_tools.py,sha256=Yjs594qP5Q86ZaIJzSGJ7sgWdvitc3LXLocg9FPnZ8Y,70606
|
|
16
16
|
dhisana/utils/assistant_tool_tag.py,sha256=rYRl8ubLI7fUUIjg30XTefHBkFgRqNEVC12lF6U6Z-8,119
|
|
17
17
|
dhisana/utils/built_with_api_tools.py,sha256=TFNGhnPb2vFdveVCpjiCvE1WKe_eK95UPpR0Ha5NgMQ,10260
|
|
18
18
|
dhisana/utils/cache_output_tools.py,sha256=q-d-WR_pkIUQyCJk8T-u9sfTy1TvvWoD2kJlZfqY-vA,4392
|
|
19
19
|
dhisana/utils/cache_output_tools_local.py,sha256=okVIY54Xs5avTLu5Sv8neEPsPBce501m-6E_UhQkCAg,2447
|
|
20
|
-
dhisana/utils/check_email_validity_tools.py,sha256=
|
|
20
|
+
dhisana/utils/check_email_validity_tools.py,sha256=EBuA4a20q3DF22PykqqI5H9KiNB70ckiihBgZm-StwM,26618
|
|
21
21
|
dhisana/utils/check_for_intent_signal.py,sha256=pC9k1_2fuUXBUxmikfxmoILlqhGMsJDVxrX0m73XQzA,4517
|
|
22
22
|
dhisana/utils/check_linkedin_url_validity.py,sha256=HoniUZ0BrtuvUmo4xLnKbxfiDBxVhatj2fJGNADtRlU,8365
|
|
23
23
|
dhisana/utils/clay_tools.py,sha256=Pi3UMcxSDz2pd2Xq_tn9G8Zot5DUQM_cYNgWI2478EM,1282
|
|
@@ -95,8 +95,8 @@ dhisana/workflow/agent.py,sha256=esv7_i_XuMkV2j1nz_UlsHov_m6X5WZZiZm_tG4OBHU,565
|
|
|
95
95
|
dhisana/workflow/flow.py,sha256=xWE3qQbM7j2B3FH8XnY3zOL_QXX4LbTW4ArndnEYJE0,1638
|
|
96
96
|
dhisana/workflow/task.py,sha256=HlWz9mtrwLYByoSnePOemBUBrMEcj7KbgNjEE1oF5wo,1830
|
|
97
97
|
dhisana/workflow/test.py,sha256=E7lRnXK0PguTNzyasHytLzTJdkqIPxG5_4qk4hMEeKc,3399
|
|
98
|
-
dhisana-0.0.1.
|
|
99
|
-
dhisana-0.0.1.
|
|
100
|
-
dhisana-0.0.1.
|
|
101
|
-
dhisana-0.0.1.
|
|
102
|
-
dhisana-0.0.1.
|
|
98
|
+
dhisana-0.0.1.dev253.dist-info/METADATA,sha256=zs8sGuJ9Lv2en8iIMns92NleCIMmMQ4ub0bqzzimMsY,1190
|
|
99
|
+
dhisana-0.0.1.dev253.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
100
|
+
dhisana-0.0.1.dev253.dist-info/entry_points.txt,sha256=jujxteZmNI9EkEaK-pOCoWuBujU8TCevdkfl9ZcKHek,49
|
|
101
|
+
dhisana-0.0.1.dev253.dist-info/top_level.txt,sha256=NETTHt6YifG_P7XtRHbQiXZlgSFk9Qh9aR-ng1XTf4s,8
|
|
102
|
+
dhisana-0.0.1.dev253.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|