Tutorials

How to Get a Z.AI (GLM) API Key: A Step-by-Step Guide

On this page

In this guide, you'll learn how to get your Z.AI (GLM) API key. You'll create a Z.AI account, generate your key, and make your first API call. We'll also show you a simpler alternative if you want access to hundreds of AI models without managing multiple accounts.

Prerequisites

  • An email or Google account
  • Basic familiarity with code (we'll show simple JavaScript examples)

Step 1: Create Your Z.AI Account

Go to z.ai/chat. You'll see the home screen.

Z.AI home screen

Click the Login button at the top right, and complete the login or sign-up with your email or Google account.

Step 2: Generate Your API Key

Once logged in, you'll be sent back to the home screen. Click your profile menu at the top right and select API Keys.

Z.AI profile menu with API Keys option

You'll land on the API keys page.

Z.AI API keys page

Click Create a new API key. Enter a name for your key.

Z.AI create new API key dialog

Once created, you'll be able to copy your API key.

Z.AI API key with copy button

Unlike some other providers, Z.AI lets you come back to the API keys page and copy your key again at any time.

Store it somewhere safe — a password manager, an .env file, or your platform's secrets manager. Never commit API keys to a public repository.

Step 3: Make Your First API Call

Z.AI uses an OpenAI-compatible API, so you can use the OpenAI SDK directly. Install it first:

npm install openai

Then make your first call:

import OpenAI from "openai";

const openai = new OpenAI({
  baseURL: "https://api.z.ai/api/paas/v4",
  apiKey: process.env.ZAI_API_KEY,
});

const completion = await openai.chat.completions.create({
  model: "glm-5",
  messages: [{ role: "user", content: "Hello, world!" }],
});

console.log(completion.choices[0].message.content);

If you get a response back, everything is working.

One API Key, Hundreds of Models

The process above works well for Z.AI specifically — but what happens when you want to use GPT, Claude, Gemini, Llama, Mistral, or any of the other major models?

You'd need to repeat the entire process for each provider: create an account, set up billing, generate and manage a separate key. That's a lot of overhead, especially if you're experimenting or building something that uses multiple models.

Puter offers a simpler approach: one account, one auth token, access to hundreds of models across providers.

Instead of managing five different API dashboards, you point your existing code to Puter's OpenAI-compatible endpoint and use your Puter auth token:

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.puter.com/puterai/openai/v1/",
  apiKey: "YOUR_PUTER_AUTH_TOKEN",
});

const response = await client.chat.completions.create({
  model: "glm-5", // or claude-sonnet-4-6, gpt-5-nano, gemini-2.5-flash-lite, etc.
  messages: [{ role: "user", content: "Hello, world!" }],
});

console.log(response.choices[0].message.content);

Since Z.AI already uses the OpenAI-compatible format, switching to Puter is especially easy — just change the baseURL and apiKey.

To get your Puter auth token, create a free account at puter.com, then go to puter.com/dashboard and click Copy to grab your token.

Puter copy auth token

Conclusion

You now know how to create a Z.AI account, generate an API key, and make your first API call. For more details, check out Z.AI. If you'd rather skip managing multiple API keys, Puter gives you access to GLM and hundreds of other models with a single auth token.

Free, Serverless AI and Cloud

Start creating powerful web applications with Puter.js in seconds!

Get Started Now

Read the Docs Try the Playground