Description
NextFlow App Integration Node
This package provides an integration node for N8N to enable workflow monitoring and management via API endpoints.
Features
MobileApp Node
- Get Data: Unified endpoint for retrieving workflow or execution data
- Data types: workflows/executions
- For workflows:
- Option to include or exclude disabled workflows
- Provides workflow details including activation status and creation time
- Manual trigger node detection: Automatically detects if a workflow contains manual trigger nodes
- Detected node types:
n8n-nodes-base.manualTrigger– Manual Trigger noden8n-nodes-base.webhook– Webhook related nodes (including all Webhook variants)n8n-nodes-base.formTrigger– Form trigger nodesn8n-nodes-base.chatTrigger– Chat trigger nodesn8n-nodes-base.executeWorkflowTrigger– Execute Workflow Trigger node (special handling: returns node info but disables start/stop)n8n-nodes-base.schedule– Schedule trigger noden8n-nodes-base.scheduleTrigger– Schedule trigger noden8n-nodes-base.cron– Cron trigger noden8n-nodes-base.interval– Interval trigger noden8n-nodes-base.timer– Timer trigger node@n8n/n8n-nodes-langchain.chatTrigger– Langchain chat trigger nodes
- Returns true when: The workflow contains any of the above node types, the
includeManualNodesfield returnstrue - Returns false when: The workflow does not contain any of the above node types, the
includeManualNodesfield returnsfalse - Manual trigger node details: When
includeManualNodesis true, returns detailed information about all manual trigger nodes, including:- Node ID
- Node name
- Node type
- Parameter configuration
- Position information
- Purpose: Allows the mobile interface to categorize workflows for display based on this field and show manual trigger nodes for user interaction
- Detected node types:
- For executions:
- Filter by workflow ID
- Filter by status (all/success/error/waiting)
- Limit result count
- Set Workflow Status: Enable or disable specified workflows
- Standardized API responses: Standardized data structures designed for integration
- Error handling: Provides error information when internal API access is unavailable
Installation
Method 1: Using N8N_CUSTOM_EXTENSIONS environment variable
- Clone or download this repository to a local directory
- Build the project:
cd n8n-nodes-mobile npm install npm run build - Set the environment variable when starting N8N:
N8N_CUSTOM_EXTENSIONS=/path/to/n8n-nodes-mobile n8n start
Method 2: Using npm link
- Clone this repository
- Run
npm installto install dependencies - Run
npm run buildto build the node - Link the node to your n8n installation:
- Global installation:
npm link - Local n8n:
cd path/to/n8n && npm link n8n-nodes-mobile
- Global installation:
Method 3: Install from npm
- Install the package:
npm install n8n-nodes-mobile
- Restart n8n to load the new node
Usage Guide
1. Configure API Credentials
Before using the node, you need to configure n8n API credentials:
- In the n8n interface, go to the "Credentials" page
- Click "Create New Credential"
- Select "n8n API" type
- Enter the API Key and Base URL for your n8n instance (optional, defaults to http://localhost:5678)
- Note: The Base URL should only contain the root address of your n8n instance, for example: http://localhost:5678
- Do not include the /api/v1 part, the system will add it automatically
- Select this credential in the MobileApp node
2. Create Webhook Workflows
To implement the mobile API, you need to create webhook workflows. Here are the recommended workflow setups:
GET /data Endpoint
Used for retrieving workflow or execution data:
- Webhook Node:
- Method: GET
- Path: data
- Query Parameters:
type(required, string): "workflows" or "executions"- For workflows:
includeDisabled(optional, boolean): Whether to include disabled workflowsworkflowId(optional, string): If provided, only return complete node data for this specific workflow
- For executions:
workflowId(required, string): The workflow ID to get execution records for
Example Workflow
See Use-reference-demo.json for a complete example workflow demonstrating mobile app integration.
3. API Call Examples
Get Data Examples
Get all workflows:
fetch('https://your-n8n-instance.webhook.site/data?type=workflows&includeDisabled=true')
.then(response => response.json())
.then(data => {
if (data.success) {
console.log('Workflow list:', data.data);
console.log('Total:', data.total);
} else {
console.error('Failed to get data:', data.error);
}
});
Get complete node data for a specific workflow:
fetch('https://your-n8n-instance.webhook.site/data?type=workflows&workflowId=wErEn9VajPinRQYB')
.then(response => response.json())
.then(data => {
if (data.success) {
console.log('Workflow details:', data.data[0]);
console.log('Node data:', data.data[0].nodes);
console.log('Connections:', data.data[0].connections);
} else {
console.error('Failed to get data:', data.error);
}
});
Get execution records:
fetch('https://your-n8n-instance.webhook.site/data?type=executions&workflowId=wErEn9VajPinRQYB&status=success&limit=10')
.then(response => response.json())
.then(data => {
if (data.success) {
console.log('Execution records:', data.data);
console.log('Total:', data.total);
} else {
console.error('Failed to get data:', data.error);
}
});
Set Workflow Status
// POST request example
fetch('https://your-n8n-instance.webhook.site/workflows/set', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
operationType: 'setStatus',
workflowId: 'wErEn9VajPinRQYB', // Workflow ID
status: false // Disable workflow
})
})
.then(response => response.json())
.then(data => {
if (data.success) {
console.log('Operation successful:', data.message);
console.log('Updated workflow:', data.workflow);
} else {
console.error('Operation failed:', data.error);
}
});
Development
Build
npm run build
Development Mode
npm run dev
Linting
npm run lint
Troubleshooting
Node not appearing in N8N
- Check if build was successful:
npm run build - Verify environment variable setup: Ensure
N8N_CUSTOM_EXTENSIONSpath is correct - Check N8N startup logs to confirm custom extensions loaded successfully
- Verify that nodeTypes configuration in package.json correctly points to compiled files
Security Considerations
- In production environments, add authentication to webhook endpoints
- Use HTTPS to ensure secure data transmission
- For high security requirements, implement IP whitelisting or API key verification
- Monitor API usage to prevent abuse
License
MIT License – see LICENSE file for details.
Author
- hundred98 – hundred98@163.com
Repository
📱 WeChat Support
For any questions or suggestions, feel free to follow my WeChat Official Account for technical support:

Scan QR Code to Follow