Getting Started with OpsFlow

Go from install to your first automated form in under 5 minutes.

What is OpsFlow?

OpsFlow creates internal forms for your team. When a trigger fires — an opportunity changes stage or a call ends — a form appears for your staff to fill out. On submission, the data is automatically written back to contact notes, custom field updates, follow-up tasks, and pipeline movements.

No external form tools. No copy-paste. No tab-switching.

1

Install the app

  1. Find OpsFlow in the Marketplace and click Install.
  2. Authorize the requested permissions when prompted. OpsFlow needs access to contacts, pipelines, custom fields, notes, and tasks.
  3. Open OpsFlow from the sidebar or app menu. You should see the app with four tabs: Pending, Completed, Settings, and Templates.
2

Set up your form templates

Templates define the fields your staff will fill out. OpsFlow comes with three starter templates — Call Disposition, Job Complete, and Appointment Follow-Up — but you can create your own or edit the defaults.

Creating a template

  1. Go to the Templates tab and click New Template.
  2. Give it a name (e.g., "Sales Qualification").
  3. Click + Add Field to add form fields. For each field, set:
    • Label — what the staff member sees (e.g., "Call Outcome").
    • Type — Short Text, Long Text, Select, Multi-Select, Checkbox, Date, or Number.
    • Required — toggle on if the field must be filled before submission.
    • Options — for Select and Multi-Select fields, enter options separated by commas.
  4. Reorder fields with the arrow buttons. Remove fields with the × button.
  5. Click Save.

Conditional fields

You can show or hide fields based on a previous answer. For example, only show a "Follow-up Date" field when "Follow-up Required" is checked.

  1. On any field, check Show conditionally.
  2. Select which field to base the condition on (must be a field above the current one).
  3. Choose is or is not.
  4. Pick or type the value. For Select fields, you'll get a dropdown of options. For Checkboxes, choose "Checked" or "Unchecked".

Hidden fields are automatically skipped during validation and won't be submitted.

3

Configure your triggers

Triggers tell OpsFlow when to create a form and what to do with the data. Go to the Settings tab to set them up.

Pipeline Stage Change trigger

Creates a form when an opportunity moves to a specific pipeline stage.

  1. Select Pipeline Stage Change as the trigger type.
  2. Choose a Pipeline and Stage from the dropdowns.
  3. Choose a Template — this is the form your staff will fill out.
  4. Configure writebacks (see below).
  5. Click Add Trigger, then Save Settings.

Call Completed trigger

Creates a form when a Voice AI call ends. Great for post-call disposition tracking.

  1. Select Call Completed as the trigger type.
  2. Choose a Template (e.g., the built-in "Call Disposition" template).
  3. Configure writebacks (see below).
  4. Click Add Trigger, then Save Settings.

Note: you must enable the VoiceAiCallEnd webhook event in your Marketplace app settings for this trigger to fire.

4

Choose your writebacks

Writebacks determine what happens with the form data after submission. Each runs independently — if one fails, the others still execute. You'll see a success/failure indicator for each after submitting.

Writeback What it does
Contact Note Creates a formatted note on the contact with all form responses, the template name, and the date.
Custom Fields Maps individual form fields to custom fields on the contact. Configure the mapping per field when adding the trigger.
Follow-up Task Creates a task on the contact due the next day. You can customize the task title or leave it as the default ("Follow up: [Template Name]").
Pipeline Move Moves the opportunity to a different stage after submission. Only available for Pipeline Stage Change triggers. Choose the destination stage when adding the trigger.
5

Day-to-day usage

Filling out forms

  1. Open OpsFlow and go to the Pending tab. A badge shows how many forms are waiting.
  2. Click Open on a form. You'll see the contact name and the form fields.
  3. Fill in the fields. Conditional fields will appear or hide automatically based on your answers.
  4. Click Submit. A notification shows which writebacks succeeded.

Reviewing past submissions

The Completed tab shows all submitted forms with the contact name, template, who submitted it, and when. Click View to expand and see the full responses.

Accountability tracking

OpsFlow automatically records which staff member submitted each form, so you always know who handled what.

Quick example: Sales call disposition

Here's a common setup for tracking sales call outcomes:

  1. Template: Use the built-in "Call Disposition" template, or create your own with fields like Call Outcome (Select: Connected, Voicemail, No Answer), Notes (Long Text), Follow-up Required (Checkbox), and Follow-up Date (Date — set to show conditionally when Follow-up Required is checked).
  2. Trigger: Add a Call Completed trigger with your template. Enable the Note writeback so the outcome is logged on the contact, and the Task writeback so a follow-up is automatically created.
  3. Result: Every time a call ends, your staff sees a form in OpsFlow. They log the outcome, hit submit, and the note + task are created on the contact instantly — no extra steps.

Common questions

What happens if a writeback fails?

The form is still marked as completed and all other writebacks still run. The notification after submission will show which ones succeeded and which failed. The most common cause is a permissions issue — make sure the app has the required OAuth scopes.

Can I delete a template that has pending forms?

No. You'll need to complete or wait for pending forms to be handled first. This prevents orphaned forms with no template to render.

How do I enable the Call Completed trigger?

In addition to configuring the trigger in OpsFlow, you need to enable the VoiceAiCallEnd webhook event in your app's settings on the Marketplace developer dashboard under Advanced Settings → Webhooks.

Full Documentation · Support · Terms & Conditions · Privacy Policy