نظرة عامة على Roads API
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
Roads API هي خدمة تقبل طلبات HTTPS تتضمّن إحداثيات خطوط الطول والعرض لنقطة واحدة أو أكثر على الخريطة. ويستخدم هذه النقاط للعثور على أجزاء الطرق القريبة ويعرض رقم تعريف المكان مع البيانات الوصفية، مثل أقرب جزء من الطريق وحدود السرعة.
لماذا يجب استخدام Roads API؟
باستخدام Roads API، يمكنك الحصول على حدود السرعة أو الأوقات المقدّرة للوصول أو غير ذلك من البيانات الوصفية للطرق. باستخدام بيانات الطريق الوصفية هذه، يمكنك تحسين تطبيقات القيادة من خلال إضافة الإمكانات التالية:
- ربط إحداثيات خطوط الطول والعرض بطريق أو طرق
- العثور على أقرب طريق لمجموعة من الإحداثيات
- الحصول على حدود السرعة لأجزاء من الطرق
الإجراءات التي يمكنك اتّخاذها باستخدام Roads API
باستخدام Roads API، يمكنك ربط إحداثيات نظام تحديد المواقع العالمي (GPS) بالشكل الهندسي للطريق، وتحديد الحد الأقصى للسرعة على طول أجزاء الطريق.
- المحاذاة مع الطرق تعرض هذه الخدمة الطرق الأكثر احتمالاً التي تم سلوكها استنادًا إلى مجموعة إحداثيات GPS المقدَّمة. يمكنك تحديد ما يصل إلى 100 نقطة GPS تم جمعها على طول مسار. يمكنك أيضًا أن تطلب من الخدمة استيفاء نقاط إضافية، ما يؤدي إلى إنشاء مسار يتّبع شكل الطريق بسلاسة.
- أقرب الطرق تعرض هذه الخدمة أقرب جزء من الطريق إلى نقطة GPS. يمكنك تحديد ما يصل إلى 100 نقطة GPS. لا يلزم أن تكون النقاط التي تحدّدها جزءًا من مسار متواصل.
- حدود السرعة تعرض هذه الخدمة حد السرعة المنشور لجزء من طريق. تتوفّر خدمة "حدود السرعة" لجميع العملاء الذين لديهم ترخيص "تتبُّع الأجهزة". بالنسبة إلى عملاء خطة Google Maps Platform المميزة الذين انتقلوا إلى نظام التسعير حسب الاستخدام، ستظل الميزة نشطة.
طريقة عمل Roads API
تستخدم واجهة برمجة التطبيقات Roads API ثلاث نقاط نهاية تقبل إحداثيات خطوط الطول والعرض أو معرّفات الأماكن لتوفير بيانات حول مسارات الطرق أو أقسامها أو حدود السرعة.
يعرض المثال التالي طلبًا للحصول على أقرب الطرق استنادًا إلى مجموعة من إحداثيات خطوط الطول والعرض:
https://roads.googleapis.com/v1/nearestRoads
?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796
&key=YOUR_API_KEY
الموارد
يلخّص الجدول التالي الموارد المتاحة من خلال
Roads API بالإضافة إلى البيانات التي تعرضها.
موارد البيانات |
البيانات التي تم عرضها |
تنسيق القيمة التي يتم إرجاعها |
المحاذاة إلى الطرق
|
تعرض هذه الطريقة مصفوفة تتضمّن ما يصل إلى 100 نقطة GPS من مسار. يتضمّن هذا الحقل إحداثيات خطوط الطول والعرض التي تم ضبطها على الطرق، بالإضافة إلى أرقام تعريف الأماكن. يمكنك الاطّلاع على التفاصيل في قسم
الردود
في دليل المحاذاة مع الطرق.
|
|
أقرب الطرق
|
مصفوفة تتضمّن ما يصل إلى 100 إحداثية مستقلة لخط العرض/خط الطول، بالإضافة إلى معرّفات الأماكن لأقرب طريق لكل نقطة محدّدة
ليس من الضروري أن تكون النقاط متواصلة. يمكنك الاطّلاع على التفاصيل في قسم الردود ضمن دليل أقرب الطرق.
|
حدود السرعة
|
تمثّل هذه السمة مصفوفة تتضمّن ما يصل إلى 100 عنصر من عناصر البيانات الوصفية للطرق. وتحتوي هذه السمة على حدود السرعة ومعرّفات الأماكن، مع تحديد الوحدات بالكيلومتر في الساعة أو الميل في الساعة. يمكنك الاطّلاع على التفاصيل
في الردود
ضمن دليل حدود السرعة.
|
كيفية استخدام Roads API
مكتبات البرامج المتاحة
يمكنك طلب بيانات من واجهة برمجة التطبيقات هذه باللغة التي تختارها من خلال إحدى مكتبات البرامج التالية:
إنّ Java Client وPython Client وGo Client وNode.js Client لخدمات "خرائط Google" هي مكتبات عملاء متاحة للجميع ومفتوحة المصدر بموجب ترخيص Apache 2.0.
يمكنك تنزيلها من GitHub، حيث يمكنك أيضًا العثور على تعليمات التثبيت ونماذج الرموز البرمجية.
الخطوات التالية
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-08-31 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eThe Roads API enhances maps applications by connecting coordinates with roads, finding nearby roads, and providing speed limit data.\u003c/p\u003e\n"],["\u003cp\u003eIt offers three core functionalities: snapping GPS points to roads, identifying nearest roads, and retrieving speed limits.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can leverage client libraries for Java, Python, Go, and Node.js to integrate the Roads API.\u003c/p\u003e\n"],["\u003cp\u003eThe API accepts latitude/longitude coordinates and returns data like Place IDs, road segments, and speed limits in JSON format.\u003c/p\u003e\n"],["\u003cp\u003eYou can get started by exploring the documentation, trying the demo, setting up a Google Cloud project, and experimenting with code examples.\u003c/p\u003e\n"]]],["The Roads API processes HTTPS requests with latitude/longitude coordinates to identify nearby road segments. It offers three main services: Snap to Roads, which maps up to 100 GPS points to road geometry; Nearest Roads, which identifies the closest road segment for up to 100 independent GPS points; and Speed Limits, which returns posted speed limits and place IDs for road segments. Users can integrate these functionalities using client libraries or by making direct requests with an API key.\n"],null,["# Roads API overview\n\nThe Roads API is a service that accepts HTTPS requests with latitude/longitude coordinates for one or more points on a map. It uses these points to find nearby road segments and returns a Place ID along with metadata such as the nearest road segment and speed limits.\n\nWhy use the Roads API\n---------------------\n\nWith the Roads API, you can get speed limits, estimated\narrival times, or other road metadata. With this road\nmetadata, you can enhance your driving apps with the follow capabilities:\n\n- Connect latitude/longitude coordinates with a road or roads.\n- Find the nearest road for a set of coordinates\n- Get speed limits for road segments\n\nWhat you can do with the Roads API\n----------------------------------\n\nWith the Roads API, you can map GPS coordinates to the\ngeometry of the road, and determine the speed limit along road\nsegments.\n\n- **[Snap to Roads](/maps/documentation/roads/snap)** This service returns the most likely roads traveled based on the provided set of GPS coordinates. You can specify up to 100 GPS points collected along a route. Optionally, you can also request that the service interpolates additional points, resulting in a path that smoothly follows the geometry of the road.\n- **[Nearest Roads](/maps/documentation/roads/nearest)** This service returns the nearest road segment for a GPS point. You can specify up to 100 GPS points. The points you specify don't need to be part of a continuous path.\n- **[Speed limits](/maps/documentation/roads/speed-limits)** This service returns the posted speed limit for a road segment. The Speed Limit service is available to all customers with an Asset Tracking license. For [Google Maps Platform Premium Plan](/maps/premium) customers who transitioned to pay-as-you-go pricing, the feature remains active.\n\nHow the Roads API works\n-----------------------\n\nThe Roads API uses three endpoints which accept latitude/longitude\ncoordinates or place IDs to provide road paths, segments, or speed limit data.\nThe following example shows a request for nearest roads based on a set\nof latitude/longitude coordinates: \n\n```scdoc\nhttps://roads.googleapis.com/v1/nearestRoads\n ?points=60.170880%2C24.942795%7C60.170879%2C24.942796%7C60.170877%2C24.942796\n &key=YOUR_API_KEY\n```\n\n### Resources\n\nThe following table summarizes the resources available through the\nRoads API along with the data it returns.\n\n\u003cbr /\u003e\n\n| Data resources | Data returned | Return format |\n|------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|\n| **[Snap to roads](/maps/documentation/roads/snap)** | Returns an array of up to 100 GPS points from a route. Includes road-snapped longitude/latitude coordinates along with place IDs. See details in [Responses](/maps/documentation/roads/snap#responses) in the Snap to roads guide. | - JSON |\n| **[Nearest roads](/maps/documentation/roads/nearest)** | An array of up to 100 independent latitude/longitude coordinates along with place IDs for the nearest road for each specified point. Points do not need to be continuous. See details in [Responses](/maps/documentation/roads/nearest#responses) in the Nearest roads guide. | - JSON |\n| **[Speed limits](/maps/documentation/roads/speed-limits)** | An array of up to 100 road metadata elements. These contain speed limits and place IDs, with units either in KPH or MPH. See details in [Responses](/maps/documentation/roads/nearest#responses) in the Speed limits guide. | - JSON |\n\n\u003cbr /\u003e\n\nHow to use the Roads API\n------------------------\n\n|---|----------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| 1 | **Try the snap to roads demo** | Click the demo to create a track and see how the snap to roads endpoint provides smooth data. See [Demo](/maps/documentation/roads/snap#demo) in the **Snap to roads** guide. You don't need an API key. |\n| 2 | **Get set up** | Start with [Set up your Google Cloud project](/maps/documentation/roads/cloud-setup) and complete the setup instructions that follow and then learn [how to use your API key](/maps/documentation/roads/get-api-key). |\n| 3 | **Try a snap to roads request** | [Use one of the snap to roads examples](/maps/documentation/roads/snap#examples) and try one relevant to your use case. |\n| 4 | **Get speed limits for your road path** | Using the same path data you provided for your snap to roads request, issue a speed limit query. See the [Example request using a path](/maps/documentation/roads/speed-limits#example_request_using_a_path). |\n| 5 | **Learn how to process long paths** | Follow the sections on [Processing long paths](/maps/documentation/roads/advanced#processing_long_paths) in the **Advanced concepts** guide. |\n| 6 | **Incorporate road data into your own app!** | See the [detailed code example](/maps/documentation/roads/snap#javascript-+-html) from the road snapped demo to start building road data functionality into your own app. |\n\n### Available client libraries\n\nCall this API in the language of\nyour choice through one of the following client libraries:\n\n- [Java\n Client for Google Maps Services](https://github.com/googlemaps/google-maps-services-java)\n- [Python\n Client for Google Maps Services](https://github.com/googlemaps/google-maps-services-python)\n- [Go Client\n for Google Maps Services](https://github.com/googlemaps/google-maps-services-go)\n- [Node.js\n Client for Google Maps Services](https://github.com/googlemaps/google-maps-services-js)\n\nThe Java Client, Python Client, Go Client and Node.js Client for Google Maps\nServices are community-supported client libraries, open sourced under the\n[Apache 2.0 License](http://www.apache.org/licenses/LICENSE-2.0).\nDownload them from GitHub, where you can also find installation instructions and sample code.\n\nWhat's next\n-----------\n\n- **Try out the Roads API** : Go to [Roads Inspector](/maps/documentation/roads/inspector)\n- **Learn how to make Roads API requests** : Go to the service you're interested in:\n - [Snap to roads](/maps/documentation/roads/snap)\n - [Nearest roads](/maps/documentation/roads/nearest)\n - [Speed limits](/maps/documentation/roads/speed-limits)\n- **Understand Advanced Concepts** : Go to [Advanced Concepts](/maps/documentation/roads/advanced)\n- **Follow best practices** : Go to [Web Services Best Practices](/maps/documentation/roads/web-service-best-practices)"]]