apidash
API Dash is a beautiful AI-powered open-source cross-platform (Desktop & Mobile) API Client built using Flutter which can help you easily create & customize your HTTP & GraphQL API requests, visually inspect responses and generate API integration code. A lightweight alternative to postman/insomnia.
Stars: 2383
API Dash is an open-source cross-platform API Client that allows users to easily create and customize API requests, visually inspect responses, and generate API integration code. It supports various HTTP methods, GraphQL requests, and multimedia API responses. Users can organize requests in collections, preview data in different formats, and generate code for multiple languages. The tool also offers dark mode support, data persistence, and various customization options.
README:
| Link | |
|---|---|
| Learn about GSoC | Link |
| API Dash GSoC Page | Link |
| Project Ideas List | Link |
| Application Guide | Link |
| Discord Channel | Link |
API Dash is a beautiful open-source cross-platform API Client that can help you easily create & customize your API requests, visually inspect responses (full list of supported mime-types) and generate API integration code (full list) on the go.
API Dash can be downloaded from the links below:
| OS | Distribution | Installation Guide | CPU/Architecture | Download Link |
|---|---|---|---|---|
| iOS/iPad | App Store | Link | ||
| macOS | .dmg |
Link | Apple Silicon & Intel | Link |
| Windows | .exe |
Link | 64-bit | Link |
| Linux | .deb |
Link | amd64 | Link |
| arm64 | Link | |||
.rpm |
Link | x86_64 | Link | |
| aarch64 | Link | |||
PKGBUILD (Arch Linux) |
Link | x86_64 | Link |
| API Type | Supported |
|---|---|
| HTTP | ✅ |
| GraphQL | ✅ |
| SSE/Streaming | ✅ |
| AI | https://github.com/foss42/apidash/issues/871 |
| WebSocket | https://github.com/foss42/apidash/issues/15 |
| MQTT | https://github.com/foss42/apidash/issues/115 |
| gRPC | https://github.com/foss42/apidash/issues/14 |
| Import Collection From | Supported |
|---|---|
| Postman | ✅ |
| cURL | ✅ |
| Insomnia | ✅ |
| OpenAPI | https://github.com/foss42/apidash/issues/121 |
| hurl | https://github.com/foss42/apidash/issues/123 |
| HAR | ✅ |
- Create different types of HTTP requests (
GET,HEAD,POST,PATCH,PUTandDELETE). - Easily manipulate and play around with request inputs like
headers,query parametersandbody. - Full support to send text content with 🥳 Unicode/Emoji and preview any API response containing Unicode/Emoji.
- Create GraphQL requests with
headersandquery.
💼 Organize Requests in Collections & Folders
- Create collections and folders to organize your requests.
- Press and Drag to Re-arrange requests.
- Click and open popup menu to rename, duplicate and delete a request.
🔎 Visually Preview and Download Data & Multimedia API Responses
- Inspect the API Response (HTTP status code, error message, headers, body, time taken).
- View formatted code previews for responses of various content types like
JSON,XML,YAML,HTML,SQL, etc. - API Dash helps explore, test & preview Multimedia API responses which is not supported by any other API client. You can directly test APIs that return images, PDF, audio & more. Check out the full list of supported MIME types/formats here.
- Save 💾 response body of any mimetype (
image,text, etc.) directly in theDownloadsfolder of your system by clicking on theDownloadbutton.
👩🏻💻 Code Generation
- We started out as the only open source API client which supported advanced Dart code generation to easily integrate APIs in Dart/Flutter projects or to directly run it on DartPad. With time we have added more code-gens and currently API Dash supports generation of well-tested integration codes for JavaScript, Python, Kotlin & various other languages. You can check out the full list of supported languages/libraries.
🌙 Full Dark Mode Support
- Easily switch between light mode and dark mode.
💾 Data
- Data is persisted locally on the disk. To save the current snapshot, just press the Save button in the collection pane.
- Click and open the collection/folder popup menu to export it as HAR. This can be version controlled & can be directly imported in other API Clients like Postman, Paw, etc.
- Export your entire data into a HAR (HTTP Archive) file. To access this option goto
Settings > Export Data.
⚙️ Settings & Other Options
- Customize various options using a dedicated Settings screen.
- Window Configuration (Size & Position) is persisted and restored on app start. (Only macOS & Windows)
API Dash currently supports API integration code generation for the following languages/libraries.
| Language | Library | Comment/Issues |
|---|---|---|
| cURL | ||
| HAR | ||
| C | libcurl |
|
| C# | HttpClient |
|
| C# | RestSharp |
|
| Dart | http |
|
| Dart | dio |
|
| Go | net/http |
|
| JavaScript | axios |
|
| JavaScript | fetch |
|
JavaScript (node.js) |
axios |
|
JavaScript (node.js) |
fetch |
|
| Java | asynchttpclient |
|
| Java | HttpClient |
|
| Java | okhttp3 |
|
| Java | Unirest |
|
| Julia | HTTP |
|
| Kotlin | okhttp3 |
|
| PHP | curl |
|
| PHP | guzzle |
|
| PHP | HTTPlug |
|
| Python | requests |
|
| Python | http.client |
|
| Ruby | faraday |
|
| Ruby | net/http |
|
| Rust | hyper |
|
| Rust | reqwest |
|
| Rust | ureq |
|
| Rust | Actix Client |
|
| Swift | Alamofire |
|
| Swift | URLSession |
We welcome contributions to support other programming languages/libraries/frameworks. Please check out more details here.
API Dash is a next-gen API client that supports exploring, testing & previewing various data & multimedia API responses which is limited/not supported by other API clients. You can directly test APIs that return images, PDF, audio & more.
Here is the complete list of MIME types that can be directly previewed in API Dash:
| File Type | Mimetype | Extension | Comment |
|---|---|---|---|
application/pdf |
.pdf |
||
| Video | video/mp4 |
.mp4 |
|
| Video | video/webm |
.webm |
|
| Video | video/x-ms-wmv |
.wmv |
|
| Video | video/x-ms-asf |
.wmv |
|
| Video | video/avi |
.avi |
|
| Video | video/msvideo |
.avi |
|
| Video | video/x-msvideo |
.avi |
|
| Video | video/quicktime |
.mov |
|
| Video | video/x-quicktime |
.mov |
|
| Video | video/x-matroska |
.mkv |
|
| Image | image/apng |
.apng |
Animated |
| Image | image/avif |
.avif |
|
| Image | image/bmp |
.bmp |
|
| Image | image/gif |
.gif |
Animated |
| Image | image/jpeg |
.jpeg or .jpg
|
|
| Image | image/jp2 |
.jp2 |
|
| Image | image/jpx |
.jpf or .jpx
|
|
| Image | image/pict |
.pct |
|
| Image | image/portable-anymap |
.pnm |
|
| Image | image/png |
.png |
|
| Image | image/sgi |
.sgi |
|
| Image | image/svg+xml |
.svg |
|
| Image | image/tiff |
.tiff |
|
| Image | image/targa |
.tga |
|
| Image | image/vnd.wap.wbmp |
.wbmp |
|
| Image | image/webp |
.webp |
|
| Image | image/xwindowdump |
.xwd |
|
| Image | image/x-icon |
.ico |
|
| Image | image/x-portable-anymap |
.pnm |
|
| Image | image/x-portable-bitmap |
.pbm |
|
| Image | image/x-portable-graymap |
.pgm |
|
| Image | image/x-portable-pixmap |
.ppm |
|
| Image | image/x-tga |
.tga |
|
| Image | image/x-xwindowdump |
.xwd |
|
| Audio | audio/flac |
.flac |
|
| Audio | audio/mpeg |
.mp3 |
|
| Audio | audio/mp4 |
.m4a or .mp4a
|
|
| Audio | audio/x-m4a |
.m4a |
|
| Audio | audio/wav |
.wav |
|
| Audio | audio/wave |
.wav |
|
| CSV | text/csv |
.csv |
Can be improved |
We welcome PRs to add support for previewing other multimedia MIME types. Please go ahead and raise an issue so that we can discuss the approach. We are adding support for other MIME types with each release. But, if you are looking for any particular mimetype support, please go ahead and open an issue. We will prioritize it's addition.
Here is the complete list of MIME types that are syntax highlighted in API Dash:
| Mimetype | Extension | Comment |
|---|---|---|
application/json |
.json |
Other MIME types like application/geo+json, application/vcard+json that are based on json are also supported. |
application/xml |
.xml |
Other MIME types like application/xhtml+xml, application/vcard+xml that are based on xml are also supported. |
text/xml |
.xml |
|
application/yaml |
.yaml |
Others - application/x-yaml or application/x-yml
|
text/yaml |
.yaml |
Others - text/yml
|
application/sql |
.sql |
|
text/css |
.css |
|
text/html |
.html |
Only syntax highlighting, no web preview. |
text/javascript |
.js |
|
text/markdown |
.md |
Visit CHANGELOG.md
Just click on the Issue tab to raise a new issue in this repo.
Please find the Roadmap for API Dash here.
All docs are currently available in the doc folder.
You can contribute to API Dash in any or all of the following ways:
- Ask a question
- Submit a bug report
- Request a new feature
- Choose from our existing list of ideas
- Suggest ways to improve the developer experience of an existing feature
- Add documentation
- To add a new feature, resolve an existing issue or add a new test to the project, check out our Contribution Guidelines.
In case you need any help with API Dash or are encountering any issue while running the tool, please feel free to drop by our Discord server and we can have a chat in the #foss-apidash channel.
For Tasks:
Click tags to check more tools for each tasksFor Jobs:
Alternative AI tools for apidash
Similar Open Source Tools
apidash
API Dash is an open-source cross-platform API Client that allows users to easily create and customize API requests, visually inspect responses, and generate API integration code. It supports various HTTP methods, GraphQL requests, and multimedia API responses. Users can organize requests in collections, preview data in different formats, and generate code for multiple languages. The tool also offers dark mode support, data persistence, and various customization options.
beet
Beet is a collection of crates for authoring and running web pages, games and AI behaviors. It includes crates like `beet_flow` for scenes-as-control-flow bevy library, `beet_spatial` for spatial behaviors, `beet_ml` for machine learning, `beet_sim` for simulation tooling, `beet_rsx` for authoring tools for html and bevy, and `beet_router` for file-based router for web docs. The `beet` crate acts as a base crate that re-exports sub-crates based on feature flags, similar to the `bevy` crate structure.
LightMem
LightMem is a lightweight and efficient memory management framework designed for Large Language Models and AI Agents. It provides a simple yet powerful memory storage, retrieval, and update mechanism to help you quickly build intelligent applications with long-term memory capabilities. The framework is minimalist in design, ensuring minimal resource consumption and fast response times. It offers a simple API for easy integration into applications with just a few lines of code. LightMem's modular architecture supports custom storage engines and retrieval strategies, making it flexible and extensible. It is compatible with various cloud APIs like OpenAI and DeepSeek, as well as local models such as Ollama and vLLM.
aikit
AIKit is a comprehensive platform for hosting, deploying, building, and fine-tuning large language models (LLMs). It offers inference using LocalAI, extensible fine-tuning interface, and OCI packaging for distributing models. AIKit supports various models, multi-modal model and image generation, Kubernetes deployment, and supply chain security. It can run on AMD64 and ARM64 CPUs, NVIDIA GPUs, and Apple Silicon (experimental). Users can quickly get started with AIKit without a GPU and access pre-made models. The platform is OpenAI API compatible and provides easy-to-use configuration for inference and fine-tuning.
RVC_CLI
RVC_CLI is a command line interface tool for retrieval-based voice conversion. It provides functionalities for installation, getting started, inference, training, UVR, additional features, and API integration. Users can perform tasks like single inference, batch inference, TTS inference, preprocess dataset, extract features, start training, generate index file, model extract, model information, model blender, launch TensorBoard, download models, audio analyzer, and prerequisites download. The tool is built on various projects like ContentVec, HIFIGAN, audio-slicer, python-audio-separator, RMVPE, FCPE, VITS, So-Vits-SVC, Harmonify, and others.
RVC_CLI
**RVC_CLI: Retrieval-based Voice Conversion Command Line Interface** This command-line interface (CLI) provides a comprehensive set of tools for voice conversion, enabling you to modify the pitch, timbre, and other characteristics of audio recordings. It leverages advanced machine learning models to achieve realistic and high-quality voice conversions. **Key Features:** * **Inference:** Convert the pitch and timbre of audio in real-time or process audio files in batch mode. * **TTS Inference:** Synthesize speech from text using a variety of voices and apply voice conversion techniques. * **Training:** Train custom voice conversion models to meet specific requirements. * **Model Management:** Extract, blend, and analyze models to fine-tune and optimize performance. * **Audio Analysis:** Inspect audio files to gain insights into their characteristics. * **API:** Integrate the CLI's functionality into your own applications or workflows. **Applications:** The RVC_CLI finds applications in various domains, including: * **Music Production:** Create unique vocal effects, harmonies, and backing vocals. * **Voiceovers:** Generate voiceovers with different accents, emotions, and styles. * **Audio Editing:** Enhance or modify audio recordings for podcasts, audiobooks, and other content. * **Research and Development:** Explore and advance the field of voice conversion technology. **For Jobs:** * Audio Engineer * Music Producer * Voiceover Artist * Audio Editor * Machine Learning Engineer **AI Keywords:** * Voice Conversion * Pitch Shifting * Timbre Modification * Machine Learning * Audio Processing **For Tasks:** * Convert Pitch * Change Timbre * Synthesize Speech * Train Model * Analyze Audio
aikit
AIKit is a one-stop shop to quickly get started to host, deploy, build and fine-tune large language models (LLMs). AIKit offers two main capabilities: Inference: AIKit uses LocalAI, which supports a wide range of inference capabilities and formats. LocalAI provides a drop-in replacement REST API that is OpenAI API compatible, so you can use any OpenAI API compatible client, such as Kubectl AI, Chatbot-UI and many more, to send requests to open-source LLMs! Fine Tuning: AIKit offers an extensible fine tuning interface. It supports Unsloth for fast, memory efficient, and easy fine-tuning experience.
Free-LLM-Collection
Free-LLM-Collection is a curated list of free resources for mastering the Legal Language Model (LLM) technology. It includes datasets, research papers, tutorials, and tools to help individuals learn and work with LLM models. The repository aims to provide a comprehensive collection of materials to support researchers, developers, and enthusiasts interested in exploring and leveraging LLM technology for various applications in the legal domain.
OneClickLLAMA
OneClickLLAMA is a tool designed to run local LLM models such as Qwen2.5 and SakuraLLM with ease. It can be used in conjunction with various OpenAI format translators and analyzers, including LinguaGacha and KeywordGacha. By following the setup guides provided on the page, users can optimize performance and achieve a 3-5 times speed improvement compared to default settings. The tool requires a minimum of 8GB dedicated graphics memory, preferably NVIDIA, and the latest version of graphics drivers installed. Users can download the tool from the release page, choose the appropriate model based on usage and memory size, and start the tool by selecting the corresponding launch script.
free-chat
Free Chat is a forked project from chatgpt-demo that allows users to deploy a chat application with various features. It provides branches for different functionalities like token-based message list trimming and usage demonstration of 'promplate'. Users can control the website through environment variables, including setting OpenAI API key, temperature parameter, proxy, base URL, and more. The project welcomes contributions and acknowledges supporters. It is licensed under MIT by Muspi Merol.
awsome-distributed-training
This repository contains reference architectures and test cases for distributed model training with Amazon SageMaker Hyperpod, AWS ParallelCluster, AWS Batch, and Amazon EKS. The test cases cover different types and sizes of models as well as different frameworks and parallel optimizations (Pytorch DDP/FSDP, MegatronLM, NemoMegatron...).
pup
Pup is a Go-based command-line wrapper designed for easy interaction with Datadog APIs. It provides a fast, cross-platform binary with support for OAuth2 authentication and traditional API key authentication. The tool offers simple commands for common Datadog operations, structured JSON output for parsing and automation, and dynamic client registration with unique OAuth credentials per installation. Pup currently implements 38 out of 85+ available Datadog APIs, covering core observability, monitoring & alerting, security & compliance, infrastructure & cloud, incident & operations, CI/CD & development, organization & access, and platform & configuration domains. Users can easily install Pup via Homebrew, Go Install, or manual download, and authenticate using OAuth2 or API key methods. The tool supports various commands for tasks such as testing connection, managing monitors, querying metrics, handling dashboards, working with SLOs, and handling incidents.
dbhub
DBHub is a universal database gateway that implements the Model Context Protocol (MCP) server interface. It allows MCP-compatible clients to connect to and explore different databases. The gateway supports various database resources and tools, providing capabilities such as executing queries, listing connectors, generating SQL, and explaining database elements. Users can easily configure their database connections and choose between different transport modes like stdio and sse. DBHub also offers a demo mode with a sample employee database for testing purposes.
DownEdit
DownEdit is a powerful program that allows you to download videos from various social media platforms such as TikTok, Douyin, Kuaishou, and more. With DownEdit, you can easily download videos from user profiles and edit them in bulk. You have the option to flip the videos horizontally or vertically throughout the entire directory with just a single click. Stay tuned for more exciting features coming soon!
react-native-nitro-mlx
The react-native-nitro-mlx repository allows users to run LLMs, Text-to-Speech, and Speech-to-Text on-device in React Native using MLX Swift. It provides functionalities for downloading models, loading and generating responses, streaming audio, text-to-speech, and speech-to-text capabilities. Users can interact with various MLX-compatible models from Hugging Face, with pre-defined models available for convenience. The repository supports iOS 26.0+ and offers detailed API documentation for each feature.
clother
Clother is a command-line tool that allows users to switch between different Claude Code providers instantly. It provides launchers for various cloud, open router, China endpoints, local, and custom providers, enabling users to configure, list profiles, test connectivity, check installation status, and uninstall. Users can also change the default model for each provider and troubleshoot common issues. Clother simplifies the management of API keys and installation directories, supporting macOS, Linux, and Windows (WSL) platforms. It is designed to streamline the workflow of interacting with different AI models and services.
For similar tasks
apidash
API Dash is an open-source cross-platform API Client that allows users to easily create and customize API requests, visually inspect responses, and generate API integration code. It supports various HTTP methods, GraphQL requests, and multimedia API responses. Users can organize requests in collections, preview data in different formats, and generate code for multiple languages. The tool also offers dark mode support, data persistence, and various customization options.
aimp-discord-presence
AIMP - Discord Presence is a plugin for AIMP that changes the status of Discord based on the music you are listening to. It allows users to share their detected activity with others on Discord. The plugin settings are stored in the AIMP configuration file, and users can customize various options such as application ID, timestamp, album art display, and image settings for different playback states.
ChatDev
ChatDev is a virtual software company powered by intelligent agents like CEO, CPO, CTO, programmer, reviewer, tester, and art designer. These agents collaborate to revolutionize the digital world through programming. The platform offers an easy-to-use, highly customizable, and extendable framework based on large language models, ideal for studying collective intelligence. ChatDev introduces innovative methods like Iterative Experience Refinement and Experiential Co-Learning to enhance software development efficiency. It supports features like incremental development, Docker integration, Git mode, and Human-Agent-Interaction mode. Users can customize ChatChain, Phase, and Role settings, and share their software creations easily. The project is open-source under the Apache 2.0 License and utilizes data licensed under CC BY-NC 4.0.
novelai-bot
This repository contains a drawing plugin based on NovelAI. It allows users to draw images, change models, samplers, and image sizes, use advanced request syntax, customize prohibited word lists, automatically translate Chinese keywords, automatically retract messages after a certain time, and connect to private servers. Thanks to Koishi's plugin mechanism, users can achieve more functionalities by combining it with other plugins, such as multi-platform support, rate limiting, context management, and multi-language support.
WaveRobloxExecutor
Wave Executor is a cutting-edge script executor tailored for Roblox enthusiasts, offering AI integration for seamless script development, ad-free premium features, and 24/7 customer support. It enhances your Roblox gameplay experience by providing a wide range of features to take your gameplay to new heights.
gpt_mobile
GPT Mobile is a chat assistant for Android that allows users to chat with multiple models at once. It supports various platforms such as OpenAI GPT, Anthropic Claude, and Google Gemini. Users can customize temperature, top p (Nucleus sampling), and system prompt. The app features local chat history, Material You style UI, dark mode support, and per app language setting for Android 13+. It is built using 100% Kotlin, Jetpack Compose, and follows a modern app architecture for Android developers.
hey
Hey is a free CLI-based AI assistant powered by LLMs, allowing users to connect Hey to different LLM services. It provides commands for quick usage, customization options, and integration with code editors. Hey was created for a hackathon and is licensed under the MIT License.
jiwu-mall-chat-tauri
Jiwu Chat Tauri APP is a desktop chat application based on Nuxt3 + Tauri + Element Plus framework. It provides a beautiful user interface with integrated chat and social functions. It also supports AI shopping chat and global dark mode. Users can engage in real-time chat, share updates, and interact with AI customer service through this application.
For similar jobs
google.aip.dev
API Improvement Proposals (AIPs) are design documents that provide high-level, concise documentation for API development at Google. The goal of AIPs is to serve as the source of truth for API-related documentation and to facilitate discussion and consensus among API teams. AIPs are similar to Python's enhancement proposals (PEPs) and are organized into different areas within Google to accommodate historical differences in customs, styles, and guidance.
kong
Kong, or Kong API Gateway, is a cloud-native, platform-agnostic, scalable API Gateway distinguished for its high performance and extensibility via plugins. It also provides advanced AI capabilities with multi-LLM support. By providing functionality for proxying, routing, load balancing, health checking, authentication (and more), Kong serves as the central layer for orchestrating microservices or conventional API traffic with ease. Kong runs natively on Kubernetes thanks to its official Kubernetes Ingress Controller.
speakeasy
Speakeasy is a tool that helps developers create production-quality SDKs, Terraform providers, documentation, and more from OpenAPI specifications. It supports a wide range of languages, including Go, Python, TypeScript, Java, and C#, and provides features such as automatic maintenance, type safety, and fault tolerance. Speakeasy also integrates with popular package managers like npm, PyPI, Maven, and Terraform Registry for easy distribution.
apicat
ApiCat is an API documentation management tool that is fully compatible with the OpenAPI specification. With ApiCat, you can freely and efficiently manage your APIs. It integrates the capabilities of LLM, which not only helps you automatically generate API documentation and data models but also creates corresponding test cases based on the API content. Using ApiCat, you can quickly accomplish anything outside of coding, allowing you to focus your energy on the code itself.
aiohttp-pydantic
Aiohttp pydantic is an aiohttp view to easily parse and validate requests. You define using function annotations what your methods for handling HTTP verbs expect, and Aiohttp pydantic parses the HTTP request for you, validates the data, and injects the parameters you want. It provides features like query string, request body, URL path, and HTTP headers validation, as well as Open API Specification generation.
ain
Ain is a terminal HTTP API client designed for scripting input and processing output via pipes. It allows flexible organization of APIs using files and folders, supports shell-scripts and executables for common tasks, handles url-encoding, and enables sharing the resulting curl, wget, or httpie command-line. Users can put things that change in environment variables or .env-files, and pipe the API output for further processing. Ain targets users who work with many APIs using a simple file format and uses curl, wget, or httpie to make the actual calls.
OllamaKit
OllamaKit is a Swift library designed to simplify interactions with the Ollama API. It handles network communication and data processing, offering an efficient interface for Swift applications to communicate with the Ollama API. The library is optimized for use within Ollamac, a macOS app for interacting with Ollama models.
ollama4j
Ollama4j is a Java library that serves as a wrapper or binding for the Ollama server. It facilitates communication with the Ollama server and provides models for deployment. The tool requires Java 11 or higher and can be installed locally or via Docker. Users can integrate Ollama4j into Maven projects by adding the specified dependency. The tool offers API specifications and supports various development tasks such as building, running unit tests, and integration tests. Releases are automated through GitHub Actions CI workflow. Areas of improvement include adhering to Java naming conventions, updating deprecated code, implementing logging, using lombok, and enhancing request body creation. Contributions to the project are encouraged, whether reporting bugs, suggesting enhancements, or contributing code.
