Title: Test Your new Connection[¶](#test-your-new-connection "Permanent link")

URL Source: https://docs.shipp.ai/instructions/test/

Markdown Content:
---
description: Test your Shipp Connections
---

<!doctype html> 

[Skip to content ](#test-your-new-connection) 

* [ Shipp your product ](../shipp/)
* [ How to Shipp ](../../how-to/)
* [ API Reference ](../../api-reference/)
* [ Guides ](../../platform-guides/)
* [ Go To Shipp Dashboard ](https://platform.shipp.ai)

# Test Your new Connection[¶](#test-your-new-connection "Permanent link")

Diving Deep?

This page is designed for AI Agents & users developing code directly. See [Getting Started](../../) and [Platform Guides](../../platform-guides/)

Testing is a crucial part of building any software. Shipp is no exception, so make sure your feed is doing what you intend as early as possible!

---

## Call the connection[¶](#call-the-connection "Permanent link")

use the `connection_id` of the feed you want to use. Our example here is `01KFXTX1WDQ68A1GS77T1XJ5YB`You have 3 optional fields to reduce cost and total time to retrieve events. Once you've pulled the initial data, set since\_event\_id to only new events.

* `since` (string, ISO 8601 / RFC 3339, optional): A reference time to pull results starting from. Default: 48 hours ago
* `limit` (int, optional): a limit of events to return. Default: 100
* `since_event_id` (ULID, optional): id of the last received event

[Get more info](../../how-to/#step-4-run-the-connection-to-fetch-updates) about creating / using connections

cURLJavaScriptPython

`[](#%5F%5Fcodelineno-0-1)curl https://api.shipp.ai/api/v1/connections/01KFXTX1WDQ68A1GS77T1XJ5YB?api_key=<Your API Key> -d '{
[](#%5F%5Fcodelineno-0-2)  "since": "2026-01-27T16:48:41-05:00",
[](#%5F%5Fcodelineno-0-3)  "limit": 100
[](#%5F%5Fcodelineno-0-4)}'
`

`` [](#%5F%5Fcodelineno-1-1)const apiKey = "YOUR_API_KEY_HERE";
[](#%5F%5Fcodelineno-1-2)const url = `https://api.shipp.ai/api/v1/connections/01KFXTX1WDQ68A1GS77T1XJ5YB?api_key=${apiKey}`;
[](#%5F%5Fcodelineno-1-3)
[](#%5F%5Fcodelineno-1-4)const response = await fetch(url, {
[](#%5F%5Fcodelineno-1-5)  method: 'POST',
[](#%5F%5Fcodelineno-1-6)  headers: {
[](#%5F%5Fcodelineno-1-7)    'Content-Type': 'application/json'
[](#%5F%5Fcodelineno-1-8)  },
[](#%5F%5Fcodelineno-1-9)  body: JSON.stringify({
[](#%5F%5Fcodelineno-1-10)    since: "2026-01-27T16:48:41-05:00",
[](#%5F%5Fcodelineno-1-11)    limit: 100
[](#%5F%5Fcodelineno-1-12)  })
[](#%5F%5Fcodelineno-1-13)});
[](#%5F%5Fcodelineno-1-14)
[](#%5F%5Fcodelineno-1-15)const result = await response.json();
 ``

`[](#%5F%5Fcodelineno-2-1)import requests
[](#%5F%5Fcodelineno-2-2)
[](#%5F%5Fcodelineno-2-3)url = "https://api.shipp.ai/api/v1/connections/01KFXTX1WDQ68A1GS77T1XJ5YB"
[](#%5F%5Fcodelineno-2-4)api_key = "YOUR_API_KEY_HERE"
[](#%5F%5Fcodelineno-2-5)
[](#%5F%5Fcodelineno-2-6)params = {
[](#%5F%5Fcodelineno-2-7)    "api_key": api_key
[](#%5F%5Fcodelineno-2-8)}
[](#%5F%5Fcodelineno-2-9)
[](#%5F%5Fcodelineno-2-10)payload = {
[](#%5F%5Fcodelineno-2-11)    "since": "2026-01-27T16:48:41-05:00",
[](#%5F%5Fcodelineno-2-12)    "limit": 100
[](#%5F%5Fcodelineno-2-13)}
[](#%5F%5Fcodelineno-2-14)
[](#%5F%5Fcodelineno-2-15)response = requests.post(url, json=payload, params=params)
`

200 Response Code, should return something like

`[](#%5F%5Fcodelineno-3-1){
[](#%5F%5Fcodelineno-3-2)  "connection_id": "01KFXTX1WDQ68A1GS77T1XJ5YB",
[](#%5F%5Fcodelineno-3-3)  "data": [
[](#%5F%5Fcodelineno-3-4)    {
[](#%5F%5Fcodelineno-3-5)      "id": "01KGE0VFBBEX367CT75MPVW1D9",
[](#%5F%5Fcodelineno-3-6)      "game_id": "01KFXTXKW5NDCMF58FKWJHCFCB",
[](#%5F%5Fcodelineno-3-7)      "sport": 1,
[](#%5F%5Fcodelineno-3-8)      "home_name": "Team A",
[](#%5F%5Fcodelineno-3-9)      "away_name": "Team B",
[](#%5F%5Fcodelineno-3-10)      "desc": "Some event description",
[](#%5F%5Fcodelineno-3-11)      "game_clock": "12:34",
[](#%5F%5Fcodelineno-3-12)      "game_period": 2,
[](#%5F%5Fcodelineno-3-13)      "home_points": 54,
[](#%5F%5Fcodelineno-3-14)      "away_points": 51,
[](#%5F%5Fcodelineno-3-15)      "wall_clock_start": "2026-01-28T12:34:56Z"
[](#%5F%5Fcodelineno-3-16)    }
[](#%5F%5Fcodelineno-3-17)  ]
[](#%5F%5Fcodelineno-3-18)}
`

Note

* The `data` array contains **rows of event data**. Each row is a JSON object with fields that may vary based on what the feed’s filter retrieves and what data is available.
* Many fields are omitted if they’re not present or not requested by the underlying filter logic.
* [Go deeper](../../how-to) when you're ready

Save the ID

saving the id is crucial for managing spend and eliminating duplicate data. You'll pass this ID next time you call this connection

---

## Editing Connections[¶](#editing-connections "Permanent link")

Shipp will be adding support for editing connections soon. For now simply create a new feed.

## Enable your App[¶](#enable-your-app "Permanent link")

After testing, add the new connection directly to your app. Users should call your backend endpoint, which forwards requests to shipp with an API Key. 

Many apps will display [future sport games](../../api-reference/sport-schedule) with the API, or create custom connections ad-hoc to specific games to use when live.

To get the future schedule

cURLJavaScriptPython

`[](#%5F%5Fcodelineno-4-1)curl https://api.shipp.ai/api/v1/sports/nba?api_key=<Your API Key>
`

`` [](#%5F%5Fcodelineno-5-1)const apiKey = "YOUR_API_KEY_HERE";
[](#%5F%5Fcodelineno-5-2)const url = `https://api.shipp.ai/api/v1/sports/nba?api_key=${apiKey}`;
[](#%5F%5Fcodelineno-5-3)
[](#%5F%5Fcodelineno-5-4)const response = await fetch(url, {
[](#%5F%5Fcodelineno-5-5)  method: 'GET',
[](#%5F%5Fcodelineno-5-6)  headers: {
[](#%5F%5Fcodelineno-5-7)    'Content-Type': 'application/json'
[](#%5F%5Fcodelineno-5-8)  },
[](#%5F%5Fcodelineno-5-9)});
[](#%5F%5Fcodelineno-5-10)
[](#%5F%5Fcodelineno-5-11)const result = await response.json();
 ``

`[](#%5F%5Fcodelineno-6-1)import requests
[](#%5F%5Fcodelineno-6-2)
[](#%5F%5Fcodelineno-6-3)url = "https://api.shipp.ai/api/v1/sports/nba"
[](#%5F%5Fcodelineno-6-4)api_key = "YOUR_API_KEY_HERE"
[](#%5F%5Fcodelineno-6-5)
[](#%5F%5Fcodelineno-6-6)params = {
[](#%5F%5Fcodelineno-6-7)    "api_key": api_key
[](#%5F%5Fcodelineno-6-8)}
[](#%5F%5Fcodelineno-6-9)
[](#%5F%5Fcodelineno-6-10)response = requests.get(url, params=params)
`

`[](#%5F%5Fcodelineno-7-1){
[](#%5F%5Fcodelineno-7-2)  "schedule": [
[](#%5F%5Fcodelineno-7-3)    {
[](#%5F%5Fcodelineno-7-4)      "game_id": "01KG974NP72YXW37WT41EG7388",
[](#%5F%5Fcodelineno-7-5)      "scheduled": "2026-02-02T02:00:00Z",
[](#%5F%5Fcodelineno-7-6)      "home": "Portland Trail Blazers",
[](#%5F%5Fcodelineno-7-7)      "away": "Cleveland Cavaliers"
[](#%5F%5Fcodelineno-7-8)    },
[](#%5F%5Fcodelineno-7-9)    {
[](#%5F%5Fcodelineno-7-10)      "game_id": "01KG974NJJ1H0QTEGRB31TKEVX",
[](#%5F%5Fcodelineno-7-11)      "scheduled": "2026-02-02T02:00:00Z",
[](#%5F%5Fcodelineno-7-12)      "home": "San Antonio Spurs",
[](#%5F%5Fcodelineno-7-13)      "away": "Orlando Magic"
[](#%5F%5Fcodelineno-7-14)    },
[](#%5F%5Fcodelineno-7-15)  ]
[](#%5F%5Fcodelineno-7-16)}
`

Back to top