The Assets library
Assets sits in the app sidebar right after Boards, because a campaign's material and the boards that use it are two halves of the same work. It works like any drive you know: a breadcrumb, the folder you're in as the title, and one table of names, dates, types, and sizes, folders first. Switch to a grid when you'd rather see pictures.
It opens on Files, the start of the drive, where your own folders live. Two automatic folders sit next to them:
- Boards
- One folder per board, holding its creatives and every file uploaded on its cards. You never file anything here by hand: uploading on a card puts the file in its board's folder.
- Brand
- The files in your brand guidelines: logos, fonts, example emails. Read-only here; you change them in Guidelines.
Search covers all of it, including files on cards and the current version of every creative, and each result says where it lives. Filters narrow a long list down by kind of file, placement, and licence.
Uploading
Upload takes files, a whole folder, or a zip, or drop them straight onto the page. Loose files land in the folder you have open. A whole folder or a zip becomes a delivery: a folder that keeps the structure inside it, for a batch that arrived together, like a photo shoot or an agency handover.
Your agent uploads too. Give it a link and Plainpaper fetches the file server-side and stores it privately, so nobody downloads and re-uploads anything by hand. It can also upload files it already has, like a chart it generated or an image its image tool made.
Here's our hero image: https://bookstore.plainpaper.io/images/summer-hero.jpg Store it in Plainpaper and use it as the hero in the Mail 1 email card on my "Summer sale" board. Don't link to the original URL. I want the stored copy in the email.
Supported formats: PNG, JPEG, GIF, WebP, TIFF, and SVG images; MP4, QuickTime, and WebM video; PDF, HTML, and plain-text files; font files (TTF, OTF, WOFF, WOFF2); and the open files designs are made in, from Photoshop, Illustrator, and InDesign. Files can be up to 512 MiB each, and a zip up to 2 GiB.
Deliveries & the handover checklist
A delivery opens on its handover checklist: what it holds (raw photos, finals, logos, font files, textless video, the open files) and what's missing. If something didn't arrive, Copy the request gives you a ready message to send to whoever made the delivery.
Sorting a delivery is good work to hand your agent. It looks at each file, captions and tags it, pairs every final with the raw photo it was made from, and groups the sizes of one design into a family, so the next search finds exactly the right file.
Go through the newest delivery in Assets in Plainpaper. Caption and tag every file, pair each final with the raw photo it was made from, and group the sizes of each design. Then tell me what the handover checklist says is missing.
Files on a card
A card uses files from anywhere in Assets. Open a card and the drawer lists every file it has: the name, where it sits on the card ("The ad's image", "In the email", "In the text"), and where the file lives. The + opens one picker with five sources:
- Upload
- A new file from your computer. It goes into Assets and onto the card in one step.
- Files
- Anything in your folders, with search across all of Assets.
- Creatives
- This board's creatives. Only ready ones can be picked, and an ad's slot takes only ad sizes.
- On this board
- Files already uploaded on the board's other cards.
- Brand
- Your logos and other files from Guidelines.
The same picker opens from an ad's image slot (one per carousel card) and from Insert image in the email and text editors, so you never copy a file reference by hand. Where a file can go follows one rule: an ad's image or video, each card of a carousel, the top of an email, or the end of a card's text, where an image shows as a picture and any other file as a link. Putting a file on an approved card sends it back to awaiting approval, so what you approved is always what the card holds.
Your agent sees the same list. "Use the photo I put on the card" works, because the agent reads every file a card has along with the card itself.
On my "Summer sale" board in Plainpaper, use the photo I put on the Mail 1 card as the email's hero image, and tell me which other cards use that photo.
A file in use stays
You can't delete a file a card uses, or a folder that holds one. Plainpaper names the cards instead, so you know where the file still matters. Deleting a card or a whole board keeps the files other cards still use: they move to Files.
To take a file off one card without deleting it, use Take off this card in the file's menu in the drawer. The file stays where it lives, and the card gives up its place: an ad loses its image, the image leaves the email, and a carousel card keeps its words and gets an empty image slot, which has to be filled again before the ad can be approved.
Rights & licences
Open any file and its drawer has a Rights section: who holds the licence and when it ends, whether there are people in shot and their image rights are cleared, and whether AI edits are allowed on the photo. Assets marks a licence that ends within 60 days, and one that has ended.
Approval checks it. A card that uses a photo whose licence has ended can't be approved, whether the photo sits on the card itself or inside a creative the card uses, and Plainpaper names the photo, the licence holder, and the date. Rights are yours to set. Your agent reads them, and checks whether AI edits are allowed before it reworks a photo, but it can't change them.
What your agent does in Assets
Your agent finds files by name, caption, tag, or family, looks at the image itself, and writes captions and tags so the next search works for both of you. It keeps what it made in order, and only that: it may move and rename the files and folders it created itself. Everything you filed stays where you put it. If your agent thinks a file belongs somewhere else, it proposes the move, and the suggestion waits in Assets for you to accept or decline.
Private by default
Every file lives in Plainpaper's private storage. There are no public URLs, so your unreleased creative is not sitting on some guessable link for a competitor to stumble on. Previews inside the app use short-lived secure links that expire on their own.
That matters more than it sounds. A campaign in progress is full of things that aren't public yet: the sale price, the launch date, the new product shot. Private by default means Assets can hold all of it without anyone having to think about where the files actually are.
Why external image links are rejected
The lazy way to put an image in an email is to paste a link to wherever it lives today. That works until the source site moves the file, renames it, or goes private. Then your campaign's creative silently breaks, usually after you stopped looking at it.
So Plainpaper doesn't allow it: card content that embeds an outside image or video URL is rejected, and the error tells the agent how to store the file properly instead. Your agent learns the rule the first time it trips over it, and the board stays whole. Ordinary text links in prose ("see our returns page") are fine; the rule only covers embedded media.
The same rule protects the handoff later: when your agent eventually pushes the campaign out, it ships the stored file instead of a link that might be dead by launch day.
asset:// and placeholder://
Inside card content, a stored file is referenced as
asset://, a pointer to the file in Plainpaper's
storage that gets swapped for a secure preview when you view the
card in the app. Your agent can only reference files that actually
exist; it can't invent an asset id and hope. You never type one
yourself: the picker places the file for you.
When an image doesn't exist yet, placeholder:// is the
honest way to say "an image goes here and I don't have it". It
renders as a labeled pending slot on the card, and it blocks
approval until it's filled with a real file. That turns your board
into a visible checklist of what you still owe. The references
themselves never appear in the app; you see the image, or the
labeled slot where one is due.
List every unfilled image placeholder on my "Summer sale" board in Plainpaper, with the card it's on and what's supposed to go in the slot, so I know exactly what's still missing.
Previews & processing
Thumbnails and video previews are generated in the background after upload, so a large video can take a moment before its preview appears. The file itself is safely stored the whole time; only the preview is catching up. Your agent can see the status too, so it knows to wait for a preview rather than reference one that isn't ready yet.
Handoff
When work is approved, your agent retrieves the stored files and pushes them out through the destination platform's own connector: Brevo for the email, Meta for the ad upload, whichever connectors your agent has. Plainpaper never publishes anything itself. It's where the work and its files live, and it holds none of your platform logins. See Connect your marketing stack for how those connections fit together.
Related
- Creatives: the finished images your agent makes for a board, and how you review them.
- Cards & connections: the drawer where a card's files are listed.
- AI image tools for marketing visuals: connectors that generate the images you store here.
- Free stock photos for your agent: no API key and no MCP server needed.
- Free stock video for your agent: the same browse-and-grab route, for footage.