Internet speed test
CoverageMap API

CoverageMap API

What the CoverageMap API returns, its endpoints and a quickstart for your first coverage lookup.

The CoverageMap API tells you how good cellular service is at any location in the United States. Send up to 100 locations as coordinates or street addresses and get back, for every carrier and technology you ask for, any mix of three datasets: FCC coverage and signal strength, crowdsourced speed tests, and simple 0 to 10 summary scores.

Pricing, plans and use cases are on the CoverageMap API product page.

Endpoints

CoverageMap API endpoints
EndpointDescriptionBilling
POST/coverageLook up datasets for up to 100 locations.Units per location and dataset
GET/coverage/countriesList the countries you can request.Free
GET/coverage/providersList the providers and technologies you can request.Free

Paths are relative to https://enterprise.coveragemap.com/api/v1. Every endpoint uses the shared authentication, response envelope and errors.

Quickstart

  1. Start the free trial

    Start the free trial to get 500 units for one month with no credit card. The trial is for evaluation only and cannot be used for any commercial or non-commercial purpose. Your API key is in the API Keys section of the dashboard once the trial starts. To use the API in your product right away, subscribe to Pay-Per-Use instead.

  2. List the providers you can use

    This request is free, so it is a safe way to check your key works.

    curl "https://enterprise.coveragemap.com/api/v1/coverage/providers" \
      -H "Authorization: Bearer YOUR_API_KEY"
  3. Look up a location

    Ask for the summary dataset at one location. With no providers or technologies in the request you get every provider your subscription can use, AT&T, Verizon and T-Mobile on a standard plan, with every technology combined. This uses 1 unit.

    curl -X POST "https://enterprise.coveragemap.com/api/v1/coverage" \
      -H "Authorization: Bearer YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "datasets": ["summary"],
        "locations": [
          {
            "id": "office",
            "latitude": 40.7128,
            "longitude": -74.006
          }
        ]
      }'
  4. Read the result

    Each location has one coverage entry per provider, and higher scores are better. The values below are for illustration:

    Response
    {
      "status": 200,
      "messages": {},
      "data": {
        "country": "US",
        "datasets": ["summary"],
        "locations": [
          {
            "index": 0,
            "id": "office",
            "latitude": 40.7128,
            "longitude": -74.006,
            "coverage": [
              {
                "provider": { "code": "ATT", "name": "AT&T Mobility" },
                "technology": null,
                "summary": {
                  "overall": 8.2,
                  "performance": 7.6,
                  "coverage": 9.1,
                  "reliability": 7.4,
                  "isFullyCovered": true,
                  "source": "measured",
                  "accuracy": "exact"
                }
              },
              {
                "provider": { "code": "TMO", "name": "T-Mobile US" },
                "technology": null,
                "summary": {
                  "overall": 8.7,
                  "performance": 8.9,
                  "coverage": 9.3,
                  "reliability": 7.8,
                  "isFullyCovered": true,
                  "source": "measured",
                  "accuracy": "exact"
                }
              },
              {
                "provider": { "code": "VZW", "name": "Verizon Wireless" },
                "technology": null,
                "summary": {
                  "overall": 8.4,
                  "performance": 7.9,
                  "coverage": 9.4,
                  "reliability": 7.6,
                  "isFullyCovered": true,
                  "source": "measured",
                  "accuracy": "high"
                }
              }
            ]
          }
        ]
      }
    }

Key concepts

CoverageMap API concepts
ConceptWhat it means
LocationsUp to 100 per request, each as latitude and longitude or a street address, with an optional id you choose. Results come back in the same order.
Datasetsfcc-coverage, speed-tests and summary. Pick any mix per request and pay only for what you ask for. Datasets
ProvidersCarrier codes such as ATT, VZW and TMO. Leave providers out to get every provider your subscription can use.
Technologieslte and 5g. Leave them out to get one combined result per provider.
Units1 unit per location for FCC coverage and for the summary, 2 for speed tests. Units and billing

Next

Read the coverage lookup reference for every request option, then the response objects for every field you get back.