ChatGPT (Custom GPT)

Make Quicky.Page a one-click publishing tool inside ChatGPT. Import the public OpenAPI spec as a Custom GPT Action, and ChatGPT can publish a page, update one it already created, or read a published page back — all from inside a normal chat.

Why this is needed

ChatGPT's default browsing tool is read-only; it can GET a webpage to summarize it but cannot POST to third-party APIs. That is an OpenAI product constraint, not a Quicky.Page one. The sanctioned way to let ChatGPT call our publish endpoint is to register a Custom GPT Action pointing at our public OpenAPI spec. After that, ChatGPT is allowed to POST through your Custom GPT.

If you prefer to work inside Claude Desktop, Cursor, or a custom orchestrator, the MCP server covers those clients with the same surface.

One-time setup

  1. Open ChatGPT's GPT Store, then choose Create. In newer ChatGPT UIs this may live under GPT Store, My GPTs, or your profile/avatar menu instead of the old Explore GPTs sidebar item. Requires a ChatGPT account that has access to Custom GPTs.
  2. In Configure, set:
    • Name: Quicky.Page Publisher
    • Description: Publish AI-generated content as a public, shareable web page in seconds.
    • Instructions: paste the system prompt below.
    • Conversation starters: paste the four suggested starters below.
    • Capabilities: turn off Web Browsing, Code Interpreter, and Image Generation unless you specifically want them. The Quicky.Page Action is all this GPT needs.
  3. Scroll to Actions → Create new action. In the Schema panel click Import from URL and paste:
    https://quicky.page/openapi.json
    ChatGPT will load four operations: publishPage, getPage, setPagePublished, and deletePage.
  4. Authentication: leave set to None. Quicky.Page is anonymous and rate-limited by IP; there is no API key to configure.
  5. Privacy policy: ChatGPT requires this field for any Action that talks to a third-party host. Paste:
    https://quicky.page/docs/positioning
    (or your own policy URL).
  6. Click Save → Only me (or Anyone with the link / Public if you want to share the GPT). The action is now live for that GPT.

System prompt

Paste this into the GPT's Instructions field. It teaches the model the product positioning, the markdown-first default, and the post-publish UX rules.

You are the Quicky.Page assistant. Your purpose is to help the user publish AI-generated content as a public web page in seconds.

Quicky.Page is the publishing primitive for AI-generated web artifacts. It is NOT a website builder, NOT a CMS, NOT a hosting platform, and NOT a design tool. Every call produces one shareable web object at one URL.

When the user asks to "publish", "share", "turn into a page", "make a link out of", "put on the web", or otherwise commit an artifact to a public URL, call the publishPage action.

Defaults you should follow unless the user overrides:
  - Send the body as markdown in the "content" field (not "blocks"). Headings, lists, **bold**, *italic*, and [links](https://example.com) all work.
  - If the user supplied a title, pass it in the "title" field. Don't also stack a "# Heading" inside the body — pick one.
  - Theme defaults to "auto-default". Only set "theme" if the user asked for a specific look. Valid IDs are "{mode}-{name}" where mode is light/dark/auto and name is default/editorial/vivid.
  - After a successful publish, ALWAYS show the user TWO links on their own lines so they are easy to copy:
      Share URL (public, read-only): <url>
      Edit URL  (private, editable): <editUrl>
    Then add a one-line warning that anyone with the Edit URL can edit the page, so it should be kept private. The "editUrl" field in the response is in the exact format <base>/?id=<id>#edit=<editKey> — surface that field directly; do not reconstruct it from "editKey". The "editKey" is the same secret in raw form and only needs to be saved if the user plans to call the API directly later.

To update a page the user previously published, call publishPage again with their saved "id" and "editKey" plus the new "content". The same URL stays live and its content is fully replaced (no diff, no history, no rollback). To verify a published page or summarize what is currently live at a URL, call getPage. To permanently remove a page, call deletePage.

Keep responses tight. The product loop is: Open → Edit → Publish → Share. Don't pad the conversation with website-builder offers, multi-page suggestions, or design controls — they aren't supported.

Conversation starters

  • Publish this conversation as a Quicky.Page
  • Turn the following notes into a shareable web page
  • Make me a one-page launch announcement and publish it
  • Read https://quicky.page/abc123 and summarize it

Try it

Open your new GPT and say "Publish this as a Quicky.Page" after any answer. ChatGPT will show a confirmation card describing the call it's about to make to quicky.page; approve once and it will return three things: a public url (safe to share), an editUrl (private — anyone with this URL can edit the page, so treat it like a password), and an editKey (the same secret in raw form, for programmatic updates). The system prompt above tells the GPT to surface both URLs on their own lines.

Updating a page

Pass the saved id and editKey back through publishPage. The same URL stays live; the new content fully replaces the old. Quicky.Page is intentionally not a CMS — there is no diff, no history, no rollback. (If the user only has the editUrl, the editKey is the substring after #edit= in that URL.)

Privacy

By default the published page is anonymous and publicly readable at its URL. Quicky.Page does not require an account, does not collect personal data on publish, and rate-limits at 30 publishes / 5 minutes per IP. The editKey returned to the GPT is a per-page secret; it is the only auth on update + delete and should never be shared in a public message.

What the spec covers

The OpenAPI file at https://quicky.page/openapi.json is the canonical machine-readable description of the public API. It is served as a static asset and is safe to re-import; any time you tweak the GPT, click Re-import from URL to pick up new operations or schema fields without rebuilding the action by hand.


Prefer raw HTTP? See the API reference. Working inside Claude Desktop or Cursor? See the MCP server. Want a one-click publish button in your browser? See the browser extension.