Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to SureContact

Scalekit connector
Open markdown

The SureContact connector lets your AI agent act in each user's SureContact account. Each user connects their own SureContact access token once, and Scalekit sends it with every call, so your agent never handles credentials. It comes with 126 tools.

Tools
126
What they doRead · write · destructive
61 · 55 · 1061 read55 write10 destructive
Users sign in with

Setup

  1. Install the SDK

    Terminal window
    npm install @scalekit-sdk/node dotenv
  2. Set your credentials

    Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Create the SureContact connection

    In AgentKit > Connections, create a SureContact connection. The name you give it is the connection_name your code passes. See Configure connections.

  4. Authorize a user and make your first call

    quickstart.mts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    import { createInterface } from 'node:readline/promises'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENVIRONMENT_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'surecontact'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize SureContact:', link)
    const rl = createInterface({ input: process.stdin, output: process.stdout })
    await rl.question('Press Enter after authorizing...')
    rl.close()
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'surecontact_automations_list',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

    Each user opens the link once and enters their SureContact credentials there. See Authorize a user for the full flow and statuses.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • surecontact_activity_getRetrieve one contact activity by its UUID.Read-only

    Get Activity

    Retrieve one contact activity by its UUID. Returns the activity with its type, type label, description, metadata and timestamps. Use activity_get when you have an activity UUID from contact_activities_list.

    Inputs

    activity_uuidstringrequired
    UUID of the activity. Example: 550e8400-e29b-41d4-a716-446655440000.
  • surecontact_automation_getRetrieve one automation by its UUID.Read-only

    Get Automation

    Retrieve one automation by its UUID. Returns the automation definition and status. Use automation_get when you have an automation UUID from automations_list.

    Inputs

    automation_uuidstringrequired
    UUID of the automation. Example: 550e8400-e29b-41d4-a716-446655440000.
  • surecontact_automations_listList the automations of the workspace, with page-based pagination.Read-only

    List Automations

    List the automations of the workspace, with page-based pagination. Returns automations with uuid, name and status. Use automations_list to find automation UUIDs for contact_automation_start. Use sequences_list for email sequences only.

    Inputs

    pageinteger
    Page number of results to return, starting at 1. Use with per_page to walk through large result sets.
    per_pageinteger
    Number of records to return per page, from 1 to 100. Example: 25.
  • surecontact_campaign_contacts_listList the contacts a campaign was sent to, with per-contact engagement and page-based pagination.Read-only

    List Campaign Contacts

    List the contacts a campaign was sent to, with per-contact engagement and page-based pagination. Returns contacts with sent, opened and clicked timestamps and delivery status. Use campaign_contacts_list to analyse engagement per contact. Use campaign_get for aggregate stats.

    Inputs

    campaign_uuidstringrequired
    UUID of the campaign. Example: 550e8400-e29b-41d4-a716-446655440000.
    pageinteger
    Page number of results to return, starting at 1. Use with per_page to walk through large result sets.
    per_pageinteger
    Number of records to return per page, from 1 to 100. Example: 25.
  • surecontact_campaign_getRetrieve one campaign by its UUID, including content, recipient filters and stats.Read-only

    Get Campaign

    Retrieve one campaign by its UUID, including content, recipient filters and stats. Returns the full campaign record. Use campaign_get for details. Use campaign_progress_get while a campaign is sending.

    Inputs

    campaign_uuidstringrequired
    UUID of the campaign. Example: 550e8400-e29b-41d4-a716-446655440000.
  • surecontact_campaign_progress_getGet live sending progress for a campaign that is currently sending.Read-only

    Get Campaign Sending Progress

    Get live sending progress for a campaign that is currently sending. Returns total, sent, failed and remaining counts with the completion percentage. Use campaign_progress_get to poll a send in real time; it returns an error for campaigns not in sending status.

    Inputs

    campaign_uuidstringrequired
    UUID of the campaign. Example: 550e8400-e29b-41d4-a716-446655440000.
  • surecontact_campaign_recipients_count_getCount the contacts that match a campaign's recipient filters.Read-only

    Get Campaign Recipient Count

    Count the contacts that match a campaign's recipient filters. Returns a count. Use campaign_recipients_count_get when you need only the number. Use campaign_recipients_list to see sample contacts.

    Inputs

    campaign_uuidstringrequired
    UUID of the campaign. Example: 550e8400-e29b-41d4-a716-446655440000.
  • surecontact_campaign_recipients_listGet a sample of up to 100 contacts that match a campaign's recipient filters.Read-only

    List Campaign Recipients

    Get a sample of up to 100 contacts that match a campaign's recipient filters. Returns contacts with uuid, email and name. Use campaign_recipients_list to confirm the audience before sending. Use campaign_recipients_count_get for only the total.

    Inputs

    campaign_uuidstringrequired
    UUID of the campaign. Example: 550e8400-e29b-41d4-a716-446655440000.