Skip to content
  • Follow System
  • English
  • 中文

Collection types

Every collection has a type that decides its default allowed resource types and how it shows up in the dashboard. The type is chosen at creation and is immutable afterward — pick carefully.

Built-in types

Picora seeds 9 built-in types. The default resource types are the ones enabled when you create a collection of that type; you can widen them later (expand-only).

Type (collectionType)NameDefault resource typesTypical use
knowledge_baseKnowledge Basedoc, imagePersonal notes / docs (the classic KB)
aigcAIGC Projectdoc, image, video, audioAI generation workflows
comicComicimage, docComic pages + script
audio_dramaAudio Dramaaudio, docPodcast / audiobook + show notes
photo_albumPhoto AlbumimageImage-only album
albumAlbumimage, videoMixed photo + video album
comic_dramaComic Dramaimage, audio, docComic + voice-over + script
movieMovievideo, audio, docFilm + audio track + script
tv_seriesTV Seriesvideo, audio, docSeries organized by episode

The default resource types are a starting point — for example a photo_album can later be widened to also allow video if you want to mix in clips. What you can’t do is shrink the set or change the type itself.

Custom types (Pro+)

On the Pro+ plan you can define your own collection types — for example “Course”, “Newsletter”, or “Storyboard” — each with its own name, icon, and allowed resource types.

  • Create up to 10 custom types.
  • Custom types appear in the type picker alongside the built-in ones.
  • A custom type can only be deleted when no collection is using it (otherwise you get a 409 conflict).

In the dashboard, the New collection dialog has an inline “Create custom type” option (Pro+); the new type is immediately available to select.

For developers

Types are managed through three endpoints (browsable in the API playground):

MethodPathPurposeScope
GET/v1/collection-typesList built-in + your custom typescollection.read
POST/v1/collection-typesCreate a custom type (Pro+)collection.write
DELETE/v1/collection-types/{id}Delete a custom type (must be unused)collection.delete

Creating a type takes name, slug, allowedResourceTypes, and optional icon / description.

Next