Skip to main content
POST
Create workflow source

Authorizations

Authorization
string
header
required

Access token issued by gs.service.id. Its access_identity claim carries team_sid, actor_sid and actor_type, and that team scope is authoritative.

Team-SID
string
header
required

Team scope for tokens that do not carry one. Ignored when the token already names a team.

Body

application/json

Request body of create_workflow_source.

workflow_sid
string
required

Parent campaign (wf_wf_…) - must exist, be non-deleted and not archived (409 conflict).

Required string length: 18
Pattern: ^wf_wf_
type
enum<string>
required

view | filter | manual - picks the XOR payload (view ⇒ view_sid; filter ⇒ filter; manual ⇒ optional people_sids). Immutable after create.

Available options:
view,
filter,
manual,
event
event
enum<string> | null

REQUIRED for type=event, forbidden otherwise (422): the activity type whose occurrence enrolls the person (activities.md); explicit null is the same as omitted.

Available options:
linkedin_connection_request_accepted,
linkedin_message_replied,
linkedin_inmail_replied,
email_replied,
email_opened,
email_link_clicked,
linkedin_invitation_received,
linkedin_followed,
website_visited,
website_key_page_visited,
website_form_submitted
name
string | null

Optional label ("Conference batch"); omit or null = unlabeled.

Required string length: 1 - 255
view_sid
string | null

REQUIRED for type=view, forbidden otherwise (422); explicit null ≈ omitted under the XOR server-rule. Playtable view (pt_vw_…) whose live membership is the audience; validated existing + non-deleted.

Required string length: 18
Pattern: ^pt_vw_
filter

REQUIRED for type=filter, forbidden otherwise (422). Inline audience AST over the team's people (and/or/not/any over {field, op} leaves, §4.18 atoms, depth ≤ 5); record. resolves per person's playtable at evaluation (missing ⇒ false).

people_sids
string[]

type=manual only (forbidden otherwise): 1..500 cr_pp_ sids enrolled synchronously through the same entry decisions as add-people; requires a published workflow version (422 invalid_transition).

Required array length: 1 - 500 elements
Required string length: 18
Pattern: ^cr_pp_
auto_add
boolean

Default false. view/filter only - true enqueues an immediate first sweep; true on manual → 422.

active_limit
integer | null

Enrollment throttle (default null = unlimited): max simultaneous in-flight records from this source. Over-cap candidates WAIT (blocked_limit_count), not rejected.

Required range: x >= 1
coworkers_limit
integer | null

Enrollment throttle (default null = unlimited): max simultaneous in-flight records from this source per company.

Required range: x >= 1

Response

create success envelope.

success
enum<boolean>
required
Available options:
true
operation
enum<string>
required
Available options:
create
item
object
required
already_exists
boolean
required
meta
object
required