# CBP API: Get border wait times

> Gets current US land-border wait times for every crossing, or for crossings filtered by name, border and state. Lane values that are unavailable are null.

Unofficial. Not affiliated with or endorsed by CBP.

- Page: https://fous.com/methods/cbp.gov/get-border-wait-times
- Method: `cbp.gov/get_border_wait_times`, version 1
- Website: cbp.gov
- Returns: crossing name, border, city, state, hours, status, last update, page URL, lane waits and open lanes
- Effect: read (it gets data and changes nothing)
- Sign-in: none needed
- Cost: 1 credit per completed run (1¢ with pay as you go); failed runs are free
- Verified: Nov 2, 2026

## Inputs

| Field | Type | Required | In the run below | Description |
|---|---|---|---|---|
| `state` | string | no |  | US state name, such as Texas. Default "". |
| `border` | string | no |  | Border to include, such as mexico. One of "canada", "mexico", "both". Default "both". |
| `crossing` | string | no |  | Crossing name or port city, such as San Ysidro or Detroit. Default "". |

## Output

From a run on Oct 23, 2026, shortened. Its input:

```json
{}
```

Its output:

```json
{
  "crossings": [
    {
      "city": "Alexandria Bay",
      "hours": "24 hrs/day",
      "state": "New York",
      "border": "Canada",
      "status": "open",
      "page_url": "https://bwt.cbp.gov/details/04070801/POV",
      "last_updated": "2026-10-23T05:36:47-04:00",
      "crossing_name": "Alexandria Bay - Thousand Islands Bridge",
      "commercial_fast_lanes_open": null,
      "passenger_ready_lanes_open": null,
      "pedestrian_ready_lanes_open": null,
      "commercial_fast_wait_minutes": null,
      "passenger_ready_wait_minutes": null,
      "passenger_standard_lanes_open": 1,
      "pedestrian_ready_wait_minutes": null,
      "commercial_standard_lanes_open": 1,
      "pedestrian_standard_lanes_open": null,
      "passenger_standard_wait_minutes": 10,
      "commercial_standard_wait_minutes": 10,
      "pedestrian_standard_wait_minutes": null,
      "passenger_sentri_nexus_lanes_open": null,
      "passenger_sentri_nexus_wait_minutes": null
    },
    {
      "city": "Blaine",
      "hours": "24 hrs/day",
      "state": "Washington",
      "border": "Canada",
      "status": "open",
      "page_url": "https://bwt.cbp.gov/details/02300401/POV",
      "last_updated": "2026-10-23T02:36:47-07:00",
      "crossing_name": "Blaine - Pacific Highway",
      "commercial_fast_lanes_open": null,
      "passenger_ready_lanes_open": null,
      "pedestrian_ready_lanes_open": null,
      "commercial_fast_wait_minutes": null,
      "passenger_ready_wait_minutes": null,
      "passenger_standard_lanes_open": 1,
      "pedestrian_ready_wait_minutes": null,
      "commercial_standard_lanes_open": 1,
      "pedestrian_standard_lanes_open": null,
      "passenger_standard_wait_minutes": 5,
      "commercial_standard_wait_minutes": 5,
      "pedestrian_standard_wait_minutes": null,
      "passenger_sentri_nexus_lanes_open": null,
      "passenger_sentri_nexus_wait_minutes": null
    },
    {
      "city": "Blaine",
      "hours": "24 hrs/day",
      "state": "Washington",
      "border": "Canada",
      "status": "open",
      "page_url": "https://bwt.cbp.gov/details/02300402/POV",
      "last_updated": "2026-10-23T02:36:47-07:00",
      "crossing_name": "Blaine - Peace Arch",
      "commercial_fast_lanes_open": null,
      "passenger_ready_lanes_open": null,
      "pedestrian_ready_lanes_open": null,
      "commercial_fast_wait_minutes": null,
      "passenger_ready_wait_minutes": null,
      "passenger_standard_lanes_open": 1,
      "pedestrian_ready_wait_minutes": null,
      "commercial_standard_lanes_open": null,
      "pedestrian_standard_lanes_open": null,
      "passenger_standard_wait_minutes": 5,
      "commercial_standard_wait_minutes": null,
      "pedestrian_standard_wait_minutes": null,
      "passenger_sentri_nexus_lanes_open": null,
      "passenger_sentri_nexus_wait_minutes": null
    }
  ]
}
```

## Run it

From code, with a Fous API key in `FOUS_API_KEY`; the answer's `data` holds the output:

```bash
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"method":"cbp.gov/get_border_wait_times","input":{}}'
```

From an AI agent connected to the Fous MCP server: its `run` with the same method and input. To connect one, give it `set up https://fous.com/SKILL.md`.

## Ask your agent

- What are the current wait times at the San Ysidro crossing on the Mexico border?
- Show me land border crossing waits along the Canadian border in Michigan.
- How long is the line to cross into the US at Laredo right now, and how many lanes are open?
- Any delays at the Detroit crossing this morning? I need the lane waits and last update time.
- Which US-Mexico border crossings in Texas have the shortest current wait times?

## Input schema

```json
{
  "type": "object",
  "required": [],
  "properties": {
    "state": {
      "type": "string",
      "default": "",
      "description": "US state name, such as Texas."
    },
    "border": {
      "enum": [
        "canada",
        "mexico",
        "both"
      ],
      "type": "string",
      "default": "both",
      "description": "Border to include, such as mexico."
    },
    "crossing": {
      "type": "string",
      "default": "",
      "description": "Crossing name or port city, such as San Ysidro or Detroit."
    }
  }
}
```

## Output schema

```json
{
  "type": "object",
  "required": [
    "crossings"
  ],
  "properties": {
    "crossings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "city": {
            "type": "string"
          },
          "hours": {
            "type": [
              "string",
              "null"
            ]
          },
          "state": {
            "type": [
              "string",
              "null"
            ]
          },
          "border": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "page_url": {
            "type": "string"
          },
          "last_updated": {
            "type": [
              "string",
              "null"
            ]
          },
          "crossing_name": {
            "type": "string"
          },
          "commercial_fast_lanes_open": {
            "type": [
              "integer",
              "null"
            ]
          },
          "passenger_ready_lanes_open": {
            "type": [
              "integer",
              "null"
            ]
          },
          "pedestrian_ready_lanes_open": {
            "type": [
              "integer",
              "null"
            ]
          },
          "commercial_fast_wait_minutes": {
            "type": [
              "integer",
              "null"
            ]
          },
          "passenger_ready_wait_minutes": {
            "type": [
              "integer",
              "null"
            ]
          },
          "passenger_standard_lanes_open": {
            "type": [
              "integer",
              "null"
            ]
          },
          "pedestrian_ready_wait_minutes": {
            "type": [
              "integer",
              "null"
            ]
          },
          "commercial_standard_lanes_open": {
            "type": [
              "integer",
              "null"
            ]
          },
          "pedestrian_standard_lanes_open": {
            "type": [
              "integer",
              "null"
            ]
          },
          "passenger_standard_wait_minutes": {
            "type": [
              "integer",
              "null"
            ]
          },
          "commercial_standard_wait_minutes": {
            "type": [
              "integer",
              "null"
            ]
          },
          "pedestrian_standard_wait_minutes": {
            "type": [
              "integer",
              "null"
            ]
          },
          "passenger_sentri_nexus_lanes_open": {
            "type": [
              "integer",
              "null"
            ]
          },
          "passenger_sentri_nexus_wait_minutes": {
            "type": [
              "integer",
              "null"
            ]
          }
        }
      }
    }
  }
}
```

## See more

- [TSA Wait Times API: Get security wait time](https://fous.com/methods/tsawaittimes.com/get-security-wait-time.md): Looks up today's crowd-sourced security wait estimate and hourly pattern for a US airport by name, city or code, with PreCheck status and checkpoints.
- [GOV.UK API: Get travel advice](https://fous.com/methods/gov.uk/get-travel-advice.md): Returns current UK government (FCDO) travel warnings, entry requirements for British passport holders, safety, health and emergency information for a country. Summaries are shortened; follow the link for full details.
- [Wildfire.gov API: List active wildfires](https://fous.com/methods/inciweb.wildfire.gov/list-active-wildfires.md): Lists active InciWeb fire incidents in a US state, newest table updates first, with size, containment, location, cause, dates and any evacuation or closure note. Prescribed fires and other fire-related incidents can appear.
- [Wildfire.gov API: Get wildfire status](https://fous.com/methods/inciweb.wildfire.gov/get-wildfire.md): Gets the latest reported status and dated update for a named InciWeb wildfire, including evacuation and closure notices. Past notices may no longer apply; older fires not in InciWeb's index may not be found.
- [FAA API: Get airport delays](https://fous.com/methods/faa.gov/get-airport-delays.md): Gets current FAA delay and closure events for a US airport, found by name, city or code. A city with several airports resolves to one of them, and reported delays may not cover every flight.
- [FlightAware API: Get airport delays](https://fous.com/methods/flightaware.com/get-airport-delays.md): Checks today's delayed and cancelled departures and arrivals at an airport on FlightAware, with current weather and any reported FAA delay status. Delay averages and ground programs are returned only when FlightAware shows them; counts can be null when no statistics row is displayed.
- [USGS API: Get river level](https://fous.com/methods/waterdata.usgs.gov/get-river-level.md): Gets the latest water height, flow, 24-hour trend and flood-stage status at the active USGS river gauge best matching a river or town and state. Flood stage is null when not published; gauges without recent stage, flow or 24-hour history are not returned.
- [Freightos API: Get container freight rates](https://fous.com/methods/freightos.com/get-container-freight-rates.md): Returns the latest public weekly Freightos Baltic Index (FBX) price per 40-foot container for one trade lane, or for the global composite and all twelve lanes.
