Dönüştürme API'si

Dönüştürme API'si, mevcut 3D modelleri farklı dosya formatlarına dönüştürmenizi sağlar.


POST/openapi/v1/convert

Bir Dönüştürme Görevi Oluştur

Bu uç nokta yeni bir format dönüştürme görevi oluşturur.

Parametreler

  • Name
    input_task_id
    Type
    string
    Zorunlu
    Description

    Modelini dönüştürmek istediğiniz tamamlanmış bir Meshy görevinin kimliği. Görevin durumu SUCCEEDED olmalıdır.

  • Name
    model_url
    Type
    string
    Zorunlu
    Description

    3D model dosyasına işaret eden herkese açık bir URL veya veri URI'si. Desteklenen formatlar: .glb, .gltf, .obj, .fbx, .stl. Veri URI'leri için MIME türünü kullanın: application/octet-stream.

  • Name
    target_formats
    Type
    string[]
    Zorunlu
    Description

    Dönüştürülen model için çıkış formatlarının listesi. Mevcut değerler: glb, fbx, obj, usdz, blend, stl, 3mf.

Dönen Değerler

Yanıtın result özelliği, yeni oluşturulan dönüştürme görevinin id'sini içerir.

Hata Modları

  • 400 - Bad Request

İstek kabul edilemezdi. Yaygın nedenler:

  • Eksik parametre: model_url veya input_task_id sağlanmalıdır.
  • Eksik target_formats: En az bir hedef format belirtilmelidir.
  • Geçersiz giriş görevi: input_task_id başarılı bir göreve referans vermelidir.
  • Geçersiz model formatı: model_url desteklenmeyen bir uzantıya sahip bir dosyaya işaret ediyor.
  • Erişilemez URL: model_url indirilemedi.
  • 401 - Unauthorized

Kimlik doğrulama başarısız oldu. Lütfen API anahtarınızı kontrol edin.

  • 402 - Payment Required

Bu görevi gerçekleştirmek için yetersiz kredi.

  • 429 - Too Many Requests

Hız sınırınızı aştınız.

İstek

POST
/openapi/v1/convert
curl https://api.meshy.ai/openapi/v1/convert \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "target_formats": ["fbx", "stl"]
  }'

Yanıt

{
  "result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}

GET/openapi/v1/convert/:id

Bir Dönüştürme Görevini Al

Bu uç nokta, bir dönüştürme görevini ID'sine göre alır.

Parametreler

  • Name
    id
    Type
    path
    Description

    Alınacak dönüştürme görevinin ID'si.

Dönen Değerler

Dönüştürme Görevi nesnesi.

İstek

GET
/openapi/v1/convert/:id
curl https://api.meshy.ai/openapi/v1/convert/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Yanıt

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "convert",
  "model_urls": {
      "glb": "",
      "fbx": "https://assets.meshy.ai/.../model.fbx?Expires=...",
      "obj": "",
      "usdz": "",
      "stl": "https://assets.meshy.ai/.../model.stl?Expires=..."
  },
  "progress": 100,
  "status": "SUCCEEDED",
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "task_error": null,
  "consumed_credits": 1
}

DELETE/openapi/v1/convert/:id

Bir Dönüştürme Görevini Sil

Bu uç nokta, bir dönüştürme görevini, ilişkili tüm modeller ve veriler dahil olmak üzere kalıcı olarak siler. Bu işlem geri alınamaz.

Yol Parametreleri

  • Name
    id
    Type
    path
    Description

    Silinecek dönüştürme görevinin ID'si.

Dönen Değerler

Başarı durumunda 200 OK döner.

İstek

DELETE
/openapi/v1/convert/:id
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/convert/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Yanıt

// Returns 200 Ok on success.

GET/openapi/v1/convert

Dönüştürme Görevlerini Listele

Bu uç nokta, dönüştürme görevlerinin bir listesini almanızı sağlar.

Parametreler

  • Name
    page_num
    Type
    integer
    varsayılan 1
    Description

    Sayfalama için sayfa numarası.

  • Name
    page_size
    Type
    integer
    varsayılan 10
    Description

    Sayfa boyutu sınırı. Maksimum izin verilen 50 öğedir.

  • Name
    sort_by
    Type
    string
    Description

    Sıralama yapılacak alan. Mevcut değerler:

    • +created_at: Oluşturulma zamanına göre artan sırayla sıralayın.
    • -created_at: Oluşturulma zamanına göre azalan sırayla sıralayın.

Dönen Değerler

Dönüştürme Görevi Nesneleri listesini sayfalı olarak döndürür.

İstek

GET
/openapi/v1/convert
curl https://api.meshy.ai/openapi/v1/convert?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Yanıt

[
  {
    "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
    "type": "convert",
    "model_urls": {
      "fbx": "https://assets.meshy.ai/.../model.fbx?Expires=...",
      "stl": "https://assets.meshy.ai/.../model.stl?Expires=..."
    },
    "progress": 100,
    "status": "SUCCEEDED",
    "created_at": 1699999999000,
    "started_at": 1700000000000,
    "finished_at": 1700000001000,
    "task_error": null,
    "consumed_credits": 1
  }
]

GET/openapi/v1/convert/:id/stream

Bir Dönüştürme Görevini Yayınla

Bu uç nokta, Server-Sent Events (SSE) kullanarak bir dönüştürme görevi için gerçek zamanlı güncellemeleri yayınlar.

Parametreler

  • Name
    id
    Type
    path
    Description

    Yayınlanacak dönüştürme görevi için benzersiz tanımlayıcı.

Dönen Değerler

Server-Sent Events olarak Dönüştürme Görevi Nesneleri akışını döndürür.

PENDING veya IN_PROGRESS görevleri için, yanıt akışı yalnızca gerekli progress ve status alanlarını içerecektir.

İstek

GET
/openapi/v1/convert/:id/stream
curl -N https://api.meshy.ai/openapi/v1/convert/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Yanıt Akışı

// Message event examples illustrate task progress.
event: message
data: {
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "convert",
  "model_urls": {
    "fbx": "https://assets.meshy.ai/.../model.fbx?Expires=...",
    "stl": "https://assets.meshy.ai/.../model.stl?Expires=..."
  },
  "progress": 100,
  "status": "SUCCEEDED",
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "task_error": null,
  "consumed_credits": 1
}

Dönüştürme Görevi Nesnesi

Dönüştürme Görevi nesnesi, bir format dönüştürme işini temsil eder.

Özellikler

  • id · string

Görev için benzersiz tanımlayıcı.

  • type · string

Görevin türü. Değer convert'tir.

  • model_urls · object

Dönüştürülmüş model dosyaları için indirilebilir URL'ler. Yalnızca target_formats içinde belirtilen formatlar için URL'ler bulunur. Diğer format özellikleri boş stringler olacaktır.

  • progress · integer

Görevin ilerlemesi (0-100).

  • status · string

Görevin durumu. Olası değerler: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • preceding_tasks · integer

Önceki görevlerin sayısı. Yalnızca durum PENDING olduğunda anlamlıdır.

  • created_at · timestamp

Görevin oluşturulduğu zamanın zaman damgası, milisaniye cinsinden.

  • started_at · timestamp

Görevin başlatıldığı zamanın zaman damgası, milisaniye cinsinden. Başlatılmadıysa 0.

  • finished_at · timestamp

Görevin tamamlandığı zamanın zaman damgası, milisaniye cinsinden. Tamamlanmadıysa 0.

  • task_error · object

Görev başarısız olduysa hata nesnesi. Daha fazla ayrıntı için Hatalar bölümüne bakın.

  • consumed_credits · integer

Bu görev tarafından tüketilen kredi sayısı (her dönüştürme görevi için 1 kredi). FAILED görevler için 0 döner.