Submissions API¶
Submit new timestamps to the OpenSkip database. All submissions go through a moderation queue before being added.
Authentication Required
All submission endpoints require authentication. See Authentication.
Submit Timestamp¶
Submit a new timestamp for review.
Request Body¶
You can submit for an existing episode or propose a new one:
Fields¶
| Field | Type | Required | Description |
|---|---|---|---|
episode_id | integer | * | Existing episode ID |
proposed_tvdb_id | integer | * | TVDB ID for new show |
proposed_show_title | string | Show title (for new shows) | |
proposed_season | integer | * | Season number |
proposed_episode | integer | * | Episode number |
duration_ms | integer | Yes | File duration in milliseconds |
intro_start | decimal | Intro start (seconds) | |
intro_end | decimal | Intro end (seconds) | |
outro_start | decimal | Outro start (seconds) | |
outro_end | decimal | Outro end (seconds) | |
recap_start | decimal | Recap start (seconds) | |
recap_end | decimal | Recap end (seconds) | |
preview_start | decimal | Preview start (seconds) | |
preview_end | decimal | Preview end (seconds) | |
submitter_notes | string | Notes for moderators |
*Either episode_id OR (proposed_tvdb_id + proposed_season + proposed_episode) required.
Response¶
{
"id": 1,
"user_id": 42,
"episode_id": null,
"proposed_tvdb_id": 81189,
"proposed_show_title": "Breaking Bad",
"proposed_season": 1,
"proposed_episode": 1,
"duration_ms": 3550000,
"intro_start": 0.0,
"intro_end": 45.5,
"outro_start": 3420.0,
"outro_end": 3480.0,
"status": "pending",
"submitted_at": "2024-01-15T10:30:00Z"
}
List Your Submissions¶
List submissions you've made.
Query Parameters¶
| Parameter | Type | Description |
|---|---|---|
status | string | Filter by status: pending, approved, rejected, needs_info |
Example¶
curl -H "Authorization: Bearer <token>" \
"https://api.openskip.io/api/v1/submissions?status=pending"
Response¶
{
"items": [
{
"id": 1,
"status": "pending",
"proposed_show_title": "Breaking Bad",
"proposed_season": 1,
"proposed_episode": 1,
"submitted_at": "2024-01-15T10:30:00Z"
}
],
"total": 1
}
Get Submission¶
Get details of a specific submission.
Submission Status¶
| Status | Description |
|---|---|
pending | Awaiting moderator review |
approved | Accepted and added to database |
rejected | Not accepted |
needs_info | Moderator needs more information |
Submission Guidelines¶
Do
- Double-check your timestamps before submitting
- Include accurate duration for your specific file
- Use the TVDB ID when possible for new shows
- Add notes if there's anything unusual
Don't
- Submit timestamps for trailers or clips
- Submit duplicate entries for episodes that already have data
- Guess at timestamps - verify them
Accuracy Tips¶
Finding Intro End¶
The intro ends when the theme music stops and the episode content begins. Usually marked by a scene change or title card.
Finding Outro Start¶
The outro begins when the end credits start rolling, often accompanied by credits music.
Handling Variations¶
Some shows have:
- Cold opens: Content before the intro
- Mid-credits scenes: Content during outro
- Post-credits scenes: Content after outro
For these cases, set timestamps to skip only the actual credits, not the content.