# Sessions API API

> Sessions API API on Apizie: 4 endpoints (Logs in a customer and obtains an authentication ticket., Checks the validity of a session ticket., Log out a customer., Obtains a one-time Service Ticket that can be used to access other William Hill services.) returned as clean JSON through one API key. 4 endpoints are live now. Call it over REST at https://zieapi.vercel.app/v1/entertainment:whapi-sessions/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `entertainment:whapi-sessions`
- Category: Entertainment
- Status: live
- Source: http://developer.williamhill.com
- Page: https://zieapi.vercel.app/api/entertainment/whapi-sessions
- OpenAPI: https://zieapi.vercel.app/api/entertainment/whapi-sessions/openapi.json

The William Hill Sessions API uses a central authentication service (CAS*) on all resources that require access to a customer’s account or betting functionality. To authenticate, you’ll need to supply a sportsbook…

## Endpoints

### Logs in a customer and obtains an authentication ticket.
`POST https://zieapi.vercel.app/v1/entertainment:whapi-sessions/log-in`

| Parameter | Type | Required | Description |
|---|---|---|---|
| apiKey | string | yes | A unique identifier of your application that is generated by the API portal. |
| apiSecret | string | yes | Another unique identifier for your application. |
| fields | array | no | Specify an absolute field list to return (Comma Separated List) |
| include | array | no | Specify fields in addition to the default to return (Comma Separated List) |
| exclude | array | no | Specify fields from the default to exclude (Comma Separated List) |
| territory | string | no | Territory from which request originates |
| languageAsPerTerritory | string | no | Defines response field name language, true (default) returns in language defined by territory, false returns in English |
| body | object | yes | JSON request body |

### Checks the validity of a session ticket.
`GET https://zieapi.vercel.app/v1/entertainment:whapi-sessions/validate-session`

| Parameter | Type | Required | Description |
|---|---|---|---|
| apiKey | string | yes | A unique identifier of your application that is generated by the API portal. |
| apiSecret | string | yes | Another unique identifier for your application. |
| tgt | string | yes | Ticket Granting Ticket obtained from a previous request |
| territory | string | no | Territory from which request originates |
| languageAsPerTerritory | string | no | Defines response field name language, true (default) returns in language defined by territory, false returns in English |

### Log out a customer.
`POST https://zieapi.vercel.app/v1/entertainment:whapi-sessions/log-out`

| Parameter | Type | Required | Description |
|---|---|---|---|
| apiKey | string | yes | A unique identifier of your application that is generated by the API portal. |
| apiSecret | string | yes | Another unique identifier for your application. |
| tgt | string | yes | Ticket Granting Ticket obtained from a previous request |
| territory | string | no | Territory from which request originates |
| languageAsPerTerritory | string | no | Defines response field name language, true (default) returns in language defined by territory, false returns in English |

### Obtains a one-time Service Ticket that can be used to access other William Hill services.
`GET https://zieapi.vercel.app/v1/entertainment:whapi-sessions/get-service-ticket`

| Parameter | Type | Required | Description |
|---|---|---|---|
| apiKey | string | yes | A unique identifier of your application that is generated by the API portal. |
| apiSecret | string | yes | Another unique identifier for your application. |
| tgt | string | yes | Ticket Granting Ticket obtained from a previous request |
| territory | string | no | Territory from which request originates |
| languageAsPerTerritory | string | no | Defines response field name language, true (default) returns in language defined by territory, false returns in English |
| target | string | yes | The target URL of the CAS enabled service that you want to use with the service ticket. |
| fields | array | no | Specify an absolute field list to return (Comma Separated List) |
| include | array | no | Specify fields in addition to the default to return (Comma Separated List) |
| exclude | array | no | Specify fields from the default to exclude (Comma Separated List) |

## Example
```
curl "https://zieapi.vercel.app/v1/entertainment:whapi-sessions/log-in" \
  -H "x-api-key: $APIZIE_KEY"
```

## FAQ

### How do I call the Sessions API API?
Create a free Apizie key, then send POST https://zieapi.vercel.app/v1/entertainment:whapi-sessions/log-in with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Sessions API API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card.

### Can AI agents use the Sessions API API?
Yes. Add the Apizie MCP server (https://zieapi.vercel.app/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key entertainment:whapi-sessions.

### What is the status of the Sessions API API?
Live: works with just an Apizie key
