Service level agreement
Version 1.0, published 11 September 2026
The short version: we commit to 99.5% monthly availability of the hosted API on the Scale plan and above, and on a self-host licence whose order form includes a hosted API entitlement, measured at the gateway health endpoint by a once-a-minute probe from more than one place. Miss it and the table in section 5 sets the credit, up to half that month’s hosted API fee. Below those plans the hosted API is best-effort. Self-hosted deployments carry no uptime number, because you run them. The binding version follows.
1. What this covers
MapMap ships in two shapes, and the commitments differ because the operational boundary differs.
Hosted API: we run the gateway at api.mapmap.ai and the services behind it. Section 2 carries an availability commitment with service credits.
Self-hosted: you deploy and run the stack on your own infrastructure. We make no availability commitment for infrastructure we do not operate. That is not an evasion. The deployment model deliberately places the service inside your own trust and operations boundary, which is the point of buying it. What we commit to instead is the software: security-patch response, release cadence, support response and escrow. Where a self-host order form also includes a hosted API entitlement, section 2 applies to that hosted use, and still not to the deployment you run.
The rest of this page applies to both shapes.
2. The availability commitment
We commit to 99.5% availability of the hosted API in each calendar month on the Scale plan, on any hosted agreement above it, and on a self-host licence whose order form includes a hosted API entitlement. On Free, Starter, Growth and pay-as-you-go usage the hosted API is provided on a best-effort basis, with no availability commitment and no service credits. Plans and their prices are at /pricing.
99.5% of a 30-day month is about 3 hours 36 minutes of unavailability. That is the number we are prepared to be held to today, and it is set where it can be met by the deployment we actually run. We will raise it, on this page, when the architecture supports a higher one, and never quietly.
3. How availability is measured
The probe is GET https://api.mapmap.ai/health, once a minute, from at least two independent vantage points outside our hosting provider's network.
A minute counts as unavailable when the probe fails, times out or returns any status other than HTTP 200 from more than one vantage point. A failure seen from a single vantage point is a fault in the path, not in the service.
Monthly availability is the total minutes in the calendar month, minus the unavailable minutes, divided by the total minutes, expressed as a percentage to two decimal places. Months run on UTC boundaries.
We check the health endpoint rather than a synthetic route request because it is the one call that is unauthenticated, unmetered and identical for every customer, so the measurement cannot be skewed by anyone's key, quota or query shape. The probe record is the measurement of record, and we will supply the minute-level record for any month on request.
4. Scheduled maintenance
Scheduled maintenance is excluded from the availability calculation, and only counts as scheduled when all three of the following hold: we give at least 48 hours' notice by email to your technical contact and on the status page; the window is stated in advance with a start time and a maximum duration, and the work stays inside it; and total scheduled maintenance does not exceed 8 hours in any calendar month. Anything beyond 8 hours counts against availability even if it was announced.
Emergency maintenance to close an active security vulnerability is announced as early as we safely can, and counts as scheduled if the notice reaches you before the work starts. Nothing else does.
5. Service credits
If measured monthly availability falls below 99.5% on a plan that carries the commitment in section 2, you are entitled to a credit against the hosted API fee for that month.
| Measured monthly availability | Credit, as a share of that month’s hosted API fee |
|---|---|
| 99.5% or above | None |
| Below 99.5%, down to 99.0% | 10% |
| Below 99.0%, down to 98.5% | 20% |
| Below 98.5%, down to 98.0% | 30% |
| Below 98.0%, down to 97.5% | 40% |
| Below 97.5% | 50% |
The table above is the whole credit rule: the band your measured availability falls into sets the credit, to a maximum of 50%. The credit is applied to your next invoice, or refunded if no further invoice is due.
Credits are calculated on the hosted API fee for the affected month only, not on territory data, SDK licences, professional services or prepaid credit. Service credits are your sole and exclusive remedy for our failing to meet the availability commitment.
6. What does not count against availability, and how to claim
- Scheduled maintenance. Inside the notice and duration limits in section 4.
- Misuse of your own key. Requests refused for quota exhaustion (HTTP 402 or 429), rate limiting, an expired or revoked key, malformed requests (HTTP 4xx), or traffic that breaches the fair-use terms.
- Third-party data outages. Live traffic feeds, fuel and charge-point price feeds, and any other upstream source, where the API itself keeps answering. A route served without live traffic because the feed is down is a degraded answer, not an outage, and the response says so.
- Your network, client, DNS or proxy. Any fault in a path between you and our edge that the probes in section 3 do not also see.
- Force majeure. Events beyond our reasonable control, including war, civil unrest, natural disaster, epidemic, failure of a national telecommunications network, power grid or internet exchange, and acts of government.
- Customer-requested work. Changes, migrations or configuration you ask for, and any downtime you cause.
- Beta and preview features. Labelled as such in the docs and the changelog, and carrying no availability commitment.
To claim, email hello@mapmap.ai with “SLA claim” in the subject, the affected calendar month, the account or key identity, and your own logs of the failing period if you have them. The claim must arrive within 30 days of the end of the affected month; claims after that window are out of time. We reply within 10 business days with the probe record for the month, the calculated availability figure and the credit, if any.
7. Support response targets
First-response targets, measured from receipt of a ticket during the support window. Business hours are 09:00 to 17:30 UK time, Monday to Friday, excluding England and Wales public holidays. These are first-response targets, not fix times: fix times for security defects are in section 8 below, and other defects are prioritised against the release cadence. We will tell you which release a fix is going into rather than give you a date we cannot hold.
Team, Business and Enterprise in the table below are the self-host licence tiers published on the pricing page. They set support response, not hosted availability: the availability commitment in section 2 follows your hosted plan.
| First response | Team | Business | Enterprise |
|---|---|---|---|
| P1, production down, no workaround | 2 business days | Next business day | 4 business hours |
| P2, degraded, workaround exists | 3 business days | 2 business days | 1 business day |
| P3, question, cosmetic issue, docs | 5 business days | 5 business days | 3 business days |
Sovereign and OEM programmes are scoped in their own order form and are at least the Enterprise targets above. Support covers the first-party stack and its documented deployment. Faults in your own infrastructure are out of scope, but we will help isolate them on professional-services terms.
8. Security-patch response
Vulnerabilities in first-party code, and first-party builds that embed a vulnerable third-party component, are acknowledged and fixed on a CVSS-tiered clock that starts when we confirm the vulnerability: Critical (9.0 to 10.0), acknowledged in 24 hours and fixed or mitigated in 7 calendar days; High (7.0 to 8.9), 2 business days and 30 calendar days; Medium (4.0 to 6.9), 5 business days and 90 calendar days or the next scheduled release if sooner; Low (0.1 to 3.9), 10 business days and the next scheduled release.
For upstream components (Valhalla, MapLibre Native, Photon, Planetiler) the same clock applies to shipping a first-party release that picks up the upstream fix. We do not control upstream fix timelines and do not pretend to. Rust dependencies are gated in CI by cargo deny, and every release ships a CycloneDX SBOM so you can run your own vulnerability matching.
These clocks run independently of the availability commitment in section 2. A patch window is not an outage, and missing a patch clock does not generate a service credit. Report a vulnerability to hello@mapmap.ai with “security” in the subject. We do not yet run a dedicated security inbox or a bug bounty programme, and our security.txt says so.
9. Releases, versions and deprecations
Scheduled feature and maintenance releases are quarterly; security releases are out of band. The latest release plus the previous two receive security patches, and older versions receive fixes only under a paid extended-support addendum.
Breaking API changes are announced at least 90 days ahead, and the machine-readable contract is each deployment's /openapi.json.
10. Escrow and continuity
Where your order form includes escrow, we maintain a tripartite agreement with an established escrow agent, refreshed with every tagged release, releasing on our insolvency, on end-of-life without a 12-month migration window, or on an uncured breach of the patch obligations persisting 60 days after written notice. We have no agent on retainer today and will not claim one we do not have; the arrangement is set up at contract.
There is a floor under all of this that does not depend on us: the routing engine, renderer, geocoder and tile pipeline are permissive open-source projects, and the map data is reproducible from a published recipe. Escrow covers the first-party layer on top.
11. Changes to this agreement
We may update this page. A change that weakens a committed figure does not take effect for an in-term customer until renewal, and is announced by email at least 30 days ahead. Improvements take effect immediately. Every version is dated at the top of this page, and the copy in the procurement pack carries the same version number.
Live service status is at status.mapmap.ai. Plans and prices are at /pricing, the hosted-API contract is the terms of service, and this agreement also ships in the procurement pack with the security overview and the SBOM. Questions, or a copy for your counsel: hello@mapmap.ai.