Search a financial news API by phrase with q
Learn how to search financial news api results by phrase, combine ticker filters, sort by relevance, and page with a cursor.

A search financial news api workflow starts with precise text queries and useful filters. MarketNewsAPI provides this through the q parameter on GET /v1/news. The same endpoint can search by phrase, require matching tickers, order results by relevance, and return pages through a cursor.
MarketNewsAPI covers US-listed equities and ETFs. Results may contain publisher news, press releases, and legal notices. This guide explains how to use q and combine it with other filters without confusing keyword matching with ticker matching.
Search the title, summary, and snippet
Send your search terms in the q query parameter. The parameter accepts up to 200 characters. MarketNewsAPI checks the article's title, summary, and snippet for a match.
For publisher stories, the snippet is a publisher excerpt rather than the full article. The complete publisher body is not included. Press releases are different because their body contains the full wire text. However, q searches the three fields listed above rather than every part of an article.
Authenticate each request with one key. Send the key in the Authorization: Bearer header. Keep it on your server or in a protected development environment. Do not place it in browser code.
Wrap multiple words in quotes
Put double quotes around a group of words to search for that phrase. For example, q="rate cut" asks the endpoint for articles containing the phrase. Without quotes, terms such as rate and cut can match independently.
Keep the entire value of q within 200 characters. A short phrase is easier to test because it produces a narrower target. You can then add filters to remove articles that match the text but concern the wrong company or time period.
Quotes and spaces need URL encoding in a request URL. For example, "rate cut" becomes %22rate%20cut%22. This is still the same phrase query.
Combine the phrase with NVDA
Separate filters on GET /v1/news combine with AND. A request with q="rate cut" and tickers=NVDA therefore requires both conditions. The article must contain the phrase in its title, summary, or snippet, and it must be tagged with NVDA.
Here is the complete request example:
curl "https://api.marketnewsapi.com/v1/news?q=%22rate%20cut%22&tickers=NVDA&sort=relevance&limit=20" \
-H "Authorization: Bearer mna-live-...
This request does not mean rate cut OR NVDA. It means rate cut AND NVDA. That distinction is important when you test a phrase against a known company.
You can include up to 50 tickers in the tickers filter. Comma-separated values inside that one filter are treated as OR. For example, tickers=NVDA,AAPL accepts an article associated with either ticker. The separate q condition still applies to both alternatives.
Order matching results by relevance
Add sort=relevance when a query is set. The example above uses this value. It places matching articles according to their relationship to the search query.
Relevance sorting applies only when q is present. Without a keyword query, use published_desc or published_asc for chronological ordering.
Review the title, snippet, summary, source, publication time, and tickers before acting on a result. A keyword match is a retrieval signal. It does not prove that an article supports a particular market conclusion or that the article discusses only the intended topic.
For example, the phrase "rate cut" may appear in a broad market article that is also tagged with NVDA. The ticker filter confirms the association. It does not turn NVDA into the subject of every matching story. Read the returned fields to make that determination.
Page through results with a cursor
The limit parameter controls the number of articles returned in one response. It accepts values from 1 to 100 and defaults to 20. The request example uses limit=20.
When more results are available, the response provides a continuation token in meta.next_cursor. Send that value through the cursor parameter to request the next page. Keep the query, ticker filter, sort order, and limit unchanged while paging.
Stop when meta.next_cursor is null or absent. A cursor points to the next result set, so you do not need to calculate page numbers or rely on offsets.
Dates can make a search more stable. The from and to parameters use UTC. A date such as 2026-10-06 refers to that UTC day. Add a date range when you need a defined research period.
Try it for 7 days. Signup starts Pro. A card is required. Real-time REST, WebSocket, and MCP, with 1,000 REST requests a day. Paid Pro removes the cap. After that it's $15/month, or Free if you stop.
Narrow results with other filters
You can combine q with ticker, date, source, category, and article-type filters. All separate filters use AND logic. Comma-separated alternatives inside one filter use OR logic.
Use type=news for publisher stock news, type=press_release for wire releases, or type=legal for legal notices. Legal notices are included by default. You can exclude them with include_legal=0. A type filter that selects only news or press releases also excludes legal notices.
Publisher stories and legal notices have a null body. Readers should follow the article's url. Press releases include the full wire body, including short releases. Always retain the publisher name and a working link when showing a third-party article, press release, or legal notice to an end user. Do not present it as reporting produced by MarketNewsAPI.
Apply limits to repeated searches
Free accounts allow 100 REST requests per day. Their headlines are delayed by 15 minutes and cover the last 365 days of history. Paid Pro removes the daily REST cap and provides real-time headlines and the full archive.
REST and MCP tool calls share a burst limit of 20 requests per second. If REST returns a 429 response, it includes a Retry-After header. Wait for the indicated period before trying again.
The seven-day Pro trial requires a card. Nothing is charged during the trial. It includes the live feed, WebSocket, MCP, and full archive, with 1,000 REST requests per day. Unless you cancel, Pro is billed when the trial ends. Canceling during the trial returns the account to Free and nothing is billed.
For this workflow, use GET /v1/news. There is no separate search path. Put text in q, add filters with AND logic, choose sort=relevance when appropriate, and follow meta.next_cursor until the result set is complete.
See the MarketNewsAPI news endpoint documentation for the full request reference. You can also use the MarketNewsAPI signup page to begin testing with an API key.