what3words APIの基本的な機能の紹介

<h1>what3wordsのAPIを使ってみる</h1>
APIキーを取得したら、実際にAPIを使ってみましょう。

_キーの発行は、[こちら](https://qiita.com/iwai_shin/items/c21b1a31c7dfc010961a "APIキー取得")から確認できます。_


**① what3words→緯度経度への変換**
what3wordsアドレスを緯度経度に変換します（フォワードジオコーディング）
<pre>
<code>https://api.what3words.com/v3/convert-to-coordinates?words=ふなで。めいかく。にんたい&key=[API-KEY]</code>
</pre>

下記JSONリクエスト結果
<pre>
<code>
{
  "country": "JP",
  "square": {
    "southwest": {
      "lng": 139.745422,
      "lat": 35.658581
    },
    "northeast": {
      "lng": 139.745455,
      "lat": 35.658608
    }
  },
  "nearestPlace": "東京都",
  "coordinates": {
    "lng": 139.745439,
    "lat": 35.658595
  },
  "words": "ふなで。めいかく。にんたい",
  "language": "ja",
  "map": "https://w3w.co/%E3%81%B5%E3%81%AA%E3%81%A7%E3%80%82%E3%82%81%E3%81%84%E3%81%8B%E3%81%8F%E3%80%82%E3%81%AB%E3%82%93%E3%81%9F%E3%81%84"
}
</code>
</pre>

_**///ふなで。めいかく。にんたい** は東京タワーにあるエレベーター乗り場の一つです。_


**②　緯度経度→what3wordsへの変換**
任意の場所の緯度経度をwhat3wordsに変換します（リバースジオコーディング）


<div class="highlight">
<pre>
<code>https://api.what3words.com/v3/convert-to-3wa?coordinates=51.521251,-0.203586&key=[API-KEY]</code>
</pre>
</div>


</pre>

下記JSONリクエスト結果
<pre>
<code>
{
  "country": "JP",
  "square": {
    "southwest": {
      "lng": 139.745422,
      "lat": 35.658581
    },
    "northeast": {
      "lng": 139.745455,
      "lat": 35.658608
    }
  },
  "nearestPlace": "東京都",
  "coordinates": {
    "lng": 139.745439,
    "lat": 35.658595
  },
  "words": "ふなで。めいかく。にんたい",
  "language": "ja",
  "map": "https://w3w.co/%E3%81%B5%E3%81%AA%E3%81%A7%E3%80%82%E3%82%81%E3%81%84%E3%81%8B%E3%81%8F%E3%80%82%E3%81%AB%E3%82%93%E3%81%9F%E3%81%84"
}
</code>
</pre>


**③ サジェスト機能**
入力の間違えの可能性を踏まえ、検索結果に3つの似た組み合わせ出します

<pre>
<code>https://api.what3words.com/v3/autosuggest?input=ふなで。めいかく。にんたい&key=[API-KEY]</code>
</pre>

下記JSONリクエスト結果

<pre>
<code>
{
  "suggestions":[
    {
        "country":"JP",
        "nearestPlace":"東京都",
        "words":"ふなで。めいかく。にんたい",
        "rank":1,
        "language":"ja"
    },
    {
        "country":"CH",
        "nearestPlace":"Mörschwil, Saint Gallen",
        "words":"ふなで。めいかく。にんてい",
        "rank":2,
        "language":"ja"
    },
    {
        "country":"CN",
        "nearestPlace":"Zhoucheng, 山東省",
        "words":"なふだ。めいかく。にんたい",
        "rank":3,
        "language":"ja"
    }
 ]
}
</code>
</pre>

:::note info
候補結果を日本国内または特定のエリアのみにクリップする事もできます
:::

**④ グリッド機能**
表示されているマップUIにマス目を表示します
<pre>
<code>curl --request GET
--url 'https://api.what3words.com/v3/grid-section?key=[API-KEY]&bounding-box=52.207988%2C0.116126%2C52.208867%2C0.117540&format=json'
</code>
</pre>

下記JSONリクエスト結果
<pre>
<code>
{
  "lines": [
      {
          "start": {
              "lng": 0.116126,
              "lat": 52.208009918068136
          },
          "end": {
              "lng": 0.11754,
              "lat": 52.208009918068136
          }
      },
      {
          "start": {
              "lng": 0.116126,
              "lat": 52.20803686934023
          },
          "end": {
              "lng": 0.11754,
              "lat": 52.20803686934023
          }
      }
  ]
}
</code>
</pre>

**留意事項**
① HTTPS GETメソッドのみ
② リクエストURLにAPIキーを入れるkey=api-key
③ CORS対応

次回はJava、iOSやAndroidでの内容を紹介したいと思います！