> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sageprotocol.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Actions

> Enables creating posts, comments, and likes with royalty and fee enforcement.

```rust theme={null}
use std::string;
use std::clock;
use std::coin;
use std::event;
use std::sui;
use sage_admin::admin_access;
use sage_admin::apps;
use sage_admin::fees;
use sage_post::post;
use sage_post::post_fees;
use sage_shared::likes;
use sage_shared::posts;
```

<Tip>
  Explore this module further in the Mover Registry: @sage/post
</Tip>

## Events

### `CommentCreated`

Comment on a `Post`.

```rust theme={null}
public struct CommentCreated has copy, drop
```

<Expandable title="Fields">
  ```rust theme={null}
    app_id: address,
    created_at: u64,
    created_by: address,
    data: std::string::String,
    description: std::string::String,
    parent_post_id: address,
    post_id: address,
    title: std::string::String
  ```
</Expandable>

### `PostLiked`

Like on a `Post`.

```rust theme={null}
public struct PostLiked has copy, drop
```

<Expandable title="Fields">
  ```rust theme={null}
    post_id: address,
    updated_at: u64,
    user_id: address
  ```
</Expandable>

## Constants

Tried to comment from one `App` to a `Post` on another `App`.

```rust theme={null}
const EAppMismatch: u64 = 370;
```
