API Docs

API Docs

Base URL: https://akcadag.dev

GET/api/health

Health check.

Response

{ status: "ok", timestamp: string }
GET/api/bookmarks

Returns all public bookmark collections.

Response

{ collections: BookmarkCollection[] }
GET/api/bookmarks/[slug]

Returns a collection with its first page of bookmarks.

Parameters

slugstringCollection slug
pagenumberoptionalPage index (default: 0)

Response

{ collection: BookmarkCollection, items: Bookmark[], hasMore: boolean, nextPage: number | null, total: number }
GET/api/projects

Returns all projects.

Response

{ projects: Project[] }
GET/api/writings

Returns all writings.

Response

{ writings: Writing[] }
GET/api/writings/[slug]

Returns a single writing by slug.

Parameters

slugstringWriting slug

Response

{ writing: Writing }
GET/api/bookmarks/[slug]/items

Returns a paginated list of bookmarks for a collection.

Parameters

slugstringCollection slug
pagenumberoptionalPage index (default: 0)
collectionIdnumberoptionalSkip slug resolution by providing the collection ID directly

Response

{ items: Bookmark[], hasMore: boolean, nextPage: number | null, total: number }

Types

interface Project {
  slug: string
  name: string
  description: string
  url?: string
  repoUrl?: string
  image?: string
  tags: string[]
  status: "active" | "archived"
}

interface BookmarkCollection {
  id: number
  title: string
  slug: string
  count: number
  cover: string | null
  lastUpdate: string
  cardType: "default" | "tweet" | "movie"
}

interface Bookmark {
  id: number
  title: string
  link: string
  domain: string
  cover: string | null
  excerpt: string
  collectionId: number
  created: string
  tags: string[]
}

interface Writing {
  slug: string
  order: number
  title: string
  excerpt: string
  content: string
  contentHtml: string
  coverImage?: string
  publishedAt: string
  tags: string[]
  readingTime: number
}