list तरीके, एक ही तरह के कई संसाधन वापस पाते हैं. filter क्वेरी पैरामीटर की मदद से, ऐसी शर्तें तय की जा सकती हैं जिन्हें वापस लाए गए संसाधनों को पूरा करना होगा.
फ़िल्टर का स्ट्रक्चर
filter पैरामीटर की वैल्यू, स्ट्रिंग होती हैं. इन स्ट्रिंग में एक या उससे ज़्यादा शर्तें होती हैं. मानदंडों को AND या OR ऑपरेटरों से जोड़ा जाता है.
एक शर्त {field} {operator} {value} के फ़ॉर्म में होती है. यहां एक उदाहरण दिया गया है:
entityStatus="ENTITY_STATUS_ACTIVE"
फ़िल्टर स्ट्रिंग में ज़्यादा से ज़्यादा 500 वर्ण इस्तेमाल किए जा सकते हैं. अगर आपकी स्ट्रिंग बहुत लंबी है, तो:
- लॉजिक को अलग-अलग स्ट्रिंग में बांटें. हर फ़िल्टर स्ट्रिंग के साथ
listकॉल करें. नतीजों को मिलाकर एक सूची बनाएं. - फ़िल्टर स्ट्रिंग से शर्त हटाएं. हटाए गए मानदंड का इस्तेमाल करके, स्थानीय तौर पर वापस लाए गए संसाधनों को फ़िल्टर करें.
किसी शर्त के लिए वैल्यू को कोटेशन मार्क में रखें.
पक्का करें कि एपीआई कॉल सीधे तौर पर करते समय, आपकी फ़िल्टर स्ट्रिंग को यूआरएल में इस्तेमाल करने के लिए कोड में बदला गया हो.
फ़िल्टर स्ट्रिंग के स्ट्रक्चर के बारे में ज़्यादा जानने के लिए, शामिल होने की शर्तें सेक्शन देखें.
फ़िल्टर करने की शर्तें
सूची बनाने के हर तरीके में, फ़िल्टर करने से जुड़ी कुछ शर्तें पूरी होनी चाहिए. तरीके के filter पैरामीटर के ब्यौरे में, इन शर्तों के बारे में बताया गया है. फ़िल्टर करने की शर्तें, अक्सर वापस लाए गए संसाधन के फ़ील्ड का सबसेट होती हैं.
हर शर्त के लिए, एक या उससे ज़्यादा ऑपरेटर इस्तेमाल किए जा सकते हैं:
| तुलना किए जा सकने वाले ऑपरेटर | |
|---|---|
EQUALS (=)
|
फ़ील्ड की वैल्यू, दी गई वैल्यू के बराबर है. उदाहरण: |
LESS THAN OR EQUAL TO (<=)
|
फ़ील्ड की वैल्यू, दी गई वैल्यू से कम या उसके बराबर है. इसका इस्तेमाल अक्सर तारीख या तारीख और समय के हिसाब से फ़िल्टर करने के लिए किया जाता है. उदाहरण: |
GREATER THAN OR EQUAL TO (>=)
|
फ़ील्ड की वैल्यू, दी गई वैल्यू से ज़्यादा या उसके बराबर है. इसका इस्तेमाल अक्सर तारीख या तारीख और समय के हिसाब से फ़िल्टर करने के लिए किया जाता है. उदाहरण: |
HAS (:)
|
फ़ील्ड में दी गई वैल्यू मौजूद है. अगर फ़ील्ड एक स्ट्रिंग है, तो यह जांच की जाएगी कि दी गई वैल्यू एक सबस्ट्रिंग है या नहीं. अगर फ़ील्ड एक ऐरे है, तो यह दी गई वैल्यू के लिए ऐरे की जांच करेगा. उदाहरण: |
अगर किसी शर्त में ऑपरेटर के बारे में नहीं बताया गया है, तो वह सिर्फ़ EQUALS (=) के साथ काम करती है.
अगर किसी मानदंड के लिए खास फ़ॉर्मैट की ज़रूरत होगी, तो उसकी जानकारी दी जाएगी.
शामिल होने की शर्तें
list के जवाब को और ज़्यादा सीमित करने के लिए, एक से ज़्यादा शर्तों को एक साथ इस्तेमाल करें.
लॉजिकल ऑपरेटर AND और OR का इस्तेमाल करके, शर्तों को एक साथ जोड़ें. हर list तरीके में यह बताया जाता है कि कौनसे तरीके काम करते हैं. कुछ तरीकों में, सिर्फ़ एक शर्त वाले फ़िल्टर इस्तेमाल किए जा सकते हैं.
एक से ज़्यादा मानदंड इस्तेमाल करते समय, इन सीमाओं का ध्यान रखें:
| सीमाएं और उदाहरण | |
|---|---|
AND में, पाबंदियों या पाबंदियों के ऐसे ग्रुप को शामिल करना ज़रूरी है जो अलग-अलग फ़ील्ड को फ़िल्टर करते हैं या एक ही फ़ील्ड को अलग-अलग तरीके से फ़िल्टर करते हैं.
|
updateTime>="2023-03-01T12:00:00Z" AND updateTime<="2023-04-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")
|
OR में, एक ही फ़ील्ड के हिसाब से फ़िल्टर करने वाली अलग-अलग पाबंदियां शामिल होनी चाहिए.
|
(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND (lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" OR lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT")
|
OR पाबंदियों के दो ग्रुप को एक साथ लागू नहीं किया जा सकता. इसके बजाय, फ़िल्टर की अलग-अलग वैल्यू के साथ कई list अनुरोधों का इस्तेमाल करें.
|
नीचे दी गई दो फ़िल्टर स्ट्रिंग का इस्तेमाल अलग-अलग अनुरोधों में किया जाना चाहिए. साथ ही, OR ऑपरेटर का इस्तेमाल करके इन्हें एक साथ नहीं जोड़ा जा सकता:
|
| पाबंदियों को ग्रुप करने के लिए, कोष्ठक का इस्तेमाल किया जा सकता है. भले ही, उन्हें शामिल न किया गया हो. |
फ़िल्टर स्ट्रिंग updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT" को updateTime>="2023-03-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT") के तौर पर समझा जाता है
|