Official SDKs

Official software development kits for popular programming languages. Get started quickly with type-safe, well-documented libraries.

🟨

JavaScript/TypeScript SDK

Official SDK for Node.js and browser environments

Installation

npm install @linkup/sdk

Quick Start

import { LinkUp } from '@linkup/sdk'

const linkup = new LinkUp({
  apiKey: process.env.LINKUP_API_KEY,
  environment: 'production'
})

// Generate a strategy
const strategy = await linkup.strategies.create({
  questionnaire: {
    company_size: '50-200',
    industry: 'SaaS',
    target_market: 'SMB',
    goals: ['increase_leads', 'improve_conversion']
  },
  preferences: {
    timeline: '90_days',
    budget_range: '10k-50k'
  }
})

console.log(strategy.recommendations)

Features

Full TypeScript support
Promise-based API
Automatic retries and rate limiting
Built-in error handling
Real-time webhook support
Browser and Node.js compatible

Advanced Examples

Real-world patterns for common use cases

Webhook Handling

import express from 'express'
import { LinkUp } from '@linkup/sdk'

const app = express()
const linkup = new LinkUp({ apiKey: process.env.LINKUP_API_KEY })

app.post('/webhooks/linkup', async (req, res) => {
  const signature = req.headers['linkup-signature']
  
  try {
    const event = linkup.webhooks.verify(req.body, signature)
    
    switch (event.type) {
      case 'strategy.completed':
        console.log('Strategy completed:', event.data)
        break
      case 'workflow.triggered':
        console.log('Workflow triggered:', event.data)
        break
    }
    
    res.status(200).send('OK')
  } catch (error) {
    console.error('Webhook verification failed:', error)
    res.status(400).send('Invalid signature')
  }
})

app.listen(3000)

Pagination

// Automatic pagination with async iterators
for await (const integration of linkup.integrations.list()) {
  console.log(integration.name)
}

// Manual pagination
let cursor = null
do {
  const page = await linkup.integrations.list({ 
    limit: 50, 
    cursor 
  })
  
  page.data.forEach(integration => {
    console.log(integration.name)
  })
  
  cursor = page.next_cursor
} while (cursor)

Start Building Today

Choose your preferred SDK and start integrating Link-Up into your application