DeepSeek · Text · API

DeepSeek API — live pricing and a 5-minute setup

DeepSeek API: DeepSeek V4 Pro through one Zerocoder key. OpenAI-compatible chat/completions, streaming, function calling, per-token pricing.

DeepSeek is a family of language models from the Chinese lab of the same name, strong at reasoning, maths and code. Through Zerocoder, DeepSeek V4 Pro is served on the OpenAI-compatible /v1/chat/completions with streaming and function calling — OpenAI SDK code migrates by swapping base_url and the key, with no vendor account.

You pay per token — input and output at their own prices — with a minimum per call, and a response that never starts is refunded. Below are the live model price, a cost calculator and ready-to-run integration samples.

Models and prices

The live GET /v1/models price list in US dollars. Minimum per call: $0.00556. Endpoints: /v1/messages, /v1/chat/completions

Model prices in US dollars; where we are cheaper, the vendor's official price for the same unit is struck through
ModelPriceUnit
DeepSeek V4 Prodeepseek-v4-pro · DeepSeek
input $1.44 / output $2.88per 1M tokens
All prices are in US dollars; Zerocoder prices are converted at the internal rate.

Cost calculator

Pick a model and a volume — the calculator uses the same formulas as API billing.

per call$0.00556
per month · 1,000$5.56

input $1.44 / output $2.88 per 1M tokens

minimum per call: $0.00556

Prices from GET /v1/models in US dollars at the internal rate. Failed generations are not charged.

  1. Get a keyin the API dashboard
  2. Top up the walletby card or invoice
  3. Make the callPOST /v1/chat/completions, model deepseek‑v4‑pro
First request

Connect the DeepSeek API: change two values

The OpenAI SDK in Python and Node.js, the Anthropic SDK or curl: swap the base URL and the key — requests, streaming and response handling stay as they are. DeepSeek answers on POST /v1/messages and /v1/chat/completions.

Base URL
https://zerocoder.com/api/v1

Anthropic SDK — https://zerocoder.com/api, without /v1

Model in the samples — deepseek-v4-pro; any model from the table works

from openai import OpenAI client = OpenAI(    base_url="https://zerocoder.com/api/v1",    api_key="zc-sk-…",) r = client.chat.completions.create(    model="deepseek-v4-pro",    messages=[{"role": "user", "content": "Hello!"}],)print(r.choices[0].message.content)
import OpenAI from "openai"; const client = new OpenAI({  baseURL: "https://zerocoder.com/api/v1",  apiKey: "zc-sk-…",}); const r = await client.chat.completions.create({  model: "deepseek-v4-pro",  messages: [{ role: "user", content: "Hello!" }],});console.log(r.choices[0].message.content);
import Anthropic from "@anthropic-ai/sdk"; const client = new Anthropic({  // without /v1: the SDK appends /v1/messages itself  baseURL: "https://zerocoder.com/api",  apiKey: "zc-sk-…",}); const msg = await client.messages.create({  model: "deepseek-v4-pro",  max_tokens: 300,  messages: [{ role: "user", content: "Hello!" }],});console.log(msg.content[0].text);
# Anthropic Messages formatcurl https://zerocoder.com/api/v1/messages \  -H "x-api-key: zc-sk-…" \  -H "content-type: application/json" \  -d '{"model": "deepseek-v4-pro", "max_tokens": 400,       "messages": [{"role": "user", "content": "Hello!"}]}' # OpenAI chat/completions format, streamingcurl -N https://zerocoder.com/api/v1/chat/completions \  -H "authorization: Bearer zc-sk-…" \  -H "content-type: application/json" \  -d '{"model": "deepseek-v4-pro", "stream": true,       "messages": [{"role": "user", "content": "Hello!"}]}'

How to connect the DeepSeek API: first request in 5 minutes

From a key to production — six steps based on the real /api/v1 contracts. Each step links to the relevant docs section.

  1. 1

    Get a key in your account

    Sign up, open the API section of your account, top up the balance and create a zc-sk-… key. One key unlocks DeepSeek and every other model in the catalogue.

    Read more →
  2. 2

    Send the first request

    POST /v1/chat/completions (Bearer) or /v1/messages (x-api-key) with model and messages — OpenAI and Anthropic shapes, the SDKs work with a swapped base URL.

    Read more →
  3. 3

    Turn on streaming

    stream: true — the answer arrives as SSE chunks with a final billing event showing the real charge. The reserve is taken by max_tokens (default 8192), so set it to fit the task.

    Read more →
  4. 4

    Handle limits and errors

    30 requests per minute per key: on 429 wait and retry with a growing pause; 402 — top up the balance; 400 — check model against GET /v1/models. Failed generations are not charged, so retrying is safe.

    Read more →
  5. 5

    Watch the budget

    GET /v1/balance returns the balance and 30-day spend; every call's price comes back in the response — write it to your logs and set an alert threshold in your own monitoring.

    Read more →
  6. 6

    Ship to production

    Keep the key in server secrets, never in the frontend. For high DeepSeek volumes contact us — the limit is raised individually and companies can pay by invoice. Check the observed stability on the status page.

    Read more →

No code

Any tool that can make an HTTP request can call our API: one POST with the x-api-key header.
HTTP Requestn8n

HTTP Request node: POST to the /api/v1 endpoint, x-api-key header and a JSON body built from workflow fields. For video add a Wait node and a second HTTP Request on GET ?id= in a loop until completed.

HTTP → Make a requestMake

HTTP “Make a request” module: POST, Body type JSON, x-api-key header. The response is parsed automatically — the image url or the answer text flows into the next modules.

Webhooks by ZapierZapier

Webhooks by Zapier → Custom Request action: POST, Data — JSON with model and prompt, Headers — x-api-key. Response fields are available to the following Zap steps.

Apps ScriptGoogle Sheets

In Apps Script use UrlFetchApp.fetch with method post, contentType application/json and a payload from the cells: prompts in one column, results written to the next one.

any bot frameworkTelegram bot

A bot on aiogram, grammY or Telegraf calls the same HTTP API: user message → model request → reply in the chat. For video — poll the status and send the file from the finished URL.

OpenAI-compatible base URLPython / Node SDK

For text models the official OpenAI and Anthropic SDKs work with a swapped base URL and our key — your application code stays the same. Images and video are a plain HTTP call from any language.

For business

We'll help bring AI into your business

More than a key: we help wire DeepSeek and other models into your workflows — from audit to production, with invoice payment.

  • Process auditWe find where AI pays off in your workflows: support, sales, content, documents — and name specific scenarios and models.
  • Integration into CRM, website, Telegram, n8nWired through our API or ready no-code scenarios; one key and a shared balance for every model.
  • Payment by invoiceCompanies get an invoice for bank transfer, accounting documents and a top-up of the API balance.
  • Support and limitsHelp with prompts and architecture, request limits raised individually for your load.

Inputs, limits and refunds

  • Two shapes: Anthropic Messages (/v1/messages, x-api-key) and OpenAI chat/completions (Bearer)
  • Streaming: Anthropic SSE with a billing event at the end; OpenAI chunks and data: [DONE]
  • Input and output tokens are billed at their own per-1M prices (output costs more), minimum per call in min_rub
  • A reserve by max_tokens (default 8192) is taken before the answer and settled after
  • Failure before the first token — the reserve is refunded
  • Image input only via the separate vision model (model: vision); images sent to the models on this page return 400 model_no_vision with nothing charged
  • 30 requests per minute per key (all endpoints combined); model: smart picks the model tier itself

Error responses and refunds

# 401 {"type":"error","error":{"type":"authentication_error","message":"Invalid or revoked API key."}}
# 402 {"type":"error","error":{"type":"billing_error","message":"Not enough API balance: …"}}
# 429 {"type":"error","error":{"type":"rate_limit_error","message":"…"}}   ← 30 requests/min per key
# 400 {"type":"error","error":{"type":"invalid_request_error","message":"Unknown model \"…\". See GET /v1/models."}}
# /chat/completions uses the OpenAI envelope: {"error":{"message":"…","type":"…","code":"insufficient_balance"}}
# streaming: the reserve (by max_tokens) is settled after the answer; a failure before the first token is refunded
# event: billing {"charged_rub":…,"reserved_rub":…,"balance_rub":…,"unit":"1M_tokens","rub_per_mtok_in":…,"rub_per_mtok_out":…,"rub_per_mtok":…}

Observed stability of the API and text models

Numbers come from the public /status summary: the share of successful requests over a period for the whole API and for the category as a whole (the summary has no per-model breakdown), no SLA promises. Failed generations are not charged, so retrying is safe.

Developer APIoperational

—now (2 h window)
74.5%last 30 days
74%last 90 days

Text & chatoperational

—now (2 h window)
99%last 30 days
94.5%last 90 days

Refunds and charges

  • Failure before the first token — the reserve is refunded in full
  • The max_tokens reserve is settled after the answer — only the real volume is charged
  • In streaming the real charge arrives as the billing event

Tracking since Aug 8, 2026.

Use cases

1

Hard problems and step-by-step reasoning in analytics and finance

2

Code generation and review, explaining unfamiliar modules, bug hunting

3

Agents with function calling: the model calls your functions and APIs

4

Extracting data from contracts, emails and reports into strict JSON

5

Maths and olympiad problems for education products

6

Support chatbots with long dialogue history

Prompting tips

  • For reasoning tasks ask for a plan first and the final answer in a separate block — easier to parse in code.
  • Set the response format with an explicit JSON example in the system prompt and validate the schema on your side.
  • Cap max_tokens for the task: output costs more than input, and the reserve is held until the answer ends.
  • For agents pass tools with a detailed description for every function — the model picks the right one more reliably.
  • Get long answers with stream: true and render text as it arrives.
  • Keep repeated instructions in one system prompt rather than every message — fewer input tokens.

Ready-made prompts for DeepSeek

Copy the prompt and the parameters into the request body — the fields are named exactly as in the /api/v1 contract. Replace the angle-bracket placeholders with your material.

Product descriptions in bulk

Write a product description under 60 words and five benefit bullets strictly from the specs:

<specs>
system: You write for an online store: specific, no superlatives.max_tokens: 400

SEO: title and description

For the page below suggest three title options under 60 characters and a description under 155 characters with the key phrase “<phrase>”:

<page text>
max_tokens: 400

Ticket classification

<the customer's message to classify>
system: Return JSON only: {"category": billing | delivery | quality | other, "priority": low | medium | high}max_tokens: 60

Translation with localisation

Translate into German for an Austrian audience, keep formatting and placeholders in curly braces, adapt idioms:

<text>
max_tokens: 1500

Chatbot with a system prompt

<conversation history in messages, last turn from the user>
system: You are a consultant at a bicycle shop. Keep it short, ask about height and budget, suggest at most two models.stream: truemax_tokens: 500

Who the DeepSeek API is for

Industries where this kind of generation becomes part of the workflow rather than an experiment.

SaaS & appsAn AI assistant inside your product: OpenAI or Anthropic shape, DeepSeek via a swapped base URL.
Support & CRMTicket replies, classification, conversation summaries for managers.
E-commerceProduct descriptions, SEO copy, review replies — in bulk across the catalogue.
EdTechGrading, explanations at the learner's level, quiz generation.
Documents & legalDigests, version comparison, field extraction into structured data.
Media & contentArticle drafts, rewrites, headlines and translations — DeepSeek in the editorial pipeline.

FAQ

How much does the DeepSeek API cost for input and output?

DeepSeek is billed per token: the model has two prices per million tokens — input and output — shown in the table above and in GET /v1/models, plus a per-call minimum in min_rub. A reserve by max_tokens is taken before the answer, then the actual usage is charged and the difference goes back to your balance.

How do I call the DeepSeek API from Python with the OpenAI SDK?

Install the openai package, set base_url to zerocoder.com/api/v1 and a zc-sk-… key, and put the DeepSeek model id from the table into model. Requests go to /v1/chat/completions in the usual messages format; without the SDK, plain requests with an Authorization: Bearer header works. Samples are in the “First request” block.

Does the DeepSeek API support function calling and agents?

Yes. On /v1/chat/completions DeepSeek accepts OpenAI tools and tool_choice and returns tool_calls; you send the function result back as a tool message. Agent frameworks that speak the OpenAI API work as is. The Anthropic format (/v1/messages) does not accept tools yet.

What are the DeepSeek API limits on request rate and answer length?

A shared key limit of 30 requests per minute applies across all API endpoints; above it you get 429 rate_limit_error. Answer length is capped by max_tokens, which also sets the reserve held until the answer ends. DeepSeek does not take image input — such a request returns 400 with nothing charged.

What happens to my money if DeepSeek does not answer?

If the DeepSeek answer never starts — the model is unavailable or the request is rejected — the reserve is refunded to the balance in full automatically. Format errors and rate limiting cost nothing, and if a stream breaks midway only the tokens actually generated are charged.

Can my business pay for the DeepSeek API with a bank invoice?

Yes. Request an invoice in the API dashboard and pay it from the company account; once credited, the balance is spent on DeepSeek and every other model with the same key. Card top-ups are credited immediately, and accounting documents are provided on request.

Is any free usage included with the DeepSeek API?

There are no free API credits: the wallet opens with a minimum first top-up, then every DeepSeek call is charged per token with a per-call minimum. To spend little, start with short prompts and a small max_tokens — the cost of each call is visible in the billing block of the response.

When should I pick DeepSeek over other catalogue models?

DeepSeek is strong at reasoning, maths and code: hard problems, code generation and review, agents that call functions. Routine bulk generation may be fine on a lighter model — the same key opens the whole catalogue, so compare answers on your prompts and pin the best id.

AI API for your product

One key for every model, pay per call