# WhatsApp लोकेशन रिक्वेस्ट

लोकेशन रिक्वेस्ट एक WhatsApp मैसेज के नीचे एक बटन लगाती है जो प्राप्तकर्ता से उनकी लोकेशन शेयर करने के लिए कहता है। इसका उपयोग तब करें जब आपको किसी सेव किए गए पते की बजाय वर्तमान स्थिति चाहिए, जैसे पिकअप पॉइंट। फ़ोन नंबर के लिए, [संपर्क जानकारी रिक्वेस्ट](/docs/guides/whatsapp/message-types/interactive/contact-info-requests) का उपयोग करें।

## लोकेशन रिक्वेस्ट भेजें

`interactive.type` को `location_request_message` पर सेट करें, एक `body_text` के साथ और कुछ नहीं। WhatsApp बटन को खुद रेंडर करता है, इसलिए उसे लेबल करने के लिए कुछ नहीं है:

**TypeScript**

```typescript
const msg = await bird.whatsapp.send({
  to: "+16505551234",
  from: "+13124495648",
  interactive: {
    type: "location_request_message",
    body_text:
      "Let's start with your pickup. Share your current location, or type an address instead.",
  },
});
console.log(msg.id, msg.status);
```

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

`from` हर सर्विस मैसेज पर ज़रूरी है: आपके वर्कस्पेस का अपना नंबर, Bird-प्रबंधित नहीं। इस टाइप का कोई अपना फ़ील्ड नहीं है, और स्कीमा `header`, `footer_text`, और हर दूसरे टाइप के फ़ील्ड (`buttons`, `list`, `cta_url`, `cards`) को पूरी तरह रोकता है, इसलिए `body_text` ही पूरा मैसेज है, अधिकतम 1,024 कैरेक्टर।

`in_reply_to_message_id` इस टाइप पर भी काम करता है, उसी बातचीत में किसी पहले के मैसेज को कोट करने के लिए। रिज़ॉल्यूशन कैसे काम करता है और क्या छूट सकता है, इसके लिए हब का [रिप्लाई को कोरिलेट करने के लिए मैसेज कोट करना](/docs/guides/whatsapp/message-types/interactive#quoting-a-message-to-correlate-a-reply) देखें।

## शेयर की गई लोकेशन पढ़ना

टैप करने पर कोई `interactive_reply` नहीं बनता। यह एक साधारण इनबाउंड `location` मैसेज के रूप में आता है, वही आकार जो कोई संपर्क बिना कहे अपनी लोकेशन शेयर करने पर बनाता, इसलिए जो इंटीग्रेशन पहले से इनबाउंड लोकेशन पढ़ता है उसे इस टाइप के लिए कोई नई ब्रांच नहीं चाहिए:

```json
{
  "id": "wam_01kyb2m4xq7whs0d8n3prv6tez",
  "direction": "inbound",
  "from": { "phone_number": "+16505551234" },
  "to": { "phone_number": "+13124495648" },
  "status": "received",
  "in_reply_to_message_id": "wam_01kya19eknftrs2s6p82asmvnh",
  "location": {
    "latitude": 37.7793,
    "longitude": -122.4193,
    "name": "Embarcadero Plaza",
    "address": "1 Market St, San Francisco, CA 94105"
  },
  "created_at": "2026-08-25T09:04:11Z"
}
```

`location` का कोई भी फ़ील्ड ज़रूरी नहीं है: `latitude` और `longitude` आमतौर पर दोनों मौजूद होते हैं, लेकिन जब प्राप्तकर्ता ने सादा पिन शेयर किया तो `name` नहीं होता, `address` केवल तभी दिखता है जब `name` भी सेट हो, और `url` केवल उन बिज़नेस लोकेशन पर दिखता है जो प्राप्तकर्ता के क्लाइंट ने भेजी हों। यह मान कर न चलें कि पिन के साथ सड़क का पता भी आएगा, डिफ़ेंसिव कोड लिखें। यह रिप्लाई आपको मैसेज लिस्ट या `GET /v1/whatsapp/messages/{id}` के ज़रिए दिखता है; पूरे पथ के लिए हब का [रिप्लाई पढ़ना](/docs/guides/whatsapp/message-types/interactive#reading-a-reply) देखें।

## जवाब को सवाल से कोरिलेट करना

Meta इस टाइप के रिप्लाई पर एक `context` सेट करता है जो उस रिक्वेस्ट को नाम देता है जिसका यह जवाब है, इसलिए इनबाउंड मैसेज में `in_reply_to_message_id` होता है और आपको अपनी कोई कोरिलेशन स्कीम नहीं चाहिए:

```json
{
  "direction": "inbound",
  "in_reply_to_message_id": "wam_01kya19eknftrs2s6p82asmvnh",
  "location": { "latitude": 37.7793, "longitude": -122.4193 }
}
```

रिज़ॉल्यूशन कैसे काम करता है और मिस कैसा दिखता है, इसके लिए [रिप्लाई को कोरिलेट करने के लिए मैसेज कोट करना](/docs/guides/whatsapp/message-types/interactive#quoting-a-message-to-correlate-a-reply) देखें।

यह [संपर्क जानकारी रिक्वेस्ट](/docs/guides/whatsapp/message-types/interactive/contact-info-requests) से जानबूझकर किया गया अंतर है: उस टाइप के रिप्लाई में कोई `context` नहीं होता, इसलिए उसका `in_reply_to_message_id` कभी रिज़ॉल्व नहीं होता और कोरिलेशन `from` और टाइमिंग पर निर्भर हो जाता है। लोकेशन रिक्वेस्ट का रिप्लाई रिज़ॉल्व होता है, इसलिए शेयर की गई लोकेशन को उस रिक्वेस्ट से जोड़ने का भरोसेमंद तरीका `in_reply_to_message_id` है।

## ध्यान रखने योग्य बातें

- **कस्टमर सर्विस विंडो खुली होनी चाहिए।** लोकेशन रिक्वेस्ट एक सर्विस मैसेज है, केवल खुली विंडो के अंदर ही डिलीवर होती है; हब की [कस्टमर सर्विस विंडो](/docs/guides/whatsapp/message-types#the-customer-service-window) देखें। विंडो चेक fail open होता है, इसलिए `202` इस बात का प्रमाण नहीं है कि भेजते समय विंडो वाकई खुली थी।
- **`from` आपके वर्कस्पेस का अपना नंबर होना चाहिए।** इसे छोड़ देना, या ऐसा नंबर देना जो कनेक्टेड सेंडर नहीं है, सेंड बनने से पहले ही रिजेक्ट हो जाता है।
- **रिप्लाई की गारंटी नहीं है।** प्राप्तकर्ता लोकेशन-शेयरिंग स्क्रीन को बंद कर सकता है, मैसेज को पूरी तरह अनदेखा कर सकता है, या फ़्री टेक्स्ट में पता टाइप कर सकता है, जो बिना किसी `location` के एक साधारण इनबाउंड टेक्स्ट मैसेज के रूप में आता है। Meta अस्वीकृत या खारिज किए गए शेयर के लिए कोई सिग्नल दस्तावेज़ित नहीं करता, इसलिए इसे fire-and-forget मानें और ऐसे रिस्पॉन्स का इंतज़ार करने की बजाय जो शायद कभी न आए, अपनी तरफ़ से टाइम आउट करें।
- **शेयर किए गए पिन में केवल कोऑर्डिनेट्स हो सकते हैं।** नाम और पता जोड़ना है या नहीं, यह प्राप्तकर्ता का क्लाइंट तय करता है; सादे पिन में दोनों नहीं होते, इसलिए यह न मानें कि एक के साथ दूसरा भी आएगा।
- **कोई हेडर नहीं, कोई फ़ुटर नहीं, और कोई अपना फ़ील्ड नहीं।** स्कीमा इस टाइप पर `header` और `footer_text` को पूरी तरह रोकता है, और बटन को लेबल करने के लिए कोई फ़ील्ड नहीं है। जो भी छोटा प्रिंट चाहिए वह `body_text` के अंदर डालना होगा।
- **रिप्लाई एक `location` मैसेज है, `interactive_reply` नहीं।** जो इंटीग्रेशन टैप के लिए केवल `interactive_reply` देखता है, वह इस टाइप को पूरी तरह मिस करेगा; इसके बजाय इनबाउंड `location` देखें।

स्कीमा यहाँ जो कुछ भी व्यक्त कर सकता है, एक बहुत लंबा `body_text`, एक `header`, एक `footer_text`, या `buttons`, `list`, `cta_url`, `cards` में से कोई भी, बिना कैटलॉग कोड वाली सामान्य request-validation विफलता है। जो कोट रिज़ॉल्व नहीं होता वह कुछ बनने या चार्ज होने से पहले रिक्वेस्ट को फ़ेल कर देता है: `404` [`E15071`](/docs/api/errors/E15071) जब id ऐसे मैसेज का नाम देती है जो इस वर्कस्पेस में नहीं है, `422` [`E15072`](/docs/api/errors/E15072) जब वह ऐसे मैसेज का नाम देती है जिसे कोट नहीं किया जा सकता। पूरी इंटरैक्टिव एरर टेबल के लिए हब की [एरर](/docs/guides/whatsapp/message-types/interactive#errors) और किसी भी WhatsApp सेंड में आने वाली एरर के लिए [WhatsApp मैसेज भेजना](/docs/guides/whatsapp/sending-whatsapp) देखें।

## अगले कदम

- [WhatsApp इंटरैक्टिव मैसेज](/docs/guides/whatsapp/message-types/interactive): सभी छह इंटरैक्टिव टाइप में क्या समान है
- [संपर्क जानकारी रिक्वेस्ट](/docs/guides/whatsapp/message-types/interactive/contact-info-requests): लोकेशन की बजाय फ़ोन नंबर माँगें
- [WhatsApp मैसेज भेजना](/docs/guides/whatsapp/sending-whatsapp): रिक्वेस्ट एन्वेलप, `202` मॉडल, और सुरक्षित फिर से प्रयास

## 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)
