How enrichment works
There are three enrichment paths in landbase-cli. They are not interchangeable — each is designed for a different situation.The three enrichment paths
1. enrich — synchronous, single record, person and company fields
- You have one record you want to enrich right now
- You want person attributes (title, seniority, department) or company attributes (industry, size, HQ location, LinkedIn)
- You want a result immediately (synchronous — no polling)
2. contact-enrich — asynchronous, batch, email and phone only
- You have a batch of contacts (up to 100 per request)
- You want email addresses or phone numbers specifically
- You can wait for an async job to complete
contact-enrich is not a general-purpose enrichment command. It is specifically for finding work emails and direct phone numbers. It starts a background job and returns a request_id. The CLI polls the job and returns results when it finishes (if you pass --wait).
3. workflow enrich — asynchronous, dataset-level
- You have uploaded a dataset and want to enrich all rows
- You want company or person attributes (not contact info) at scale
- You want the enrichment saved as a dataset in your workspace (with lineage)
enrich. It operates on an existing Landbase dataset rather than a local file.
Why fields come back empty
Empty or absent fields are normal — they are not errors. There are a few reasons a field might not be returned: The record was not found. If Landbase cannot confidently match your input (name + company domain, LinkedIn URL, etc.) to a record in its database, it will not return enrichment data. This is intentional — returning incorrect data is worse than returning nothing. The field is not populated for this record. Not every company or person has every field in Landbase’s database. A small startup may not have a verified employee count. A contact may not have a LinkedIn profile. You did not request the field. Forenrich, you can specify which company fields to return with --company-fields. If you omit a field, it will not be in the response.
Company chain resolution
When you useenrich with a person identifier (like a LinkedIn URL), Landbase can automatically resolve the associated company and return company fields in the same call:
Summary
| Command | Input | Output | Async? | Best for |
|---|---|---|---|---|
enrich | One identifier | Person + company fields | No | Single-record enrichment now |
contact-enrich | Batch of leads (JSONL) | Emails + phones | Yes | Batch contact data |
workflow enrich | Dataset ID | Company/person fields for all rows | Yes | Dataset-scale enrichment |

