API テスト
自分の API キーを入力し、接続タイプとモデルを選び、送りたいメッセージを書くと、下の 5 言語のコードが同時に変わります。 コピーしてそのまま実行できますし、「リクエストを送信」を押せばブラウザからゲートウェイへ直接送られます。キーもレスポンスもドキュメントサイトを経由しません。 ベース URL を入力する必要はありません。このドキュメントサイト自体がゲートウェイから配信されていて、サンプルはすでにそのアドレスを指しています。
「リクエストを送信」は実際の呼び出しです。アカウントのトークンを消費し、実使用量に応じて課金されます。コードをコピーするだけなら費用はかかりません。
キーはこのタブの中だけに保持され、タブを閉じると消えます。ドキュメントサイトには送信されません。
curl https://llm.usmm.cn/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}'curl https://llm.usmm.cn/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。"
}'curl https://llm.usmm.cn/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}'curl https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:generateContent \
-H "Content-Type: application/json" \
-H "x-goog-api-key: YOUR_API_KEY" \
-d '{
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}'curl --no-buffer https://llm.usmm.cn/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}'curl --no-buffer https://llm.usmm.cn/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。",
"stream": true
}'curl --no-buffer https://llm.usmm.cn/v1/messages \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}'curl --no-buffer https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:streamGenerateContent?alt=sse \
-H "Content-Type: application/json" \
-H "x-goog-api-key: YOUR_API_KEY" \
-d '{
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}' import requests
response = requests.post(
"https://llm.usmm.cn/v1/chat/completions",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
json={
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
},
timeout=60,
)
response.raise_for_status()
print(response.json())import requests
response = requests.post(
"https://llm.usmm.cn/v1/responses",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
json={
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。"
},
timeout=60,
)
response.raise_for_status()
print(response.json())import requests
response = requests.post(
"https://llm.usmm.cn/v1/messages",
headers={
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY",
"anthropic-version": "2023-06-01",
},
json={
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
},
timeout=60,
)
response.raise_for_status()
print(response.json())import requests
response = requests.post(
"https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:generateContent",
headers={
"Content-Type": "application/json",
"x-goog-api-key": "YOUR_API_KEY",
},
json={
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
},
timeout=60,
)
response.raise_for_status()
print(response.json())import requests
with requests.post(
"https://llm.usmm.cn/v1/chat/completions",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
json={
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": True
},
stream=True,
timeout=60,
) as response:
response.raise_for_status()
for line in response.iter_lines():
if line:
print(line.decode())import requests
with requests.post(
"https://llm.usmm.cn/v1/responses",
headers={
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
json={
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。",
"stream": True
},
stream=True,
timeout=60,
) as response:
response.raise_for_status()
for line in response.iter_lines():
if line:
print(line.decode())import requests
with requests.post(
"https://llm.usmm.cn/v1/messages",
headers={
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY",
"anthropic-version": "2023-06-01",
},
json={
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": True
},
stream=True,
timeout=60,
) as response:
response.raise_for_status()
for line in response.iter_lines():
if line:
print(line.decode())import requests
with requests.post(
"https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:streamGenerateContent?alt=sse",
headers={
"Content-Type": "application/json",
"x-goog-api-key": "YOUR_API_KEY",
},
json={
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
},
stream=True,
timeout=60,
) as response:
response.raise_for_status()
for line in response.iter_lines():
if line:
print(line.decode()) const response = await fetch("https://llm.usmm.cn/v1/chat/completions", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
body: JSON.stringify({
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}),
});
console.log(await response.json());const response = await fetch("https://llm.usmm.cn/v1/responses", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
body: JSON.stringify({
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。"
}),
});
console.log(await response.json());const response = await fetch("https://llm.usmm.cn/v1/messages", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY",
"anthropic-version": "2023-06-01",
},
body: JSON.stringify({
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}),
});
console.log(await response.json());const response = await fetch("https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:generateContent", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-goog-api-key": "YOUR_API_KEY",
},
body: JSON.stringify({
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}),
});
console.log(await response.json());const response = await fetch("https://llm.usmm.cn/v1/chat/completions", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
body: JSON.stringify({
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}),
});
const decoder = new TextDecoder();
for await (const chunk of response.body) {
process.stdout.write(decoder.decode(chunk, { stream: true }));
}const response = await fetch("https://llm.usmm.cn/v1/responses", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY",
},
body: JSON.stringify({
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。",
"stream": true
}),
});
const decoder = new TextDecoder();
for await (const chunk of response.body) {
process.stdout.write(decoder.decode(chunk, { stream: true }));
}const response = await fetch("https://llm.usmm.cn/v1/messages", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY",
"anthropic-version": "2023-06-01",
},
body: JSON.stringify({
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}),
});
const decoder = new TextDecoder();
for await (const chunk of response.body) {
process.stdout.write(decoder.decode(chunk, { stream: true }));
}const response = await fetch("https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:streamGenerateContent?alt=sse", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-goog-api-key": "YOUR_API_KEY",
},
body: JSON.stringify({
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}),
});
const decoder = new TextDecoder();
for await (const chunk of response.body) {
process.stdout.write(decoder.decode(chunk, { stream: true }));
} package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
payload := `{
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1/chat/completions", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
out, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(out))
}package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
payload := `{
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。"
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1/responses", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
out, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(out))
}package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
payload := `{
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1/messages", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("x-api-key", "YOUR_API_KEY")
req.Header.Set("anthropic-version", "2023-06-01")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
out, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(out))
}package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
payload := `{
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:generateContent", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("x-goog-api-key", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
out, err := io.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(out))
}package main
import (
"bufio"
"fmt"
"net/http"
"strings"
)
func main() {
payload := `{
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1/chat/completions", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
scanner := bufio.NewScanner(resp.Body)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
}package main
import (
"bufio"
"fmt"
"net/http"
"strings"
)
func main() {
payload := `{
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。",
"stream": true
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1/responses", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
scanner := bufio.NewScanner(resp.Body)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
}package main
import (
"bufio"
"fmt"
"net/http"
"strings"
)
func main() {
payload := `{
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1/messages", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("x-api-key", "YOUR_API_KEY")
req.Header.Set("anthropic-version", "2023-06-01")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
scanner := bufio.NewScanner(resp.Body)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
}package main
import (
"bufio"
"fmt"
"net/http"
"strings"
)
func main() {
payload := `{
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}`
req, err := http.NewRequest(http.MethodPost, "https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:streamGenerateContent?alt=sse", strings.NewReader(payload))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("x-goog-api-key", "YOUR_API_KEY")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
scanner := bufio.NewScanner(resp.Body)
for scanner.Scan() {
fmt.Println(scanner.Text())
}
} import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1/chat/completions"))
.header("Content-Type", "application/json")
.header("Authorization", "Bearer YOUR_API_KEY")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。"
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1/responses"))
.header("Content-Type", "application/json")
.header("Authorization", "Bearer YOUR_API_KEY")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }]
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1/messages"))
.header("Content-Type", "application/json")
.header("x-api-key", "YOUR_API_KEY")
.header("anthropic-version", "2023-06-01")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:generateContent"))
.header("Content-Type", "application/json")
.header("x-goog-api-key", "YOUR_API_KEY")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1/chat/completions"))
.header("Content-Type", "application/json")
.header("Authorization", "Bearer YOUR_API_KEY")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofLines())
.body()
.forEach(System.out::println);import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"model": "deepseek-v4.1-flash",
"input": "API ゲートウェイとは何か、一文で説明してください。",
"stream": true
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1/responses"))
.header("Content-Type", "application/json")
.header("Authorization", "Bearer YOUR_API_KEY")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofLines())
.body()
.forEach(System.out::println);import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"model": "deepseek-v4.1-flash",
"max_tokens": 1024,
"messages": [{ "role": "user", "content": "API ゲートウェイとは何か、一文で説明してください。" }],
"stream": true
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1/messages"))
.header("Content-Type", "application/json")
.header("x-api-key", "YOUR_API_KEY")
.header("anthropic-version", "2023-06-01")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofLines())
.body()
.forEach(System.out::println);import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var payload = """
{
"contents": [{ "parts": [{ "text": "API ゲートウェイとは何か、一文で説明してください。" }] }]
}
""";
var request = HttpRequest.newBuilder()
.uri(URI.create("https://llm.usmm.cn/v1beta/models/deepseek-v4.1-flash:streamGenerateContent?alt=sse"))
.header("Content-Type", "application/json")
.header("x-goog-api-key", "YOUR_API_KEY")
.POST(HttpRequest.BodyPublishers.ofString(payload))
.build();
HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofLines())
.body()
.forEach(System.out::println); レスポンス
まだ送信していません。上のコードをコピーして実行するか、ここから送って実際のレスポンスを確認できます。
API ドキュメント全体
Section titled “API ドキュメント全体”上の 4 つの接続タイプは、ゲートウェイが話す方言をひと通り含んでいます。違いは 2 か所です。
- 認証ヘッダー。 Chat と Responses は
Authorization、Claude はx-api-key、Gemini はx-goog-api-keyを使います。方言を移るときに引っかかるのはたいていここです。 - ストリーミングの表し方。 前の 3 つはリクエストボディに
"stream": trueを入れますが、Gemini のネイティブ形式は URL のアクション(:streamGenerateContent)を変えます。
ゲートウェイが提供するのはこの 4 つだけではありません。以下がパラメータ、リクエストボディの構造、レスポンス例を含む全一覧で、その場で試すこともできます。 同じ内容の解説は API とプレイグラウンドにあります。通して読むならそちらが向いています。
API ドキュメントを読み込んでいます…