{
    "openapi": "3.1.0",
    "info": {
        "title": "FindBetterInternet Serviceability API",
        "version": "1.0.0",
        "summary": "Which internet providers serve a specific U.S. street address.",
        "description": "Resolves a U.S. street address to a census block and returns the internet providers reported as serving that block in FCC Broadband Data Collection filings, with each provider's technology and maximum advertised speeds.\n\nNo API key and no registration. CORS is open, so browser-side callers work.\n\n**Speeds are provider-advertised maxima at census-block level.** They are what carriers filed with the FCC, not measured throughput, and not a guarantee for an individual unit. Please represent them that way to end users.\n\nAttribution: FindBetterInternet.com. A link back is appreciated when citing this data.",
        "contact": {
            "url": "https://findbetterinternet.com/"
        }
    },
    "servers": [
        {
            "url": "https://findbetterinternet.com",
            "description": "Production"
        }
    ],
    "paths": {
        "/wp-json/fbi/v1/serviceability": {
            "get": {
                "operationId": "checkServiceability",
                "summary": "Check internet serviceability at a U.S. address",
                "description": "Returns the providers reported as serving the census block containing this address, sorted by advertised download speed, fastest first.",
                "parameters": [
                    {
                        "name": "address1",
                        "in": "query",
                        "required": true,
                        "description": "Street address.",
                        "schema": {
                            "type": "string",
                            "maxLength": 120
                        },
                        "example": "350 Fifth Avenue"
                    },
                    {
                        "name": "city",
                        "in": "query",
                        "required": true,
                        "description": "City name.",
                        "schema": {
                            "type": "string",
                            "maxLength": 80
                        },
                        "example": "New York"
                    },
                    {
                        "name": "state",
                        "in": "query",
                        "required": true,
                        "description": "Two-letter state code.",
                        "schema": {
                            "type": "string",
                            "pattern": "^[A-Za-z]{2}$"
                        },
                        "example": "NY"
                    },
                    {
                        "name": "zip",
                        "in": "query",
                        "required": true,
                        "description": "Five-digit ZIP code.",
                        "schema": {
                            "type": "string",
                            "pattern": "^[0-9]{5}$"
                        },
                        "example": "10118"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Providers serving the matched census block.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "matched_address": {
                                            "type": "string",
                                            "example": "350 5TH AVE, NEW YORK, NY, 10118"
                                        },
                                        "census_block": {
                                            "type": "object",
                                            "properties": {
                                                "block_geoid": {
                                                    "type": "string",
                                                    "example": "360610076001001"
                                                },
                                                "coordinates": {
                                                    "type": "object",
                                                    "properties": {
                                                        "x": {
                                                            "type": "number",
                                                            "description": "Longitude."
                                                        },
                                                        "y": {
                                                            "type": "number",
                                                            "description": "Latitude."
                                                        }
                                                    }
                                                }
                                            }
                                        },
                                        "providers": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "brand_name": {
                                                        "type": "string",
                                                        "example": "Verizon"
                                                    },
                                                    "technology": {
                                                        "type": "string",
                                                        "description": "Fiber, Cable, Licensed Fixed Wireless, NGSO Satellite, GSO Satellite or Copper.",
                                                        "example": "Fiber"
                                                    },
                                                    "technology_id": {
                                                        "type": "integer",
                                                        "description": "FCC technology code.",
                                                        "example": 50
                                                    },
                                                    "provider_id": {
                                                        "type": "integer",
                                                        "description": "FCC provider identifier.",
                                                        "example": 131425
                                                    },
                                                    "max_advertised_download_speed": {
                                                        "type": "integer",
                                                        "description": "Mbps, provider-advertised maximum.",
                                                        "example": 2048
                                                    },
                                                    "max_advertised_upload_speed": {
                                                        "type": "integer",
                                                        "description": "Mbps, provider-advertised maximum.",
                                                        "example": 2048
                                                    },
                                                    "low_latency": {
                                                        "type": "string",
                                                        "description": "\"1\" when the provider reports the connection as low-latency.",
                                                        "example": "1"
                                                    }
                                                }
                                            }
                                        },
                                        "provider_count": {
                                            "type": "integer",
                                            "example": 12
                                        },
                                        "cached": {
                                            "type": "boolean"
                                        },
                                        "source": {
                                            "type": "object",
                                            "description": "Provenance, caveat and attribution. Carry these through when citing."
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Missing or malformed address parameters."
                    },
                    "404": {
                        "description": "The address could not be matched to a census block (typo, new build, PO box)."
                    },
                    "429": {
                        "description": "Rate limit exceeded (60 requests per hour per IP)."
                    },
                    "503": {
                        "description": "Lookup is unavailable: either not configured, or the upstream did not answer. Retry later."
                    }
                }
            }
        }
    },
    "x-mcp": {
        "endpoint": "https://findbetterinternet.com/wp-json/fbi/v1/mcp",
        "transport": "streamable-http",
        "auth": "none",
        "tools": [
            "check_serviceability"
        ]
    },
    "x-llms-txt": "https://findbetterinternet.com/llms.txt",
    "x-docs-page": "https://findbetterinternet.com/api/"
}