> SpecStream is the live web data engine for teams and agents. This is the Markdown copy of https://specstream.ai/docs/integrations/devika. Every page, with what SpecStream does and costs: https://specstream.ai/llms.txt

# Devika

Give Devika's research step a working Bing engine. Set the `BING` endpoint to SpecStream's Bing format address and the `BING` key to your SpecStream key, in Devika's settings or in `config.toml`, and choose Bing for the project. Devika's code stays as it is.

[SpecStream for DevikaCoding agents](https://specstream.ai/integrations/devika.md)

## What you need

-   Devika running as its README shows: `python devika.py` for the backend, and `bun run start` in `ui` for the interface at `http://127.0.0.1:3001`.
-   A SpecStream key. [Get your key](https://specstream.ai/workspace/search?route=bing&utm_source=devika&utm_medium=howto) on the Search API screen of your SpecStream workspace. New accounts start with $10 of credit, no card.

1.  1

    ## 1. Set the Bing endpoint

    Open **Settings** in Devika's sidebar, then the **API Endpoints** tab. Click **Edit**, replace the address in the **bing** field with SpecStream's, and click **Save**.

    bing

    ```text
    https://api.specstream.ai/v7.0/search
    ```

2.  2

    ## 2. Set the Bing key

    On the **API Keys** tab, click **Edit**, put your SpecStream key in the **bing** field, and click **Save**. Devika sends it in the `Ocp-Apim-Subscription-Key` header, where SpecStream's Bing route reads it.

    To edit the file instead, set both lines in `config.toml` in Devika's root folder, then restart `python devika.py`, which reads the file when it starts:

    config.toml

    ```toml
    [API_KEYS]
    BING = "YOUR_SPECSTREAM_KEY"
    
    [API_ENDPOINTS]
    BING = "https://api.specstream.ai/v7.0/search"
    ```

3.  3

    ## 3. Choose Bing for the project

    In the control panel, open the search engine menu, which lists Bing, Google and DuckDuckGo, and choose **Bing**. Devika sends the choice with each message, so it applies from your next one.

4.  4

    ## 4. Give Devika a task that needs research

    Ask for something that needs current documentation. Devika's researcher writes up to 3 search queries for the step, searches each one through SpecStream, opens the first result in its own browser and reads that page into its context. The terminal running `python devika.py` prints `Search Engine :: bing` for the step.

    In the Devika chat

    ```text
    Write a Python script that lists my open GitHub issues with the GitHub REST API.
    ```

## What Devika sends and gets back

`BingSearch.search` sends one `GET` to the `BING` endpoint for each query. SpecStream answers in Bing Web Search v7's shape, and Devika reads one field from the reply: the `url` of the first result in `webPages.value`.

| Devika | SpecStream |
| --- | --- |
| `q` | The question, in everyday words |
| `mkt=en-US` | Results in English, searched in the United States |
| No `count` | 10 results, at the base price |
| `Ocp-Apim-Subscription-Key` | Your SpecStream key |
| `webPages.value[0].url` | The first result's address, which Devika opens |

## Why the Bing engine needs a new address

Microsoft retired the Bing Search APIs on August 11, 2025. The `https://api.bing.microsoft.com/v7.0/search` address in Devika's `sample.config.toml` gets no results today, and the Azure steps in Devika's search engine guide no longer give a key. SpecStream answers the same v7 call, so Devika's Bing code works with only the endpoint and the key changed. [Moving off Bing Web Search v7](https://specstream.ai/migrate/bing-web-search-v7.md) has the settings for other Bing clients.

The engine that needs no key, DuckDuckGo, reads duckduckgo.com's own pages, and Devika's DuckDuckGo class carries the note "currently, the package is not working with our current setup."

SpecStream's search API scores 97.9 F-score on all 1,000 SimpleQA Verified questions and 64.0 item F1 on all 200 WideSearch tasks. Scores and method are on the [benchmarks page](https://specstream.ai/benchmarks.md).

## Or use the Google engine

Devika's Google engine moves the same way. SpecStream answers Google's Custom Search JSON API call in Google's shape, and Devika reads `items[0].link`. Set the **google** endpoint to `https://api.specstream.ai/customsearch/v1`, put your SpecStream key in **google\_search**, put any value in **google\_search\_engine\_id** (SpecStream accepts `cx` and does not use it), and choose **Google** in the menu.

Google ends its Custom Search JSON API for existing customers on January 1, 2027. [Moving off Google Custom Search](https://specstream.ai/migrate/google-custom-search.md) has the details.

## What each search costs

-   Each query is one Search API call through a drop-in address: $1 per 1,000 searches of up to 10 results. A search that returns no results costs nothing.
-   The researcher writes at most 3 queries a step, so a research step costs at most 3 searches.
-   Devika opens the first result in its own browser. SpecStream does not read that page, so it adds nothing to the bill.
-   Calls come out of your balance with no quote and no approval, and every call is in your account's request log. New accounts start with $10 of credit, no card.

## Limits and errors

-   With a wrong key SpecStream answers `401`. Devika's `BingSearch` then holds no result, and the step stops with a Python error in the terminal running `python devika.py`. Check the **bing** key.
-   When the account has used its calls for the minute, SpecStream answers `429` with `Retry-After`, and nothing is charged. Devika does not retry, so send the message again after that wait.
-   If the terminal prints another engine than `bing`, the menu still holds that engine. Choose **Bing** and send the message again.

## Go back

Set the **bing** endpoint back to `https://api.bing.microsoft.com/v7.0/search` and the key back to yours, or choose another engine in the menu. To stop the key working everywhere, revoke it in **Agents & API**. Questions: [support@specstream.ai](mailto:support@specstream.ai).

## More

[SpecStream for Devika](https://specstream.ai/integrations/devika.md) covers what it does in Devika on one page. Every other tool has its guide in [Connect your tools](https://specstream.ai/docs/integrations.md). You see the most a request can cost before it starts, and the matches are paid from your balance. [Billing](https://specstream.ai/docs/billing.md) has the details. For help, email [support@specstream.ai](mailto:support@specstream.ai).
