Expand AI logo
DocsDocs
Login

Documentation

Introduction

WelcomeQuickstartConcepts

Product

FetchMCPCLI

SDKs

SDKsTypeScript SDKPython SDK

SDKs

TypeScript SDK

Official TypeScript/JavaScript client for expand.ai

The TypeScript SDK provides a type-safe interface for interacting with expand.ai's API.

npm

View on npm

GitHub

Source code

Installation

npm install expandai
pnpm add expandai
bun add expandai

Usage

















PreviousSDKs
NextPython SDK

On This Page

InstallationUsageConfigurationEnvironment VariablesError Handling
import Expand from 'expandai'
const client = new Expand({
apiKey: '{{API_KEY}}'
})
const result = await client.fetch({
url: 'https://news.ycombinator.com',
select: {
markdown: true,
screenshot: true,
summary: true
}
})
console.log(result.data.markdown)
console.log(result.data.summary)

Configuration

import Expand from 'expandai'

const client = new Expand({
  // Your API key (required, or set EXPAND_API_KEY env var)
  apiKey: '{{API_KEY}}',
  
  // Custom base URL (optional)
  baseUrl: 'https://api.expand.ai/v1',
  
  // Additional headers (optional)
  headers: {
    'Custom-Header': 'value'
  }
})

Environment Variables

Instead of passing the API key directly, you can set the EXPAND_API_KEY environment variable:

export EXPAND_API_KEY={{API_KEY}}
// API key will be read from EXPAND_API_KEY
const client = new Expand()

Error Handling

import Expand, { ExpandError, APIError, RateLimitError } from 'expandai'

const client = new Expand({ apiKey: '{{API_KEY}}' })

try {
  const result = await client.fetch({
    url: 'https://example.com',
    select: { markdown: true }
  })
  console.log(result.data.markdown)
} catch (error) {









if
(error instanceof RateLimitError) {
console.error('Rate limited, retry after:', error.retryAfter)
} else if (error instanceof APIError) {
console.error('API error:', error.status, error.message)
} else if (error instanceof ExpandError) {
console.error('Expand error:', error.message)
} else {
throw error
}
}