Skip to content

Alternative Start Methods

Alternative Start Methods provide flexible ways to trigger and start your automated processes beyond the traditional time-based scheduler. Whether through user-friendly web forms, powerful API integrations, or conversational chatbots, Heptora supports multiple entry points for process execution.

Heptora supports multiple ways to initiate process execution:

  • Web Forms: User-friendly interface for non-technical users
  • REST API: Programmatic access for integration with other systems
  • Chatbot Integration: Conversational interface via Slack, Teams, Telegram, and web chat
  • Manual Trigger: Direct execution from Heptora interface
  • Scheduler: Time-based execution (see Process Scheduler guide)

Web forms provide an intuitive, no-code interface for users to start processes with custom parameters.

Create forms tailored to your process requirements:

Form: Order Processing Request
Fields:
- Order ID (text, required)
- Customer Name (text, required)
- Priority (dropdown: Low, Medium, High)
- Special Instructions (textarea, optional)
- Email notification (checkbox)

Features:

  • Drag-and-drop form builder
  • Multiple field types (text, email, number, date, dropdown, checkbox, textarea)
  • Conditional fields based on user input
  • File uploads for attachments
  • Auto-populated values from user profile

Ensure data quality before process execution:

Validations:
Order ID:
- Required
- Format: Must start with "ORD-"
- Length: 10-15 characters
Email:
- Required
- Must be valid email format
Priority:
- Required
- Must be one of: Low, Medium, High

Validation Types:

  • Required field validation
  • Format validation (regex patterns)
  • Length constraints
  • Dropdown value validation
  • Email/phone format validation
  • Number range validation
  • Custom validation rules

Control who can start which processes:

Form: Sensitive Report Generation
Access Control:
Can start: Managers, Executives
Cannot start: Regular users
Requires approval: Yes
Approvers: Department heads
Timeout: 4 hours

Permission Levels:

  • Public (anyone with link)
  • Authenticated users (Heptora account holders)
  • Specific roles (Manager, Finance, HR, etc.)
  • Specific users (individual accounts)
  • Approval-based (requires review before execution)
Process: Monthly Report Submission
Form Title: Submit Monthly Metrics
Description: Provide monthly KPI data
Fields:
1. Month Selection
Type: Date picker
Default: Current month
Required: Yes
2. Revenue
Type: Number
Prefix: $
Decimal places: 2
Required: Yes
3. Department
Type: Dropdown
Options: Sales, Marketing, Operations, Finance
Required: Yes
4. Additional Notes
Type: Textarea
Max characters: 500
Required: No
5. Attach supporting document
Type: File upload
Allowed formats: PDF, Excel, Word
Required: No
Permissions:
Can submit: Department Managers
Success message: "Report submitted successfully. You will receive confirmation within 30 minutes."
Confirmation email: Yes

RESTful API endpoints enable programmatic process execution from any external application.

Each process gets a unique API endpoint:

POST /api/v1/processes/order-processing/execute
POST /api/v1/processes/report-generation/execute
POST /api/v1/processes/data-sync/execute

Endpoint structure:

  • Base URL: https://api.heptora.com/v1
  • Path: /processes/{process-id}/execute
  • Method: POST
  • Response: JSON with execution ID and status

Secure your API endpoints:

Authentication Methods:
1. API Keys:
Format: Bearer token
Location: Authorization header
Example: Authorization: Bearer abc123xyz789
2. OAuth 2.0:
Grant type: Client credentials
Scope: process:execute
3. JWT:
Payload: User ID, permissions, expiration
Signature: HS256 or RS256

API Key Management:

  • Generate unique keys per integration
  • Set expiration dates
  • Revoke compromised keys
  • Monitor key usage
  • Rotate keys regularly

Pass process-specific variables through the API:

{
"processId": "order-processing",
"parameters": {
"orderId": "ORD-2024-001",
"customerId": "CUST-5432",
"amount": 1500.00,
"priority": "high",
"metadata": {
"source": "mobile-app",
"region": "US-West"
}
},
"notifyEmail": "user@company.com",
"timeout": 300
}

Parameter types supported:

  • Strings, numbers, booleans
  • Arrays and objects (nested)
  • Date/time formats (ISO 8601)
  • File references (URLs or base64)
  • Metadata and custom fields

Receive asynchronous notifications when processes complete:

Webhook Configuration:
URL: https://myapp.com/webhooks/process-complete
Events:
- process.completed
- process.failed
- process.cancelled
Retry policy:
Max retries: 5
Backoff: Exponential (1s, 2s, 4s, 8s, 16s)

Webhook payload example:

{
"eventType": "process.completed",
"executionId": "exec-12345",
"processId": "order-processing",
"status": "success",
"startTime": "2024-11-03T10:30:00Z",
"endTime": "2024-11-03T10:35:20Z",
"result": {
"orderId": "ORD-2024-001",
"status": "processed",
"confirmationNumber": "CONF-98765"
},
"errors": null,
"timestamp": "2024-11-03T10:35:20Z"
}

Swagger/OpenAPI documentation auto-generated:

Documentation Access:
URL: https://api.heptora.com/docs
Format: OpenAPI 3.0
Features:
- Interactive API explorer
- Try-it-out functionality
- Example requests/responses
- Error code reference
- Authentication guide

Generated documentation includes:

  • All available endpoints
  • Parameter descriptions
  • Response schemas
  • Authentication requirements
  • Rate limits
  • Code examples (cURL, Python, Node.js, etc.)

Execute process via cURL:

Ventana de terminal
curl -X POST https://api.heptora.com/v1/processes/order-processing/execute \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"orderId": "ORD-2024-001",
"priority": "high"
}
}'

Python integration:

import requests
url = "https://api.heptora.com/v1/processes/order-processing/execute"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
payload = {
"parameters": {
"orderId": "ORD-2024-001",
"priority": "high"
}
}
response = requests.post(url, json=payload, headers=headers)
execution_id = response.json()["executionId"]
print(f"Process started: {execution_id}")

Start processes through natural language commands in your team’s communication platform.

Chat platforms integration:

  • Slack: Native Heptora app
  • Microsoft Teams: Connector app
  • Telegram: Bot integration
  • Web Chat: Embedded widget

Initiate processes using natural language:

User: @heptora process order ORD-2024-001 as high priority
Heptora: Processing order ORD-2024-001 as high priority
Confirmation needed. Type 'confirm' to proceed.
User: confirm
Heptora: Order processing started (ID: exec-98765)
You'll receive updates as the process progresses.

Conversation features:

  • Context-aware responses
  • Multi-step conversations
  • Clarification requests
  • Status updates during execution
  • Result summaries upon completion
Setup:
1. Install Heptora app from Slack App Directory
2. Add to desired channels
3. Create slash commands for frequent processes
Usage:
/heptora process order ORD-2024-001
/heptora generate report monthly
/heptora sync data erp

Slack features:

  • Slash commands for quick access
  • Interactive buttons for confirmation
  • Rich message formatting
  • Threaded responses
  • File uploads support
Setup:
1. Add Heptora connector to Teams
2. Configure process cards
3. Set up approval workflows
Usage:
@Heptora process order ORD-2024-001
View process status in Teams
Receive notifications in Teams channels

Teams features:

  • Adaptive cards for rich UI
  • Channel-based workflows
  • Approval flows
  • Status updates in timeline
  • File attachments
Setup:
1. Start conversation with HeptoraBOT
2. Authenticate with Heptora account
3. Enable specific processes
Usage:
/process_order ORD-2024-001
/generate_report monthly
/check_status exec-12345

Natural language processing for user-friendly commands:

Examples:
"process order ORD-2024-001"
"generate this month's sales report"
"sync data with erp system"
"send daily backup"
"check process status exec-98765"
"show me recent executions"

Command variations supported:

  • Different phrasings recognized
  • Typo tolerance
  • Abbreviations accepted
  • Context understanding

Ensure intentional execution:

Confirmation workflow:
1. User sends command
2. Heptora shows process details and parameters
3. User confirms or cancels
4. Execution begins (if confirmed)
5. Real-time status updates sent to user
Timeouts:
- Confirmation: 5 minutes
- If no response: Execution cancelled

Validation checks:

  • Parameter validation
  • Permission verification
  • Process availability check
  • Resource availability

Receive real-time updates about process execution:

Notifications:
Started:
Message: Process started at 10:30 AM
Icon: Started status icon
Progress:
Message: Step 2/5 completed (40%)
Frequency: Every 30 seconds or milestone
Completed:
Message: Order processed successfully
Details: Confirmation number, summary
Time taken: 5 minutes 30 seconds
Failed:
Message: Process failed at step 3
Error details: What went wrong
Action: Retry option or manual intervention

Quick reference for choosing the right start method:

FeatureWeb FormREST APIChatbot
User TypeNon-technicalDevelopersAnyone
Setup ComplexityLowMediumMedium
Real-time FeedbackYesVia webhookYes
Batch ProcessingLimitedYesNo
Requires AuthenticationYesYesYes
Mobile FriendlyYesN/AYes (app)
Approval WorkflowsYesOptionalYes
File UploadsYesYesLimited
Response FormatWeb UIJSONChat message
Best ForManual triggersSystem integrationTeam collaboration
Scenario: IT Support Ticket Submission
- Employee fills web form with issue description
- Form validates required fields
- Process starts immediately
- Employee receives ticket number
- Real-time tracking in form
- Updates sent to employee email
Scenario: Order Processing from Shopify
- Shopify webhook triggers API call
- Order data passed as parameters
- Heptora process fulfills order
- Updates inventory
- Webhook callback confirms completion
- Shopify order status updated automatically
Scenario: Slack Workflow for Report Generation
- Manager: "@heptora generate sales report"
- Heptora asks: "For which period? (this month/last month/custom)"
- Manager: "this month"
- Heptora asks: "Include regional breakdown?"
- Manager: "yes, for EMEA region"
- Heptora confirms: "Generating report... (5 min estimated)"
- Report generated and shared in Slack thread

Do:

  • Keep forms simple (5-7 fields maximum)
  • Use clear, descriptive labels
  • Provide helpful placeholder text
  • Show field validation errors inline
  • Confirm submission success visibly

Don’t:

  • Require fields unnecessarily
  • Create overly complex forms
  • Confuse users with technical jargon
  • Skip confirmation of submission
  • Hide important error messages

Do:

  • Implement proper error handling
  • Use exponential backoff for retries
  • Log all API calls for debugging
  • Validate webhook signatures
  • Monitor API rate limits
  • Document your integration

Don’t:

  • Hardcode API keys in code
  • Ignore webhook failures silently
  • Make synchronous calls without timeout
  • Send sensitive data in URLs
  • Skip error handling
  • Expose API keys in client-side code

Do:

  • Use simple, verb-noun structure
  • Provide helpful command suggestions
  • Ask for confirmation on critical operations
  • Give clear status updates
  • Keep responses concise

Don’t:

  • Require complex syntax
  • Forget to confirm important actions
  • Leave users without feedback
  • Send overly long messages
  • Ignore user requests

While Alternative Start Methods provide on-demand execution, the Scheduler handles time-based automation. Combine both:

Example - Combined approach:
1. Schedule: Daily report generation at 09:00
2. Web Form: Allow manual report generation anytime
3. API: Enable external systems to request reports
4. Chatbot: Quick access from Slack for urgent needs

See Process Scheduler for comprehensive scheduling documentation.

After starting a process, monitor its execution:

  • View real-time execution status
  • Check logs and error messages
  • Track execution duration
  • Compare against historical performance
  • Set up alerts for failures

See Process Monitoring for details (coming soon).

Form not accepting submissions:

  1. Verify all required fields are filled
  2. Check field validation rules in browser console
  3. Ensure process is not paused
  4. Test with different browser/device
  5. Contact support with form ID

API calls returning 401 Unauthorized:

  1. Verify API key is valid and not expired
  2. Check Authorization header format
  3. Ensure key has correct permissions
  4. Generate new key if needed
  5. Check for IP whitelist restrictions

Chatbot not responding:

  1. Verify bot is added to channel
  2. Use correct command format
  3. Check bot permissions in channel
  4. Restart bot connection
  5. Verify user role has process access

Webhook not receiving notifications:

  1. Verify webhook URL is publicly accessible
  2. Check firewall/security group settings
  3. Review webhook delivery logs
  4. Verify JSON payload is being parsed correctly
  5. Test webhook with manual trigger

For issues not resolved by this guide:

When contacting support, include:

  • Process name and ID
  • The method used (form/API/chatbot)
  • Exact error message or unexpected behavior
  • Steps to reproduce the issue
  • Any relevant logs or screenshots

Can I use multiple start methods for one process? Yes. A single process can be triggered via web form, API, chatbot, scheduler, or manual trigger simultaneously.

Are there rate limits on API calls? Yes. Standard rate limits are 100 requests/minute per API key. Contact sales for higher limits.

Can I customize the chatbot responses? Yes. Customize response messages, confirmation text, and notification templates.

Do web form submissions require authentication? Yes, unless you make the form public. Public forms can be accessed via shared link.

Can I schedule processes started via API? No, API calls execute immediately. Use the Scheduler for time-based execution.