Skip to main content
POST

Authorizations

k
string
query
required

Secret key appended by WP as ?k=<secret>. Account-created uses ss_pipedrive_sync_secret. Quote-sync uses ss_pipedrive_quote_sync_secret.

Body

application/json
email
string<email>
required

Primary lookup key for the Pipedrive person record

Example:

"john@example.com"

first_name
string
required
Example:

"John"

last_name
string
required
Example:

"Doe"

customer_type
enum<string>
required

SageScreen product tier for this event

Available options:
demo,
trial,
paid
Example:

"trial"

person_fields
object
required

Custom Pipedrive person fields set on the contact record. Only fields with a value are sent.

phone
string

Candidate or user phone number. Send whatever is available.

Example:

"555-1234"

council_name
string

Display name of the council / company. For demo signups, this is the company field from the signup form. For council accounts, this is the council post title. For user_added, it is get_the_title of the council post.

Example:

"ACME Corp"

org_fields
object

Included for trial_created, paid_created, and user_added. Omitted for demo_signup (no council relationship).

deal_fields
object

Included for trial_created and paid_created (wp_deal_type only). Omitted for demo_signup and user_added.

pipedrive_ids
object

Included only when stored IDs exist in WP meta. On first sync for a new contact/council this field is absent entirely.

Response

200 - application/json

Sync result with Pipedrive record IDs

ok
boolean

true on success. An auth failure returns ok: false with no IDs. WP checks ok === true AND the presence of pd_contact_id before persisting any IDs — a bare {"ok": true} is treated as a no-op (no IDs to store).

Example:

true

pd_contact_id
integer

Pipedrive person ID. WP persists to user_meta.pipedrive_contact_id. Absent on demo signups (no WP user to attach meta to — WP ignores it).

Example:

1234

pd_org_id
integer

Pipedrive org ID. WP persists to post_meta.pipedrive_company_id on the ss_council post.

Example:

4001

pd_deal_id
integer

Pipedrive deal ID. WP persists to post_meta.pipedrive_deal_id on the ss_council post.

Example:

5001

contact_created
boolean

true if the person record was newly created (vs updated)

Example:

true

org_created
boolean

true if the org record was newly created

Example:

false

deal_created
boolean

true if the deal record was newly created

Example:

false

error
string

Human-readable error when ok is false

Example:

"Unauthorized"