FORVUE

Partner API — Integration Guide
Version 1.0 · April 2026 · Confidential

Welcome to the ForVue Partner Program

This guide contains everything you need to integrate with the ForVue predictive maintenance platform. Follow the steps in order — you'll be connected and testing within 30 minutes.

Your Credentials

Fill these in before sending to your integration team:

API Key______________________________
Base URLhttps://platform.investwisecap.com/api/v1/
Webhook Secret (HMAC)______________________________
Daily Rate Limit1,000 requests/day
API Referencehttps://platform.investwisecap.com/api-reference.html

Step-by-Step Integration

1Authenticate

Pass your API key in the X-Api-Key header on every request:

curl https://platform.investwisecap.com/api/v1/properties \
  -H "X-Api-Key: YOUR_API_KEY"

If authentication fails, you'll receive:

{ "error": "Invalid or inactive API key." }
2Test in Sandbox Mode

Add ?sandbox=true to any GET request to work with demo data only. No production data is exposed.

curl https://platform.investwisecap.com/api/v1/properties?sandbox=true \
  -H "X-Api-Key: YOUR_API_KEY"

⚠ Remove ?sandbox=true when you are ready to go live.

3Pull Risk Scores

The most common integration — pull risk scores for all components in a portfolio:

curl https://platform.investwisecap.com/api/v1/risk-scores \
  -H "X-Api-Key: YOUR_API_KEY"

Response:

{
  "scores": [
    {
      "component_id": "C_17762...",
      "appliance_type": "water_heater_gas",
      "component_name": "Anode Rod",
      "risk_score": 0.847,
      "risk_tier": "CRITICAL",
      "projected_failure_year": 2027,
      "proactive_cost": 220,
      "reactive_cost": 1800,
      "confidence": "HIGH"
    }
  ],
  "total": 115,
  "generated_at": "2026-04-28T..."
}
4Push Data Into ForVue

Send properties, appliances, and service events to build a portfolio:

// Create a property
curl -X POST https://platform.investwisecap.com/api/v1/properties \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Oakwood Apartments",
    "address": "123 Main St",
    "city": "Dallas",
    "state": "TX",
    "zip": "75201",
    "unit_count": 24
  }'

// Add an appliance
curl -X POST https://platform.investwisecap.com/api/v1/appliances \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "property_id": "P_...",
    "type_id": "hvac_central",
    "brand": "Carrier",
    "model": "24ACC636",
    "install_year": 2018
  }'

// Log a service event
curl -X POST https://platform.investwisecap.com/api/v1/service-events \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "appliance_id": "A_...",
    "event_type": "Preventive Maintenance",
    "date": "2026-04-28",
    "technician": "ABC HVAC",
    "parts_cost": 45,
    "labor_cost": 150,
    "condition_after": "good",
    "notes": "Replaced capacitor, cleaned coils"
  }'
5Get Bank/Insurance Reports

For lenders and insurance carriers — pull property condition scores and replacement cost values:

// Condition score (bank underwriting)
curl https://platform.investwisecap.com/api/v1/condition-score/P_... \
  -H "X-Api-Key: YOUR_API_KEY"

// Replacement cost value (insurance coverage)
curl https://platform.investwisecap.com/api/v1/rcv/P_... \
  -H "X-Api-Key: YOUR_API_KEY"

// Push insurance claims for Bayesian risk adjustment
curl -X POST https://platform.investwisecap.com/api/v1/claims \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "property_id": "P_...",
    "claim_type": "water_damage",
    "date_of_loss": "2026-03-15",
    "amount": 12500
  }'
6Set Up Webhooks (Optional)

Receive real-time alerts when components cross CRITICAL or WARNING thresholds.

What ForVue sends to your webhook URL:

POST https://your-server.com/your-webhook-endpoint

Headers:
  Content-Type: application/json
  X-Webhook-Signature: HMAC-SHA256 signature

Body:
{
  "event": "component.critical",
  "timestamp": "2026-04-28T14:30:00Z",
  "data": {
    "component_id": "C_...",
    "appliance_id": "A_...",
    "property_id": "P_...",
    "component_name": "Anode Rod",
    "risk_score": 0.84,
    "risk_tier": "CRITICAL",
    "projected_failure_year": 2027,
    "reactive_cost": 1800,
    "proactive_cost": 220
  }
}

How to verify the signature:

const crypto = require('crypto');
const signature = req.headers['x-webhook-signature'];
const expected = crypto
  .createHmac('sha256', YOUR_WEBHOOK_SECRET)
  .update(JSON.stringify(req.body))
  .digest('hex');
if (signature !== expected) {
  return res.status(401).send('Invalid signature');
}
// Signature valid — process the event

Return HTTP 200 to acknowledge. ForVue retries at 0s, 5s, and 30s if no 200 received.


Complete Endpoint Reference

MethodEndpointDescription
GET/v1/propertiesList all properties
POST/v1/propertiesCreate a property
GET/v1/properties/:idGet property details
GET/v1/appliancesList appliances
POST/v1/appliancesCreate appliance + auto-generate components
POST/v1/appliances/bulkCreate multiple appliances at once
GET/v1/componentsList components with risk scores
GET/v1/risk-scoresAll risk scores with cost data
GET/v1/alertsCRITICAL and WARNING components
GET/v1/forecastProjected failures by timeframe
GET/v1/reserves/:idReserve recommendations per property
GET/v1/condition-score/:idProperty condition score (bank grade)
GET/v1/rcv/:idReplacement cost value (insurance grade)
GET/v1/service-eventsList service events
POST/v1/service-eventsLog a service event
POST/v1/claimsPush insurance claims
POST/v1/sensor-eventsPush IoT sensor readings
POST/v1/webhooks/registerRegister a webhook URL
POST/v1/webhooks/testSend a test webhook event

Full documentation with request/response schemas: https://platform.investwisecap.com/api-reference.html


Rate Limits & Headers

Daily Limit1,000 requests/day (adjustable per partner)
Reset TimeMidnight UTC
Response HeadersX-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset
Over LimitHTTP 429 with error message

Supported Appliance Types

type_idNameComponents
hvac_centralHVAC Central Split8
hvac_heat_pumpHeat Pump7
hvac_mini_splitMini-Split / Ductless6
water_heater_gasWater Heater (Gas)6
water_heater_electricWater Heater (Electric)7
water_heater_tanklessWater Heater (Tankless)6
refrigeratorRefrigerator8
washerClothes Washer6
dryer_electricDryer (Electric)6
dryer_gasDryer (Gas)7
dishwasherDishwasher6
range_gasRange/Oven (Gas)6
range_electricRange/Oven (Electric)6
electrical_panelElectrical Panel5
boilerBoiler6
roofRoof6
pool_equipmentPool/Spa Equipment6
elevatorElevator5
fire_suppressionFire Suppression5

29 types total, 164 components. Full list in API reference.


Support & Contact

Integration Supportwise@investwisecap.com
API StatusGET /health — no auth required
OpenAPI Spechttps://platform.investwisecap.com/api/v1/openapi.json
Response Time SLA< 500ms for read endpoints

Competitive Use Restriction

Per Section 12 of the ForVue Terms of Service, API partners agree to a 2-year competitive-use covenant. Data obtained through the API may not be used to build, train, or improve a competing predictive maintenance product. See Terms of Service v3.0 for full details.