# Recipes by use case

Short requests for things people build with Wherebox. Every recipe is a plain `GET`, so it works as an `<img src>` in an email, a page or a spreadsheet. Any country works as an `area`; finer areas such as regions and cities need the OSM import ([Locator maps](/docs/guides/locator-maps.md)).

## Newsroom: where is it happening?

A country with one marked spot and a headline, for a breaking-news story.

```http
GET /v1/map.png?area=Iceland&poi=63.84,-22.43|marker:triangle|label:Grindavík&title=Eruption+near+Grindavík&w=600&h=400
```

![Iceland with a triangle at Grindavík](/docs/images/examples/uc-news.png)

## Booking email: the flight at a glance

A great circle between two airports, labelled with their codes. `geodesic` is the default profile, so no routing engine is needed ([Routes](/docs/guides/routes.md)).

```http
GET /v1/map.png?from=38.77,-9.13&to=40.64,-73.78&profile=geodesic&fromlabel=LIS&tolabel=JFK&w=600&h=300
```

![A flight route from Lisbon to New York](/docs/images/examples/uc-flight.png)

## Listing: a hotel and what is near it

A star for the property and pins for the sights guests ask about. With no `area`, the map frames the points.

```http
GET /v1/map.png?poi=41.3917,2.1649|marker:star|label:Hotel&poi=41.378,2.192|label:Barceloneta+beach&poi=41.4036,2.1744|label:Sagrada+Família&preset=light&w=600&h=400
```

![A hotel in Barcelona with two nearby sights](/docs/images/examples/uc-hotel.png)

## Travel: an itinerary across a country

Highlight the country and draw the legs in order. `via` adds stops, and `straight` connects them without a routing engine.

```http
GET /v1/map.png?area=Japan&bounds=131.5,32.8,141.5,37.6&from=35.68,139.76&via=35.01,135.77&to=34.69,135.50&profile=straight&fromlabel=Tokyo&tolabel=Osaka&poi=35.01,135.77|label:Kyoto&w=600&h=400
```

![Tokyo, Kyoto and Osaka on a map of Japan](/docs/images/examples/uc-itinerary.png)

## AI agent: answering "where is Bhutan?"

An agent can answer a geography question with one image URL. Neighbor labels give the context a bare outline lacks, and `preset=dark` suits dark chat UIs ([Neighboring countries](/docs/guides/neighbors.md)).

```http
GET /v1/map.png?area=Bhutan&bounds=84,22.5,97,31&neighbors=flag+name&lang=en&preset=dark&w=600&h=400
```

![Bhutan and its neighbors on a dark map](/docs/images/examples/uc-agent.png)

## Report: field offices in a country

Several labelled points inside the area, with a title for the page header ([Points and labels](/docs/guides/points-and-labels.md)).

```http
GET /v1/map.png?area=Kenya&poi=-1.286,36.817|label:Nairobi&poi=-4.043,39.668|label:Mombasa&poi=-0.092,34.768|label:Kisumu&title=Field+offices&w=600&h=450
```

![Kenya with three field offices](/docs/images/examples/uc-report.png)

## Social card: share image

An Open Graph image is 1200x630. Put the headline in the title band and mark the place. `bounds` frames mainland Portugal; without it the frame would include the Azores and Madeira.

```http
GET /v1/map.png?area=Portugal&bounds=-10.5,36.8,-5.5,42.3&poi=38.72,-9.14|marker:star|label:Lisbon&title=A+weekend+in+Lisbon&preset=dark&w=1200&h=630
```

![A social card for a weekend in Lisbon](/docs/images/examples/uc-social.png)

## Spreadsheet: one template, many countries

Keep the URL in one cell and the country name in another. A formula such as `="https://api.example.com/v1/map.png?area="&A2&"&neighbors=name&w=600&h=400"` fills `area={country}` for each row, and `=IMAGE(...)` in Google Sheets turns it into a picture. Any country name or `iso:` code works.

```http
GET /v1/map.png?area=Canada&bounds=-141,41.5,-52,76&neighbors=name&w=600&h=400
```

![Canada with neighbor names, the output for the row "Canada"](/docs/images/examples/uc-template.png)
