SaidwireDevelopers

Guide · Dify

Saidwire speech-to-text in Dify

Dify's OpenAI-API-compatible model provider can add a Speech2text model with your own API Base URL. Add Saidwire there, make it the workspace's default Speech-to-Text Model, and the microphone button in your Dify chat apps sends audio to Saidwire. You don't need to write any code.

you need
DifyDify Cloud, or a self-hosted Dify with plugins (1.0 or later). Checked against version 0.0.73 of the OpenAI-API-compatible plugin.
Saidwire API keysk_live_... from saidwire.com/dev (120 free hours, no card)

1. Install the provider

  1. In Dify, open Plugins and search the Marketplace for OpenAI-API-compatible (published by langgenius).
  2. Click Install. If it's already installed, go to the next step. You can also get to it from Settings → Model Provider → Install model providers.

2. Add Saidwire as a Speech2text model

  1. Open Settings → Model Provider. On the OpenAI-API-compatible card, click Add Model.
  2. Fill in the form:
    fieldvalue
    Model TypeSpeech2text
    Model Namesaidwire-en
    Model display nameSaidwire (optional)
    API Keyyour Saidwire key, sk_live_...
    Languageen, or leave it empty
    Initial Promptleave it empty
    API Base URLhttps://api.saidwire.com/v1
    model name for API endpointleave it empty
  3. Click Save. To check the key, Dify transcribes its own 11-second sample clip. That uses 11 seconds of your free hours.

3. Make it the default Speech-to-Text Model

  1. In Settings → Model Provider, open Default Models.
  2. Under Speech-to-Text Model, pick saidwire-en (or the display name you gave it), then save.

4. Turn on voice input in an app

  1. Open a chat app or chatflow and click Features.
  2. Turn on Speech to Text ("Voice input can be used in chat"), then publish the app.
  3. Click the microphone in the chat box and speak. The words go into the message box.

What Dify sends

For each recording, Dify sends one POST https://api.saidwire.com/v1/audio/transcriptions to Saidwire. The request is multipart and contains:

Dify reads back only the text field. We sent this exact request against the live API before publishing this page.

Troubleshooting

you seefix
Credentials validation failed, with 401 Incorrect API key providedThe key is wrong, has been revoked, or has a stray space.
404 on saveSet API Base URL to exactly https://api.saidwire.com/v1. Dify adds /audio/transcriptions itself.
400 ... unsupported_languageSaidwire transcribes English only. Set Language to en or leave it empty.
Saidwire isn't listed under Speech-to-Text ModelThe model was added with a different Model Type. Add it again with Speech2text.
429Too many recordings at once for your key (trial keys allow 4), or your free hours are used up. The message says which.
Timeouts on self-hosted DifyThe plugin daemon container needs outbound HTTPS access to api.saidwire.com.

Good to know

Stuck? Email support@saidwire.com with the x-request-id from the failed call.

OpenAI is a trademark of OpenAI. Open WebUI, n8n, LiteLLM, Dify, Flowise, Vercel and the AI SDK belong to their respective owners. Saidwire is not affiliated with OpenAI or with these projects.