Skip to main content

Overview

LemonData is OpenAI-compatible, which means you can use any OpenAI SDK with just a base URL change. We also support native Anthropic and Google Gemini SDKs.

Official SDKs

Since LemonData is OpenAI-compatible, use the official OpenAI SDKs:

Configuration

Python

from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://api.lemondata.cc/v1"
)

# Use any model
response = client.chat.completions.create(
    model="gpt-4o",  # or claude-3-5-sonnet-20241022, gemini-2.0-flash, etc.
    messages=[{"role": "user", "content": "Hello!"}]
)

JavaScript / TypeScript

import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: 'sk-your-api-key',
  baseURL: 'https://api.lemondata.cc/v1'
});

const response = await client.chat.completions.create({
  model: 'gpt-4o',
  messages: [{ role: 'user', content: 'Hello!' }]
});

Go

package main

import (
    "context"
    "fmt"
    openai "github.com/sashabaranov/go-openai"
)

func main() {
    config := openai.DefaultConfig("sk-your-api-key")
    config.BaseURL = "https://api.lemondata.cc/v1"

    client := openai.NewClientWithConfig(config)

    resp, err := client.CreateChatCompletion(
        context.Background(),
        openai.ChatCompletionRequest{
            Model: "gpt-4o",
            Messages: []openai.ChatCompletionMessage{
                {Role: "user", Content: "Hello!"},
            },
        },
    )
    if err != nil {
        panic(err)
    }
    fmt.Println(resp.Choices[0].Message.Content)
}

.NET / C#

using OpenAI;

var options = new OpenAIClientOptions
{
    Endpoint = new Uri("https://api.lemondata.cc/v1")
};

var client = new OpenAIClient("sk-your-api-key", options);

var chat = client.GetChatClient("gpt-4o");
var response = await chat.CompleteChatAsync("Hello!");

Console.WriteLine(response.Value.Content[0].Text);

cURL

curl https://api.lemondata.cc/v1/chat/completions \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Environment Variables

We recommend using environment variables for API keys:
# .env or shell profile
export LEMONDATA_API_KEY="sk-your-api-key"
export LEMONDATA_BASE_URL="https://api.lemondata.cc/v1"
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ.get("LEMONDATA_API_KEY"),
    base_url=os.environ.get("LEMONDATA_BASE_URL")
)

Anthropic SDK

For Anthropic-native requests, use the Anthropic SDK:
from anthropic import Anthropic

client = Anthropic(
    api_key="sk-your-api-key",
    base_url="https://api.lemondata.cc"
)

message = client.messages.create(
    model="claude-3-5-sonnet-20241022",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello!"}]
)

LangChain Integration

See the LangChain Integration guide for framework integration.