Overview
The node interacts with the MinistryPlatform API, a church management system, to perform data operations on various resources such as tables and stored procedures. Specifically, for the Table - List operation, it retrieves multiple records from a specified MinistryPlatform table with support for filtering, sorting, grouping, pagination, and other query customizations.
This node is beneficial when you want to fetch bulk data from MinistryPlatform tables like Contacts, Events, Donations, Volunteers, etc., applying complex queries without writing raw API calls yourself. For example, you could list all contacts created after a certain date, or retrieve distinct event records ordered by their start date.
Properties
| Name | Meaning |
|---|---|
| Table Name | The name of the MinistryPlatform table to query. Common examples include Contacts, Participants, Events, Households, Groups, Donations, Volunteers, etc. |
| Additional Fields | A collection of optional parameters to customize the query: • Distinct: Return only distinct records (true/false). • Filter: MS SQL WHERE clause syntax to filter records. • Global Filter ID: Apply a global filter by its ID. • Group By: Field name to group results. • Having: HAVING clause for grouped results. • Order By: Field(s) to order results by, e.g., "Display_Name asc". • Search: Text search across searchable fields. • Select: Comma-separated list of fields to return. • Skip: Number of records to skip (for pagination). • Top: Maximum number of records to return. • User ID: User context ID for queries sensitive to user permissions. |
Output
- The output is an array of JSON objects representing the records retrieved from the specified MinistryPlatform table.
- Each object contains key-value pairs corresponding to the fields selected or returned by the query.
- There is no binary data output for this operation.
- If errors occur and "Continue On Fail" is enabled, error messages are returned in the output JSON for the respective input item.
Example output snippet:
[
{
"Contact_ID": 1234,
"First_Name": "John",
"Last_Name": "Doe",
"Email_Address": "john.doe@example.com"
},
{
"Contact_ID": 5678,
"First_Name": "Jane",
"Last_Name": "Smith",
"Email_Address": "jane.smith@example.com"
}
]
Dependencies
- Requires an active MinistryPlatform API credential configured in n8n with appropriate permissions.
- The node uses HTTP requests to communicate with the MinistryPlatform REST API endpoints.
- No additional external dependencies beyond the MinistryPlatform API and n8n's standard environment.
Troubleshooting
- Invalid JSON format in parameters: When providing JSON strings (e.g., for records or parameters), ensure they are valid JSON arrays or objects. Malformed JSON will cause errors.
- Records must be an array: For create or update operations, the "records" property must be a JSON array; otherwise, an error is thrown.
- API authentication errors: Ensure the MinistryPlatform API credentials are correctly set up and have sufficient permissions.
- Filtering syntax errors: The "Filter" field expects valid MS SQL WHERE clause syntax. Incorrect syntax may result in API errors or empty results.
- Empty or missing Table Name: The "Table Name" property is required. Omitting it will cause the request to fail.
- Pagination issues: Using "Skip" and "Top" incorrectly may lead to unexpected results or incomplete data sets.
Links and References
- MinistryPlatform API Documentation (official API docs for reference on filters, parameters, and endpoints)
- MS SQL WHERE Clause Syntax (for constructing filter expressions)
- n8n Documentation on Creating Custom Nodes