---
title: "Publish or unpublish an owned creation"
method: PUT
path: "/api/profile/publications"
---

# Publish or unpublish an owned creation

`PUT /api/profile/publications`

## Request

- Base URL: `https://api.peelaway.io`
- URL: `https://api.peelaway.io/api/profile/publications`
- Auth: API key in cookie `better-auth.session_token`

Browser session required. Publishing requires verified email or billing. Only the selected finished output or ready style is exposed; source files, prompts, recipes, account data and other creations remain private. Thirty changes per hour. Unpublishing revokes the public detail and media endpoints.

## Request body

- object
  - `kind` 'style' | 'image', required
  - `id` string, required: Style version UUID or image job ID
  - `published` boolean, required

## Response `200`

Published status and public identity when published

## Other responses

- `400`: Invalid input
- `401`: Sign in required
- `403`: Verification or browser session required
- `404`: Not owned, unavailable or unfinished creation
- `429`: Too many changes

---

[API](https://skmtc.dev/peelaway/apis/peelaway-image-api.md) · [All operations](https://skmtc.dev/peelaway/apis/peelaway-image-api/llms.txt) · [OpenAPI document](https://skmtc.dev/peelaway/apis/peelaway-image-api/revisions/8ce45533c9d0?raw)
