qodev-apollo-cli 0.1.0__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.
- apollo_cli/__init__.py +3 -0
- apollo_cli/__main__.py +5 -0
- apollo_cli/app.py +120 -0
- apollo_cli/commands/__init__.py +0 -0
- apollo_cli/commands/accounts.py +51 -0
- apollo_cli/commands/calls.py +54 -0
- apollo_cli/commands/contacts.py +147 -0
- apollo_cli/commands/deals.py +51 -0
- apollo_cli/commands/emails.py +37 -0
- apollo_cli/commands/enrich.py +34 -0
- apollo_cli/commands/install.py +59 -0
- apollo_cli/commands/jobs.py +36 -0
- apollo_cli/commands/news.py +35 -0
- apollo_cli/commands/notes.py +68 -0
- apollo_cli/commands/people.py +34 -0
- apollo_cli/commands/pipelines.py +106 -0
- apollo_cli/commands/tasks.py +79 -0
- apollo_cli/commands/usage.py +56 -0
- apollo_cli/context.py +35 -0
- apollo_cli/formatters/__init__.py +0 -0
- apollo_cli/formatters/accounts.py +62 -0
- apollo_cli/formatters/contacts.py +80 -0
- apollo_cli/formatters/deals.py +46 -0
- apollo_cli/formatters/generic.py +101 -0
- apollo_cli/help_reference.py +123 -0
- apollo_cli/output.py +150 -0
- apollo_cli/skills/SKILL.md +200 -0
- apollo_cli/skills/__init__.py +1 -0
- apollo_cli/skills/references/__init__.py +1 -0
- apollo_cli/skills/references/account-workflows.md +202 -0
- apollo_cli/skills/references/contact-workflows.md +110 -0
- apollo_cli/skills/references/deal-workflows.md +142 -0
- qodev_apollo_cli-0.1.0.dist-info/METADATA +224 -0
- qodev_apollo_cli-0.1.0.dist-info/RECORD +37 -0
- qodev_apollo_cli-0.1.0.dist-info/WHEEL +4 -0
- qodev_apollo_cli-0.1.0.dist-info/entry_points.txt +2 -0
- qodev_apollo_cli-0.1.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# Contact Management Workflows
|
|
2
|
+
|
|
3
|
+
## Search and Filter
|
|
4
|
+
|
|
5
|
+
Search contacts with various filters:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# Keyword search
|
|
9
|
+
qodev-apollo-cli contacts search --query "engineer"
|
|
10
|
+
|
|
11
|
+
# Filter by stage
|
|
12
|
+
qodev-apollo-cli contacts search --stage-id <stage-id>
|
|
13
|
+
|
|
14
|
+
# Filter by LinkedIn URL
|
|
15
|
+
qodev-apollo-cli contacts search --linkedin-url "https://linkedin.com/in/..."
|
|
16
|
+
|
|
17
|
+
# Pagination
|
|
18
|
+
qodev-apollo-cli contacts search --query "engineer" --page 2 --limit 50
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## LinkedIn Integration
|
|
22
|
+
|
|
23
|
+
Find or create contacts from LinkedIn profiles:
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Find existing contact by LinkedIn URL
|
|
27
|
+
qodev-apollo-cli contacts find-by-linkedin "https://linkedin.com/in/janesmith"
|
|
28
|
+
|
|
29
|
+
# Auto-create if not found
|
|
30
|
+
qodev-apollo-cli contacts find-by-linkedin "https://linkedin.com/in/janesmith" --create
|
|
31
|
+
|
|
32
|
+
# Specify name for fallback search
|
|
33
|
+
qodev-apollo-cli contacts find-by-linkedin "https://linkedin.com/in/janesmith" --name "Jane Smith"
|
|
34
|
+
|
|
35
|
+
# Assign to stage on creation
|
|
36
|
+
qodev-apollo-cli contacts find-by-linkedin "https://linkedin.com/in/janesmith" --create --stage-id <stage-id>
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Contact Creation
|
|
40
|
+
|
|
41
|
+
Create new contacts manually:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
qodev-apollo-cli contacts create \
|
|
45
|
+
--first-name Jane \
|
|
46
|
+
--last-name Smith \
|
|
47
|
+
--email jane@example.com \
|
|
48
|
+
--title "VP Engineering" \
|
|
49
|
+
--company "Acme Corp" \
|
|
50
|
+
--linkedin-url "https://linkedin.com/in/janesmith"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Update Contact Fields
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
# Update title
|
|
57
|
+
qodev-apollo-cli contacts update <contact-id> --title "CTO"
|
|
58
|
+
|
|
59
|
+
# Update labels
|
|
60
|
+
qodev-apollo-cli contacts update <contact-id> --label-ids "label1,label2,label3"
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## View Contact Stages
|
|
64
|
+
|
|
65
|
+
List all available contact stages:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
qodev-apollo-cli contacts stages
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## JSON Output for Scripting
|
|
72
|
+
|
|
73
|
+
Extract specific fields using jq:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
# Get contact emails
|
|
77
|
+
qodev-apollo-cli --json contacts search --query "engineer" | jq '.items[].email'
|
|
78
|
+
|
|
79
|
+
# Count total results
|
|
80
|
+
qodev-apollo-cli --json contacts search --query "engineer" | jq '.total'
|
|
81
|
+
|
|
82
|
+
# Extract contact IDs
|
|
83
|
+
qodev-apollo-cli --json contacts search --query "engineer" | jq '.items[].id'
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
## Bulk Operations
|
|
87
|
+
|
|
88
|
+
Process multiple contacts using JSON output:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
# Search and process each contact
|
|
92
|
+
qodev-apollo-cli --json contacts search --query "VP" | \
|
|
93
|
+
jq -r '.items[].id' | \
|
|
94
|
+
while read id; do
|
|
95
|
+
qodev-apollo-cli contacts get "$id"
|
|
96
|
+
done
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## Filtering by Stage
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
# List all stages to find IDs
|
|
103
|
+
qodev-apollo-cli contacts stages
|
|
104
|
+
|
|
105
|
+
# Search contacts in specific stage
|
|
106
|
+
qodev-apollo-cli contacts search --stage-id <stage-id>
|
|
107
|
+
|
|
108
|
+
# JSON output for stage filtering
|
|
109
|
+
qodev-apollo-cli --json contacts stages | jq '.items[] | select(.name=="Qualified Lead") | .id'
|
|
110
|
+
```
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# Deal Pipeline Workflows
|
|
2
|
+
|
|
3
|
+
## Understanding Pipelines
|
|
4
|
+
|
|
5
|
+
Apollo.io uses pipelines to organize sales opportunities. Each pipeline has multiple stages representing the sales process.
|
|
6
|
+
|
|
7
|
+
## List Pipelines
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# View all pipelines
|
|
11
|
+
qodev-apollo-cli pipelines list
|
|
12
|
+
|
|
13
|
+
# Get details of specific pipeline
|
|
14
|
+
qodev-apollo-cli pipelines get <pipeline-id>
|
|
15
|
+
|
|
16
|
+
# View as JSON
|
|
17
|
+
qodev-apollo-cli --json pipelines list | jq '.items[].name'
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Pipeline Stages
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# List stages in a pipeline
|
|
24
|
+
qodev-apollo-cli pipelines stages <pipeline-id>
|
|
25
|
+
|
|
26
|
+
# Get stage details
|
|
27
|
+
qodev-apollo-cli stages get <stage-id>
|
|
28
|
+
|
|
29
|
+
# Extract stage IDs with jq
|
|
30
|
+
qodev-apollo-cli --json pipelines stages <pipeline-id> | jq '.items[] | {name, id}'
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Searching Deals
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# Search all deals
|
|
37
|
+
qodev-apollo-cli deals search
|
|
38
|
+
|
|
39
|
+
# Search by keyword
|
|
40
|
+
qodev-apollo-cli deals search --query "enterprise"
|
|
41
|
+
|
|
42
|
+
# Filter by stage
|
|
43
|
+
qodev-apollo-cli deals search --stage-id <stage-id>
|
|
44
|
+
|
|
45
|
+
# Pagination
|
|
46
|
+
qodev-apollo-cli deals search --page 2 --limit 50
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Deal Details
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
# Get deal details
|
|
53
|
+
qodev-apollo-cli deals get <deal-id>
|
|
54
|
+
|
|
55
|
+
# Extract specific fields with jq
|
|
56
|
+
qodev-apollo-cli --json deals get <deal-id> | jq '{name, amount, stage_name, is_won}'
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
## Pipeline Analysis
|
|
60
|
+
|
|
61
|
+
Analyze deals across stages:
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Count deals per stage
|
|
65
|
+
qodev-apollo-cli --json deals search --stage-id <stage-id> | jq '.total'
|
|
66
|
+
|
|
67
|
+
# List all won deals
|
|
68
|
+
qodev-apollo-cli --json deals search | jq '.items[] | select(.is_won==true)'
|
|
69
|
+
|
|
70
|
+
# Calculate total deal value
|
|
71
|
+
qodev-apollo-cli --json deals search | jq '[.items[].amount] | add'
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Stage Movement Tracking
|
|
75
|
+
|
|
76
|
+
Track deals as they move through stages:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# Get current stage distribution
|
|
80
|
+
for stage_id in $(qodev-apollo-cli --json pipelines stages <pipeline-id> | jq -r '.items[].id'); do
|
|
81
|
+
count=$(qodev-apollo-cli --json deals search --stage-id "$stage_id" | jq '.total')
|
|
82
|
+
stage_name=$(qodev-apollo-cli --json stages get "$stage_id" | jq -r '.name')
|
|
83
|
+
echo "$stage_name: $count deals"
|
|
84
|
+
done
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## JSON Output Examples
|
|
88
|
+
|
|
89
|
+
### Pipeline List
|
|
90
|
+
|
|
91
|
+
```json
|
|
92
|
+
{
|
|
93
|
+
"items": [
|
|
94
|
+
{
|
|
95
|
+
"id": "pipeline-123",
|
|
96
|
+
"name": "Sales Pipeline",
|
|
97
|
+
"created_at": "2024-01-01T00:00:00Z"
|
|
98
|
+
}
|
|
99
|
+
],
|
|
100
|
+
"total": 1
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Deal Search
|
|
105
|
+
|
|
106
|
+
```json
|
|
107
|
+
{
|
|
108
|
+
"items": [
|
|
109
|
+
{
|
|
110
|
+
"id": "deal-789",
|
|
111
|
+
"name": "Enterprise Deal",
|
|
112
|
+
"amount": 50000,
|
|
113
|
+
"stage_name": "Negotiation",
|
|
114
|
+
"is_won": false,
|
|
115
|
+
"owner_id": "owner-123"
|
|
116
|
+
}
|
|
117
|
+
],
|
|
118
|
+
"total": 25,
|
|
119
|
+
"page": 1,
|
|
120
|
+
"limit": 25
|
|
121
|
+
}
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## Common Scenarios
|
|
125
|
+
|
|
126
|
+
### Find deals in final stage
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
# Get final stage ID
|
|
130
|
+
final_stage=$(qodev-apollo-cli --json pipelines stages <pipeline-id> | \
|
|
131
|
+
jq -r '.items[-1].id')
|
|
132
|
+
|
|
133
|
+
# Search deals in final stage
|
|
134
|
+
qodev-apollo-cli deals search --stage-id "$final_stage"
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Track deal progression
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
# Monitor specific deal
|
|
141
|
+
watch -n 60 'qodev-apollo-cli deals get <deal-id> | grep -E "(stage_name|is_won)"'
|
|
142
|
+
```
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: qodev-apollo-cli
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: Agent-friendly CLI for the Apollo API
|
|
5
|
+
Project-URL: Homepage, https://github.com/qodevai/apollo-cli
|
|
6
|
+
Project-URL: Repository, https://github.com/qodevai/apollo-cli
|
|
7
|
+
Project-URL: Issues, https://github.com/qodevai/apollo-cli/issues
|
|
8
|
+
Author-email: Jan Scheffler <jan.scheffler@qodev.ai>
|
|
9
|
+
License: MIT
|
|
10
|
+
License-File: LICENSE
|
|
11
|
+
Keywords: api,apollo,cli,contacts,crm,sales
|
|
12
|
+
Classifier: Development Status :: 4 - Beta
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Programming Language :: Python :: 3
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
19
|
+
Classifier: Typing :: Typed
|
|
20
|
+
Requires-Python: >=3.11
|
|
21
|
+
Requires-Dist: cyclopts>=3.0
|
|
22
|
+
Requires-Dist: qodev-apollo-api>=0.1.0
|
|
23
|
+
Requires-Dist: rich>=13.0
|
|
24
|
+
Provides-Extra: dev
|
|
25
|
+
Requires-Dist: mypy>=1.13.0; extra == 'dev'
|
|
26
|
+
Requires-Dist: pytest-asyncio>=0.25.0; extra == 'dev'
|
|
27
|
+
Requires-Dist: pytest-mock>=3.15; extra == 'dev'
|
|
28
|
+
Requires-Dist: pytest>=9.0; extra == 'dev'
|
|
29
|
+
Requires-Dist: ruff>=0.15; extra == 'dev'
|
|
30
|
+
Description-Content-Type: text/markdown
|
|
31
|
+
|
|
32
|
+
[](https://github.com/qodevai/apollo-cli/actions/workflows/ci.yml)
|
|
33
|
+
[](https://pypi.org/project/qodev-apollo-cli/)
|
|
34
|
+
|
|
35
|
+
# qodev-apollo-cli
|
|
36
|
+
|
|
37
|
+
Agent-friendly CLI for the Apollo.io API. Designed for both human and AI-agent workflows, with structured JSON output, consistent flags, and predictable error codes.
|
|
38
|
+
|
|
39
|
+
## Why this CLI?
|
|
40
|
+
|
|
41
|
+
- **Agent-friendly** — `--json` on every command, consistent flags, predictable exit codes
|
|
42
|
+
- **Built for AI agent workflows** — works seamlessly with Claude Code, scripts, and automation pipelines
|
|
43
|
+
- **Comprehensive** — Access contacts, accounts, deals, enrichment, tasks, notes, and more
|
|
44
|
+
- **Dual output modes** — Beautiful markdown tables for humans, structured JSON for agents
|
|
45
|
+
|
|
46
|
+
## Installation
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
pip install qodev-apollo-cli
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Or run directly without installing:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
uvx qodev-apollo-cli
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Quick Start
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
# Set your Apollo API key
|
|
62
|
+
export APOLLO_API_KEY="your_api_key_here"
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# Install AI agent skill files (for Claude Code, etc.)
|
|
67
|
+
$ qodev-apollo-cli install --skills
|
|
68
|
+
|
|
69
|
+
# Search contacts
|
|
70
|
+
$ qodev-apollo-cli contacts search --query "engineer" --limit 5
|
|
71
|
+
Jane Smith VP Engineering Acme Corp jane@acme.com
|
|
72
|
+
|
|
73
|
+
# Get contact details as JSON (for scripts/agents)
|
|
74
|
+
$ qodev-apollo-cli --json contacts get <contact-id>
|
|
75
|
+
{"id": "...", "name": "Jane Smith", "title": "VP Engineering", ...}
|
|
76
|
+
|
|
77
|
+
# Enrich a company (free)
|
|
78
|
+
$ qodev-apollo-cli enrich org acme.com
|
|
79
|
+
|
|
80
|
+
# Search deals in a specific stage
|
|
81
|
+
$ qodev-apollo-cli deals search --stage-id <stage-id>
|
|
82
|
+
|
|
83
|
+
# Check API usage
|
|
84
|
+
$ qodev-apollo-cli usage
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Commands
|
|
88
|
+
|
|
89
|
+
| Group | Subcommand | Description |
|
|
90
|
+
|---|---|---|
|
|
91
|
+
| **contacts** | `search` | Search contacts (`--query`, `--stage-id`, `--linkedin-url`) |
|
|
92
|
+
| | `get` | Get contact details by ID |
|
|
93
|
+
| | `create` | Create a new contact (`--first-name`, `--last-name`, `--email`, etc.) |
|
|
94
|
+
| | `update` | Update contact (`--title`, `--label-ids`) |
|
|
95
|
+
| | `find-by-linkedin` | Find contact by LinkedIn URL (`--create`, `--stage-id`) |
|
|
96
|
+
| | `stages` | List all contact stages |
|
|
97
|
+
| **accounts** | `search` | Search companies/accounts (`--query`, `--domain`) |
|
|
98
|
+
| | `get` | Get account details by ID |
|
|
99
|
+
| **deals** | `search` | Search opportunities/deals (`--query`, `--stage-id`) |
|
|
100
|
+
| | `get` | Get deal details by ID |
|
|
101
|
+
| **pipelines** | `list` | List all deal pipelines |
|
|
102
|
+
| | `get` | Get pipeline details |
|
|
103
|
+
| | `stages` | List stages in a pipeline |
|
|
104
|
+
| **stages** | `list` | List all contact stages |
|
|
105
|
+
| | `get` | Get stage details |
|
|
106
|
+
| **enrich** | `org` | Enrich organization by domain (FREE - no credits) |
|
|
107
|
+
| | `person` | Enrich person by email (1 credit per lookup) |
|
|
108
|
+
| **people** | `search` | Search people database (`--person-titles`, `--q-organization-domains`) |
|
|
109
|
+
| **notes** | `search` | Search notes (`--contact-id`) |
|
|
110
|
+
| | `create` | Create a note (`--contact-ids`, `--note`) |
|
|
111
|
+
| **tasks** | `search` | Search tasks (`--type`, `--status`) |
|
|
112
|
+
| | `create` | Create a task (`--contact-ids`, `--note`, `--due-at`) |
|
|
113
|
+
| **calls** | `search` | Search call activities |
|
|
114
|
+
| **emails** | `search` | Search email activities |
|
|
115
|
+
| **news** | `search` | Search news (`--categories`) |
|
|
116
|
+
| **jobs** | `search` | Search job postings (`--job-titles`, `--company-domains`) |
|
|
117
|
+
| **usage** | (default) | Show API usage stats and rate limits |
|
|
118
|
+
| **install** | `--skills` | Install AI agent skill files to `.claude/skills/apollo/` |
|
|
119
|
+
|
|
120
|
+
## Configuration
|
|
121
|
+
|
|
122
|
+
### Authentication
|
|
123
|
+
|
|
124
|
+
Set the `APOLLO_API_KEY` environment variable, or pass `--api-key` on each invocation:
|
|
125
|
+
|
|
126
|
+
```bash
|
|
127
|
+
export APOLLO_API_KEY="your_api_key_here"
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
Get your API key from [Apollo.io Settings → API](https://app.apollo.io/#/settings/integrations/api).
|
|
131
|
+
|
|
132
|
+
### Global Options
|
|
133
|
+
|
|
134
|
+
| Flag | Description | Default |
|
|
135
|
+
|---|---|---|
|
|
136
|
+
| `--json` | Output as JSON (for scripting / agents) | `false` |
|
|
137
|
+
| `--api-key` | Apollo API key (overrides `APOLLO_API_KEY`) | |
|
|
138
|
+
| `--limit` | Results per page | `25` |
|
|
139
|
+
| `--page` | Page number | `1` |
|
|
140
|
+
|
|
141
|
+
### Exit Codes
|
|
142
|
+
|
|
143
|
+
| Code | Meaning |
|
|
144
|
+
|---|---|
|
|
145
|
+
| `0` | Success |
|
|
146
|
+
| `80` | Authentication error (invalid API key) |
|
|
147
|
+
| `81` | Rate limit exceeded |
|
|
148
|
+
| `82` | API error (server error, invalid request) |
|
|
149
|
+
| `83` | Validation error (missing required fields) |
|
|
150
|
+
|
|
151
|
+
## JSON Output
|
|
152
|
+
|
|
153
|
+
All commands support `--json` for structured output:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
qodev-apollo-cli --json contacts search --query "engineer" | jq '.items[0].name'
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Paginated responses include:
|
|
160
|
+
|
|
161
|
+
```json
|
|
162
|
+
{
|
|
163
|
+
"items": [...],
|
|
164
|
+
"total": 142,
|
|
165
|
+
"page": 1,
|
|
166
|
+
"limit": 25
|
|
167
|
+
}
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
## Common Workflows
|
|
171
|
+
|
|
172
|
+
### Find and enrich a contact
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# Search by keyword
|
|
176
|
+
qodev-apollo-cli contacts search --query "jane smith"
|
|
177
|
+
|
|
178
|
+
# Get full details
|
|
179
|
+
qodev-apollo-cli contacts get <contact-id>
|
|
180
|
+
|
|
181
|
+
# Enrich person data (1 credit)
|
|
182
|
+
qodev-apollo-cli enrich person jane@example.com
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Pipeline management
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
# List all pipelines
|
|
189
|
+
qodev-apollo-cli pipelines list
|
|
190
|
+
|
|
191
|
+
# Get stages in a pipeline
|
|
192
|
+
qodev-apollo-cli pipelines stages <pipeline-id>
|
|
193
|
+
|
|
194
|
+
# Search deals in specific stage
|
|
195
|
+
qodev-apollo-cli deals search --stage-id <stage-id>
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### LinkedIn integration
|
|
199
|
+
|
|
200
|
+
```bash
|
|
201
|
+
# Find contact by LinkedIn URL
|
|
202
|
+
qodev-apollo-cli contacts find-by-linkedin "https://linkedin.com/in/janesmith"
|
|
203
|
+
|
|
204
|
+
# Auto-create if not found
|
|
205
|
+
qodev-apollo-cli contacts find-by-linkedin "https://linkedin.com/in/janesmith" --create
|
|
206
|
+
|
|
207
|
+
# Assign to stage on creation
|
|
208
|
+
qodev-apollo-cli contacts find-by-linkedin "https://linkedin.com/in/janesmith" \
|
|
209
|
+
--create --stage-id <stage-id>
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### Company enrichment (FREE)
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
# Enrich by domain (no credits used)
|
|
216
|
+
qodev-apollo-cli enrich org acme.com
|
|
217
|
+
|
|
218
|
+
# View as JSON
|
|
219
|
+
qodev-apollo-cli --json enrich org acme.com | jq '.industry'
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
## License
|
|
223
|
+
|
|
224
|
+
MIT -- see [LICENSE](LICENSE) for details.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
apollo_cli/__init__.py,sha256=IJruWa5HWY14O2wD7u-JPUC5zuTTVesIF_eudLiEDWI,102
|
|
2
|
+
apollo_cli/__main__.py,sha256=e_aD87eADAUZbJOmWbhRv6YvO_Q0EcpC-anVrKIoKd8,88
|
|
3
|
+
apollo_cli/app.py,sha256=XsKvWw9EBO5RSVVZgH06GMWFhuCGc2dqYTbr6qkAFJY,4046
|
|
4
|
+
apollo_cli/context.py,sha256=R8bDD1XWIzOdR2aGoFcMidAH8CBC9dWp3B8kYB8G8xw,997
|
|
5
|
+
apollo_cli/help_reference.py,sha256=oI4YLlBzBlGPVYdErh8rvffmVsoeIs0R687WPOWSggc,3949
|
|
6
|
+
apollo_cli/output.py,sha256=5Odu8QF9EhZe4baVQNRC3FDl22sJ1g7g8Hv7cIQtThc,4653
|
|
7
|
+
apollo_cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
8
|
+
apollo_cli/commands/accounts.py,sha256=K9fu_SroSGvDc6vofsrD_G1YxN3zd-Ms3s2DeZ7ti4A,1488
|
|
9
|
+
apollo_cli/commands/calls.py,sha256=YHA5DO5sKDXcQZkrME9BXni12CoP-vUNMcj3qvEyPgU,1474
|
|
10
|
+
apollo_cli/commands/contacts.py,sha256=-hFdDta7JCeNrKD0XRelIbKWnsrnW-jg4BHQWSc2qEA,4828
|
|
11
|
+
apollo_cli/commands/deals.py,sha256=PQ84FI2MzTwGasp2zbzbVEbIMaZz9eDNWRKrvbyqJa0,1414
|
|
12
|
+
apollo_cli/commands/emails.py,sha256=I9ysuwa2AjVOjVPQuoCOhNzT0P7c-XHIjHoEi1qX8fg,938
|
|
13
|
+
apollo_cli/commands/enrich.py,sha256=FWKmo-LcPNilsLybfX3fZN6wMYpKzW8_YQXIUglesoA,873
|
|
14
|
+
apollo_cli/commands/install.py,sha256=W7OKbiTaSGCWVA4BCpRMRgjnPCX1lYrCHiaEVnvSTCM,1795
|
|
15
|
+
apollo_cli/commands/jobs.py,sha256=IJvmwDGRZvhr2gp2ukFYo0kuBRmHw8JUPjpBqiX2_Lk,949
|
|
16
|
+
apollo_cli/commands/news.py,sha256=T9qXVg0r_dkJeJb8IzNBqN9--zLXS1JJ9LfjSImoe4Q,922
|
|
17
|
+
apollo_cli/commands/notes.py,sha256=85_kyo0-gIhA-jRu742AF2Gyst_DKySdpZ8F-eFM4ik,2117
|
|
18
|
+
apollo_cli/commands/people.py,sha256=z36kQ8DIoK_o-CHGz7koFNP-e2fBOH5zMaOpHdRVHVo,1102
|
|
19
|
+
apollo_cli/commands/pipelines.py,sha256=5JlVZLY09ACdMmB2wpCu8uRHg4-UV3FMbwm5XqmhJ4s,2947
|
|
20
|
+
apollo_cli/commands/tasks.py,sha256=BTi__oeZPaZLfWqUNfsooTtPmyZVZPAdamKJyMPvVvA,2399
|
|
21
|
+
apollo_cli/commands/usage.py,sha256=ZJJQkdy8_muw0_O6l7CQo0km5jevaDQFYKwJUEbY3hE,2082
|
|
22
|
+
apollo_cli/formatters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
23
|
+
apollo_cli/formatters/accounts.py,sha256=9eTCpWvZf3t_YOgb5QzP-MrRCYJ_iCFSH9_wUZ5IkH8,1955
|
|
24
|
+
apollo_cli/formatters/contacts.py,sha256=MT_oa6US1INg5PO9x9XWS4kpeSXfx8a1nMUp3R9DgCE,2608
|
|
25
|
+
apollo_cli/formatters/deals.py,sha256=BO0gOOtfEKEQJEwkrepD708qz7d95CAfnSPSI8q-uPo,1378
|
|
26
|
+
apollo_cli/formatters/generic.py,sha256=MiS-dDJ6W4LK59wIzVoQ4hHYGu9psKbefId1jcnRngo,2797
|
|
27
|
+
apollo_cli/skills/SKILL.md,sha256=AUlar5IL6t-qs_Hal0L9iUEQKhcL4qP7o11UGYQFGMo,5050
|
|
28
|
+
apollo_cli/skills/__init__.py,sha256=rT983nJxm9BbPKNDLwg15O8uHanhkNzmsCNBPwEOTPU,43
|
|
29
|
+
apollo_cli/skills/references/__init__.py,sha256=fi5VN06uz4rvSjl5CzsEvIZqJVzaDUYTmUVW7wrtYoE,56
|
|
30
|
+
apollo_cli/skills/references/account-workflows.md,sha256=qQJG6fbFmUGtSj4QMTTSnjtY1q6ZD2R4tO0kkBcMzbg,4663
|
|
31
|
+
apollo_cli/skills/references/contact-workflows.md,sha256=5SelRI3oGBr8bRjxFvVCqOnAMGlbVutlI2UxlZWPUkc,2597
|
|
32
|
+
apollo_cli/skills/references/deal-workflows.md,sha256=ZjeByBysMG3RDGXa3n2Ob5OpjdGoAWEHcUMNoOGXTho,2878
|
|
33
|
+
qodev_apollo_cli-0.1.0.dist-info/METADATA,sha256=99sV9PZC2qWzKUufMKte2_ERbXWC6MtyzWrbollZC-w,6967
|
|
34
|
+
qodev_apollo_cli-0.1.0.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87
|
|
35
|
+
qodev_apollo_cli-0.1.0.dist-info/entry_points.txt,sha256=Kh08lw9mT78Pe1N8t5WuXomEd10cbBGa_JL0u5I0Tgo,57
|
|
36
|
+
qodev_apollo_cli-0.1.0.dist-info/licenses/LICENSE,sha256=fBLVUpYuzVv0LgdVUWUtGELVlWVv5qKYrPNlJ9PCFaI,1067
|
|
37
|
+
qodev_apollo_cli-0.1.0.dist-info/RECORD,,
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 qodev GmbH
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|