Integrate UMP in a day, not a quarter.
Simple REST API. SDKs for major platforms. Clear documentation.
Three calls to issue. Two to verify.
Issue a credential
// Issue a credential in 3 calls
// 1. Register the asset
const asset = await ump.post('/v1/assets', {
identifier: 'urn:vin:1HGCM82633A004352',
name: '2024 Komatsu PC210',
})
// 2. Create the event
const event = await ump.post('/v1/events/draft', {
assetId: asset.id,
type: 'oil_change',
meterReading: 4892,
evidence: [{ hash, uri }],
})
// 3. Sign and anchor
const credential = await ump.post(`/v1/events/${event.id}/issue`)Verify a credential
// Verify a credential in 2 calls
// 1. Fetch the passport
const passport = await ump.get(`/v1/passports/${assetId}`)
// 2. Verify any credential
const result = await ump.post('/v1/verify', {
credential: passport.events[0].credential,
})
// { signature: true, ledger: true, evidence: true, riskFlags: [] }Core concepts you need to know.
UMP doesn't replace your database; it adds cryptographic proofs.
REST API and client libraries.
Choose your integration depth.
Verify-only
Fastest integration. Verify passports without issuing credentials.
- 1.Call /v1/verify with credential
- 2.Check signature, ledger, evidence status
- 3.Display results to user
Effort: Hours
Export-on-close
CAMP-style integration. Export events when work orders close.
- 1.Listen for work order close events
- 2.Call /v1/events/draft with event data
- 3.Call /v1/events/:id/issue to sign and anchor
Effort: Days
Embedded offline capture
Full integration with offline-capable event capture.
- 1.Embed issuer SDK in your app
- 2.Capture events offline with reliable sync
- 3.Auto-issue when online
Effort: Weeks
Who integrates with UMP?
CMMS / Aviation / Telematics Platform
Add UMP to your existing platform. Give customers portable, verifiable records.
Fleet / Operator with In-house IT
Build custom integrations with your internal systems.
OEMs & Marketplaces
Embed verification or issuance in your products and listings.
Partner Dashboard
Every partner gets a dedicated dashboard to manage API keys, configure webhooks, view usage analytics, and switch between sandbox and production environments. Self-service administration — no support tickets required.
Add verification to your listings in 5 minutes.
Embed passport verification in auction listings, loan applications, or marketplace pages. Copy, paste, done.
Option 1: Simple iframe
Fastest setup<!-- Simple iframe embed -->
<iframe
src="https://verify.maintenancepassport.com/embed/{passportId}"
width="100%"
height="400"
frameborder="0"
allow="clipboard-write"
></iframe>Drop-in solution. No JavaScript required. Works anywhere you can embed HTML.
Option 2: Shadow DOM SDK
3KB gzipped<!-- Shadow DOM SDK (3KB gzipped) -->
<script src="https://sdk.maintenancepassport.com/embed.js"></script>
<div id="ump-widget"></div>
<script>
UMP.embed('#ump-widget', {
passportId: 'abc123',
theme: 'dark',
showEvents: true,
onVerified: (result) => console.log(result)
})
</script>
<!-- Widget renders in Shadow DOM - won't affect your styles -->Shadow DOM isolation — widget styles won't conflict with your page. Callbacks for verification events. Theming support.
Whitelabel
Custom colors, logo, and branding
Responsive
Works on mobile and desktop
Callbacks
JavaScript events on verification
Analytics
Track impressions and engagement
Widget & API Analytics
Track widget impressions, referrer sources, and user engagement. Monitor API usage with per-endpoint metrics, error rates, and latency tracking. All analytics available via the partner dashboard.
Real-time events via webhooks.
Subscribe to events and trigger workflows when passports are verified or credentials issued.
passport.verifiedFired when a passport verification completes. Includes signature, ledger, and evidence status.
event.issuedFired when a new maintenance event credential is issued and anchored to the ledger.
risk_flag.addedFired when a risk flag (METER_ANOMALY, OVERDUE_PM) is detected on a passport.
passport_pack.generatedFired when a shareable passport pack is generated for an asset.
Use case: Trigger underwriting workflows when a passport is verified. Automatically update risk assessments when new flags are detected.
Reliability built-in
- •Exponential backoff retry — failed deliveries retry with 5s → 30s → 2m → 5m intervals, up to 5 attempts
- •Signature verification — every webhook includes HMAC signature for authenticity
- •Delivery logs — track every attempt in the partner dashboard
Test safely in sandbox.
Pre-configured test passports for every scenario. No production data required.
Test scenarios
Clean passport
10 events, all signatures valid, no risk flags. Use for happy-path testing.
Risk flags present
Passport with METER_ANOMALY and OVERDUE_PM flags. Test flag display and handling.
Missing evidence
Events where evidence files return 404. Test MISSING_EVIDENCE flag handling.
Tampered evidence
Events where evidence hash doesn't match. Test EVIDENCE_TAMPERED detection.
Expired signatures
Credentials with expired signing keys. Test signature validation edge cases.
Sandbox API keys available upon request. Same API, isolated environment.
Request sandbox access