Varlıklar için Kullanım Rehberi

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Open Cloud'un Varlık Arayüzü sayesinde, manuel olarak Studio'a yüklemeye gerek duymadan bir tek HTTP isteğiyle varlıkları yükleyip güncelleyebilirsiniz. Bu API destekler:

  • Yeni kaynaklar yükleniyor.
  • Mevcut kaynakları versiyon kontrolüyle güncelliyor.
  • Açıklamalar, görüntü adları, ikonlar ve önizlemeler dahil olmak üzere varlık metadatasını güncelliyor.
  • Belirli bir önceki versiyona geri yükseltme gibi varlık versiyonlarını yönetmek.
  • Metadatalar, versiyonlar ve işlemler dahil olmak üzere varlık içindeki mevcut bilgileri kontrol ediyor.

Desteklenen Varlık Türleri ve Sınırları

Yeni bir varlık oluşturmayan veya mevcut varlıkların içeriğini güncellemeyen son noktalar için, sınırlar ve sınırlar yoktur. Ancak, Yeni Oluştur ve Güncelleme portlarının içeriği sadece sınırlı türdeki varlıkları destek

Varlık TürüBiçimİçerik TürüSınırlamalar
Ses

  • .mp3 >
  • .ogg >
  • >

  • audio/mpeg >
  • audio/ogg >
  • >

  • Yüksekliği 7 dakika.
  • Kimlik doğrulandıysa ayda 100 yüklemesi kadar.
  • Kimlik doğrulanmamışsa ayda 100 yüklemesi kadar.
  • 1> Güncellenmesi mevcut değil. 1>

Resimli Etiketler

    .png > .jpeg > 0> .bmp0> >0>

    4> 5> .tga

    5> >4> >

    image/png > image/jpeg > 0> image/bmp0> >0> 2> 3> image/tga3> >3> 4> 5> image/bmp5> >4> 8> 9>

    Güncellenmesi için kullanılabilir değil.

  • 8000x8000 пикselden daha küçük olmalıdır.
Model

  • .fbx >
  • >

  • model/fbx >
  • >

Kullanım vakanınıza bağlı olarak, bazı modelleri 3D İçe aktarıcı kullanarak manuel olarak yüklemeyi düşünün.

3D İçe aktarıcı, bir 3D önizlemesi, çeşitli hata kontrolleri ve çok özelleştirilebilir ithal ayarları sağlar.

Video

  • .mp4 >
  • .mov >
  • >

  • video/mp4 >
  • video/mov >
  • >

    Süre 30 saniye kadar. 4096x2160 çözünürlüğüne kadar. 375 MB'ye kadar. 1> Şu anda, sadece İngilizce ve/veya İspanyolca ses veya metni izinlidir. 1> 4>

Güvenlik İzinleri

API, ilk-taraf kullanımını destekler API anahtarı otorizasyonu ve üçüncü taraf kullanımını destekler OAuth 2 uygulamaları. Her yol için farklı güvenlik izin ayarları gerektirir.

API Anahtarları

Kendi kodlarınızda veya araçlarınızda API'yi kullanmak için, onay ve güvenlik için bir API anahtarı oluşturmalısınız. Grubunuzun sahip olduğu varlıkları yönetmek için, grubunuzun sahip olduğu varlıklarınızı yönetmek için grubunuzun sahip olduğ

Bir API anahtarı oluşturduktan sonra, onu kişiler veya gruplar arasında sahip olma yetkisini değiştiremezsiniz, bu yüzden kendi hesapaltında bir API anahtarı oluşturursanız, grubu yönetmek için kullanamazsınız.

Kendiniz veya grupiçin API anahtarı oluşturuyor olup olmadığınız başka bir izin ekleyin:

  1. Kaynakları Erişim İzinlerine ekleyin.
  2. Seçili deneyiminize Oku ve Yaz işlem izinlerini ekleyin, planladığınız uç noktaların gereken kapsayışlarına bağlı olarak.

API anahtarınız olduğunda, bunu x-api-key istek başlığına kopyalayın. Tüm uç noktalar x-api-key istek başlığını gerektirir.

Example API Request Header

--header 'x-api-key: ${ApiKey}' \

OAuth 2.0 Uygulamaları

API'yi üçüncü parti bir OAuth 2.0 uygulaması için kullanmak için, asset:read ve asset:write izin alanlarını ekleyin, uygulamanızı kaydederken . Bu alanlar, kullanacağınız sonuçların gereksinimlerine dayanarak seçilir.

Yeni Bir Varlık Oluşturulması

Yeni bir varlığı HTTP talepyüklemeye çalışmak:

  1. API anahtarını x-api-key iletişim kutusunun Create Asset ucundaki isteğe kaydır.

  2. İstekinizde:

    1. Hedef varlık türü belirtin.
    2. Varlık adınızı ve açıklamanızı ekleyin.
    3. Yaratıcı bilgilerini ekleyin.
      • Eğer kendi adınız ile varlık oluşturmak istiyorsanız, kullanıcı kimliğinizi ekleyin. Kullanıcı kimliğinizi Roblox profilinizin URL'sinde bulabilirsiniz. Örneğin, https://www.roblox.com/users/1234567/profile için kullanıcı kimliğiniz 1234
      • Eğer varlığı bir grup varlığı olarak oluşturmak istiyorsanız, grubunuzun kimliğini ekleyin. Grubunuzun sayfasının URL'sinde grup kimliğini bulabilirsiniz. Örneğin, https://www.roblox.com/groups/7654321/example-group#!/ için, grub
    4. Varlıklarınızın dosya yolunu ve içeriği tipini ekleyin.
    Example Request for Create Asset

    curl --location 'https://apis.roblox.com/assets/v1/assets' \
    --header 'x-api-key: ${ApiKey}' \
    --form 'request="{
    \"assetType\": \"Model\",
    \"displayName\": \"Name\",
    \"description\": \"This is a description\",
    \"creationContext\": {
    \"creator\": {
    \"userId\": \"${userId}\" # Bir grup varlığı oluşturmak için grup kaynağını kullan
    }
    }
    }"' \
    --form 'fileContent=@"/filepath/model.fbx";type=model/fbx'

Mevcut Bir Varlığı Güncelleme

Mevcut bir varlığı HTTP talepgüncelleme:

  1. API anahtarını x-api-key API başlığına kopyalayın.
  2. talepvarlık türünü ve varlık kimliğini ekleyin. Varlık kimliğinizi kopyalamak için:
    1. Navigate to the Oluşturma page of the Yaratıcı Dashboard .
    2. Select the Geliştirme Öğeleri kategori.
    3. Varlığınızın kategorisini seçin ve hedef kaynağı bulun.
    4. Hedef kaynağının minyatürüne fareyi getirin ve düğmesine tıklayarak bir seçenek listesi görüntüleyin, sonra listeden Kaynak Kopyala ID'yi Kopyala seçin.
Example Request for Updating Asset Content

curl --location --request PATCH 'https://apis.roblox.com/assets/v1/assets/{assetId}' \
--header 'x-api-key: {apiKey}' \
--form 'request={
\"assetType\": \"{assetType}\",
\"assetId\": \"{assetId}\",
\"creationContext\": {
\"creator\": {
\"userId\": {userId}
},
\"expectedPrice\":{expectedPrice}
},
}' \
--form 'fileContent=@"{file-path}"'

Varlık Operasyon Durumunu Geri Alma

Yeni bir varlık oluşturma veya mevcut bir varlığı güncelleme isteğiniz başarılı olursa, şu biçimde "path": "operationId" "操作Id" ile işaretlenir. Onu kontrol etmek için şu adımları kullanabilirsiniz:

  1. API anahtarını x-api-key İstek Başlığına kopyalayın ve talep, aşağıdaki kod örneği gibi gönderin:

    Example Request for Get Operation

    curl --location 'https://apis.roblox.com/assets/v1/operations/{operationId}' \
    --header 'x-api-key: {$ApiKey}'
  2. Eğer isteğiniz başarılı olursa, yüklenen varlık bilgilerini temsil eden bir Operation nesnesi içerir veya response nesnesi, neden varlık yükleme işleminin aşağıdaki kod örneğinde gösterildiği gibi başarısız olduğunu açıklar:

    Example Response for Get Operation

    {
    "path": "operations/{operationId}",
    "done": true,
    "response": {
    "@type": "type.googleapis.com/roblox.open_cloud.assets.v1.Asset",
    "path": "assets/2205400862",
    "revisionId": "1",
    "revisionCreateTime": "2023-03-02T22:27:04.062164400Z",
    "assetId": "2205400862",
    "displayName": "Name",
    "description": "This is a description",
    "assetType": "ASSET_TYPE_DECAL",
    "creationContext": {
    "creator": {
    "userId": "11112938575"
    }
    },
    "moderationResult": {
    "moderationState": "MODERATION_STATE_APPROVED"
    }
    }
    }
  3. (Opcional) Oluşturulan varlığı Roblox hesapkontrol edin.

    1. Roblox hesabınızın Envanteri sayfasına gidin.
    2. Kontrol etmek istediğiniz varlığın Kategorisi kontrol et.
    3. Hedef kaynağını bul ve onun miniaturasını gör.

OAuth 2.0 Uygulamalarına Assetleri Ekleme

Kullanıcılarınızın Roblox'a varlıklar yüklemesine ve güncellemesine izin vermek için OAuth 2.0 uygulamaları oluşturabilirsiniz.

Uygulamanız için Asset API'sini kullanmak ve kullanıcılarınızın izinlerini istemek için aşağıdaki ayarları yapın:

  1. Uygulamanızı kaydederken İzinler altında 资产:读取 ve 资产:写入 kapsayı seçin.

  2. kimlik doğrulama akışını uygularken, aşağıdaki örnek gibi kullanıcıları uygulanan başvurunun aşırı yönlendirilmiş URL'sine yönlendiren otoritez URL'sine asset:read olarak asset:write ve 1> asset:write1> ile dahil edin:


    https://www.authorize.roblox.com?client_id=819547628404595165403873012&redirect_uri=https://my-app.com/redirect&scope=asset:read+asset:write&response_type=Code&prompts=login+consent&nonce=12345&state=6789
  3. İstek gönderilirken, talepiçindeki kullanıcı kaynağının kullanımını gösteren bir örnek istek başlığını ve varsa varlık içeriğinin güncellenmesini içeren bir form gösterir. Aşağıdaki örnek, yeni bir varlığı yükleme için bir örnek isteği gösterir:

    Örnek İstek

    curl --location --request POST 'https://apis.roblox.com/assets/v1/assets' \
    --header 'Authorization: Bearer <access_token>' \
    --header 'Content-Type: application/json' \
    --form 'request="{
    \"assetType\": \"Decal\",
    \"displayName\": \"DecalDemo123\",
    \"description\": \"This is a description\",
    \"creationContext\": {
    \"creator\": {
    \"userId\": \"<user_id>\"
    }
    }
    }"' \
    --form 'fileContent=@"/filepath/p1.png"'