Sunucu uygulaması isteğe bağlıdır. Örnek kimliği hizmetini kullanarak aşağıdaki işlemleri gerçekleştirin:
- Uygulama örnekleri hakkında bilgi edinin. Uygulama jetonlarını doğrulayın veya jetonu oluşturan uygulama örneği hakkında daha fazla bilgi edinin.
- Uygulama örnekleri için ilişki haritaları oluşturun. Uygulama örnekleri ve varlıklar arasında ilişkiler oluşturun.
- APN jetonları için kayıt jetonları oluşturun. Bu API, verileri toplu olarak içe aktarmanıza Mevcut APNs jetonlarını kullanarak bunları FCM için geçerli kayıt jetonlarıyla eşler.
Uygulama örnekleri hakkında bilgi alma
Bir uygulama örneği hakkında bilgi almak için şu adresten Örnek Kimliği hizmetini çağırın: aşağıdaki gibi bir uygulama örneğinin jetonunu sağlar:
https://iid.googleapis.com/iid/info/IID_TOKEN
Parametreler
Authorization: Bearer <access_token>
Bu parametreyi başlıkta ayarlayın.Authorization
üstbilgisinin değeri olarak kısa ömürlü bir OAuth2 jetonu ekleyin. Bu jetonu alma hakkında daha fazla bilgi için bkz. Kimlik bilgilerini manuel olarak sağlayın.access_token_auth: true
Bu parametreyi başlıkta ayarlayın.- [isteğe bağlı] boole
details
: FCM'yi almak için bu sorgu parametresinitrue
olarak ayarlayın konu abonelik bilgileri (varsa). Ne zaman? belirtilerek varsayılan olarakfalse
değerine ayarlanır.
Sonuçlar
Başarılı bir şekilde, çağrı HTTP durumu 200'ü ve aşağıdakileri içeren bir JSON nesnesi döndürür:
application
: Jetonla ilişkilendirilmiş paket adı.authorizedEntity
- projectId'nin jetona gönderme yetkisi verildi.applicationVersion
- uygulamanın sürümü.platform
- cihazı belirtmek içinANDROID
,IOS
veyaCHROME
değerini döndürür jetonun ait olduğu platformdur.
details
işareti ayarlanırsa:
rel
: jetonla ilişkili ilişkiler. Örneğin, bir konu listesi aboneliklerdir.
Örnek GET
isteği
https://iid.googleapis.com/iid/info/nKctODamlM4:CKrh_PC8kIb7O...clJONHoA
Content-Type:application/json
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth: true
Örnek sonuç
HTTP 200 OK
{
"application":"com.iid.example",
"authorizedEntity":"123456782354",
"platform":"Android",
"rel":{
"topics":{
"topicname1":{"addDate":"2015-07-30"},
"topicname2":{"addDate":"2015-07-30"},
"topicname3":{"addDate":"2015-07-30"},
"topicname4":{"addDate":"2015-07-30"}
}
}
}
Uygulama örnekleri için ilişki haritaları oluşturma
Instance ID API, uygulama örnekleri için ilişki haritaları oluşturmanıza olanak tanır. Örneğin, bir kayıt jetonunu FCM konusuyla eşleyebilir, uygulama örneğinin konuya abone olmasını sağlar. API, ve toplu olarak bu tür ilişkiler kurmanın önemini daha iyi kavramışsınızdır.
Uygulama örneği için ilişki eşlemesi oluşturma
Kayıt jetonu ve desteklenen bir ilişki göz önüne alındığında, olabilir. Örneğin, bir uygulama örneğini FCM konusuna abone olabilirsiniz aşağıdaki gibi bir uygulama örneğinin jetonunu sağlar:
https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME
Parametreler
Authorization: Bearer <access_token>
Bu parametreyi başlıkta ayarlayın.Authorization
üstbilgisinin değeri olarak kısa ömürlü bir OAuth2 jetonu ekleyin. Bu jetonu alma hakkında daha fazla bilgi için bkz. Kimlik bilgilerini manuel olarak sağlayın.access_token_auth: true
Bu parametreyi başlıkta ayarlayın.
Sonuçlar
Başarılı olursa çağrı HTTP durumu 200'ü döndürür.
Örnek POST
isteği
https://iid.googleapis.com/iid/v1/nKctODamlM4:CKrh_PC8kIb7O...clJONHoA/rel/topics/movies
Content-Type:application/json
Content-Length: 0
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth: true
Örnek sonuç
HTTP 200 OK
{}
Birden fazla uygulama örneği için ilişki haritalarını yönetme
Örnek Kimliği hizmetinin toplu yöntemlerini kullanarak yönetimi ile ilgilidir. Örneğin, toplu taşıma ve Bir FCM konusuna uygulama örneklerinin eklenmesi veya kaldırılması. API çağrısı başına 1.000 adede kadar uygulama örneğini güncellemek için örnek kimliğini çağırın hizmetini kullanarak JSON gövdesinde uygulama örneği jetonlarını sağlar:
https://iid.googleapis.com/iid/v1:batchAdd
https://iid.googleapis.com/iid/v1:batchRemove
Parametreler
Authorization: Bearer <access_token>
Bu parametreyi başlıkta ayarlayın.Authorization
üstbilgisinin değeri olarak kısa ömürlü bir OAuth2 jetonu ekleyin. Bu jetonu alma hakkında daha fazla bilgi için bkz. Kimlik bilgilerini manuel olarak sağlayın.access_token_auth: true
Bu parametreyi başlıkta ayarlayın.to
: Konu adı.registration_tokens
: Eklemek veya kaldırmak istediğiniz uygulama örnekleri için IID jetonları dizisi.
Sonuçlar
Başarılı olursa çağrı HTTP durumu 200'ü döndürür. Boş sonuçlar başarılı olduğunu gösterir Jeton aboneliğinden yararlanabilirsiniz. Başarısız abonelikler için sonuç bir içerir şu hata kodlarından birini seçin:
- NOT_FOUND — Kayıt jetonu silindi veya uygulama kaldırıldı.
- GEÇERSİZ_BİLGİ — Sağlanan kayıt jetonu, Gönderen Kimliği için geçerli değil.
- DAHİLİ — Arka uç sunucusu bilinmeyen nedenlerle başarısız oldu. İsteği yeniden deneyin.
- TOO_MANY_TOPICS: Uygulama örneği başına aşırı sayıda konu.
- Source_EXHAUSTED: Kısa bir süre içinde çok fazla abonelik veya abonelik iptali isteği. Eksponansiyel geri yükleme ile tekrar deneyin.
Örnek POST
isteği
https://iid.googleapis.com/iid/v1:batchAdd
Content-Type:application/json
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth: true
{
"to": "/topics/movies",
"registration_tokens": ["nKctODamlM4:CKrh_PC8kIb7O...", "1uoasi24:9jsjwuw...", "798aywu:cba420..."],
}
Örnek sonuç
HTTP 200 OK
{
"results":[
{},
{"error":"NOT_FOUND"},
{},
]
}
APNs jetonları için kayıt jetonları oluşturma
Örnek Kimliği hizmetinin batchImport
yöntemini kullanarak verileri toplu olarak içe aktarabilirsiniz.
Mevcut iOS APNs jetonlarını Firebase Cloud Messaging'e aktarıp bunları eşleyerek
veya geçerli kayıt jetonları ile başlar. Şu adreste Örnek Kimliği hizmetini çağırın:
JSON gövdesindeki APNs jetonlarının listesini sağlar.
https://iid.googleapis.com/iid/v1:batchImport
Yanıt gövdesi, hazır bir Örnek Kimliği kayıt jetonu dizisi içerir FCM mesajlarını ilgili APNs cihaz jetonuna göndermek için kullanılır.
Parametreler
Authorization: Bearer <access_token>
Bu parametreyi başlıkta ayarlayın.Authorization
üstbilgisinin değeri olarak kısa ömürlü bir OAuth2 jetonu ekleyin. Bu jetonu alma hakkında daha fazla bilgi için bkz. Kimlik bilgilerini manuel olarak sağlayın.access_token_auth: true
Bu parametreyi başlıkta ayarlayın.application
: Uygulamanın paket kimliği.sandbox
: Korumalı alan ortamını (TRUE) veya üretimi (YANLIŞ) belirtmek için boole değeriapns_tokens
: Eklemek veya kaldırmak istediğiniz uygulama örnekleri için APNs jeton dizisi. İstek başına maksimum 100 jeton.
Sonuçlar
Başarılı olursa çağrı, HTTP durumu 200 ve bir JSON sonuç gövdesi döndürür. Her bir İstekte sağlanan APN'ler jetonundan elde edilen sonuçlar listesinde şunlar bulunur:
- APNs jetonu.
- Durum'a dokunun. Tamam veya hatayı açıklayan bir hata mesajı.
- Başarılı sonuçlar için FCM'nin APNs jetonuyla eşlendiği kayıt jetonu.
Örnek POST
isteği
https://iid.googleapis.com/iid/v1:batchImport
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth:true
{
"application": "com.google.FCMTestApp",
"sandbox":false,
"apns_tokens":[
"368dde283db539abc4a6419b1795b6131194703b816e4f624ffa12",
"76b39c2b2ceaadee8400b8868c2f45325ab9831c1998ed70859d86"
]
}
Örnek sonuç
HTTP 200 OK
{
"results":[
{
"apns_token": "368dde283db539abc4a6419b1795b6131194703b816e4f624ffa12",
"status": "OK",
"registration_token":"nKctODamlM4:CKrh_PC8kIb7O...clJONHoA"
},
{
"apns_token": "76b39c2b2ceaadee8400b8868c2f45325ab9831c1998ed70859d86",
"status":"Internal Server Error"
},
]
}
Hata yanıtları
Instance ID sunucu API'sine yapılan çağrılar döndürülüyor aşağıdaki HTTP hata kodları:
HTTP status 400 (Bad request)
: İstek parametreleri eksik veya geçersiz. Ayrıntılı bilgi için hata mesajlarına göz atın.HTTP status 401 (Unauthorized)
- Yetkilendirme üst bilgisi geçersiz.HTTP status 403 (Forbidden)
- yetkilendirme başlığı eşleşmiyorauthorizedEntity
.HTTP status 404 (Not found)
- Geçersiz HTTP yolu veya IID jetonu bulunamadı. Ayrıntılı bilgi için hata mesajlarına göz atın.HTTP status 503 (Service unavailable)
- hizmet kullanılamıyor. Şu işlemi tekrar deneyin: isteğidir.