Query parameter q
In case you’re not the type of developer who will read through the entire
section, here’re 3 most important rules that you have to follow:
-
Be aware that, by default, tokens (keywords you’re searching for) passed into
the q parameter are split with
ANDoperator. This means each token has to be present in the text at least once. For example,q=Apple Microsoftwill be read asq=Apple AND Microsoft -
Always use double quotes
"when you search for companies, person names, etc. For example, if you want to find articles whereTim Cookis mentioned, you should passq="Tim Cook"notq=Tim Cook - Make sure that what you pass into the q parameter is URL-encoded.
-
While making your first calls, check the
user_inputlist in the JSON that we return to you. Make sure our API saw your keywords as you intended.
Exact Match with “double quotes”
Use double quotes" for the exact match.
When you want to search for articles that mention Tim Cook you should do the
following query:
q=Tim Cook then it will be treated as q=Tim AND Cook. In that
case, every article that mentions tim and cook will match.
Moreover, if you specify lang=en that will also match the articles with
cooking, cooked, and other stems of the word cook.
Boolean: AND
AND operator makes tokens from both sides to be present in the text.
AND is the default operator. When your q input is more than 1 word, AND
operator is added between each word behind the scenes. Therefore,
q=Apple Microsoft Tesla is the same as q=Apple AND Microsoft AND Tesla
For example, if we want both Microsoft and Tesla to be present in the
returned news articles, the q parameter should look as follows:
Boolean: OR
OR can also be written as ||
OR operator means that either the left or the right sides of OR have to be
satisfied.
You should use Grouping when you want to logically group a set of tokens. For
example:
Boolean: NOT
NOT can also be written as !
Use NOT operator when you want the token from its right not to be present. For
example, if we want to search for articles about Microsoft and not about Tesla,
the q parameter should look as follows:
MUST (MUST NOT)
Follow theseMUST rules:
- Prepend a token with a
+(plus sign) if it MUST appear in the searched text. - Make sure that your API call is URL encoded. Check the
user_inputobject in the Response Body to see how our back end saw your request. - Remember that a
+(plus sign) will be escaped by default in many situations. Therefore, we recommend using its URL-encoded version:%2B
NOT MUST rules:
- Prepend a token with a
-(minus sign) if it MUST NOT appear in the searched text. For example, if we want to search for news articles that contain Elon Musk but not Grimes, we have to write:
Elon or
Musk are present. Shouldn’t we write +Elon +Musk -Grimes?
If we write +Elon +Musk -Grimes that means that Elon and Musk should be
present in the text, however, not in that particular. The “correct” query should
look like this:
"Elon Musk" , plus,
Grimes must not be present.
In general, you should always put person and company names in quotes.
Wildcards * and ?
- Use
*to match any string in any quantity. - Use
?to match any string exactly once.
Microsort and any
C-level officers:

