Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to JobNimbus

Scalekit connector
Open markdown

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

Tools
34
What they doRead · write · destructive
23 · 11 · 023 read11 write0 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 JobNimbus connection

    In AgentKit > Connections, create a JobNimbus 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 = 'jobnimbus'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize JobNimbus:', 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: 'jobnimbus_get_account_settings',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

    Each user opens the link once and enters their JobNimbus 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
  • jobnimbus_get_account_settingsRetrieve the JobNimbus account configuration, including contact, job, and work order workflows with their statuses, lead sources, task types, and custom fields.Read-only

    Get Account Settings

    Retrieve the JobNimbus account configuration, including contact, job, and work order workflows with their statuses, lead sources, task types, and custom fields. Returns the settings object (or only the requested field). Use before create_contact or create_job to find valid workflow, status, and lead source names.

    Inputs

    fieldstring
    Optional name of one settings section to return, for example groups. All settings are returned when omitted.
  • jobnimbus_get_activityRetrieve one JobNimbus activity entry (note or status change) by its jnid.Read-only

    Get Activity

    Retrieve one JobNimbus activity entry (note or status change) by its jnid. Returns the activity record with note text, activity type, primary record, related records, and creator. Use when you have an activity jnid. Use list_activities to browse.

    Inputs

    activity_idstringrequired
    The jnid (JobNimbus unique ID) of the activity.
  • jobnimbus_get_contactRetrieve one JobNimbus contact by its jnid.Read-only

    Get Contact

    Retrieve one JobNimbus contact by its jnid. Returns the full contact record including names, phone numbers, address, workflow type, status, lead source, sales rep, owners, and custom fields. Use get_contact when you have a jnid. Use list_contacts to search or browse when you do not.

    Inputs

    contact_idstringrequired
    The jnid (JobNimbus unique ID) of the contact.
  • jobnimbus_get_estimateRetrieve one legacy JobNimbus estimate by its jnid.Read-only

    Get Estimate

    Retrieve one legacy JobNimbus estimate by its jnid. Returns the estimate record with number, dates, line items, totals, status, and related job or contact. Use when you have an estimate jnid. Use list_estimates to browse.

    Inputs

    estimate_idstringrequired
    The jnid (JobNimbus unique ID) of the estimate.
  • jobnimbus_get_invoiceRetrieve one JobNimbus invoice by its jnid.Read-only

    Get Invoice

    Retrieve one JobNimbus invoice by its jnid. Returns the invoice record with number, dates, line items, totals, status, and related job or contact. Use when you have an invoice jnid. Use list_invoices to browse.

    Inputs

    invoice_idstringrequired
    The jnid (JobNimbus unique ID) of the invoice.
  • jobnimbus_get_jobRetrieve one JobNimbus job by its jnid.Read-only

    Get Job

    Retrieve one JobNimbus job by its jnid. Returns the full job record including name, number, workflow type, status, address, sales rep, owners, related contacts, and custom fields. Use get_job when you have a jnid. Use list_jobs to search or browse when you do not.

    Inputs

    job_idstringrequired
    The jnid (JobNimbus unique ID) of the job.
  • jobnimbus_get_material_orderRetrieve one JobNimbus material order by its jnid.Read-only

    Get Material Order

    Retrieve one JobNimbus material order by its jnid. Returns the material order record with items, notes, owners, and related job or contact. Use when you have a material order jnid. Use list_material_orders to browse.

    Inputs

    material_order_idstringrequired
    The jnid (JobNimbus unique ID) of the material order.
  • jobnimbus_get_productRetrieve one JobNimbus product by its jnid.Read-only

    Get Product

    Retrieve one JobNimbus product by its jnid. Returns the product record with name, item type, tax status, and units of measure with cost and price. Use when you have a product jnid. Use list_products to browse.

    Inputs

    product_idstringrequired
    The jnid (JobNimbus unique ID) of the product.