Loading...
Loading...
Build integrations with the Skydeca API.
Create an API key in your settings
Include your key in the Authorization header
Search, fetch media, tags, and transcripts
All API requests require authentication via an API key. Include your key in the Authorization header.
curl -H "Authorization: Bearer sk_your_api_key" \
https://skydeca.com/api/v1/search?q=exampleAlternatively, you can use the X-API-Key header.
/api/v1/searchSearch across decks, media, tags, and more
Scope: search
q(string) required - Search queryfilters(string) - Comma-separated: decks,tags,media,profiles,stacks,tag_mapslimit(number) - Results per page (max 50)offset(number) - Pagination offsetcurl -H "Authorization: Bearer sk_xxx" \
"https://skydeca.com/api/v1/search?q=technology&filters=media,tags&limit=10"/api/v1/media/:mediaIdGet details for a specific media item
Scope: read, media
mediaId(uuid) required - Media ID (path parameter)curl -H "Authorization: Bearer sk_xxx" \
"https://skydeca.com/api/v1/media/123e4567-e89b-12d3-a456-426614174000"/api/v1/media/:mediaId/tagsGet all tags for a media item
Scope: read, tags
mediaId(uuid) required - Media ID (path parameter)curl -H "Authorization: Bearer sk_xxx" \
"https://skydeca.com/api/v1/media/123e4567-e89b-12d3-a456-426614174000/tags"/api/v1/media/:mediaId/transcriptGet the transcript for a media item. Supports JSON, SRT, and VTT formats.
Scope: read
mediaId(uuid) required - Media ID (path parameter)format(string) - Output format: json (default), srt, vtttimestamps(boolean) - Include timestamps (default: true)curl -H "Authorization: Bearer sk_xxx" \
"https://skydeca.com/api/v1/media/123e4567-e89b-12d3-a456-426614174000/transcript?format=srt"/api/v1/tagsList and search tags
Scope: read, tags
q(string) - Search querytype(string) - Filter by tag type (person, place, topic, etc.)sort(string) - Sort by: usage (default), alpha, recentlimit(number) - Results per page (max 100)offset(number) - Pagination offsetcurl -H "Authorization: Bearer sk_xxx" \
"https://skydeca.com/api/v1/tags?q=AI&type=topic&sort=usage&limit=20"/api/v1/decks/:deckIdGet deck details. Accepts deck ID (UUID) or deck name.
Scope: read
deckId(string) required - Deck ID or deck name (path parameter)curl -H "Authorization: Bearer sk_xxx" \
"https://skydeca.com/api/v1/decks/my-deck"/api/v1/user/usageGet API usage statistics for your API key
Scope: read
curl -H "Authorization: Bearer sk_xxx" \
"https://skydeca.com/api/v1/user/usage"API keys can be created with specific scopes to limit access:
| Scope | Access |
|---|---|
read | Base read access to all GET endpoints |
search | Access to search endpoint |
tags | Access to tags endpoints |
media | Access to media endpoints |
analytics | Access to analytics data |
admin | Full access to all endpoints |
API requests are rate limited per API key. Default limits:
Rate limit headers are included in every response:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
X-RateLimit-Reset: 1702656000000
X-RateLimit-Daily-Limit: 10000
X-RateLimit-Daily-Remaining: 9998const response = await fetch('https://skydeca.com/api/v1/search?q=AI', {
headers: {
'Authorization': 'Bearer sk_your_api_key'
}
});
const data = await response.json();
console.log(data.data.results);import requests
response = requests.get(
'https://skydeca.com/api/v1/search',
params={'q': 'AI'},
headers={'Authorization': 'Bearer sk_your_api_key'}
)
data = response.json()
print(data['data']['results'])Create an API key and start integrating with Skydeca today.
Create API Key