API Reference

Prerequisites

Before beginning your integration, ensure you have all required components and access.

⚠️
IP Whitelisting Required: Your IP address must be whitelisted before you can access the Novus API. Contact your API administrator to request whitelisting.

Required Access

Prerequisites Checklist
✅ Make.com account with HTTP module access
✅ Novus API credentials (Username and Password)
✅ Whitelisted IP address for API access
✅ Access to QA and/or Production environments
✅ Understanding of JSON and API authentication

Environment Information

Environment Purpose Base URL Pattern
QA Development & Testing https://[CLIENT_URL]/[API_PATH]/WAEPANYL
Production Live Operations https://[CLIENT_URL]/[API_PATH]

Integration Overview

The Novus API integration follows a two-step authentication process with specific considerations for Make.com workflows.

⏱️
Token Expiration: Authentication tokens expire after 5 minutes. This is critical for Make.com workflows that process multiple members or run for extended periods.

Workflow Architecture

Basic Flow
1. Request Authentication Token
   ├── POST /WAEPANYL/Token
   ├── Headers: UserName, Password
   └── Response: Token (expires in 5 minutes)

2. Retrieve Member Information  
   ├── POST /WAEPANYL/GetMemberInfo
   ├── Headers: UserName, Password, Token
   ├── Body: Member identification data
   └── Response: Member details and policies

3. Process Response Data
   ├── Parse JSON response
   ├── Handle empty responses
   └── Extract required information

HTTP Module Selection

The Novus API requires specific Make.com HTTP module configuration due to its custom authentication method.

🎯
Important: You must use the generic "Make a request" action. The specialized authentication modules (Basic Auth, API Key, OAuth) are not compatible with Novus API's custom header authentication.

Correct Module Selection

HTTP Action Compatible Reason
Make a request ✅ YES Allows custom header configuration
Make a Basic Auth request ❌ NO Uses HTTP Basic Auth (not Novus method)
Make an API Key Auth request ❌ NO Different authentication pattern
Make an OAuth 2.0 request ❌ NO Novus doesn't use OAuth 2.0

Token Request Setup

Configure your first HTTP module to request an authentication token from the Novus API.

Module Configuration

HTTP MODULE Token Request Configuration

Basic Settings

Setting Value Notes
URL https://[CLIENT_URL]/[API_PATH]/WAEPANYL/Token Same for QA and Production
Method POST Required
Body type Raw Leave body empty
Content type application/json Standard JSON content type

Required Headers

Add the following headers to your HTTP module:

Header Configuration
Header 1:
Name: UserName
Value: [YOUR_USERNAME]

Header 2:
Name: Password  
Value: [YOUR_PASSWORD]
💡
Tip: Store credentials in Make.com Data Stores or environment variables instead of hardcoding them in your scenario.

Testing Your Configuration

  1. Save your HTTP module configuration
  2. Run the module manually to test the connection
  3. Verify you receive a token in the response
  4. Check that the token is properly formatted (JWT-style)

Expected Response

Successful Token Response
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "expires_in": 300,
  "token_type": "Bearer"
}

Member Info Request Setup

Configure your second HTTP module to retrieve member information using the authentication token.

⚠️
Production Difference: The production GetMemberInfo endpoint does not include /WAEPANYL/ in the path.

Module Configuration

HTTP MODULE Member Info Request Configuration

Environment-Specific URLs

Environment URL
QA https://[CLIENT_URL]/[API_PATH]/WAEPANYL/GetMemberInfo
Production https://[CLIENT_URL]/[API_PATH]/GetMemberInfo

Other Settings

Setting Value
Method POST
Body type Raw
Content type application/json

Required Headers

Include all three headers for member information requests:

Member Request Headers
Header 1:
Name: UserName
Value: [YOUR_USERNAME]

Header 2:
Name: Password
Value: [YOUR_PASSWORD]

Header 3:
Name: Token
Value: {{token_from_previous_module}}
🔗
Token Mapping: Map the token value from your previous HTTP module's response. In Make.com, this will look like {{1.data.token}} or similar.

Request Body Format

JSON Request Body
{
  "MembershipID": "{{membershipId}}",
  "MemberSSN": "{{memberSSN}}",
  "DateOfBirth": "{{dateOfBirth}}",
  "FirstName": "{{firstName}}",
  "LastName": "{{lastName}}"
}

Field Requirements

Field Format Example Notes
MembershipID String "123456" Exact member ID
MemberSSN String "123-45-6789" Include dashes
DateOfBirth YYYY-MM-DD "1990-01-15" ISO date format
FirstName String "Jane" Exact spelling
LastName String "Doe" Exact spelling

Response Parsing

Configure JSON parsing and response handling for the API responses.

Add JSON Parse Modules

  1. After Token Request: Add a "JSON > Parse JSON" module to extract the token
  2. After Member Request: Add another "JSON > Parse JSON" module to process member data

Response Handling Strategies

Processing Successful Responses

When the API returns member data, you'll receive an array of covered persons:

Typical Success Response Structure
[
  {
    "coveredPersonType": "Member",
    "demographics": { /* member details */ },
    "Products": [ /* policy information */ ]
  },
  {
    "coveredPersonType": "Spouse", 
    "demographics": null,
    "Products": null
  }
]

Make.com Processing

  1. Use Iterator module to process each person in the array
  2. Use Router to handle different person types (Member, Spouse)
  3. Use Filter to process only records with data

Handling Empty Responses

The API returns an empty array [] in these scenarios:

  • No Record Found: Member doesn't exist in the system
  • Multiple Records: Ambiguous match (multiple members with same data)
⚠️
Important: Empty responses are normal and must be handled gracefully in your workflow.

Make.com Handling

Empty Response Check
// In a Filter or Router module
{{if(length(response) > 0; "has_data"; "no_data")}}

Error Response Handling

Handle various error scenarios with appropriate Make.com error handlers:

Status Code Scenario Make.com Action
401 Expired token Refresh token and retry
403 IP not whitelisted Send alert notification
500 Server error Retry after delay

Token Management

Implement smart token management to handle the 5-minute expiration efficiently.

⏱️
Critical: Tokens expire after 5 minutes. For workflows processing multiple members or running longer than 5 minutes, you must implement token refresh logic.

Token Management Strategies

Strategy 1: Fresh Token Per Request

Best for: Simple workflows, single member lookups

Workflow Structure
For each member:
1. HTTP: Request Token
2. JSON: Parse Token  
3. HTTP: Get Member Info (use fresh token)
4. JSON: Parse Member Response
5. Process member data

Pros: Simple, always works
Cons: More API calls, slower performance

Strategy 2: Smart Token Caching

Best for: Multiple member processing, batch operations

Token Caching Logic
// Check if cached token is still valid (4-minute buffer)
{{if(and(
  length(get("cached_token")) > 0;
  ((formatDate(now; "X")) - get("token_timestamp")) < 240
); "use_cached"; "get_new")}}

Implementation Steps:

  1. Check Cache: Use "Get Variable" to check for existing token
  2. Validate Age: Use "Switch" to check if token is < 4 minutes old
  3. Use or Refresh: Route to either use cached token or get new one
  4. Store Token: Use "Set Variable" to cache new tokens with timestamp

Strategy 3: Automatic Refresh on Error

Best for: Long-running workflows, high reliability needed

Error Handler Configuration
Member Info HTTP Module:
1. Add Error Handler
2. Filter: Status Code = 401
3. HTTP: Get New Token
4. Set Variable: Update cached token
5. Resume: Retry original request

This approach automatically recovers from token expiration without manual intervention.

Error Handling

Implement comprehensive error handling for robust Make.com workflows.

Common Error Scenarios

Authentication Errors

401/403

Causes: Invalid credentials, expired token, IP not whitelisted

Solution: Add error handlers to refresh tokens and send alerts

Data Issues

Empty Response

Causes: Member not found, multiple matches, invalid data

Solution: Use filters and routers to handle empty responses gracefully

Network Issues

Timeout/500

Causes: Server errors, network timeouts, service unavailable

Solution: Implement retry logic with exponential backoff

Error Handler Implementation

HTTP Module Error Handler Setup
1. Right-click HTTP module → "Add error handler"
2. Add "HTTP Status Code" filter
3. Configure handling based on error type:
   - 401: Refresh token and retry
   - 403: Send notification about IP restriction  
   - 500: Wait and retry (max 3 attempts)
   - Other: Log error and continue

Best Practices

Follow these recommendations for production-ready Make.com integrations.

Security & Credentials

  • Use Data Stores: Store API credentials in Make.com Data Stores, not hardcoded in scenarios
  • Environment Variables: Use different credentials for QA vs Production
  • IP Monitoring: Monitor for IP changes that might affect whitelisting
  • Credential Rotation: Plan for regular credential updates

Performance Optimization

  • Token Caching: Implement smart token caching to reduce API calls
  • Batch Processing: Process multiple members with same token when possible
  • Parallel Processing: Use Router for independent operations
  • Rate Limiting: Add delays between requests if processing large volumes

Monitoring & Logging

Logging Implementation
Add logging modules to track:
✅ API request/response times
✅ Token refresh events  
✅ Error occurrences and types
✅ Empty response rates
✅ Daily usage statistics

Data Validation

  • Input Validation: Validate member data format before API calls
  • Date Formatting: Ensure dates are in YYYY-MM-DD format
  • SSN Formatting: Include dashes in SSN format
  • Name Accuracy: Verify exact spelling of names

Troubleshooting

Common issues and their solutions for Make.com + Novus API integration.

Quick Diagnostic Checklist

Before Contacting Support
✅ Verify API credentials are correct
✅ Check IP address is whitelisted  
✅ Confirm using correct environment URLs
✅ Test token generation manually
✅ Validate request body JSON format
✅ Check Make.com scenario execution history
✅ Review error logs for specific error codes

Common Issues

Issue Symptoms Solution
Token expires too quickly 401 errors during batch processing Implement token caching with 4-minute refresh
Empty responses for valid members API returns [] for known members Check data accuracy, try partial matches
Connection timeouts Requests fail after 40+ seconds Increase timeout settings, check network
Wrong endpoint URL 404 errors on API calls Verify QA vs Prod URL differences

Getting Help

🆘
Support Escalation:
  1. Check this documentation and troubleshooting guide
  2. Review Make.com HTTP module documentation
  3. Contact Novus API support with detailed error information
  4. Engage Make.com support for platform-specific issues