Features

Workflows

Automate repetitive work with triggers, conditions and actions — branching on conditions, waiting, HTTP requests, AI steps, manual and scheduled runs.

Workflows (sidebar → Workflows, admins) run actions on records in order when something happens — an opportunity is created, a stage changes, an email arrives from a company… — or at a set time. The editor reads top to bottom: Trigger → Conditions → Steps. (Labels are shown in Turkish in the app.)

Triggers

Trigger Object When
Opportunity created · Opportunity stage changed Opportunity Right after saving
Opportunity idle for N days · Stage time (SLA) exceeded Opportunity Daily check
Company created · Company visit overdue Company Immediately · daily
Fair lead entered · Visit / call logged · Support ticket opened The record Immediately
Contract end approaching Contract Daily
Email received from a company Email During sync
Run manually — opportunity / company Opportunity · Company When a user starts it
Scheduled — opportunities / companies Opportunity · Company Every day / week / month at a chosen hour

Manual workflows run from the Workflow button on opportunity and company pages, or from the Workflow menu in the bottom bar for selected records in a table view (edit rights on the record are required).

A scheduled workflow runs once per period, for every record matching its conditions (at most 500 records per run). Example: Every Monday 09:00 — add an AI summary note to open opportunities.

Conditions

All conditions must hold: field + operator (=, ≠, contains, ≥, ≤, empty, not empty) + value. Opportunity and company custom fields can be used too. Without conditions the workflow runs for every triggering record.

Steps

Step What it does
Create task Title, due in N days, assignee, type, priority
Send notification To the record owner, the workflow's creator, a chosen user, or all admins
Assign owner · Add tag · Update field Changes the record (custom fields included)
Send email (template) · Add to email sequence Email / sequence to the contact (sequences need the Email Automation module)
Send to app Slack, Teams, Telegram, webhook… (Apps)
Branch on condition Runs the If yes steps when conditions hold, otherwise the If no steps
Wait Continues the remaining steps after N days / hours
Send HTTP request Calls your own system (ERP, automation without Zapier)
AI step Classifies, summarizes or writes to an instruction; writes the result to a custom field or as a note on the record

Texts can use variables: {firma} {fırsat} {aşama} {sorumlu} {tutar} {kişi} {lead} {fuar} {konu} {gün} (company, opportunity, stage, owner, amount, contact, lead, fair, subject, days).

Branch on condition

A branch has its own conditions (independent of the workflow's conditions). Add as many steps as you like to each arm; branches and waits can't be nested inside an arm. An empty arm means "do nothing".

Wait

At a Wait step the workflow pauses and queues the remaining steps; when the time is up (via the 10-minute scheduler) it continues from where it stopped. With Re-check conditions when the time is up, the workflow's conditions are checked again before continuing — if they no longer hold (e.g. the opportunity moved on in the meantime), the workflow stops. Wait can't be the last step. If the workflow is disabled or deleted, queued steps don't run.

Template Post-presentation follow-up (wait + branch): when an opportunity moves to Present Solution, create a task → wait 5 days → if it's still in the same stage, notify the owner and the admins.

Send HTTP request

Method (POST, PUT, PATCH, GET, DELETE), URL (https:// and public addresses only; variables allowed), optional headers (one Name: value per line) and body.

With Send record data as JSON checked the body looks like this (text in the body field is added as message):

{
  "event": "workflow",
  "workflow": "Send to ERP",
  "workflow_id": 7,
  "kind": "opp",
  "id": 412,
  "url": "https://acme.solk.app/opportunities/412",
  "data": {"owner": "3", "c_status": "AC", "c_city": "İzmir", "stage": "Win", "value": 324000.0, "prob": 100, "tag": "", "...": "..."},
  "vars": {"firma": "Egemen Group A.Ş.", "fırsat": "Proje · 2026", "...": "..."},
  "sent_at": "2026-10-04T14:20:05",
  "message": "Proje · 2026 won"
}

data holds the field values used by conditions (owner = user id, c_* = the company's fields, custom fields as cf_<key>).

Unchecked, the body is sent as written (with variables filled in) — Content-Type: application/json if it's valid JSON, plain text otherwise. With a signing secret the request carries X-Solk-Signature: sha256=<HMAC-SHA256(secret, body)> — verified the same way as webhooks. A non-2xx response fails the step; the result shows in the Runs tab. Requests time out after 15 seconds.

AI step

Operation Result
Classify Picks one of the options you give (or the options of the target select field)
Summarize Summarizes the record's current state in a few sentences
Write to instruction Answers your instruction using the record's information ("Suggest the next step in one sentence")

The result is written to a text / long text / select custom field of the opportunity or company, or as a note on the record. The AI receives a summary of the record: stage, amount, owner, custom fields, stage history, company details, contacts' names and titles, recent calls, notes and recent email subjects. Contacts' email addresses and phone numbers are never sent. If AI is off for the organization the step fails and nothing is sent; every run counts toward AI usage.

Runs and limits

  • The Runs tab shows each run with record, result and a step summary (HTTP POST erp.example.com → 200 · branch: no · tag 'Small deal' · waiting → 06.10.2026).
  • Changes made by a workflow don't trigger other workflows (no loops).
  • More than 200 events in one request (such as a bulk import) don't run workflows.
  • Workflows don't run on sample-data records.