The REST api exposes MinistryPlatform data and features using a REST-ful interface (HTTP verbs and URL-based resources).


  • Rest-ful syntax and HTTP verbs
  • Secured access to the database (using OAuth 2.0)
  • Simple query mechanism mirroring the platform
  • Standard, easy to consume results
  • Swagger UI for testing and learning

REST-ful syntax and HTTP verbs

The REST api is exposed at the root of the API Url. You can find this url by adding "/ministryplatformapi/" after your specific domain:
  • Use to read records
  • /tables – Almost all database tables (must have a Page record)
  • /tables/{table} — records for a specific table
  • /procs – API-specific Stored Procedures
  • Used to create records or attach files
  • Can create an array of records in a single call
  • Can create parent/dependent records in a single call
  • Used to edit/update existing record
  • Can also create a new parent record if necessary

Secured Access to the Database

The REST api uses OAuth 2.0 for Authorization to the database. Access to specific records and procedures is determined by Security Roles. Access also considers Global Filters

See OAuth 2.0

Simple Query Mechanism

The REST api provides a simple query mechanism based on sql queries, mirroring the way data is structured in the platform. Much of your knowledge of Advanced Search, Pages, and Views will directly apply when querying the api.

See Also

Standard, Easy to Consume Results

The REST api returns Javascript Simple Object Notation (JSON) by default for rapid development, ease of use and compact serialization. This makes the data immediately useful in javascript, since JSON and javascript are closely related languages.

Swagger UI for Testing and Learning

You can immediately start interacting with the REST api using the built-in Swagger UI. Swagger exposes all of the REST end-points using an intuitive form-based User Interface.

See Swagger UI

Security Roles and Permissions

The REST api can be accessed using a User login, in which case permissions are the User's. See User Permissions.

The api can also be accessed by an API Client which inherits the permissions of a User designated in the API Client record.

See Also: