> ## Documentation Index
> Fetch the complete documentation index at: https://generaltranslation.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# फ़िल्टर की गई स्ट्रीम

> अपने फ़िल्टर नियमों से मेल खाने वाली रीयल-टाइम पोस्ट्स को स्ट्रीम करें

export const Button = ({href, children}) => {
  return <div className="not-prose group">
    <a href={href}>
      <button className="flex items-center space-x-2.5 py-1 px-4 bg-primary-dark dark:bg-white text-white dark:text-gray-950 rounded-full group-hover:opacity-[0.9] font-medium">
        <span>
          {children}
        </span>
        <svg width="3" height="24" viewBox="0 -9 3 24" class="h-6 rotate-0 overflow-visible"><path d="M0 0L3 3L0 6" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path></svg>
      </button>
    </a>
  </div>;
};

Filtered Stream एंडपॉइंट्स आपको आपके फ़िल्टर नियमों से मेल खाने वाली रीयल-टाइम पोस्ट्स प्राप्त करने की सुविधा देते हैं। शक्तिशाली ऑपरेटरों का उपयोग करके नियम बनाएँ, फिर प्रकाशित होते ही मेल खाने वाली पोस्ट्स पाने के लिए एक स्थायी स्ट्रीम से कनेक्ट करें।

<div id="overview">
  ## अवलोकन
</div>

<CardGroup cols={2}>
  <Card title="रीयल-टाइम डिलीवरी" icon="bolt">
    प्रकाशित होने के कुछ ही सेकंड में पोस्ट्स प्राप्त करें
  </Card>

  <Card title="स्थायी नियम" icon="filter">
    डिस्कनेक्ट हुए बिना नियम जोड़ें और हटाएँ
  </Card>

  <Card title="शक्तिशाली ऑपरेटर" icon="magnifying-glass">
    कीवर्ड, हैशटैग, उपयोगकर्ताओं आदि से मिलान करें
  </Card>

  <Card title="वेबहुक डिलीवरी" icon="webhook">
    चाहें तो वेबहुक्स के ज़रिए पोस्ट्स प्राप्त करें
  </Card>
</CardGroup>

***

<div id="how-it-works">
  ## यह कैसे काम करता है
</div>

1. **नियम बनाएँ** — ऑपरेटर का उपयोग करके फ़िल्टर नियम तय करें
2. **स्ट्रीम से कनेक्ट करें** — एक स्थायी HTTP कनेक्शन स्थापित करें
3. **पोस्ट्स प्राप्त करें** — मिलान करने वाले पोस्ट्स रीयल-टाइम में प्राप्त करें

```
┌─────────────┐      ┌─────────────┐      ┌─────────────┐
│ नियम        │      │ स्ट्रीमिंग  │      │ मिलते       │
│ बनाएं/      │  →   │ एंडपॉइंट   │  →   │ पोस्ट्स     │
│ प्रबंधित करें│      │ से जुड़ें   │      │ प्राप्त करें │
└─────────────┘      └─────────────┘      └─────────────┘
```

***

<div id="endpoints">
  ## एंडपॉइंट्स
</div>

| विधि | एंडपॉइंट                                                                | विवरण                       |
| :--- | :---------------------------------------------------------------------- | :-------------------------- |
| GET  | [`/2/tweets/search/stream`](/hi/x-api/stream/stream-filtered-posts)     | स्ट्रीम से कनेक्ट करें      |
| POST | [`/2/tweets/search/stream/rules`](/hi/x-api/stream/update-stream-rules) | नियम जोड़ें या हटाएँ        |
| GET  | [`/2/tweets/search/stream/rules`](/hi/x-api/stream/get-stream-rules)    | मौजूदा नियमों की सूची देखें |

***

<div id="access-levels">
  ## एक्सेस स्तर
</div>

| Feature              | Pay-per-use | Enterprise |
| :------------------- | :---------- | :--------- |
| प्रति प्रोजेक्ट नियम | 1,000       | 25,000+    |
| नियम की लंबाई        | 1,024 वर्ण  | 2,048 वर्ण |
| कनेक्शन              | 1           | एकाधिक     |
| सभी ऑपरेटर           | ✓           | ✓          |

<Card title="Enterprise के लिए संपर्क करें" icon="building" href="https://developer.x.com/en/products/x-api/enterprise/enterprise-api-interest-form">
  अधिक सीमाएँ और अतिरिक्त सुविधाएँ पाएँ
</Card>

***

<div id="building-rules">
  ## नियम बनाना
</div>

नियम खोज क्वेरी जैसे ही ऑपरेटरों का उपयोग करते हैं:

```
(AI OR "machine learning") lang:en -is:retweet
```

<div id="example-rules">
  ### उदाहरण नियम
</div>

| नियम                               | मेल खाने वाले                   |
| :--------------------------------- | :------------------------------ |
| `#python`                          | #python हैशटैग वाले पोस्ट्स     |
| `from:elonmusk`                    | @elonmusk द्वारा किए गए पोस्ट्स |
| `"breaking news" has:images`       | वाक्यांश और इमेज वाले पोस्ट्स   |
| `(@XDevelopers OR @X) -is:retweet` | उल्लेख, रीट्वीट्स को छोड़कर     |

<Card title="एक नियम बनाएं" icon="filter" href="/hi/x-api/posts/filtered-stream/integrate/build-a-rule">
  नियम सिंटैक्स और ऑपरेटर के बारे में जानें
</Card>

***

<div id="connecting-to-the-stream">
  ## स्ट्रीम से कनेक्ट करना
</div>

पोस्ट्स प्राप्त करने के लिए एक स्थायी HTTP कनेक्शन स्थापित करें:

```python theme={null}
import requests

def stream_posts(bearer_token):
    url = "https://api.x.com/2/tweets/search/stream"
    headers = {"Authorization": f"Bearer {bearer_token}"}
    
    response = requests.get(url, headers=headers, stream=True)
    
    for line in response.iter_lines():
        if line:
            print(line.decode("utf-8"))
```

<div id="keep-alive-signals">
  ### कीप-अलाइव सिग्नल
</div>

कनेक्शन बनाए रखने के लिए स्ट्रीम हर 20 सेकंड में खाली पंक्तियां (`\r\n`) भेजती है। अगर आपको 20 सेकंड तक न डेटा मिले, न कीप-अलाइव, तो फिर से कनेक्ट करें।

<CardGroup cols={2}>
  <Card title="डिस्कनेक्शन को संभालना" icon="plug" href="/hi/x-api/posts/filtered-stream/integrate/handling-disconnections">
    सहज रूप से फिर से कनेक्ट करें
  </Card>

  <Card title="स्ट्रीमिंग डेटा को प्रोसेस करना" icon="stream" href="/hi/x-api/posts/filtered-stream/integrate/consuming-streaming-data">
    पोस्ट्स को कुशलतापूर्वक प्रोसेस करें
  </Card>
</CardGroup>

***

<div id="webhook-delivery">
  ## वेबहुक डिलीवरी
</div>

स्थायी कनेक्शन बनाए रखने के बजाय, आप वेबहुक्स के ज़रिए पोस्ट्स प्राप्त कर सकते हैं:

<Card title="वेबहुक डिलीवरी" icon="webhook" href="/hi/x-api/webhooks/stream/introduction">
  फ़िल्टर की गई स्ट्रीम के लिए वेबहुक डिलीवरी सेट अप करें
</Card>

***

<div id="post-edits">
  ## पोस्ट संपादन
</div>

यह स्ट्रीम संपादित पोस्ट्स को उनके संपादन इतिहास सहित उपलब्ध कराती है। प्रत्येक संपादन एक नई पोस्ट ID बनाता है:

```json theme={null}
{
  "data": {
    "id": "1234567893",
    "text": "Hello world! (edited)",
    "edit_history_tweet_ids": ["1234567890", "1234567891", "1234567893"]
  }
}
```

<Card title="पोस्ट्स संपादित करने की मूल बातें" icon="clock-rotate-left" href="/hi/x-api/fundamentals/edit-posts">
  पोस्ट संपादन के बारे में और जानें
</Card>

***

<div id="getting-started">
  ## शुरुआत करें
</div>

<Note>
  **पूर्वापेक्षाएँ**

  * एक अनुमोदित [डेवलपर खाता](https://developer.x.com/en/portal/petition/essential/basic-info)
  * डेवलपर कंसोल में एक [प्रोजेक्ट और ऐप](/hi/resources/fundamentals/developer-apps)
  * आपके ऐप का [बेयरर टोकन](/hi/resources/fundamentals/authentication)
</Note>

<CardGroup cols={2}>
  <Card title="त्वरित शुरुआत" icon="rocket" href="/hi/x-api/posts/filtered-stream/quickstart">
    कुछ ही मिनटों में स्ट्रीम से कनेक्ट करें
  </Card>

  <Card title="एक नियम बनाएँ" icon="filter" href="/hi/x-api/posts/filtered-stream/integrate/build-a-rule">
    नियम सिंटैक्स जानें
  </Card>

  <Card title="ऑपरेटर संदर्भ" icon="list-check" href="/hi/x-api/posts/filtered-stream/integrate/operators">
    सभी उपलब्ध ऑपरेटर
  </Card>

  <Card title="नमूना कोड" icon="github" href="https://github.com/xdevplatform/Twitter-API-v2-sample-code">
    कार्यशील कोड उदाहरण
  </Card>
</CardGroup>

***

<div id="advanced-topics">
  ## उन्नत विषय
</div>

<CardGroup cols={2}>
  <Card title="डिस्कनेक्शन को संभालना" icon="plug" href="/hi/x-api/posts/filtered-stream/integrate/handling-disconnections">
    सहजता से फिर से कनेक्ट करें
  </Card>

  <Card title="उच्च वॉल्यूम क्षमता" icon="gauge-high" href="/hi/x-api/posts/filtered-stream/integrate/handling-high-volume-capacity">
    उच्च थ्रूपुट संभालें
  </Card>

  <Card title="रिकवरी और रिडंडेंसी" icon="shield" href="/hi/x-api/posts/filtered-stream/integrate/recovery-and-redundancy-features">
    मज़बूत अनुप्रयोग बनाएँ
  </Card>

  <Card title="लौटाई गई पोस्ट्स का मिलान" icon="crosshairs" href="/hi/x-api/posts/filtered-stream/integrate/matching-returned-tweets">
    पता लगाएँ कि कौन-से नियम मेल खाए
  </Card>
</CardGroup>
