Overview
The Mobaro API gives your systems the same Competencies and Certifications you see under Competencies in the Backend. Use it to export who is qualified for what to a compliance report or HR system, to record training done elsewhere as Certifications, and to keep your list of Competencies in step with a training catalogue.
This article covers the Competencies and Certifications endpoints and a recipe for an expiry report. For how Competencies and Certifications work, see Utilizing Competencies.
At a glance |
|
Who can do this | An integration with an API key. Exports work with a Read-only key; creating, updating and deleting need a key that isn't Read-only. |
Where |
|
Works on | Public API. Changes apply in the Backend (web), Mobile app and RideOps. |
Availability | API access, enabled per organization by Mobaro — ask your CSM |
💡 Why this matters: A Certification decides whether someone may take a RideOps position or start a Checklist that requires the Competency. An integration that creates, changes or deletes Certifications changes who is allowed to operate, straight away.
Competencies endpoints
Request | What it does |
| Lists Competencies with |
| Gets one Competency. |
|
|
| Changes |
| Deletes the Competency and everything that depends on it (see below). |
🛑 Critical: Deleting a Competency through the API does exactly what it does in the Backend, and can't be undone: every Certification for it is deleted, including ones from Certification Processes; every Certification Process that awards it is deleted; and it's removed as a requirement from other Processes, Schedules, Ad Hoc Slot triggers in Checklists and RideOps Locations. See How to create a Competency.
Read Certifications
GET /api/customers/certifications lists Certifications, expired ones included, one page at a time (Limit up to 128, Offset). Each item has:
Field | Meaning |
| ID and name of the User and the Competency. |
| When the Certification was created in Mobaro. |
| When it expires. |
| The Mark as due for renewal date, or |
|
|
| The Notes and attached file IDs. |
Filters: Competencies (one or more Competency IDs; repeat the parameter), and AwardedAfter / AwardedBefore. Sort with OrderBy: created, expiration or renewal, with a - prefix for newest first. There's no filter by User or by expiry date, so filter those in your own system. Certifications of deleted Users are deleted with them and never appear. See Visibility and retention of certifications.
Build an expiry report
1. Page through the Certifications
GET https://app.mobaro.com/api/customers/certifications?OrderBy=expiration&Limit=128&Offset=0
x-api-key: YOUR_API_KEY
Increase Offset by 128 until you have total items. Add Competencies=competencies/… to report on one Competency.
2. Work out each status
Use the same rules as the Backend:
Expired:
expirationis in the past. The User no longer holds the Competency.Due for renewal:
renewalis in the past butexpirationisn't.Valid: everything else, including
expirationnull.
3. Find who is missing a Competency
Compare the Certifications with your Users from GET /api/customers/users. A User with no valid Certification for a Competency doesn't hold it. For ready-made views in the Backend, see Certification reporting and compliance dashboards.
Create and change Certifications
POST /api/customers/certifications records a manual Certification. The User holds the Competency as soon as it's created.
{
"user": "users/123456-A",
"competency": "competencies/987-A",
"notes": "External course, completed 2026-03-02",
"expiration": "2027-03-02T00:00:00Z",
"renewal": "2027-02-01T00:00:00Z"
}userandcompetencyare required. Leave outexpirationfor Never expires.renewalis kept only whenexpirationis set.attachmentstakes file IDs (files/…) fromPOST /api/customers/files/create. Anything else is dropped.awardedis always the time of the request: you can't backdate a Certification. Put the original date innotesif you need it.
PUT /api/customers/certifications/{id} changes notes, expiration, renewal and attachments; only the fields you send change. The User and Competency can't be changed: delete and create instead. DELETE /api/customers/certifications/{id} deletes a manual Certification.
⚠️ Heads-up: Certifications with type Process can't be changed or deleted through the API: an update returns 405 Method Not Allowed and a delete is refused. Remove them by disapproving or invalidating the Result that awarded them. See Deleting Certifications.
Best practices
Use a Read-only key for compliance exports.
Page with a fixed
OrderByso no Certification is skipped or repeated between pages.Before recording training from another system, check that the User doesn't already hold a valid Certification for that Competency.
Never delete Competencies from an integration unless someone has confirmed it: the cascade removes every Certification for it.
Frequently asked questions
How can I export all certifications for every team member?
Page through GET /api/customers/certifications: it returns every Certification, expired ones included, with the User, Competency and dates. For views in the Backend, see Certification reporting and compliance dashboards.
Can I import our existing training records?
Yes, as manual Certifications with POST /api/customers/certifications, one per User and Competency. Set expiration so they expire on time. The awarded date will be the import date.
Why does updating a certification return 405?
It was awarded by a Certification Process, so it can't be edited. Only manual Certifications can be updated or deleted through the API.
Can I get one User's certifications?
Not with a filter. List the Certifications and keep the items whose user.id matches. The Competencies filter narrows the list first.
