Mula pantas
Mulakan dengan mencipta kunci API anda
Setiap permintaan dalam panduan ini memerlukan satu. Mencipta kunci hanya mengambil masa beberapa saat.
Cipta kunci API andaEmpat langkah untuk mendapatkan model 3D pertama anda, menggunakan Meshy REST API.
Menggunakan pembantu pengekodan AI? Lihat halaman Integrasi AI kami — pasang MCP server Meshy untuk akses tool-calling daripada Claude Code, Cursor, Windsurf, dan alat lain yang serasi dengan MCP, atau arahkan ejen sembang biasa ke llms.txt.
1Dapatkan kunci API anda
Cipta kunci API daripada halaman API Keys dalam Developer Platform — anda tidak akan dapat melihatnya semula selepas skrin ini, jadi simpan di tempat yang selamat. Setiap permintaan disahkan dengan token Bearer dalam header Authorization — lihat Pengesahan.
Mencipta dan mengurus kunci API memerlukan pelan berbayar. Akaun percuma mendapat kunci khusus terbina dalam untuk ujian di Playground, tetapi tidak boleh mencipta atau mengurus kunci mereka sendiri.

Petua keselamatan: elakkan menampal kunci anda terus ke dalam skrip — sebaliknya simpan sebagai pemboleh ubah persekitaran: export MESHY_API_KEY="msy_...".
2Buat permintaan Imej-ke-3D pertama anda
Eksport kunci anda, kemudian cipta tugas pertama anda dengan Imej ke 3D. Bekerja daripada prompt teks atau berbilang foto sebaliknya? Lihat Teks ke 3D atau Berbilang Imej ke 3D.
Export your key
export MESHY_API_KEY="<your-api-key>"
Jalankan ini dalam terminal anda (Terminal pada macOS, Command Prompt atau PowerShell pada Windows) — bukan dalam pelayar.
Setiap contoh di bawah menggunakan foto ini — gantikan dengan image_url anda sendiri untuk mencuba sesuatu yang lain.

Request
curl https://api.meshy.ai/openapi/v1/image-to-3d \
-X POST \
-H "Authorization: Bearer ${MESHY_API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"image_url": "https://docs.meshy.ai/images/api/quick-start/source-photo.webp"
}'
3Semak status tugas
Permintaan mengembalikan ID tugas dengan segera. Tinjau endpoint yang sama sehingga status menjadi SUCCEEDED — gantikan <task_id> di bawah dengan ID yang dikembalikan dalam langkah 2.
Request
curl https://api.meshy.ai/openapi/v1/image-to-3d/<task_id> \
-H "Authorization: Bearer ${MESHY_API_KEY}"
Response — SUCCEEDED
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"status": "SUCCEEDED",
"progress": 100,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"task_error": {
"message": ""
}
}
Tinjauan tidak sesuai dengan gaya anda? Gunakan penstriman SSE atau webhook untuk mendapat pemberitahuan sebaik sahaja tugas selesai.
4Muat turun model anda
Dapatkan model daripada model_urls dalam respons di atas. Setiap format (GLB, FBX, OBJ, USDZ, STL) adalah URL yang ditandatangani dan terhad masa — atau langkau baris arahan dan tampal URL terus ke dalam bar alamat pelayar anda untuk memuat turunnya.
Download
curl -L "<model_urls.glb from the response above>" -o model.glb

Fail dikekalkan selama 3 hari pada pelan bukan-Enterprise — lihat Pengekalan Aset.
Gabungkan semuanya
Lebih suka satu skrip yang melakukan keseluruhan proses — cipta, tinjau, muat turun?
Full script
import axios from 'axios';
import fs from 'fs';
const headers = { Authorization: `Bearer ${process.env.MESHY_API_KEY}` };
const imageUrl = 'https://docs.meshy.ai/images/api/quick-start/source-photo.webp';
// 1. Create the task
const { data: created } = await axios.post(
'https://api.meshy.ai/openapi/v1/image-to-3d',
{ image_url: imageUrl },
{ headers },
);
const taskId = created.result;
// 2. Poll until it finishes
let task;
while (true) {
const { data } = await axios.get(`https://api.meshy.ai/openapi/v1/image-to-3d/${taskId}`, { headers });
task = data;
if (task.status === 'SUCCEEDED' || task.status === 'FAILED') break;
await new Promise((resolve) => setTimeout(resolve, 5000));
}
// 3. Download the result (only if the task succeeded)
if (task.status !== 'SUCCEEDED') {
throw new Error(`Task ${task.status}: ${task.task_error?.message || 'unknown error'}`);
}
const { data: model } = await axios.get(task.model_urls.glb, { responseType: 'arraybuffer' });
fs.writeFileSync('model.glb', model);
console.log('Saved model.glb');
Terokai aliran kerja lazim
Watak sedia-main
Rig jejaring humanoid dengan rangka supaya ia sedia untuk dianimasikan dalam Unity atau Unreal.
Learn more →Aset lowpoly
Tetapkan model_type kepada lowpoly pada Imej ke 3D untuk jejaring bersih yang sedia-main.
Model cetakan 3D
Tukar model yang telah siap kepada fail 3MF berbilang warna, sedia untuk dihiris dan dicetak.
Learn more →Langkah seterusnya
- Lebih suka UI? Buka Developer Platform — jalankan permintaan dalam Playground, jejak penggunaan dan log permintaan, dan urus webhooks.
- Layari rujukan API yang lengkap untuk setiap endpoint.
- Semak Harga, Rate Limits, dan Ralat sebelum anda beralih ke pengeluaran.
- Ikuti log perubahan untuk kemas kini dan pembaikan pepijat.
- Ada maklum balas atau menghadapi masalah? Sertai komuniti Discord kami — kami ingin mendengar daripada anda!