Skip to main content
Human guide: work with your agent →
Turn one hiring signal into a repeatable Play: a scoped Monitor stores each posting, and a published Play finds the right contact for every new row.
This walkthrough builds one complete signal workflow. When a target account posts a revenue operations role, Deepline stores the posting and runs a Play that finds the account’s revenue operations leader. You need one Monitor and one Play. Neither needs your agent or terminal to stay open after you publish. Set up a Monitor is the command reference for every step below, including Fleets, pausing, and billing suspension.

Before you start

A Monitor and each Play run spend Deepline credits, so check your balance first:

1. Choose the source and its stream

List the Monitor types available to your workspace, then inspect the one you want:
The Deepline Native company radar has a company_job_openings stream. Each stored row has the account domain, the job_title, the job_url, and the job_posted_at date, among other columns. describe shows the full column list and current pricing.

2. Scope the Monitor before you deploy it

Save this definition as acme-revops-openings.monitor.json:
job_titles narrows what the Monitor accepts. That matters for cost: a Monitor charges for the events it accepts, and a filter inside a Play cannot undo that. Put the narrowest useful scope in the Monitor, then use the Play to decide what to do with each row. To watch many accounts, keep one Monitor per account. A Fleet creates and maintains those Monitors from a Database table of accounts.

3. Check, preview, and deploy

check validates the definition without spending credits. The dry run shows the price and any existing Monitor that already covers this scope. Reuse an existing Monitor instead of deploying a duplicate. When the plan looks right, deploy it and read it back:
A new Monitor can show provisioning until the provider confirms it. It starts storing rows, and billing, once it is active.

4. Write the Play

Save this as revops-opening-to-contact.play.ts:
The listener names the Monitor’s tool and stream, not its key. Every Monitor that writes to company_job_openings can start this Play, so one Play covers every watched account. The where filter runs before the Play starts; rows that do not match never cost a run. A where filter has no OR. To also catch a spelling such as RevOps, add it to the Monitor’s job_titles and add a second listener with its own ilike. A title that matches both listeners starts two runs.

5. Check and publish the Play

plays check validates the listener’s tool, stream, and filter columns, and shows the event shape the Play receives. After you publish, each new matching row starts one run. There is nothing to poll. To try the Play before a real posting arrives, run it once with a sample row. This is a real run and spends credits for the contact lookup:

6. Watch it work

monitors get shows the Monitor’s state and the Plays connected to its stream. runs list shows each run the Monitor started. A quiet stream is not an error: the account may not have posted a matching role yet.

Keep it running

  • Credits run out: Deepline turns the workspace’s Monitors off and resumes them after you add credits. Events from the time they were off are not replayed.
  • Change the scope: run deepline monitors update with only the fields you want to change. The Play does not need to change.
  • Pause: deepline monitors stop keeps the definition; start applies it again. A stopped Monitor stays stopped until you start it.

Verify this task

Confirm the Monitor is active and scoped to the roles you want. Confirm that plays check accepts the listener, and that each run returns the posting and a contact or a miss reason. Ask your agent to explain a failed check before repeating work or widening the scope.