From DreamFactory
Jump to: navigation, search


DreamFactory is an open source REST API middleware platform that provides RESTful services for building mobile, web, and IoT applications.

DreamFactory automatically generates a comprehensive, customizable, and secure REST API for backend data resources, including SQL, NoSQL, file storage, email, and push notifications. You can also securely proxy to any remote REST or SOAP service and run your own custom APIs with DreamFactory.

Other important features include server-side scripting with V8 Javascript, Node.js, PHP, and Python, single sign-on, user management, LDAP / Active Directory / OAuth integration, role-based access control on tables and records, interactive API docs, and sample applications to quickly learn by example.

DreamFactory is “runtime” software. Your application makes API calls to DreamFactory and DreamFactory returns JSON (or XML) at runtime back to your application over SSL.

The platform runs on Ubuntu, Red Hat, CentOS, and Debian Linux, Windows, and Mac OS X. Like any LAMP stack, DreamFactory scales horizontally and vertically based on the number and size of servers. Learn more about installation options here.




Automatically Generated REST APIs

DreamFactory automatically generates a comprehensive REST API for SQL, NoSQL, file storage, email, and push notifications. You can also use DreamFactory to securely call any remote web service, including your own custom-built REST APIs and SOAP services. DreamFactory securely stores the credentials of back-end data sources and exposes these data sources as a standard REST interface. The REST API includes live API documentation and example applications for various development environments.

Server-Side Scripting

Any non-trivial application requires server-side logic. DreamFactory provides server-side scripting with the V8 Javascript Engine, Node.js, PHP, and Python. DreamFactory makes it easy to write server-side scripts and attach your scripts to any API request and response event. DreamFactory also provides the flexibility to use server-side scripts to implement your own custom API endpoints.

Security Controls

DreamFactory’s user management system provides runtime security on all API calls and server-side scripts. The user management system includes an administrative application to manage end users, role-based access control to every API endpoint API (including table-level and record-level access to databases), OAuth, LDAP, and Active Directory integration for authentication and authorization. Under the hood, DreamFactory handles secure password hashing, authentication, and session handling for you with secure API keys and JSON Web Tokens (JWT).


DreamFactory helps development teams in a number of ways, summarized here.

Front-end Developers

  • Focus on front-end development rather than working on (or waiting on) server-side software
  • Connect to new data sources in minutes with just a few clicks
  • Access multiple data sources with RESTful ease and automatic security
  • Faster, less costly projects with instant, robust REST APIs

Back-end / API Developers

  • Automatically generate and document secure, reliable, and reusable REST APIs
  • Customize auto-generated APIs with pre- and post-processing scripting logic
  • Integrate with existing security controls like OAuth, LDAP, and Active Directory so you don’t have to re-implement and test for each API
  • Easily move applications between clouds or between your cloud and data center

Enterprise Architects

  • Govern security with your own data access platform running in the cloud or on premises
  • Accelerate innovation with secure, scalable, reusable REST APIs to enterprise data sources
  • Enable a standard, unified API abstraction layer for modern apps that need to connect to legacy data sources that can't be readily changed
  • Improve application reliability and security enterprise-wide with managed REST services

Try DreamFactory Out

To install the DreamFactory open source package on a server or laptop, head on over to installation for instructions.