{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Integration Options","siteUrl":"https://docs.bettermile.com","jsonLd":{"@context":"https://schema.org","@type":"Organization","name":"Bettermile","url":"https://bettermile.com","logo":"https://docs.bettermile.com/images/logo.png"},"description":"How to integrate Better Places as a standalone REST API or within the Bettermile suite, including authentication per API version and how to get access."},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"integration-options","__idx":0},"children":["Integration Options"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Better Places is API-based and integrates into any system through standard RESTful requests with JSON payloads. It is also available natively within the Bettermile suite."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What you get"},"children":["What you get"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Standalone API"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Normalization, geocoding and validation"]},", and driver-verified coordinate correction through the Places API."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Within the Bettermile suite"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Everything in the standalone API, ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["plus the last-meter layer"]}," (parking, entrances, handover locations). It is included when you use other suite products such as ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/route"},"children":["Better Route"]},". It is not available through the standalone API."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When connected via Data Gateway, Better Places can also be used alongside any other Bettermile solution. In that context it can act as a fallback whenever tenant-provided coordinates are faulty or missing. Even while connected to Data Gateway, Places can still return results independently through its dedicated API, just as it does as a standalone module."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"the-endpoint","__idx":1},"children":["The endpoint"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Geocoding requests go to the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/geocode"]}," endpoint over HTTPS, with JSON request and response bodies. See the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/places/apis/places/places"},"children":["Places API reference"]}," for all endpoints, and ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/places/resources/api-examples"},"children":["API Reference"]}," for a worked request and response."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"authentication","__idx":2},"children":["Authentication"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The two API versions differ only by authentication method."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Version 1 (API key)"]},": authenticate with a unique API key in the header."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Version 2 (Bearer token)"]},": authenticate with a Bearer token. Bettermile suite users generate and manage it in the Backoffice."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"how-to-connect","__idx":3},"children":["How to connect"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Call the API with valid credentials from the Bettermile customer team. For initial trials, a sample API key lets you test with real-time data. The address input must include the country."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Request access at ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"mailto:customer@bettermile.com"},"children":["customer@bettermile.com"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"reference-pages","__idx":4},"children":["Reference pages"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/places/resources/supported-countries"},"children":["Supported Countries"]},": which features are available per country."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/products/places/apis/places/places"},"children":["Geocoding Accuracy Levels"]},": how to read the accuracy level and score in a response."]}]}]},"headings":[{"value":"Integration Options","id":"integration-options","depth":1},{"value":"The endpoint","id":"the-endpoint","depth":2},{"value":"Authentication","id":"authentication","depth":2},{"value":"How to connect","id":"how-to-connect","depth":2},{"value":"Reference pages","id":"reference-pages","depth":2}],"frontmatter":{"title":"Integration Options","rbac":{"anonymous":"read","authenticated":"read"},"seo":{"description":"How to integrate Better Places as a standalone REST API or within the Bettermile suite, including authentication per API version and how to get access.","title":"Integration Options"}},"lastModified":"2026-10-28T17:26:54.707Z","pagePropGetterError":{"message":"","name":""}},"slug":"/products/places/resources/integration-options","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}