Skip to main content

Create a Project

Before you can use the ONE SDK you need a project on the ONE Dashboard. A project gives you a clientId (public) and a secretKey (private) that the SDK uses to authenticate every API call to the ONE Engine.

1. Register on the Dashboard

  1. Navigate to dashboard.one23.io.
  2. Sign up with your email or connect a wallet.
  3. Verify your email address.

2. Create a New Project

  1. From the Dashboard home, click New Project.
  2. Enter a project name (e.g. my-defi-app).
  3. Select the networks you want to enable (Ethereum, Polygon, Arbitrum, Base, etc.).
  4. Choose a plan (Free tier includes 10 000 API calls / month).
  5. Click Create.

Once the project is created the Dashboard will display your credentials.

3. Copy Your Credentials

KeyVisibilityUsage
clientIdPublic -- safe to bundle in client code.Identifies your project in every SDK call.
secretKeyPrivate -- keep on the server or in environment variables only.Required for server-side Engine calls and admin endpoints.

You will also need the Engine URL. The default production endpoint is:

https://engine.one23.io

4. Set Environment Variables

Create a .env (or .env.local) file at the root of your project:

.env
ONE_CLIENT_ID=your_client_id
ONE_SECRET_KEY=your_secret_key
ONE_ENGINE_URL=https://engine.one23.io
danger

Never commit ONE_SECRET_KEY to version control. Add .env to your .gitignore file.

Framework-specific notes

FrameworkEnv var prefixExample
Next.js (client)NEXT_PUBLIC_NEXT_PUBLIC_ONE_CLIENT_ID
ViteVITE_VITE_ONE_CLIENT_ID
Expo / React NativeUse expo-constants or react-native-configONE_CLIENT_ID
Node serverNo prefix neededprocess.env.ONE_CLIENT_ID

Next.js Example

.env.local
NEXT_PUBLIC_ONE_CLIENT_ID=your_client_id
NEXT_PUBLIC_ONE_ENGINE_URL=https://engine.one23.io
# Server-only -- no NEXT_PUBLIC_ prefix
ONE_SECRET_KEY=your_secret_key

Vite Example

.env
VITE_ONE_CLIENT_ID=your_client_id
VITE_ONE_ENGINE_URL=https://engine.one23.io
# Accessed on the server only, not exposed to the client
ONE_SECRET_KEY=your_secret_key

5. Verify Your Setup

A quick sanity check you can run from any environment:

verify.ts
import { OneEngineClient } from "@one_deploy/sdk/services";

const engine = new OneEngineClient({
baseUrl: process.env.ONE_ENGINE_URL!,
clientId: process.env.ONE_CLIENT_ID!,
secretKey: process.env.ONE_SECRET_KEY!,
});

async function verify() {
const status = await engine.getProjectInfo();
console.log("Project:", status.name);
console.log("Networks:", status.networks.join(", "));
console.log("Plan:", status.plan);
}

verify();

If you see your project name printed, you are ready to move on.

Next Steps