# Pesan lokasi WhatsApp

Pesan lokasi mengirim pin: sebuah titik di peta, dengan nama dan alamat opsional di bawahnya. Halaman ini membahas sisi pengiriman; untuk meminta kontak membagikan lokasi mereka, lihat [permintaan lokasi](/docs/guides/whatsapp/message-types/interactive/location-requests).

## Kirim lokasi

Atur `location.latitude` dan `location.longitude`:

**TypeScript**

```typescript
const msg = await bird.whatsapp.send({
  to: "+16505551234",
  from: "+13124495648",
  location: { latitude: 37.7793, longitude: -122.4193 },
});
console.log(msg.id, msg.status);
```

Examples: [TypeScript](/id-id/dokumentasi/guides/whatsapp/message-types/location.ts.md) · [Python](/id-id/dokumentasi/guides/whatsapp/message-types/location.py.md) · [Go](/id-id/dokumentasi/guides/whatsapp/message-types/location.go.md) · [PHP](/id-id/dokumentasi/guides/whatsapp/message-types/location.php.md) · [CLI](/id-id/dokumentasi/guides/whatsapp/message-types/location.cli.md) · [MCP](/id-id/dokumentasi/guides/whatsapp/message-types/location.mcp.md) · [cURL](/id-id/dokumentasi/guides/whatsapp/message-types/location.curl.md)

Bentuk lengkapnya menambahkan `name` dan `address`:

```json
{
  "to": "+16505551234",
  "from": "+13124495648",
  "location": {
    "latitude": 37.7793,
    "longitude": -122.4193,
    "name": "Ferry Building Pickup",
    "address": "1 Market St, San Francisco, CA 94105"
  }
}
```

`address` hanya ditampilkan ke penerima jika `name` juga diisi. `from` wajib ada di setiap pesan layanan: nomor yang dimiliki workspace Anda, bukan nomor yang dikelola Bird.

## Batas

| Field       | Batas                                                                 | Diterapkan oleh           |
| ----------- | --------------------------------------------------------------------- | ------------------------- |
| `latitude`  | wajib, -90 sampai 90, derajat desimal                                 | Bird, saat accept (`422`) |
| `longitude` | wajib, -180 sampai 180, derajat desimal                               | Bird, saat accept (`422`) |
| `name`      | opsional, maksimal 1000 karakter                                      | Bird, saat accept (`422`) |
| `address`   | opsional, maksimal 1000 karakter, ditampilkan hanya jika `name` diisi | Bird, saat accept (`422`) |

Dokumentasi WhatsApp sendiri mencantumkan `latitude` dan `longitude` sebagai wajib tanpa rentang numerik yang dinyatakan; pemeriksaan rentang ±90/±180 dan batas 1000 karakter pada `name` dan `address` adalah batasan milik Bird sendiri.

## Membaca lokasi masuk

Kontak yang membagikan lokasinya, baik tanpa diminta maupun sebagai balasan atas permintaan lokasi, menghasilkan pesan `location` masuk biasa. Tidak ada yang dijamin: pin mentah bisa tiba tanpa `name` dan tanpa `address` sama sekali, dan lokasi masuk juga bisa membawa `url` yang menautkan ke tempat tersebut, yang tidak pernah muncul pada lokasi yang Anda kirim. Lokasi bukan tipe media, jadi tidak ada file yang perlu diambil. Lihat [Menerima lokasi WhatsApp](/docs/guides/whatsapp/receiving-whatsapp/location) untuk pembacaan masuk secara lengkap, payload `whatsapp.received`, dan hal-hal yang perlu diperhatikan.

## Batas dan kasus khusus

- **Jendela layanan pelanggan harus terbuka.** Pengiriman lokasi adalah pesan layanan, hanya dapat dikirim di dalam jendela yang terbuka; lihat [jendela layanan pelanggan](/docs/guides/whatsapp/message-types#the-customer-service-window) di hub.
- **`name` dan `address` benar-benar opsional saat dibaca, bukan opsional-dengan-fallback.** Pin mentah tidak memiliki keduanya, dan `address` tidak pernah muncul tanpa `name`. Jangan berasumsi bahwa alamat jalan selalu menyertai sepasang koordinat.
- **Ini bukan tipe yang sama dengan permintaan lokasi.** [Permintaan lokasi](/docs/guides/whatsapp/message-types/interactive/location-requests) adalah tipe interaktif yang meminta lokasi penerima; halaman ini mengirim lokasi kepada mereka. Jangan mencampuradukkan dua bentuk pengiriman ini.
- **Ketukan pada permintaan lokasi kembali sebagai pesan `location` masuk biasa, bukan sebagai `interactive_reply`.** Integrasi yang hanya memantau `interactive_reply` untuk ketukan akan melewatkan ini sepenuhnya; integrasi tersebut juga harus memantau `location` masuk.

## Langkah selanjutnya

- [Pesan layanan WhatsApp](/docs/guides/whatsapp/message-types): jendela layanan pelanggan dan model yang digunakan bersama oleh setiap pesan layanan
- [Permintaan lokasi](/docs/guides/whatsapp/message-types/interactive/location-requests): minta lokasi kontak alih-alih mengirim lokasi
- [Mengirim pesan WhatsApp](/docs/guides/whatsapp/sending-whatsapp): envelope permintaan, model `202`, dan coba lagi yang aman

## Related resources

- [Connecting WhatsApp to Bird: from buying a number to a live channel](/learn/whatsapp/connecting-whatsapp-to-bird) (video)
- [What is the 24-hour customer service window on WhatsApp?](/explained/whatsapp/what-is-the-24-hour-customer-service-window) (answer)
- [WhatsApp message builder](/tools/whatsapp-message-builder) (tool)
- [WhatsApp](/products/whatsapp) (product)

[Get an implementation brief](/learn/workspace?topic=whatsapp)
