API reference

graph8 Developer API, rendered from the frozen contract.

The full REST surface below is generated from the release bundle (v1.0.0, OpenAPI 3.1.0). Try calls, read every field, and generate a client. For a higher-level map, see the capability catalog.

Looking for machine-readable API discovery? The canonical apis.json and llms.txt discovery manifests live on graph8.com and are maintained as the single source of truth. This page references them rather than duplicating them here.

Events

Webhook event catalog.

graph8 pushes these events to your registered endpoint as work happens on the platform: campaigns launch, emails get replies, meetings get booked, enrichment finishes. Subscribe once and react in real time instead of polling the API.

Deliveries are signed with HMAC-SHA256 (X-Studio-Signature, X-Studio-Timestamp) and retried with backoff. 37 of 38 event types are active (a production code path dispatches them). The rest are planned: defined in the catalog, not yet emitted. Check the lifecycle before you build on an event.

Engagement 15 active
  • active engagement.call_connected A dialer call connected to a live person.
  • active engagement.call_dispatched A call task was dispatched to the dialer.
  • active engagement.call_graded A dialer call was graded, including its overall and per-category scores.
  • active engagement.email_bounced An email to a contact bounced.
  • active engagement.email_replied A contact replied to an email.
  • active engagement.email_sent An email was sent to a contact.
  • active engagement.email_skipped An email step was skipped for a contact.
  • active engagement.linkedin_connection_accepted A LinkedIn connection request was accepted.
  • active engagement.linkedin_connection_sent A LinkedIn connection request was sent.
  • active engagement.linkedin_inmail_sent A LinkedIn InMail was sent.
  • active engagement.linkedin_message_sent A LinkedIn message was sent.
  • active engagement.linkedin_reply_received A LinkedIn reply was received from a contact.
  • active engagement.sms_replied A contact replied to an SMS.
  • active engagement.sms_sent An SMS was sent to a contact.
  • active engagement.whatsapp_sent A WhatsApp message was sent to a contact.
Campaign 6 active / 1 planned
  • active campaign.completed A campaign finished all of its steps.
  • active campaign.created A campaign was created.
  • active campaign.deleted A campaign was deleted.
  • active campaign.launched A campaign was launched and is now sending.
  • active campaign.paused A campaign was paused.
  • active campaign.status_changed A campaign's status changed.
  • planned campaign.updated A campaign's configuration was updated. NOT YET EMITTED: this event type is defined but no production code path dispatches it. Do not build on it until it is marked active.
Sequence 4 active
  • active sequence.completed A sequence completed all steps for a contact.
  • active sequence.draft_created A campaign created a Sequencer draft.
  • active sequence.paused A sequence was paused.
  • active sequence.started A sequence started running for a contact.
Content 3 active
  • active campaign.content_ready All content for a campaign is ready.
  • active document.failed A campaign document failed to generate.
  • active document.generated A campaign document finished generating.
Meetings 3 active
  • active meeting.booked A meeting was booked.
  • active meeting.cancelled A booked meeting was cancelled.
  • active meeting.rescheduled A booked meeting was rescheduled.
Audience 2 active
  • active audience.failed An audience failed to build.
  • active audience.ready An audience finished building and is ready to use.
Enrichment 2 active
  • active company_intelligence.completed Company intelligence gathering completed.
  • active company.enriched A company record was enriched.
Intelligence 2 active
  • active intelligence.completed An intelligence/research run completed.
  • active intelligence.failed An intelligence/research run failed.
Workflow

Signal to Qualified Meeting.

Build an audience, enrich it, launch outreach, and book a meeting.

The developer-facing reference outcome. Each step resolves to a public operationId in the graph8 release contract; outputs chain into later steps.

Inputs

  • search_query object

    Search filter for the candidate contacts (search/contacts body).

  • audience_title string required

    Title for the audience/list to create.

  • campaign_name string required

    Name for the outreach campaign.

  • event_type_id string

    Event type to book the qualified meeting against.

Steps

  1. 1
    find-candidates Search POST /search/contacts

    WP5.2 - find the candidate contacts to work.

  2. 2
    create-audience Lists POST /lists

    WP5.3 - create the audience/list that scopes the run.

  3. 3
    add-to-audience Lists POST /lists/{list_id}/contacts

    WP5.4 - add the found contacts to the audience.

  4. 4
    enrich-audience Enrichment POST /enrichment/enrich

    WP5.5 - enrich the audience so outreach has real data.

  5. 5
    verify-deliverability Enrichment POST /enrichment/verify-email

    WP5.7 - verify email deliverability before sending.

  6. 6
    create-campaign GTM Campaigns POST /campaigns

    WP5.8 - create the outreach campaign against the audience.

  7. 7
    launch-campaign GTM Campaigns POST /campaigns/{campaign_id}/launch

    WP5.9 - launch outreach.

  8. 8
    book-meeting Appointments POST /appointments/bookings

    WP5.11 - book the qualified meeting.

Outputs

list_idcampaign_idbooking_id
Build with graph8