College Football Data API
collegefootballdata · Data
This is an API for accessing all sorts of college football data. Please note that API keys should be supplied with "Bearer " prepended (e.g. "Bearer your_key"). API keys can be acquired from the CollegeFootballData.com website.
Authentication
Sample Requests
Get calendar of weeks by season
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/calendar?year=2024"
import requests
params = {
"year": "2024"
}
response = requests.get(
"https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/calendar",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/calendar');
url.searchParams.set('year', '2024');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/calendar")
q := baseURL.Query()
q.Set("year", "2024")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/calendar")
uri.query = URI.encode_www_form({
"year" => "2024"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/calendar?" . http_build_query([
"year" => "2024"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Coaching history
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/coaches?team=example&year=2024&maxYear=1&minYear=1&lastName=example&firstName=example"
import requests
params = {
"team": "example",
"year": "2024",
"maxYear": "1",
"minYear": "1",
"lastName": "example",
"firstName": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/coaches",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/coaches');
url.searchParams.set('team', 'example');
url.searchParams.set('year', '2024');
url.searchParams.set('maxYear', '1');
url.searchParams.set('minYear', '1');
url.searchParams.set('lastName', 'example');
url.searchParams.set('firstName', 'example');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/coaches")
q := baseURL.Query()
q.Set("team", "example")
q.Set("year", "2024")
q.Set("maxYear", "1")
q.Set("minYear", "1")
q.Set("lastName", "example")
q.Set("firstName", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/coaches")
uri.query = URI.encode_www_form({
"team" => "example",
"year" => "2024",
"maxYear" => "1",
"minYear" => "1",
"lastName" => "example",
"firstName" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/coaches?" . http_build_query([
"team" => "example",
"year" => "2024",
"maxYear" => "1",
"minYear" => "1",
"lastName" => "example",
"firstName" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Get game drives
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/drives?team=example&week=1&year=2024&defense=example&offense=example&conference=example&seasonType=regular&classification=example&defenseConference=example&offenseConference=example"
import requests
params = {
"team": "example",
"week": "1",
"year": "2024",
"defense": "example",
"offense": "example",
"conference": "example",
"seasonType": "regular",
"classification": "example",
"defenseConference": "example",
"offenseConference": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/drives",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/drives');
url.searchParams.set('team', 'example');
url.searchParams.set('week', '1');
url.searchParams.set('year', '2024');
url.searchParams.set('defense', 'example');
url.searchParams.set('offense', 'example');
url.searchParams.set('conference', 'example');
url.searchParams.set('seasonType', 'regular');
url.searchParams.set('classification', 'example');
url.searchParams.set('defenseConference', 'example');
url.searchParams.set('offenseConference', 'example');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/drives")
q := baseURL.Query()
q.Set("team", "example")
q.Set("week", "1")
q.Set("year", "2024")
q.Set("defense", "example")
q.Set("offense", "example")
q.Set("conference", "example")
q.Set("seasonType", "regular")
q.Set("classification", "example")
q.Set("defenseConference", "example")
q.Set("offenseConference", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/drives")
uri.query = URI.encode_www_form({
"team" => "example",
"week" => "1",
"year" => "2024",
"defense" => "example",
"offense" => "example",
"conference" => "example",
"seasonType" => "regular",
"classification" => "example",
"defenseConference" => "example",
"offenseConference" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/collegefootballdata.com/4.4.12/drives?" . http_build_query([
"team" => "example",
"week" => "1",
"year" => "2024",
"defense" => "example",
"offense" => "example",
"conference" => "example",
"seasonType" => "regular",
"classification" => "example",
"defenseConference" => "example",
"offenseConference" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with College Football Data API?
College Football Data API is a Data API. Developers commonly use data APIs for:
- enriching your app with third-party datasets
- building data pipelines and ETL workflows
- querying and searching large datasets
- powering research, analysis, and reporting tools
- syncing reference data into your own systems
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. College Football Data API is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide · Learn about API keys · What is REST?