Access source GTFS feed data with downloads

GET /v1/getGtfsFeedsDownloads
Base URL: https://capi.busmaps.com:8443

Access source-data records from the GTFS feed catalog, including source validation reports, licenses, short public content and artifact hashes, and versioned download URLs. Every feed includes a prefilled dataRequestUrl. Filter by countryIso or feedName and save each available file using downloadFileName.

Response fields and units

FieldFormat / unitMeaning
feeds[].dataRequestUrl absolute URL Prefilled data-request form for the feed
feeds[].derivatives[].size mebibytes (MiB) Download file size, calculated as bytes / 1,048,576
feeds[].derivatives[].creationDate YYYY-MM-DD Artifact creation date
feeds[].derivatives[].contentHash, feeds[].derivatives[].artifactHash 16 hexadecimal characters Logical GTFS content hash and final-file SHA-256 prefix

Parameters

ParameterTypeRequiredDescriptionExample
countryIso string No ISO country code to filter feeds (e.g., 'USA', 'DNK', 'CHE') IRL
feedName string No Exact feed name to return one feed and its derivatives google-transit-combined

Try It Out

Popular parameters

curl -H "capi-key: Bearer YOUR_API_KEY" \
     -H "capi-host: busmaps.com" \
     "https://capi.busmaps.com:8443/v1/getGtfsFeedsDownloads?countryIso=IRL&feedName=google-transit-combined"

Response Example

[
    {
        "countryUrl": "ireland",
        "countryRegion": "Europe",
        "countryName": "Ireland",
        "countryIso": "IRL",
        "feeds": [
            {
                "feedId": 3,
                "feedName": "google-transit-combined",
                "feedGroupId": 7,
                "feedGroupName": "transport-for-ireland",
                "dataRequestUrl": "https://busmaps.com/en/data-request?scope=feed&feedName=google-transit-combined",
                "derivatives": [
                    {
                        "type": "source_data",
                        "size": 168.33,
                        "path": "https://greens3.transitpdf.com/files/sourcedata/google-transit-combined/711886dd986c0889.zip",
                        "fileName": "source_gtfs.zip",
                        "extension": "zip",
                        "licenseName": "CC_BY",
                        "publicLink": "hidden",
                        "creationDate": "2026-08-19",
                        "contentHash": "23f2f605ec8ad9e5",
                        "artifactHash": "711886dd986c0889",
                        "downloadFileName": "source-gtfs-google-transit-combined.zip"
                    },
                    {
                        "type": "source_data",
                        "size": 0.04,
                        "path": "https://greens3.transitpdf.com/files/derivatives/sourcedata/google-transit-combined/mobilitydata/c4c13c569bfd65e6.zip",
                        "fileName": "md.zip",
                        "extension": "zip",
                        "licenseName": "Busmaps_licence_v1",
                        "licenseLink": "https://busmaps.com/en/license",
                        "creationDate": "2026-08-21",
                        "artifactHash": "c4c13c569bfd65e6",
                        "downloadFileName": "google-transit-combined-mobilitydata-report.zip"
                    }
                ]
            }
        ]
    }
]

Response Schema

View JSON Schema
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "title": "GTFS Feeds Catalog Response",
    "type": "array",
    "items": {
        "type": "object",
        "properties": {
            "countryIso": {
                "type": "string",
                "description": "ISO 3166-1 alpha-3 country code"
            },
            "countryName": {
                "type": "string",
                "description": "Country name"
            },
            "feeds": {
                "type": "array",
                "items": {
                    "type": "object",
                    "properties": {
                        "feedId": {
                            "type": "integer",
                            "description": "Unique feed identifier"
                        },
                        "feedGroupId": {
                            "type": "integer",
                            "description": "Feed group identifier"
                        },
                        "dataRequestUrl": {
                            "type": "string",
                            "format": "uri",
                            "description": "Prefilled data-request form for the feed"
                        },
                        "derivatives": {
                            "type": "array",
                            "items": {
                                "type": "object",
                                "properties": {
                                    "creationDate": {
                                        "type": "string",
                                        "description": "Date feed was created/updated (YYYY-MM-DD format)"
                                    },
                                    "routeTypes": {
                                        "type": [
                                            "array",
                                            "null",
                                            "object"
                                        ],
                                        "items": {
                                            "type": "object",
                                            "properties": {
                                                "routeType": {
                                                    "type": "integer",
                                                    "description": "Transport type (bus, subway, train, tram)"
                                                },
                                                "routeTypeName": {
                                                    "type": "string",
                                                    "description": "Human-readable transport type name"
                                                },
                                                "routeTypeGroup": {
                                                    "type": "string",
                                                    "description": "Grouped transport category"
                                                }
                                            },
                                            "required": [
                                                "routeTypeName",
                                                "routeType",
                                                "routeTypeGroup"
                                            ]
                                        },
                                        "description": "Route types present in the feed",
                                        "properties": {
                                            "routeTypeName": {
                                                "type": "string",
                                                "description": "Human-readable transport type name"
                                            },
                                            "routeType": {
                                                "type": "integer",
                                                "description": "Transport type (bus, subway, train, tram)"
                                            },
                                            "routeTypeGroup": {
                                                "type": "string",
                                                "description": "Grouped transport category"
                                            }
                                        }
                                    },
                                    "path": {
                                        "type": "string",
                                        "description": "Current color-prefixed R2 download URL; versioned artifact paths use the 16-character artifactHash as the final directory segment"
                                    },
                                    "licenseName": {
                                        "type": "string",
                                        "description": "License identifier"
                                    },
                                    "fileName": {
                                        "type": "string",
                                        "description": "Descriptive file name"
                                    },
                                    "extension": {
                                        "type": "string",
                                        "description": "File format (zip, geojson)"
                                    },
                                    "type": {
                                        "type": "string",
                                        "enum": [
                                            "source_data"
                                        ],
                                        "description": "Source-data discriminator"
                                    },
                                    "licenseLink": {
                                        "type": "string",
                                        "description": "URL to license details"
                                    },
                                    "contentHash": {
                                        "type": "string",
                                        "description": "First 16 hexadecimal characters of the logical GTFS content hash"
                                    },
                                    "artifactHash": {
                                        "type": "string",
                                        "description": "First 16 hexadecimal characters of the final file SHA-256"
                                    },
                                    "downloadFileName": {
                                        "type": "string",
                                        "description": "Descriptive filename to use when saving the download"
                                    },
                                    "publicLink": {
                                        "type": [
                                            "null",
                                            "string"
                                        ],
                                        "description": "Public source URL (if available)"
                                    },
                                    "size": {
                                        "type": "number",
                                        "description": "Download file size in mebibytes (MiB), calculated as bytes / 1,048,576"
                                    },
                                    "feedId": {
                                        "type": "integer",
                                        "description": "Reference to parent feed"
                                    },
                                    "sha1": {
                                        "type": "string",
                                        "description": "SHA1 checksum"
                                    },
                                    "sha256": {
                                        "type": "string",
                                        "description": "SHA256 checksum"
                                    }
                                },
                                "required": [
                                    "extension",
                                    "type",
                                    "creationDate",
                                    "path",
                                    "fileName",
                                    "size"
                                ]
                            },
                            "description": "Source-data records for the feed with downloads; empty for restricted feeds"
                        },
                        "feedName": {
                            "type": "string",
                            "description": "Feed name identifier"
                        },
                        "feedGroupName": {
                            "type": "string",
                            "description": "Human-readable feed group name"
                        }
                    },
                    "required": [
                        "feedId",
                        "feedGroupId",
                        "dataRequestUrl",
                        "derivatives",
                        "feedName",
                        "feedGroupName"
                    ]
                },
                "description": "Array of GTFS feeds for the country"
            },
            "countryUrl": {
                "type": "string",
                "description": "Country URL slug"
            },
            "countryRegion": {
                "type": "string",
                "description": "World region"
            }
        },
        "required": [
            "countryIso",
            "countryName",
            "feeds",
            "countryUrl",
            "countryRegion"
        ]
    },
    "description": "Array of country objects, each containing their available GTFS feeds"
}

Response Codes

200 GTFS feeds catalog retrieved successfully
400 Invalid country code
500 Internal server error