Hook up any SQL or NoSQL database, file storage system, or external service and DreamFactory instantly generates a flexible, comprehensive, and fully documented REST API endpoint that’s ready to use. Focus on building your applications, not hand-coding APIs for every new development project.
Deep SQL support
DreamFactory provides the most comprehensive REST API for SQL databases. Features include automatically generated REST endpoints for data, schema, functions, stored procedures, and API parameters for complex filters, pagination, sorting, related table joins, virtual foreign keys, calculations, aggregation, rollback, commit, and more.
Create virtual foreign key relationships between tables in the same database or between completely different databases without altering your schema or writing any code. Create, read, update, or delete objects and related objects with a single API call.
Turn SOAP into REST
DreamFactory instantly turns any WSDL into a live, fully documented REST API. DreamFactory automatically converts the JSON request into SOAP, calls the legacy SOAP service, and then the SOAP response is converted back to JSON for the client application. DreamFactory also generates Live API Docs from the WSDL for testing.
Rock solid security
Securing APIs is difficult and time consuming. DreamFactory makes it easy with User Management, SSO Authentication, JSON Web Tokens (JWT), CORS, Role-Based Access Control on API endpoints, record-level permissions on data, OAuth, LDAP, Active Directory Integration, and more.
Live API docs
DreamFactory automatically generates interactive API documentation for every connected data source. DreamFactory uses Swagger 2.0, the most popular open source project for API documentation. Live documentation allows you to try out different parameters and see the request and response before building an application.
The admin console makes it easy to centrally manage the entire DreamFactory Platform, including your catalog of REST APIs, applications, scripts, security settings, users, roles, and more. All of the administrative capabilities are also exposed as a REST API in case you need to automate repetitive tasks.
DreamFactory is a free, Apache 2 open source project that runs on Linux, Windows, and Mac OS X. DreamFactory is scalable, stateless, and portable. You can run it on private, public, or hybrid infrastructure and easily move your apps between servers. DreamFactory is easy to deploy with Docker, Kubernetes, Bitnami, or directly from GitHub source.
Role based service access
DreamFactory enables you to provision multiple instances of the open source product on different servers. Instances can also be moved between servers as needed. This capability allows administrators to set up different servers for development, testing, and production, or for different business units.
Backup and restore
Easily back up and restore your DreamFactory instances. This feature provides an additional level of enterprise-grade governance by ensuring that your entire application stack — all applications, APIs, scripts, users, roles, data, and configuration settings — are backed up and secure.
DreamFactory makes it easy to migrate your applications between development, test, and production environments. You can save a package file that stores all metadata settings for a specific application in JSON format. DreamFactory allows you to push package files between instances using either the REST API or the Admin Console for easy deployment.
DreamFactory makes it easy to centrally manage API limits across your entire organization. You can specify API limits at the cluster, instance, and user level. Each DreamFactory instance is governed by API limits and automatically throttles API calls at runtime. API limits help protect against malicious attacks and manage costs at the critical API layer of your business.
Logging and reporting
DreamFactory comes with the popular ELK stack (Elastic, Logstash, and Kibana) for logging and reporting on API traffic. Kibana provides flexible reporting on all API calls with pre-configured dashboards segmented by server cluster, instance, application, user, API endpoint, and more.
Any significant development project involves teams of developers building, testing, and maintaining applications across development, test, and production environments. DreamFactory makes it easy to spin up new DreamFactory instances on the fly and administer developer access to each instance.
Developers can sign up with secure credentials and then create and launch their own DreamFactory instances from the self-service Developer Dashboard. Developers can also invite other team members to their instances to collaborate on development projects.