---
title: "Sharing · intentic sandbox API"
description: "Conversations published as read-only pages. Every route in the sharing group of the intentic sandbox API, with its input, its answer and a playground."
url: "https://intentic.dev/api/share/"
---

Ship and share

# Sharing

Conversations published as read-only pages

**On this page (4 sections)**

- [Conversations published as pages](#share-list)
- [Publish a conversation](#share-create)
- [Refresh a published page](#share-update)
- [Unpublish a conversation](#share-remove)

What is currently shared, publishing a conversation, re-rendering one from how it stands now, and taking it down. As with the outbox, the page itself is the read.

**GET`/share` Conversations published as pages**

Every conversation that has been turned into a read-only page, with its link. There is no call to read one back: the page itself is the read, and it answers to anyone who has the link.

### What you send

Nothing. Call it as it is.

### What comes back

| Field | Type |
| --- | --- |
| `shares` Every conversation currently published as a… | object[] |
| `id` The share's own id, minted fresh… | string |
| `conversationId` Which conversation it was taken from | string |
| `title` The title on the page, which… | string |
| `detail` How much travels: the two speakers'… | "messages" | "everything" |
| `sharedAt` When the snapshot was taken, in… | number |
| `messages` How many messages are behind the… | number |
| `url` The page's address | string |

Try it answered in this tab

curl

```bash
curl "$SANDBOX/share" \
 -H "x-intentic-control: $INTENTIC_TOKEN"
```

TypeScript

```typescript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.share.list();
```

**POST`/share` Publish a conversation**

Renders a conversation into a page anybody with the link can read, without signing in. Answers with the link, so nothing has to be listed again to find it.

### What you send

| Field | Type | Where |
| --- | --- | --- |
| `conversationId` required Which conversation to publish | string | body |
| `title` required The title for the page | string | body |
| `detail` required How much to publish | "messages" | "everything" | body |

### What comes back

| Field | Type |
| --- | --- |
| `id` The share's own id, minted fresh… | string |
| `conversationId` Which conversation it was taken from | string |
| `title` The title on the page, which… | string |
| `detail` How much travels: the two speakers'… | "messages" | "everything" |
| `sharedAt` When the snapshot was taken, in… | number |
| `messages` How many messages are behind the… | number |
| `url` The page's address | string |

Try it answered in this tab

curl

```bash
curl -X POST "$SANDBOX/share" \
 -H "x-intentic-control: $INTENTIC_TOKEN" \
 -H "content-type: application/json" \
 -d '{"conversationId":"nightly-changelog","title":"Update the changelog","detail":"messages"}'
```

TypeScript

```typescript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.share.create({
 "conversationId": "nightly-changelog",
 "title": "Update the changelog",
 "detail": "messages"
});
```

**POST`/share/update` Refresh a published page**

Re-renders an existing page from the conversation as it stands now. Same link, newer contents.

### What you send

| Field | Type | Where |
| --- | --- | --- |
| `id` required Which share to re-take | string | body |

### What comes back

| Field | Type |
| --- | --- |
| `id` The share's own id, minted fresh… | string |
| `conversationId` Which conversation it was taken from | string |
| `title` The title on the page, which… | string |
| `detail` How much travels: the two speakers'… | "messages" | "everything" |
| `sharedAt` When the snapshot was taken, in… | number |
| `messages` How many messages are behind the… | number |
| `url` The page's address | string |

Try it answered in this tab

curl

```bash
curl -X POST "$SANDBOX/share/update" \
 -H "x-intentic-control: $INTENTIC_TOKEN" \
 -H "content-type: application/json" \
 -d '{"id":"a1b2c3d4"}'
```

TypeScript

```typescript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.share.update({
 "id": "a1b2c3d4"
});
```

**POST`/share/remove` Unpublish a conversation**

Takes the page down, so the link stops answering.

### What you send

| Field | Type | Where |
| --- | --- | --- |
| `id` required Which share to take down | string | body |

### What comes back

| Field | Type |
| --- | --- |
| `ok` Always true | true |

Try it answered in this tab

curl

```bash
curl -X POST "$SANDBOX/share/remove" \
 -H "x-intentic-control: $INTENTIC_TOKEN" \
 -H "content-type: application/json" \
 -d '{"id":"a1b2c3d4"}'
```

TypeScript

```typescript
import { sandbox } from "@intentic/sandbox-client";

const result = await sandbox.share.remove({
 "id": "a1b2c3d4"
});
```

More in Ship and share

[Previous ← Outbox](https://intentic.dev/api/public/)[Next Post drafts →](https://intentic.dev/api/drafts/)
