chatgpt-api/docs
Travis Fischer eb11acd263 feat: convert from browser to REST API 2022-12-05 01:32:27 -06:00
..
classes feat: convert from browser to REST API 2022-12-05 01:32:27 -06:00
.nojekyll feat: add docs; tweak ts 2022-12-02 18:04:53 -06:00
modules.md feat: convert from browser to REST API 2022-12-05 01:32:27 -06:00
readme.md feat: convert from browser to REST API 2022-12-05 01:32:27 -06:00

readme.md

chatgpt / Exports

ChatGPT API

Node.js client for the unofficial ChatGPT API.

NPM Build Status MIT License Prettier Code Formatting

Intro

This package is a Node.js wrapper around ChatGPT by OpenAI. TS batteries included.

You can use it to start building projects powered by ChatGPT like chatbots, websites, etc...

How it works

This package requires a valid session token from OpenAI's ChatGPT webapp to access it's unofficial REST API.

  1. Go to https://chat.openai.com/chat and log in or sign up
  2. Open the dev tools console
  3. Open Application > Cookies ChatGPT cookies
  4. Copy the value for __Secure-next-auth.session-token and save it to your environment.

If you want to run the built-in demo,

Note This package will switch to using the official API once it's released.

Note Prior to v1.0.0, this package used headless Chromium via Playwright to automate the web UI. Here are the docs for the initial browser version.

Install

npm install --save chatgpt
# or
yarn add chatgpt
# or
pnpm add chatgpt

Usage

import { ChatGPTAPI } from 'chatgpt'

async function example() {
  const api = new ChatGPTAPI()

  // ensure the API is properly authenticated (optional)
  await api.ensureAuth()

  // send a message and wait for the response
  const response = await api.sendMessage(
    'Write a python version of bubble sort. Do not include example usage.'
  )

  // response is a markdown-formatted string
  console.log(response)
}

A full example is included for testing purposes:

# 1. clone repo
# 2. install node deps
# 3. set `SESSION_TOKEN` in .env
# 4. run:
npx tsx src/example.ts

Docs

See the auto-generated docs for more info on methods and parameters.

Examples

All of these awesome projects use the chatgpt package. 🤯

If you create a cool integration, feel free to open a PR and add it to the list.

Credit

License

MIT © Travis Fischer

Support my open source work by following me on twitter twitter