# GLS US (Golden State Overnight / GSO) Tracking API & MCP

URL: https://docs.lastscanned.com/carriers/glsus

Query live **GLS US** (`glsus`, formerly **Golden State Overnight / GSO**) West Coast package status and scan history in a single synchronous `GET` request or MCP tool call.

> **Important — Always pass `?carrier=glsus` (or `"carrier": "glsus"` in MCP):** GLS US is **never auto-detected** (`matches: () => false`, no `mayMatch`). Because GLS US uses 8–11 digit uncheck-digited GSO numbers (typically 9 digits like `512345678` or `758110995`) as well as arbitrary shipper reference numbers (`CA0W2208048`, 20-digit references) that collide with other carriers—and because GLS US's system answers generic placeholder numbers shippers reuse—you must always specify `?carrier=glsus`.

## Overview & Quick Facts

| Property | Value |
|---|---|
| **Carrier slug (`?carrier=`)** | `glsus` (**Required on every request — never auto-detected**) |
| **Brand & service aliases** | GLS US, GLS USA, GSO, Golden State Overnight, GLS Ground (`CPS`), Priority Overnight (`PDS`), Early Priority Overnight (`EPS`), Noon Priority Overnight (`NPS`), Saturday Delivery (`SDS`) |
| **Category** | US West Coast regional parcel carrier — CA, AZ, NV, OR, WA, ID, NM, UT (Listing order **#24 of 31**) |
| **Single-package REST endpoint** | `GET https://api.lastscanned.com/v1/track/{trackingNumber}?carrier=glsus` |
| **Batch REST endpoint** | `GET https://api.lastscanned.com/v1/track?numbers=512345678,758110995&carrier=glsus` (up to 25 GLS US numbers per batch; up to 100 total numbers) |
| **MCP server (`https://mcp.lastscanned.com`)** | `track_package` / `track_packages` with `"carrier": "glsus"` (`claude mcp add --transport http lastscanned https://mcp.lastscanned.com`) |
| **Authentication & pricing** | `Authorization: Bearer lsk_live_...` · **1 free keyless lookup/day per IP** · **Free tier** (5 unique numbers/day, $0) · **Pro** ($4.99/mo for 1,000 unique numbers, unlimited re-polls, $0.015/extra) · **HTTP 402 Stripe MPP** ($0.50 for 25-number `lsk_pack_` key or $0.02/number in USDC on Tempo) |

## Why developers use `lastscanned` for GLS US / GSO

- **Deduplicates reused tracking numbers automatically**: Shippers on GLS US frequently reuse tracking numbers or reference numbers across multiple shipments over time, causing raw GLS US API responses to return multiple shipment objects for a single number. `lastscanned` automatically sorts matching shipments by newest `shipDate` and latest scan timestamp so you always get the active parcel.
- **Translates GSO service codes & return-to-sender (`RTS`) states**: Raw GLS US responses return legacy GSO service codes (`CPS` → `"GLS Ground"`, `PDS` → `"Priority Overnight"`, `EPS` → `"Early Priority Overnight"`, `NPS` → `"Noon Priority Overnight"`, `SDS` → `"Saturday Delivery"`, `ESS` → `"Early Saturday Delivery"`) and stuff return reasons (`"RTS - UNABLE TO CONTACT RCPNT"`) into the `signedBy` field on returned shipments. `lastscanned` maps service names cleanly and clears `signedBy` to `null` unless the parcel is actually `delivered`.
- **West Coast timezone normalization**: GLS US prints scan times in local wall-clock time without a UTC offset. `lastscanned` maps Pacific states (`CA`, `NV`, `OR`, `WA` → `America/Los_Angeles`) and Arizona (`AZ` → `America/Phoenix`, no DST) to compute accurate UTC `timestamp` values alongside `localTime`.

## Tracking Number Formats & Why `?carrier=glsus` Is Required

| Pass | Rule / Regex | Check Digit | Examples |
|---|---|---|---|
| **Pass 1 (`matches`)** | *None (`false`)* — **Never auto-detected** | — | — |
| **Pass 2 (`mayMatch`)** | *None* — **Never auto-detected** | — | — |
| **Explicit (`?carrier=glsus`)** | 9-digit GSO numbers, 8–11 digit numeric barcodes, or alphanumeric shipper references (`CA0W…`, 20-digit references) | — | `512345678`, `758110995`, `CA0W2208048` |

### Why GLS US is never auto-detected

1. **No check digit or fixed prefix on 9-digit GSO numbers**: Standard 9-digit numbers (`512345678`) have no check digit, and 20-digit shipper references collide directly with [FedEx](/carriers/fedex) and [DHL Paket](/carriers/dhl).
2. **Shipper-supplied tracking numbers**: GLS US indexes parcels by whatever barcode or reference number the shipper prints on the label, and even answers test/placeholder numbers (`123456789`) that shippers have reused. Requiring `?carrier=glsus` guarantees zero false positives on other carriers' numbers.

## Synchronous `GET` Request & Normalized JSON Response

### `curl`

```bash
curl -s "https://api.lastscanned.com/v1/track/512345678?carrier=glsus" \
  -H "Authorization: Bearer $LASTSCANNED_API_KEY"
```

### JavaScript / TypeScript (`fetch`)

```ts
const res = await fetch("https://api.lastscanned.com/v1/track/512345678?carrier=glsus", {
  headers: { Authorization: `Bearer ${process.env.LASTSCANNED_API_KEY}` },
});
const pkg = await res.json();
console.log(pkg.status, pkg.service, pkg.signedBy);
```

### MCP `track_package` tool call

```json
{
  "tool": "track_package",
  "arguments": {
    "tracking_number": "512345678",
    "carrier": "glsus"
  }
}
```

### Normalized `TrackingResult` JSON response

```json
{
  "carrier": "glsus",
  "trackingNumber": "512345678",
  "status": "delivered",
  "statusDescription": "SHIPMENT DELIVERED",
  "service": "GLS Ground",
  "deliveredAt": "2026-10-24T20:15:00Z",
  "deliveredAtLocal": "2026-10-24T13:15:00",
  "signedBy": "FRONT DOOR",
  "destination": {
    "city": "OAKLAND",
    "state": "CA",
    "country": "US"
  },
  "estimatedDelivery": null,
  "events": [
    {
      "timestamp": "2026-10-24T20:15:00Z",
      "localTime": "2026-10-24T13:15:00",
      "status": "delivered",
      "description": "SHIPMENT DELIVERED",
      "location": "OAKLAND, CA",
      "code": null
    },
    {
      "timestamp": "2026-10-24T15:10:00Z",
      "localTime": "2026-10-24T08:10:00",
      "status": "out_for_delivery",
      "description": "ON ROUTE FOR DELIVERY",
      "location": "HAYWARD, CA",
      "code": null
    },
    {
      "timestamp": "2026-10-24T11:42:00Z",
      "localTime": "2026-10-24T04:42:00",
      "status": "in_transit",
      "description": "SCANNED AT DELIVERY DEPOT",
      "location": "HAYWARD, CA",
      "code": null
    },
    {
      "timestamp": "2026-10-23T22:05:00Z",
      "localTime": "2026-10-23T15:05:00",
      "status": "label_created",
      "description": "LABEL CREATED",
      "location": null,
      "code": null
    }
  ]
}
```

## Related Resources

- **Live browser lookup tool**: [Track a GLS US package live on lastscanned.com/lookup/glsus](https://lastscanned.com/lookup/glsus)
- **Carrier hub**: [All 31 supported carriers](/carriers)
- **Regex & check digits**: [Tracking number formats & auto-detection](/formats)
- **AI support workflows**: [WISMO AI agents & synchronous tracking](/wismo)
