# How Bulk Ingest Works | Rippit Integration Docs

> Bulk ingest brings your data into Rippit on a schedule and keeps it as tables, so Rippit can read all of it, not a sample.

Canonical: https://www.rippit.com/integrations/docs/bulk-ingest

Contents

Bulk ingest integration

# How bulk ingest works

Bulk ingest brings your data into Rippit on a schedule and keeps it as tables, so Rippit can read all of it, not a sample.

**Read-only**Nothing changes in your tools

**90 days to all time**Of history on the first sync, depending on the tool

**On a schedule**New and updated data keeps coming in

What happens when you connect a tool

**Your tool**Calls, tickets, chats, notes

**Rippit**Stored as tables you can query

**Agents and answers**Read all of it to find your edge

### Setting one up

1.  1
    
    ### A Rippit admin connects it
    
    Each bulk ingest integration is connected by a Rippit admin.
    
2.  2
    
    ### Sign in or add a key
    
    Depending on the tool, you sign in (Intercom, Zendesk, Slack), paste an API key (Granola, Fireflies, Attention, Decagon, Freshdesk) or paste an access key and secret (Gong).
    
3.  3
    
    ### Rippit checks the access
    
    Rippit tests the credential before saving it. If the tool rejects it, nothing is saved.
    
4.  4
    
    ### Choose history and fields
    
    Choose how much history to bring in, from 90 days to all time depending on the tool, and up to 150 fields, including custom fields. You can add more fields later.
    

**Use a dedicated account**

Rippit can only read what the connected account can read, so an account set up just for Rippit works best.

### After it’s connected

### What gets stored

-   Your data, with the fields you chose, as tables in Rippit
-   Attachments and recordings, stored in Rippit rather than linked
-   No storage limit, and storage isn’t charged

### How syncing works

-   Rippit checks for new and updated data on a schedule
-   Each tool’s page says how far behind it runs
-   Gong, Fireflies and Attention catch edits during a regular re-check of recent calls

### Reconnecting

-   If a tool stops accepting Rippit’s access, the integration shows Disconnected and its data shows Not syncing
-   Only an admin can reconnect. Reconnecting keeps the same tables and history
-   With a different account: Intercom, Zendesk and Slack create a new connection and leave the old one Disconnected. Attention replaces the old one. Granola, Fireflies, Gong, Decagon and Freshdesk swap in the new key

### Removing

-   Removing stops syncing. What’s already in Rippit stays
-   Zendesk and Slack: Rippit revokes its access (Slack only if no other Rippit account uses that workspace)
-   Intercom: Rippit deletes its access, but the app stays installed until you uninstall it in Intercom
-   API key tools: the key keeps working until you revoke it in that tool (in Freshdesk, regenerate it)
-   Revoking access in the tool also stops syncing. The integration stays Disconnected until you reconnect or remove it

### Read-only, with one exception

-   Every bulk ingest integration is read-only
-   Slack is the one that writes anything: it joins the channels you pick and sends a private reply to whoever invites it. It never posts visible messages, edits or deletes

### History on the first sync

-   Up to 90 days for most tools, chosen when you connect
-   Zendesk and Intercom can also import 1 year, or all time for accounts with up to 100,000 conversations
-   Gong, Attention, Pylon, Granola, Fireflies and Sierra import all time by default
-   Decagon and Freshdesk default to 7 days, and Slack defaults to 7 days per channel
-   In Intercom, conversations are picked by when they last changed, so some may start before your history window

### If you close your Rippit account

-   It takes effect immediately after you confirm
-   Users are deactivated, sessions and API credentials are revoked, automations stop, and stored credentials for your tools are deleted
-   Keys you created in your tools keep working until you revoke them there
-   Nothing you imported is deleted

### No built-in integration?

-   Use the [Ingest API](https://www.rippit.com/integrations/docs/ingest-api) to send conversations and tables from your own systems on a schedule
-   Or let your AI assistant do it with the [bulk ingest skill](https://www.rippit.com/integrations/docs/ingest-api#d-api-skill)

### Bulk ingest integrations

#### Intercom

Bulk ingest integration[About Intercom →](https://www.rippit.com/integrations/intercom)

#### Connect Intercom

1.  1
    
    #### Choose your region
    
    Pick where your Intercom workspace is hosted: US, EU or Australia.
    
2.  2
    
    #### Sign in to Intercom
    
    Approve access. Permissions are set by the Rippit app in Intercom, so there are no scopes to pick.
    
3.  3
    
    #### Choose history and fields
    
    Pick how far back to import: 90 days by default, 1 year, or all time for accounts with up to 100,000 conversations. Pick up to 150 fields to bring in. You can add more fields later.
    

Who sets it up

A Rippit admin

How it signs in

Sign in to Intercom (OAuth)

Access

Read-only. Nothing changes in Intercom.

#### What comes in

-   Full message history for each conversation
-   Custom attributes, including ones Intercom’s own field list leaves out
-   Company name, ID and the company attributes you select
-   SLA, handling time and AI Agent fields
-   Admins, teams, tags, and the contacts on synced conversations
-   Calls, attachments, inline images and call recordings

#### What doesn’t

-   Contacts who aren’t on a synced conversation
-   Attributes you don’t select

#### How often it syncs

-   Checks for new and updated conversations every hour, about 2 hours behind Intercom
-   Re-checks the last 24 hours every day
-   Usually less than 3 hours behind overall

#### Reconnecting and removing

-   Reconnecting with a different account creates a new connection. The old one stays Disconnected.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit discards its access, but the app stays installed until you uninstall it in Intercom.

#### Good to know

-   Conversations are picked by when they were last updated, so you may see some created before your history window.
-   The field picker only shows attributes that have values in the sample it checks.
-   Removing the integration stops syncing, but the Rippit app stays installed until you uninstall it in Intercom.
-   Rippit looks for new custom attributes at most every 6 hours, and reads 5 conversations at a time.

#### Granola

Bulk ingest integration[About Granola →](https://www.rippit.com/integrations/granola)

#### Connect Granola

1.  1
    
    #### Create an API key in Granola
    
    API keys are only available on Granola Business and Enterprise. Keys start with grn\_.
    
2.  2
    
    #### Add it in Rippit and name the workspace
    
    Granola doesn’t share a workspace name, so you give it one.
    
3.  3
    
    #### Choose history and fields
    
    Pick how far back to import. The default is all time.
    

Who sets it up

A Rippit admin

How it signs in

A Granola API key (Business or Enterprise plan)

Access

Read-only. Nothing changes in Granola.

#### What comes in

-   Each meeting note as one conversation
-   The AI summary and transcript, as speaker turns
-   Private notes, as an internal comment. The Private notes field is off by default
-   Owner, attendee emails, folders and a link to the note

#### What doesn’t

-   Attachments and audio
-   Deleted notes

#### How often it syncs

-   A note appears once Granola has written its summary
-   Re-checks the last day every day to catch late notes

#### Reconnecting and removing

-   Reconnecting with a different key replaces the old one.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit discards the key without contacting the tool, so the key keeps working until you revoke it there.

#### Good to know

-   On in-person or mic-only recordings, every line is credited to the note owner.
-   Rippit makes at most 5 requests a second.
-   Fixing speaker settings in Granola only applies to new recordings.

#### Fireflies

Bulk ingest integration[About Fireflies →](https://www.rippit.com/integrations/fireflies)

#### Connect Fireflies

1.  1
    
    #### Copy your API key
    
    In Fireflies, go to Settings > Developer Settings. A team admin’s key covers the whole team’s meetings. Anyone else’s key covers only their own.
    
2.  2
    
    #### Add it in Rippit
    
    Rippit tests the key before saving.
    
3.  3
    
    #### Choose history and fields
    
    Pick how far back to import. The default is all time.
    

Who sets it up

A Rippit admin

How it signs in

A Fireflies API key

Access

Read-only. Nothing changes in Fireflies.

#### What comes in

-   Each meeting with its transcript, as speaker turns
-   Title, organizer, attendees and a link to the meeting
-   Overview, notes, action items and keywords

#### What doesn’t

-   Audio and video
-   Meetings without a transcript, like silent or still-processing ones

#### How often it syncs

-   A meeting comes in once it’s an hour old and its transcript is ready
-   Re-checks the last day every day

#### Reconnecting and removing

-   Reconnecting with a different key replaces the old one.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit discards the key without contacting the tool, so the key keeps working until you revoke it there.

#### Good to know

-   On Fireflies Free and Pro, the daily API limit can run out during a big import. The sync picks up again when the limit resets.
-   Rippit makes at most 1 request a second.
-   A sync window with more than 10,000 meetings stops with an error.
-   Lines from unnamed speakers are merged into one turn.

#### Slack

Bulk ingest integration[About Slack →](https://www.rippit.com/integrations/slack)

#### Connect Slack

1.  1
    
    #### Install the app
    
    A Slack admin installs Rippit Data Ingestion. Optional permissions, like files and reactions, can be declined.
    
2.  2
    
    #### Pick public channels
    
    Choose up to 50 at a time, or type /invite @Rippit Data Ingestion in a channel.
    
3.  3
    
    #### Choose how far back
    
    The default is 7 days per channel, up to 90.
    

Who sets it up

A Rippit admin, with a Slack admin approving the install

How it signs in

Install the Rippit Data Ingestion app in Slack (OAuth)

Access

Read-only. The app only joins the channels you pick.

#### What comes in

-   Messages and thread replies in the public channels you pick, one conversation per thread
-   Files and reaction names
-   Names and emails of workspace members

#### What doesn’t

-   Direct messages
-   Private channels, including channels later made private
-   Files hosted outside Slack, like Drive links
-   Join, rename and pin messages

#### How often it syncs

-   On a schedule, plus Slack events
-   Messages deleted in Slack are hidden in Rippit. A thread’s opening message keeps its replies, with the text cleared

#### Reconnecting and removing

-   Reconnecting with a different account creates a new connection. The old one stays Disconnected.
-   Reconnecting restores your channel list.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit revokes its Slack access, unless another Rippit account uses the same workspace.

#### Good to know

-   This is a separate Slack app from the real-time integration, so connecting both means approving two apps.
-   Enterprise Grid org-wide installs aren’t supported. Install it in one workspace.
-   Removing a channel stops syncing it. Type /remove @Rippit Data Ingestion to take the bot out.
-   One connection per workspace per Rippit account. Rippit accounts on the same workspace share one bot.
-   Rippit records reaction names, not who reacted. The member list includes deactivated members and bots.
-   Deleted messages are only picked up through Slack events.

#### Attention

Bulk ingest integration[About Attention →](https://www.rippit.com/integrations/attention)

#### Connect Attention

1.  1
    
    #### Create an API key in Attention
    
    Go to Settings > Organization > API Keys. Organization keys and personal keys both work.
    
2.  2
    
    #### Add it in Rippit
    
    With a personal key, Rippit imports your own calls by default. You can choose all calls your teams can see instead.
    
3.  3
    
    #### Choose history and fields
    
    Pick how far back to import. The default is all time; accounts with more than 100,000 calls choose up to the most recent days that hold 100,000.
    

Who sets it up

A Rippit admin

How it signs in

An Attention API key (user or organization level)

Access

Read-only. Nothing changes in Attention.

#### What comes in

-   Each call’s transcript, as speaker turns
-   Title, owner, participants, team and duration
-   Scorecard results
-   CRM link fields and a link to the call

#### What doesn’t

-   Audio, video and files
-   Calls without a transcript, or still processing

#### How often it syncs

-   At least an hour behind, once the transcript is ready
-   Re-checks the last day every day

#### Reconnecting and removing

-   A key from a different user or organization creates a new connection and removes the old one.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit discards the key without contacting the tool, so the key keeps working until you revoke it there.

#### Good to know

-   Two people in the same organization using personal keys get two separate connections.
-   Rippit makes at most 1 request a second, and tries each request up to 3 times when Attention asks it to slow down.
-   A sync window with more than 10,000 calls stops with an error.

#### Zendesk

Bulk ingest integration[About Zendesk →](https://www.rippit.com/integrations/zendesk)

#### Connect Zendesk

1.  1
    
    #### Enter your Zendesk subdomain
    
    The part before .zendesk.com.
    
2.  2
    
    #### Sign in as a Zendesk admin
    
    Approve read access. Rippit re-checks the admin role, and syncing stops if that account loses it.
    
3.  3
    
    #### Choose history and fields
    
    Pick how far back to import: 90 days by default, 1 year, or all time for accounts with up to 100,000 tickets. Pick up to 150 fields.
    

Who sets it up

A Rippit admin, signing in as a Zendesk admin

How it signs in

Sign in to Zendesk (OAuth, read-only)

Access

Read-only. Nothing changes in Zendesk.

#### What comes in

-   Tickets with every comment
-   Ticket metrics, CSAT and deleted tickets
-   Side conversations, chat transcripts and voice recordings
-   Attachments and inline images, stored in Rippit
-   Agents, requesters, organizations, groups, brands, forms, custom statuses and fields, macros

#### How often it syncs

-   New and updated tickets, up to 3 hours behind
-   New agents every hour, and reference data like groups and forms every 12 hours

#### Reconnecting and removing

-   Reconnecting with a different account creates a new connection. The old one stays Disconnected.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit revokes its Zendesk access.

#### Good to know

-   Rippit slows down when your Zendesk API quota runs low, and honors Zendesk’s retry instructions.
-   Removing the integration revokes Rippit’s Zendesk access. Imported tickets stay in Rippit.
-   The field picker samples up to 100 solved tickets, then checks for new fields every 6 hours.

#### Gong

Bulk ingest integration[About Gong →](https://www.rippit.com/integrations/gong)

#### Connect Gong

1.  1
    
    #### Create an access key in Gong
    
    Go to Company settings > Ecosystem > API and create a key. Copy the secret right away. Gong only shows it once.
    
2.  2
    
    #### Add it in Rippit with your subdomain
    
    Paste the key, the secret, and your subdomain (the part before .app.gong.io).
    
3.  3
    
    #### Choose history and fields
    
    Pick how far back to import. The default is all time; accounts with more than 100,000 calls choose up to the most recent days that hold 100,000.
    

Who sets it up

A Rippit admin

How it signs in

A Gong access key and secret

Access

Read-only. Nothing changes in Gong.

#### What comes in

-   Calls, with Gong’s transcript, one line per sentence with speaker and time
-   Participants: your team as agents, others as customers. Unknown participants have no role
-   Call stats, topics and interaction stats
-   The CRM account and opportunity fields Gong attaches to each call
-   Recordings (video, or audio if there’s no video), stored in Rippit

#### How often it syncs

-   About 2 to 4 hours behind Gong
-   Re-checks the last day daily and the last week weekly for changes

#### Reconnecting and removing

-   Reconnecting with a different key replaces the old one.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit discards the key without contacting the tool, so the key keeps working until you revoke it there.

#### Good to know

-   Transcripts come from Gong and are fetched once.
-   CRM fields come through Gong. Rippit doesn’t connect to your CRM for this.
-   The field picker samples 50 calls, so rarely used CRM fields may not show up.
-   One connection per Gong subdomain.
-   Rippit stops checking a call for changes 1 to 7 days after it starts.
-   Recordings download hourly. A failed recording doesn’t hold up the rest of the import.

#### Decagon

Bulk ingest integration[About Decagon →](https://www.rippit.com/integrations/decagon)

#### Connect Decagon

1.  1
    
    #### Copy an API key from Decagon
    
    Find it on the Developer page in your Decagon dashboard.
    
2.  2
    
    #### Add it in Rippit
    
    Add a team ID only if you use more than one Decagon team.
    
3.  3
    
    #### Choose history and fields
    
    The default is 7 days of history, up to a maximum of 90.
    

Who sets it up

A Rippit admin

How it signs in

A Decagon API key

Access

Read-only. Nothing changes in Decagon.

#### What comes in

-   Every message in each AI agent conversation
-   Summary, resolution, flow type, deflection, CSAT, tags and metadata
-   Watchtower reviews
-   Voice recordings, stored in Rippit and transcribed

#### How often it syncs

-   Usually less than 2 hours behind
-   Voice transcripts can take longer

#### Reconnecting and removing

-   Reconnecting with a different key replaces the old one.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit discards the key without contacting the tool, so the key keeps working until you revoke it there.

#### Good to know

-   Conversations deleted in Decagon stay in Rippit.
-   The field picker samples 50 recent conversations, so rarely used fields may not show up.
-   The key is only ever sent to api.decagon.ai.
-   The team ID isn’t case-sensitive and defaults to “default”.
-   Metadata keys ending in jwt or token, and lists or nested objects, are stored but can’t be picked as fields.
-   A recording that fails 4 times isn’t retried.

#### Freshdesk

Bulk ingest integration[About Freshdesk →](https://www.rippit.com/integrations/freshdesk)

#### Connect Freshdesk

1.  1
    
    #### Copy your Freshdesk API key
    
    In Freshdesk, open your profile picture > Profile settings > View API key. The account needs admin rights and API access.
    
2.  2
    
    #### Add it in Rippit with your subdomain
    
    Paste the key and your Freshdesk subdomain. A full URL works too. Rippit tests the key before saving.
    
3.  3
    
    #### Choose history and fields
    
    The default is 7 days of history, up to a maximum of 90.
    

Who sets it up

A Rippit admin

How it signs in

A Freshdesk API key from an Administrator or Account Administrator

Access

Read-only. Nothing changes in Freshdesk.

#### What comes in

-   Tickets with their description, replies and private notes (first 100 per ticket)
-   CSAT ratings with written feedback
-   Contacts and agents, plus groups and products
-   Attachments and inline images, stored in Rippit
-   Your custom status and channel labels

#### What doesn’t

-   Replies and notes on phone tickets
-   Replies and notes after the first 100 on a ticket

#### How often it syncs

-   Checks for changed tickets on a schedule
-   Agents on every run, groups and products daily

#### Reconnecting and removing

-   Reconnecting with a different key replaces the old one.
-   Removing it stops syncing. Imported data stays in Rippit.
-   Rippit discards the key without contacting the tool, so the key keeps working until you revoke it there.

#### Good to know

-   Freshdesk limits API calls per minute across your whole account. Rippit slows down as that budget runs low, which is why the default history is short.
-   One connection per Freshdesk subdomain.
-   Freshdesk attachment links expire within minutes, so Rippit fetches a fresh link right before each download.

#### Kustomer

Bulk ingest integration[About Kustomer →](https://www.rippit.com/integrations/kustomer)

#### Connect Kustomer

1.  1
    
    #### Create an API key in Kustomer
    
    Go to Settings > Security > API Keys. Give the key the org.user and org.admin read roles, plus org.admin.user, org.admin.content and org.tracking.
    
2.  2
    
    #### Enter your subdomain
    
    Your org name, like acme in acme.kustomerapp.com, or the full URL. The key must belong to the same org.
    
3.  3
    
    #### Paste the key and choose fields
    
    Rippit tests the key before saving. Pick up to 150 fields to sync.
    

Who sets it up

A Rippit workspace admin

How it signs in

Kustomer API key

Before you start

In beta. It shows up only in workspaces with beta integrations turned on.

Access

Read-only. Nothing changes in Kustomer.

#### What comes in

-   Conversations, with subject, status, tags, start and end times and assigned agents
-   Messages, notes and shortcuts. Notes stay private
-   Satisfaction ratings on a 1 to 5 scale, with any written answer
-   Handle time
-   Attachments and inline images, stored in Rippit
-   Agents and customers
-   The custom attributes you select

#### What doesn’t

-   Fields you don’t select
-   Anything older than 90 days

#### How often it syncs

-   Runs on a schedule and only reads what changed
-   Stays about 5 minutes behind Kustomer
-   Re-reads agents, tags, shortcuts and attribute definitions every sync

#### Good to know

-   Up to 90 days of history, which is also the default
-   Conversations, messages and notes deleted in Kustomer are marked deleted in Rippit
-   One connection per Kustomer org

#### Pylon

Bulk ingest integration[About Pylon →](https://www.rippit.com/integrations/pylon)

#### Connect Pylon

1.  1
    
    #### Create an API token in Pylon
    
    Go to Settings > Integrations & dev > API tokens.
    
2.  2
    
    #### Paste the token in Rippit
    
    Rippit tests it and finds your organization. US or EU is picked for you.
    

Who sets it up

A Rippit workspace admin

How it signs in

Pylon API token

Before you start

Only Pylon Admins can create API tokens.

Access

Read-only. Nothing changes in Pylon.

#### What comes in

-   Issues, with title, assignee, status, tags, issue type, account, CSAT, first response time and resolution time
-   Every message on each issue, including internal notes, which stay private
-   Pylon users, including deactivated ones

#### What doesn’t

-   Attachments

#### How often it syncs

-   Runs on a schedule and only reads issues that changed
-   Stays about 5 minutes behind Pylon
-   Re-checks the last 24 hours every day, and syncs users daily

#### Good to know

-   All time by default, back to January 2022. Accounts with more than 100,000 issues choose up to the most recent days that hold 100,000
-   Large backfills are slow, since each issue’s messages take a separate request
-   One connection per Pylon organization

#### Ada

Bulk ingest integration[About Ada →](https://www.rippit.com/integrations/ada)

#### Connect Ada

1.  1
    
    #### Find your Ada handle
    
    The part of your dashboard URL before .ada.support. You can paste the full URL instead.
    
2.  2
    
    #### Create a Data Export API key
    
    In your Ada dashboard.
    
3.  3
    
    #### Connect in Rippit
    
    Enter the handle and key. Rippit tests them before saving.
    
4.  4
    
    #### Choose fields and history
    
    Pick up to 150 fields, and up to 90 days of history. The default is 30 days.
    

Who sets it up

A Rippit workspace admin

How it signs in

Ada Data Export API key, plus your Ada handle

Before you start

The Data Export API may not be in every Ada contract. If you don’t see it in your dashboard, contact your Ada team.

Access

Read-only. Nothing changes in Ada.

#### What comes in

-   Every Ada conversation, with every message in full
-   CSAT scores and comments, thumbs feedback, topics and intents
-   Playbooks, Playbook outcomes, knowledge articles and coaching, for generative AI agent conversations
-   Pictures, stored in Rippit
-   The conversation attributes and metavariables you select

#### What doesn’t

-   Metavariables ending in jwt, token, secret or password
-   Attributes that don’t appear in the sampled conversations aren’t offered as fields

#### How often it syncs

-   Runs on a schedule
-   Stays at least 2 hours behind Ada
-   Re-checks the last 24 hours every day

#### Good to know

-   In beta
-   Ada allows 15,000 requests a day per instance, shared with your other exports, so big backfills can take more than a day
-   Conversations deleted in Ada stay in Rippit
-   One connection per Ada handle

#### Sierra

Bulk ingest integration[About Sierra →](https://www.rippit.com/integrations/sierra)

#### Connect Sierra

1.  1
    
    #### Get your token and IDs
    
    From your Sierra docs site: an API token, your organization ID and your agent ID.
    
2.  2
    
    #### Enter them in Rippit
    
    Rippit tests the token before saving.
    
3.  3
    
    #### Choose fields
    
    Pick up to 150 fields.
    

Who sets it up

A Rippit workspace admin

How it signs in

Sierra API token, plus your organization ID and agent ID

Before you start

The token must be able to read conversations and messages for the agent you choose.

Access

Read-only. Nothing changes in Sierra.

#### What comes in

-   Every conversation for the agent you choose, with every message in full
-   Source, tags, duration and message count
-   Everything else Sierra returns, stored even when it isn’t offered as a field

#### What doesn’t

-   Voice recordings
-   Customer names and emails, and which person sent a human agent message

#### How often it syncs

-   Runs on a schedule
-   Stays about 1 hour behind Sierra

#### Good to know

-   In beta
-   All time by default, with no limit on the number of conversations
-   One agent per connection, and one connection per Sierra organization
-   Conversations deleted in Sierra stay in Rippit

## Your data and creativity is your edge. Put agents on it to maximize it.

Connect your data. Launch agents.

[Start free →](https://app.rippit.com/signup)[Book a demo](https://www.rippit.com/request-demo)

## Getting started from an AI agent

There are two ways to connect. Either works.

- MCP server: `https://mcp.rippit.com/mcp` (Streamable HTTP, OAuth). The person signs in or signs up in the browser that opens. No client ID, secret or API key is needed.
- CLI: install with `curl -fsSL https://rippit.sh | sh`, then get an account one of two ways:
  - `rippit login`: the person signs in or signs up in a browser.
  - `rippit start`: creates a temporary account with no email or browser, for a person with no Rippit account. `rippit claim --wait` lets them keep it; an unclaimed account is deleted after 14 days.

Then bring in data: connect a provider such as Zendesk, Intercom, Gong or Salesforce, or upload a CSV.

Full steps: https://www.rippit.com/setup.md
