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

# Welcome

> Integrate rewards and reputation into your community in minutes.

<Card title="Rewards Platform ->" icon="rocket" href="https://rewards.openformat.tech/" horizontal>
  The easiest way to get started is to use the rewards platform.
</Card>

## Overview

Open format is an on-chain reward system. At it's core is a set of smart contracts that we call a `dApp` (decentralised app).

<Note>
  We are currently in the process of updating our documentation. If you need any assistance, please reach out to us on
  [Discord](https://discord.gg/Aays8HBkZ2) for support.
</Note>

### Rewards

Reward tokens and badges based on members contributions.
Assets can be created before hand in the [platform](https://rewards.openformat.tech/) or dynamically using the
[SDK](/sdks/typescript/create-badge).

To reward those assets set up triggers in your server-side code.

### Rewarding token example

<CodeGroup>
  ```tsx Typescript theme={null}
  import { RewardActionType, RewardType, toWei } from "@openformat/sdk";

  const params = [
    {
      // The address of the user who is receiving the token
      receiver: "0x821EFACF307Add10fd9A812624955cbEF943265c",
      // A given ID for an action a user completes in your application
      id: "signed-up",
      // The smart contract address of your token
      address: "0x72092f038f94833f37cc197874ac8c9b02689ac1",
      // The amount of tokens the receiver address will receive
      amount: toWei("10"),
      // The type of transaction to trigger e.g mint or transfer
      actionType: RewardActionType.MINT,
      // The type of reward
      rewardType: RewardType.TOKEN,
      // The URI of the token metadata
      uri: "ipfs://",
    },
  ];

  await sdk.Reward.trigger(params);
  ```

  ```curl API theme={null}
  curl --request POST \
    --url https://api.openformat.tech/v1/reward/XP \
    --header 'Content-Type: application/json' \
    --header 'X-API-KEY: <api-key>' \
    --data '{
    "chain": "arbitrum-sepolia",
    "action_id": "signed-up",
    "receiver": "0x821EFACF307Add10fd9A812624955cbEF943265c",
    "app_id": "0x9716fb655f2a72b1fc1b4db02b8ad20b6747442a",
    "amount": 123
  }'
  ```
</CodeGroup>

### Leaderboards

Create simple leaderboards using the [API leaderboard endpoint](/api-reference/endpoint/leaderboard/get-leaderboard)
or with no-code [BuildShip leaderboard template](/no-code/buildship/templates/leaderboard.mdx).

### Webhooks

Use [webhooks](/api-reference/architecture/notifications) to notify users in real-time for channels like Discord and Slack.

<br />

<Card title="Get Started ->" icon="rocket" href="/get-started" horizontal>
  Create your dApp and get an API key.
</Card>
