Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to Lightspeed Retail

Scalekit connector
Open markdown

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

Tools
113
What they doRead · write · destructive
70 · 35 · 870 read35 write8 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 Lightspeed Retail connection

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

    Each user opens the link once and enters their Lightspeed Retail 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
  • lightspeedretail_get_brandReturn a single brand with a requested ID Returns a data object with deleted_at, description, id, name, version.Read-only

    Get Brand

    Return a single brand with a requested ID Returns a data object with deleted_at, description, id, name, version. Use list_brands to browse or filter, create_brand to add a new one, update_brand to change an existing one, delete_brand to remove one instead when that fits better.

    Inputs

    brand_idstringrequired
    The brand id. Example: 0af7b240-ab83-11e7-eddc-4023c64c85e5.
  • lightspeedretail_get_consignmentReturn a single consignment with the requested ID.Read-only

    Get Consignment

    Return a single consignment with the requested ID. Returns a data object with consignment_date, created_at, deleted_at, due_at, id, name, outlet_id, received_at. Use list_consignments to browse or filter, create_consignment to add a new one, update_consignment to change an existing one, delete_consignment to remove one instead when that fits better.

    Inputs

    consignment_idstringrequired
    The consignment id. Example: 0af7b240-ab83-11e7-eddc-4023c64c85e5.
  • lightspeedretail_get_consignment_totalsReturn the count and cost for the given consignment.Read-only

    Get Consignment Totals

    Return the count and cost for the given consignment. Returns a data array of records with total_received_cost, total_received_count, total_sent_cost, total_sent_count. Use this when you need exactly this record set; there is no sibling list tool.

    Inputs

    consignment_idstringrequired
    The consignment id. Example: 0af7b240-ab83-11e7-eddc-4023c64c85e5.
  • lightspeedretail_get_current_userReturn the current user.Read-only

    Get Current User

    Return the current user. Returns a data object with account_type, created_at, deleted_at, display_name, email, email_verified_at, enabled, enabled_mfa. Use this when you need exactly this record set; there is no sibling list tool.

    Inputs

    This tool takes no inputs.

  • lightspeedretail_get_custom_field_valuesReturn the custom field values for a given entity.Read-only

    Get Custom Field Values

    Return the custom field values for a given entity. Returns a data array of records with boolean_value, definition_id, integer_value, name, string_value, title, type. Use set_custom_field_values to set values instead when that fits better.

    Inputs

    entitystringrequired
    The entity type. Allowed values: sale, line_item, customer, product. Example: sale.one of saleline_itemcustomerproduct
    entity_idstringrequired
    The entity ID. Example: 0af7b240-ab83-11e7-eddc-4023c64c85e5.
  • lightspeedretail_get_customerReturn a single customer with a requested ID.Read-only

    Get Customer

    Return a single customer with a requested ID. Returns a data object with balance, company_name, created_at, custom_field_1, custom_field_2, custom_field_3, custom_field_4, customer_code. Use list_customers to browse or filter, create_customer to add a new one, update_customer to change an existing one, delete_customer to remove one instead when that fits better.

    Inputs

    customer_idstringrequired
    The customer id. Example: 0af7b240-ab83-11e7-eddc-4023c64c85e5.
  • lightspeedretail_get_customer_addressReturn a single address by its ID for the specified customer.Read-only

    Get Customer Address

    Return a single address by its ID for the specified customer. Returns a data object with address_line_1, address_line_2, city, country_code, country_name, created_at, customer_id, id. Use list_customer_addresses to browse or filter, create_customer_address to add a new one, update_customer_address to change an existing one, delete_customer_address to remove one instead when that fits better.

    Inputs

    address_idintegerrequired
    The unique identifier of the address. Example: 1.
    customer_idstringrequired
    The unique identifier of the customer. Example: 0af7b240-ab83-11e7-eddc-4023c64c85e5.
  • lightspeedretail_get_customer_groupReturn given customer group Returns a data object with created_at, deleted_at, group_id, id, name, retailer_id, updated_at, version.Read-only

    Get Customer Group

    Return given customer group Returns a data object with created_at, deleted_at, group_id, id, name, retailer_id, updated_at, version. Use list_customer_groups to browse or filter, create_customer_group to add a new one, update_customer_group to change an existing one instead when that fits better.

    Inputs

    customer_group_idstringrequired
    The customer group id. Example: 0af7b240-ab83-11e7-eddc-4023c64c85e5.