Skip to content

griddy-sdk


griddy-sdk / GriddyNFL

Class: GriddyNFL

Defined in: src/griddy/nfl/sdk.ts:96

Main client for accessing NFL data from multiple API endpoints.

GriddyNFL provides unified access to NFL data through three API categories:

  • Regular API: Public NFL.com endpoints for games, rosters, standings
  • Pro API: Advanced statistics, betting odds, player projections
  • Next Gen Stats: Player tracking data and advanced analytics

Sub-SDKs are loaded lazily on first access to minimize startup time.

Example

// Initialize with auth token
const nfl = new GriddyNFL({ nflAuth: { accessToken: 'your_token' } });

// Get games
const games = await nfl.games.getGames(2024, 'REG', 1);

// Use with async/await pattern
try {
  const boxScore = await nfl.games.getBoxScore('game-id');
  console.log(boxScore);
} catch (error) {
  console.error('Error:', error);
}

Extends

Constructors

Constructor

new GriddyNFL(options): GriddyNFL

Defined in: src/griddy/nfl/sdk.ts:135

Initialize the GriddyNFL client.

You must provide authentication via a pre-obtained auth token (nflAuth). Browser-based authentication is not implemented in the TypeScript version.

Parameters

options

GriddyNFLOptions

SDK options

Returns

GriddyNFL

Throws

Error if no authentication is provided

Example

const nfl = new GriddyNFL({
  nflAuth: { accessToken: 'your_nfl_access_token' },
  timeoutMs: 30000,
});

Overrides

BaseSDK.constructor

Properties

parentRef

protected parentRef: object = null

Defined in: src/griddy/nfl/baseSdk.ts:76

Inherited from

BaseSDK.parentRef


sdkConfiguration

protected sdkConfiguration: SDKConfiguration

Defined in: src/griddy/nfl/baseSdk.ts:75

Inherited from

BaseSDK.sdkConfiguration

Accessors

games

Get Signature

get games(): Games

Defined in: src/griddy/nfl/sdk.ts:178

Game schedules, scores, and details from the regular API.

Returns

Games

Methods

buildRequest()

protected buildRequest(config): Request

Defined in: src/griddy/nfl/baseSdk.ts:270

Build an HTTP request.

Parameters

config

EndpointConfig

Returns

Request

Inherited from

BaseSDK.buildRequest


close()

close(): void

Defined in: src/griddy/nfl/sdk.ts:205

Close the client and release resources.

Returns

void

Example

const nfl = new GriddyNFL({ nflAuth: { accessToken: 'token' } });
try {
  const games = await nfl.games.getGames(2024, 'REG', 1);
} finally {
  nfl.close();
}

createHookContext()

protected createHookContext(operationId, baseUrl): HookContext

Defined in: src/griddy/nfl/baseSdk.ts:152

Create a hook context for request execution.

Parameters

operationId

string

baseUrl

string

Returns

HookContext

Inherited from

BaseSDK.createHookContext


doRequest()

protected doRequest(hookCtx, request, errorStatusCodes, retryConfig?): Promise\<Response>

Defined in: src/griddy/nfl/baseSdk.ts:338

Execute an HTTP request with hooks and retries.

Parameters

hookCtx

HookContext

request

Request

errorStatusCodes

string[]

retryConfig?
config

RetryConfig

statusCodes

string[]

Returns

Promise\<Response>

Inherited from

BaseSDK.doRequest


executeEndpoint()

protected executeEndpoint\<T>(config): Promise\<T>

Defined in: src/griddy/nfl/baseSdk.ts:522

Execute an endpoint and return the response.

Type Parameters

T

T

Parameters

config

EndpointConfig\<T>

Returns

Promise\<T>

Inherited from

BaseSDK.executeEndpoint


generateUrl()

protected generateUrl(baseUrl, path, request, requestMeta?): string

Defined in: src/griddy/nfl/baseSdk.ts:168

Generate URL with path parameters substituted.

Parameters

baseUrl

string

path

string

request

Record\<string, unknown>

requestMeta?

Record\<string, ParamMetadata>

Returns

string

Inherited from

BaseSDK.generateUrl


getHeaders()

protected getHeaders(request, requestMeta?): Record\<string, string>

Defined in: src/griddy/nfl/baseSdk.ts:222

Get headers from request.

Parameters

request

Record\<string, unknown>

requestMeta?

Record\<string, ParamMetadata>

Returns

Record\<string, string>

Inherited from

BaseSDK.getHeaders


getQueryParams()

protected getQueryParams(request, requestMeta?): Record\<string, string>

Defined in: src/griddy/nfl/baseSdk.ts:197

Get query parameters from request.

Parameters

request

Record\<string, unknown>

requestMeta?

Record\<string, ParamMetadata>

Returns

Record\<string, string>

Inherited from

BaseSDK.getQueryParams


getSecurityParams()

protected getSecurityParams(security): object

Defined in: src/griddy/nfl/baseSdk.ts:247

Get security headers and query params.

Parameters

security

Security | () => Security

Returns

object

headers

headers: Record\<string, string>

queryParams

queryParams: Record\<string, string>

Inherited from

BaseSDK.getSecurityParams


getUrl()

protected getUrl(baseUrl, urlVariables): string

Defined in: src/griddy/nfl/baseSdk.ts:86

Get the URL with template variables.

Parameters

baseUrl

string

urlVariables

Record\<string, string>

Returns

string

Inherited from

BaseSDK.getUrl


handleJsonResponse()

protected handleJsonResponse\<T>(response, errorStatusCodes): Promise\<T>

Defined in: src/griddy/nfl/baseSdk.ts:490

Handle JSON response with error handling.

Type Parameters

T

T

Parameters

response

Response

errorStatusCodes

string[]

Returns

Promise\<T>

Inherited from

BaseSDK.handleJsonResponse


resolveBaseUrl()

protected resolveBaseUrl(serverUrl?, urlVariables?): string

Defined in: src/griddy/nfl/baseSdk.ts:106

Resolve the base URL for a request.

Parameters

serverUrl?

string

urlVariables?

Record\<string, string>

Returns

string

Inherited from

BaseSDK.resolveBaseUrl


resolveRetryConfig()

protected resolveRetryConfig(retries, retryStatusCodes?): object

Defined in: src/griddy/nfl/baseSdk.ts:129

Resolve retry configuration.

Parameters

retries

typeof UNSET | RetryConfig

retryStatusCodes?

string[]

Returns

object

config

config: RetryConfig

statusCodes

statusCodes: string[]

Inherited from

BaseSDK.resolveRetryConfig


resolveTimeout()

protected resolveTimeout(timeoutMs?): number

Defined in: src/griddy/nfl/baseSdk.ts:119

Resolve timeout, falling back to SDK configuration.

Parameters

timeoutMs?

number

Returns

number

Inherited from

BaseSDK.resolveTimeout