Bu dokümanda, Weather API'yi kullanmaya başlamak için uygulamanız gereken adımlar açıklanmaktadır.
Weather API'yi kullanmaya başlamak için Maps Demo Key isteyebilir veya bir hesap oluşturup faturalandırmayı etkinleştirebilirsiniz.
Maps Demo Key alma
Maps Demo Key, fatura bilgisi girmeden Weather API ile prototip oluşturmaya başlamanızı sağlayan ücretsiz bir özelliktir. Maps Demo Key yalnızca test ve prototip oluşturma amaçlıdır ve üretimde kullanılmak üzere tasarlanmamıştır. Daha fazla bilgi için Maps Demo Key alma ve Weather API ile kullanma başlıklı makaleyi inceleyin.
Standart API anahtarı alma
Kodunuzu üretime taşımaya hazır olduğunuzda API anahtarı oluşturmak ve faturalandırmayı etkinleştirmek için aşağıdaki adımları tamamlayın.
Ön koşullar
Bu prosedür, faturalandırmanın etkin olduğu bir Google Cloud Hesabı ve Google Cloud projesi oluşturma konusunda size yol gösterir. Weather API'yi kullanırken nasıl ücretlendirildiğinizi de bilmeniz gerekir.
- Kullanım için faturalandırma ve maliyeti Weather API kullanımı ve faturalandırması sayfasından inceleyin.
Google Cloud Hesabınız olduğunu doğrulayın.
Google Cloud Console'da oturum açınFaturalandırmanın etkin olduğu bir Google Cloud projeniz olduğunu doğrulayın.
Faturalandırma sayfasına gidin- Faturalandırma sayfasını açmak için projenizi seçin.
Faturalandırma sayfasında:
- Seçilen proje için faturalandırma zaten etkinleştirilmişse ve yalnızca tek bir faturalandırma hesabınız varsa Faturalandırma sayfası açılır.
- Birden fazla faturalandırma hesabınız varsa projeyle ilişkili faturalandırma hesabı hakkındaki ayrıntıları görmek için Bağlı faturalandırma hesabına git'i seçin.
- Bir faturalandırma hesabı varsa ancak projeyle ilişkilendirilmemişse bir faturalandırma hesabını projeye bağlamanız istenir.
- Faturalandırma hesabı yoksa veya yeni bir faturalandırma hesabı oluşturmak istiyorsanız yeni bir faturalandırma hesabı oluşturmak için Faturalandırma Hesaplarını Yönet'i seçin. Daha fazla bilgi için Yeni bir self servis Cloud Faturalandırma Hesabı oluşturma başlıklı makaleyi inceleyin.
API'yi etkinleştirme
Weather API'yi kullanabilmek için Google Cloud Console'u veya gcloud komutunu kullanarak Google Cloud projenizde API'yi etkinleştirmeniz gerekir.
API'yi etkinleştirmek için:
Konsol
Google Cloud Console'da ürün sayfasını açın:
Weather API'yi etkinleştirmeEtkinleştir düğmesini tıklayın.
gcloud
gcloud services enable \ --project "PROJECT" \ "weather.googleapis.com"
Google Cloud SDK, Cloud SDK yüklemesi ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:
Weather API ile kullanmak için API anahtarı alma
Google Haritalar Platformu ürünleri, API çağrılarının bir API anahtarı veya OAuth jetonu içermesini zorunlu kılarak yetkisiz kullanıma karşı korunur. Öncelikle API anahtarı prosedürünü tamamlamanız gerekir. Bunun yerine OAuth jetonu kullanmak için OAuth jetonu oluşturma başlıklı makaleyi inceleyin.
API anahtarı, Cloud Faturalandırma Hesabınızı ve Google Cloud projenizi, uygulamanızın bir Google Haritalar Platformu API'sine veya SDK'sına yaptığı istekle ilişkilendiren benzersiz bir alfanümerik dizedir. Yeni bir anahtar oluşturmak veya mevcut bir anahtara API ya da SDK eklemek için bu talimatları uygulayın.
Konsol
-
Google Haritalar Platformu > Anahtarlar ve Kimlik Bilgileri sayfasına gidin.
- İstenirse projenizi seçin.
-
Aşağıdakilerden birini yapın:
-
Yeni anahtar oluşturma:
- Kimlik bilgileri oluştur > API anahtarı'nı tıklayın.
- API anahtarı oluştur panelinde API kısıtlamalarını seçin listesini açın.
- Bu anahtarın ihtiyaç duymadığı API'leri temizleyin ve Weather API'nin seçili kaldığından emin olun.
- Oluştur'u tıklayın. Panelde yeni API anahtarınız gösterilir.
-
Mevcut bir anahtarı kullanma:
- Anahtarın adını tıklayın.
- API kısıtlamalarını seçin listesinde Weather API'yi seçin.
- Kaydet'i tıklayın.
Burada bir API seçmek, API'yi etkinleştirmez. Weather API'nin API Kitaplığı sayfasında etkinleştirildiğinden emin olun.
-
- Anahtar dizesini daha sonra görmek için Anahtarlar ve Kimlik Bilgileri sayfasına gidip anahtar için Anahtarı göster'i tıklayın.
Konsol bu adımlardan farklı görünüyorsa Google Cloud belgelerindeki API anahtarı oluşturma ve API kısıtlamaları ekleme bölümlerine bakın.
gcloud
Aşağıdaki komutlarda PROJECT_ID ifadesini proje kimliğinizle değiştirin.
-
Yeni anahtar oluşturma: Aşağıdaki komutu çalıştırın ve DISPLAY_NAME yerine anahtarın adını yazın.
gcloud services api-keys create \ --project="PROJECT_ID" \ --display-name="DISPLAY_NAME" \ --api-target=service=weather.googleapis.com
Google Cloud SDK, Cloud SDK yüklemesi ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:
-
Mevcut bir anahtarı kullanma: Aşağıdaki komutu çalıştırın ve KEY_ID değerini anahtarın kimliğiyle değiştirin.
--appendişareti, anahtarın halihazırda izin verdiği API'leri korur. Bu parametre kullanılmadığında komut, mevcut etiketleri değiştirir.gcloud services api-keys update KEY_ID \ --project="PROJECT_ID" \ --append \ --api-target=service=weather.googleapis.com
Google Cloud SDK, Cloud SDK yüklemesi ve aşağıdaki komutlar hakkında daha fazla bilgi edinin:
Anahtar kimliği, anahtar dizesi veya görünen ad değildir. Bunu bulmak için
gcloud services api-keys list --project="PROJECT_ID"komutunu çalıştırın. Kimlik,namealanının son kısmıdır:projects/PROJECT_NUMBER/locations/global/keys/KEY_ID.
Anahtar dizesini görmek için gcloud services api-keys get-key-string KEY_ID
--project="PROJECT_ID" komutunu çalıştırın.
API isteği gönderme
Mountain View, Kaliforniya'daki mevcut koşullarla ilgili bilgileri içeren bir JSON yanıtı döndürmek için Weather API isteği gönderin. Her isteğe API anahtarınızın alfanümerik dizesini eklemeniz ve API anahtarını içeren istekler için HTTPS kullanmanız gerekir.
Anahtarın alfasayısal dizesini eklemek için aşağıdaki kodda API_KEY simgesini tıklayın:
curl -X GET "https://weather.googleapis.com/v1/currentConditions:lookup
?key=YOUR_API_KEY &location.latitude=37.4220 &location.longitude=-122.0841" curlkomutunu kopyalamak için kod örneğindeki kopyalama simgesini (
) tıklayın.- Komutu bir terminal penceresine yapıştırıp çalıştırın.
Yanıt, aşağıdaki biçimde bir JSON nesnesidir:
{ "currentTime": "2025-07-01T12:33:24.606422609Z", "timeZone": { "id": "America/Los_Angeles" }, "isDaytime": false, "weatherCondition": { "iconBaseUri": "https://maps.gstatic.com/weather/v1/partly_clear", "description": { "text": "Partly cloudy", "languageCode": "en" }, "type": "PARTLY_CLOUDY" }, "temperature": { "degrees": 16, "unit": "CELSIUS" }, "feelsLikeTemperature": { "degrees": 16, "unit": "CELSIUS" }, "dewPoint": { "degrees": 12, "unit": "CELSIUS" }, "heatIndex": { "degrees": 16, "unit": "CELSIUS" }, "windChill": { "degrees": 16, "unit": "CELSIUS" }, "relativeHumidity": 78, "uvIndex": 0, "precipitation": { "probability": { "percent": 3, "type": "RAIN" }, "snowQpf": { "quantity": 0, "unit": "MILLIMETERS" }, "qpf": { "quantity": 0, "unit": "MILLIMETERS" } }, "thunderstormProbability": 0, "airPressure": { "meanSeaLevelMillibars": 1011.5 }, ... }
API anahtarı kısıtlamaları uygulama
Google, API anahtarlarınızı yalnızca ihtiyaç duyan API'ler ve uygulamalarla sınırlayarak kısıtlamanızı önemle tavsiye eder. API anahtarlarını kısıtlamak, uygulamanızı haksız isteklere karşı koruyarak güvenliğini artırır. API anahtarları iki tür kısıtlamayı destekler:
- API kısıtlamaları, API anahtarı kullanılarak hangi SDK'ların ve API'lerin çağrılabileceğini belirtir. Konsol ve gcloud CLI, anahtar oluştururken en az bir API kısıtlaması gerektirir.
- Uygulama kısıtlamaları, bir API anahtarını hangi web sitelerinin, IP adreslerinin veya uygulamaların kullanabileceğini belirtir.
Kısıtlama uygulama hakkında daha fazla bilgi için API anahtarlarınızı kısıtlama başlıklı makaleyi inceleyin.
OAuth jetonu oluşturma
Weather API, kimlik doğrulama için OAuth 2.0'ı destekler. Google, web sunucusu senaryoları gibi yaygın OAuth 2.0 senaryolarını destekler.
Bu belgede, geliştirme ortamınızda Weather API çağrısına OAuth jetonunun nasıl iletileceği açıklanmaktadır. OAuth'u üretim ortamında kullanma hakkında daha fazla bilgi için Google'da kimlik doğrulama yöntemleri başlıklı makaleyi inceleyin.
OAuth'a genel bakış
Dağıtım ortamınıza bağlı olarak OAuth ile erişim jetonlarını çeşitli şekillerde oluşturabilir ve yönetebilirsiniz.
Uygulamanız ile bir Google hizmeti arasındaki sunucudan sunucuya etkileşimler için OAuth 2.0'ı kullanabilirsiniz. Bu senaryoda, bireysel bir kullanıcı yerine uygulamanızla ilişkili bir hizmet hesabı kullanırsınız. Kullanıcıları doğrudan dahil etmeden hizmet hesabını kullanarak API istekleri gönderebilirsiniz. Kimlik doğrulama yöntemleri hakkında daha fazla bilgi için Google'da kimlik doğrulama yöntemleri başlıklı makaleyi inceleyin.
Alternatif olarak Weather API'yi bir Android veya iOS mobil uygulamasına entegre edebilirsiniz. Farklı dağıtım ortamları için OAuth kullanımı ve erişim jetonlarını yönetme hakkında daha fazla bilgi edinmek isterseniz Google API'lerine erişmek için OAuth 2.0'ı kullanma başlıklı makaleyi inceleyin.
OAuth kapsamları
Weather API ile OAuth kullanmak için OAuth jetonuna aşağıdaki kapsamı atamanız gerekir:
https://www.googleapis.com/auth/cloud-platform
Örnek: Yerel geliştirme ortamınızda REST API çağrılarını deneme
Jeton oluşturan bir ortamınız yoksa ve Weather API'yi OAuth jetonuyla denemek istiyorsanız bu bölümdeki prosedürü uygulayın.
Bu örnekte, çağrıyı yapmak için Uygulama Varsayılan Kimlik Bilgileri (ADC) tarafından sağlanan OAuth jetonunun nasıl kullanılacağı açıklanmaktadır. İstemci kitaplıklarıyla Google API'lerini çağırmak için ADC'yi kullanma hakkında daha fazla bilgi edinmek istiyorsanız İstemci kitaplıklarını kullanarak kimlik doğrulama başlıklı makaleyi inceleyin.
Aşağıdaki REST prosedürünü yalnızca geliştirme veya test için kullanın, üretim için kullanmayın.
Ön koşullar
ADC kullanarak REST isteği göndermeden önce ADC'ye kimlik bilgileri sağlamak için gcloud CLI'yı kullanın:
gcloudKSA'yı yükleyip ilk kullanıma hazırlayın. Daha fazla bilgi için gcloud CLI'yi yükleme başlıklı makaleyi inceleyin.gcloudCLI ile kimlik doğrulama:gcloud auth application-default login
Kimlik bilgilerinizi ADC tarafından kullanılan yerel kimlik bilgisi dosyasına kaydetmek için oturum açma işlemini tamamlayın.
Daha fazla bilgi için Yerel geliştirme ortamı için ADC'yi ayarlama başlıklı makaleyi inceleyin.
REST isteği gönderme
Bu örnekte iki istek başlığı iletilir:
Jetonu oluşturmak için aşağıdaki komutu kullanarak OAuth jetonunu
Authorizationbaşlığında iletin:gcloud auth application-default print-access-tokenDöndürülen jetonun kapsamı
https://www.googleapis.com/auth/cloud-platform.X-Goog-User-Projectbaşlığında, faturalandırmanın etkin olduğu Google Cloud projenizin kimliğini veya adını iletin.
Weather API'yi OAuth jetonu kullanarak çağırmak için aşağıdaki adımları uygulayın:
Aşağıdaki kod örneğinde PROJECT_NUMBER_OR_ID yerine Google Cloud proje numaranızı veya kimliğinizi yazın:
curl -X GET \ -H 'X-Goog-User-Project: PROJECT_NUMBER_OR_ID' \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://weather.googleapis.com/v1/currentConditions:lookup?
location.latitude=37.4220& location.longitude=-122.0841" curlkomutunu kopyalamak için kod örneğinde Kopyala'yı tıklayın.Komutu bir terminal penceresine yapıştırıp çalıştırın.
Yanıt bir JSON nesnesi olur:
{
"currentTime": "2025-07-01T12:33:24.606422609Z",
"timeZone": {
"id": "America/Los_Angeles"
},
"isDaytime": false,
"weatherCondition": {
"iconBaseUri": "https://maps.gstatic.com/weather/v1/partly_clear",
"description": {
"text": "Partly cloudy",
"languageCode": "en"
},
"type": "PARTLY_CLOUDY"
},
"temperature": {
"degrees": 16,
"unit": "CELSIUS"
},
"feelsLikeTemperature": {
"degrees": 16,
"unit": "CELSIUS"
},
"dewPoint": {
"degrees": 12,
"unit": "CELSIUS"
},
"heatIndex": {
"degrees": 16,
"unit": "CELSIUS"
},
"windChill": {
"degrees": 16,
"unit": "CELSIUS"
},
"relativeHumidity": 78,
"uvIndex": 0,
"precipitation": {
"probability": {
"percent": 3,
"type": "RAIN"
},
"snowQpf": {
"quantity": 0,
"unit": "MILLIMETERS"
},
"qpf": {
"quantity": 0,
"unit": "MILLIMETERS"
}
},
"thunderstormProbability": 0,
"airPressure": {
"meanSeaLevelMillibars": 1011.5
},
...
}
Sorun giderme
İsteğiniz, bu API'nin son kullanıcı kimlik bilgilerini desteklemediğini belirten bir hata mesajı döndürürse ADC kurulumunuzla ilgili sorunları giderme başlıklı makaleyi inceleyin.
Sırada ne var?
Weather API'yi etkinleştirip başarılı bir istek gönderdiğinize göre API'yi kullanma hakkında daha fazla bilgi edinmek için Mevcut koşulları alma başlıklı makaleyi inceleyebilirsiniz.