canonical: https://jentic.com/apis/amadeus.com/amadeus-safe-place

# Amadeus Safe Place

The Amadeus Safe Place API returned safety ratings for geographic areas, scoring them across categories such as women safety, physical harm, theft, political freedom, medical, and LGBTQ safety. Three endpoints covered the access patterns: a radius search around a coordinate, a bounding-box search over a rectangular area, and a detail lookup by safety-rated location id. Note that this API was scheduled for permanent decommission by Amadeus on 12 April; review the current Amadeus self-service portal before integrating, and consider GeoSure as the vendor-recommended alternative for safety scoring.

## For AI agents

Retrieve safety scores by category for a coordinate, bounding box, or rated-location id, with the caveat that Amadeus has scheduled this API for decommission.

## Scope

Does not handle live incident reports, news feeds, or government advisories - used for category-level area safety scoring only (decommission scheduled by Amadeus).

## Capabilities

- Retrieve safety ratings within a radius of a coordinate, scored by category
- Retrieve safety ratings inside a bounding box covering a neighbourhood or city
- Look up a single safety-rated location by its id for full category breakdown
- Score categories include women safety, theft, physical harm, medical, and political freedom
- Scope queries to a single category to find the most relevant signal for a user's concern

## Use cases

### Traveller safety briefings

Generate a pre-trip safety briefing for a destination by querying Safe Place across the city's central coordinate and key tourist zones. The category breakdown lets the briefing highlight specific concerns - women safety, theft, medical infrastructure - rather than a single generic safety score. Useful for corporate travel platforms with duty-of-care obligations and for solo-traveller apps.

Example prompt: Call GET /safety/safety-rated-locations with latitude, longitude, radius=2 and return the women-safety and theft scores for the highest-rated polygon.

### Neighbourhood-level hotel filter

When showing hotel suggestions, attach a safety signal from Safe Place to each hotel's surrounding area so a traveller can filter out properties in zones flagged for particular risks. The bounding-box endpoint is useful for pre-computing per-zone safety scores; cache results because zone-level scores change infrequently. Pair with Hotel Search and Location Score for a richer ranking signal.

Example prompt: For a list of hotelIds, call /safety/safety-rated-locations/by-square around each and tag any hotel whose surrounding area has a low women-safety or theft score.

### AI agent safety-aware itinerary

An AI agent building a destination itinerary uses Safe Place to flag stops in zones with concerning category scores and propose alternatives. The agent calls Jentic to discover Safe Place, executes the radius search around each candidate stop, and surfaces explicit safety context in its recommendations. Because Amadeus has scheduled the API for decommission, a production agent should be ready to swap to GeoSure or another safety provider.

Example prompt: Use Jentic to search 'check the safety rating of an area', execute Safe Place for each stop in a draft itinerary, and emit a warning for stops with low category scores.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /safety/safety-rated-locations | Get safety ratings within a radius |
| GET | /safety/safety-rated-locations/by-square | Get safety ratings inside a bounding box |
| GET | /safety/safety-rated-locations/{safety-rated-locationId} | Retrieve a single safety-rated location by id |

## Key resources

- **Safety Rated Locations** — Search safety-rated polygons by radius, by bounding box, or look up a single location by id.

## Why Jentic

- **Setup:** Wiring Safe Place by hand means running the Amadeus Self-Service OAuth 2.0 client_credentials exchange, refreshing the bearer token before it expires, choosing the test or production host, and handling the radius search, bounding-box search, and id lookup while noting Amadeus has scheduled this API for decommission. Through Jentic you install once, import Safe Place from the API Directory, store the client_id and client_secret once, and your agent calls it.
- **Permission scoping:** All three endpoints are read-only, with the detail lookup carrying the safety-rated-locationId in the URL path and the searches taking a coordinate or bounding box as query parameters, so scoping is by operation rather than by a specific location. Limit the agent to the operations it needs, such as reading safety ratings within a radius, and it cannot reach any write operation because this API has none.
- **Credential handling:** Your Amadeus client_id and client_secret are stored once, encrypted, by your own Jentic One instance, which runs the client_credentials exchange and injects a fresh bearer token at execution time. The secret never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'check the safety rating of an area', and Jentic returns the radius, bounding-box, and id-lookup operations with their coordinate and category parameter schemas so the agent calls the right one.

## Related APIs

- **Amadeus Location Score** — Location Score scores areas on travel categories like sights and dining; Safe Place scored them on safety dimensions.
- **Amadeus Points of Interest** — Points of Interest finds named landmarks; Safe Place quantified the safety of the surrounding area.
- **Amadeus Hotel Search** — Hotel Search returns offers; Safe Place added a neighbourhood-safety signal to each hotel coordinate.

## FAQ

### Is the Safe Place API still maintained?

Amadeus announced that Safe Place will be permanently decommissioned on 12 April. Confirm the current status in the Amadeus for Developers self-service portal before depending on it in production. Amadeus recommends GeoSure as an alternative safety-rating provider.

### What authentication does the Safe Place API use?

OAuth 2.0 client credentials. Exchange your Amadeus API key and secret for a bearer access token, then send it as the Authorization header on each call. Through Jentic, the client secret stays encrypted in the vault and only a scoped token is exposed to the agent.

### What categories does the safety score cover?

Each rated location returns category scores including women safety, theft, physical harm, medical, political freedom, and LGBTQ safety. Filter by category in the query to retrieve only the dimension you care about.

### Can I search safety scores by area rather than coordinate?

Yes. GET /safety/safety-rated-locations/by-square accepts north, south, east, west query parameters and returns rated polygons inside the bounding box. This is useful when scoring a neighbourhood rather than a circular radius.

### How do I check safety ratings through Jentic?

Install with pip install jentic, then search 'check the safety rating of an area' to discover the Safe Place operations. Load the radius or bounding-box schema and execute. Jentic returns parsed category scores. Get started with Jentic One, the self-hosted execution layer.

### Is the Safe Place API available in the test environment?

Yes, but the test environment returns scores for only a few selected cities. For broader coverage you would have needed to upgrade to production - and given the scheduled decommission, plan a migration to an alternative provider.

### Can I limit what my agent is allowed to do with the Safe Place API?

Yes. Because you run Jentic One yourself, your own rules decide which Safe Place operations and credentials the agent may use, so you can grant just the ones it needs, such as reading safety ratings within a radius while withholding the bounding-box search and the location-id lookup. All three operations are read-only, and the API exposes no write endpoints, so a scoped agent cannot alter any data. Scoping here is by operation, since the searches take a coordinate or bounding box and the detail lookup carries the safety-rated-locationId in the path.
