> For the complete documentation index, see [llms.txt](https://merithic.gitbook.io/merithic-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://merithic.gitbook.io/merithic-docs/api-reference/endpoints.md).

# Endpoints

All endpoints are `POST`, take JSON, and return JSON.

```
https://api.merithic.com
```

| Endpoint                                                                    | Use it for                                                              |
| --------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
| [`/check`](/merithic-docs/api-reference/endpoints/check.md)                 | A quick "is this player licensed?" boolean. Not a security boundary.    |
| [`/unlock`](/merithic-docs/api-reference/endpoints/unlock.md)               | Real licensing. Returns an encrypted payload only a valid key can open. |
| [`/version`](/merithic-docs/api-reference/endpoints/version.md)             | Cheap check for whether a newer build exists.                           |
| [`/update`](/merithic-docs/api-reference/endpoints/update.md)               | Fetch the newest build as an instance tree.                             |
| [`/verify-source`](/merithic-docs/api-reference/endpoints/verify-source.md) | Confirm the running script matches what you uploaded.                   |

## Choosing between /check and /unlock

This is the decision that matters most.

{% tabs %}
{% tab title="Use /unlock" %}
Anything where being bypassed costs you a sale:

* Gating the core functionality of a paid product
* Anything a leaked copy would otherwise run
* Server-side systems, admin panels, paid frameworks

The payload your product needs is inside the ciphertext, so a faked response yields nothing usable.
{% endtab %}

{% tab title="/check is fine" %}
Low-stakes, cosmetic, or advisory:

* Showing a "licensed" badge in your UI
* Deciding whether to display an upsell
* Telemetry and diagnostics

A faked `true` here costs you nothing.
{% endtab %}
{% endtabs %}

## The three identifiers

Nearly every call carries these:

| Field        | What it is                                 |
| ------------ | ------------------------------------------ |
| `user_id`    | The Roblox user ID of the player.          |
| `product_id` | Your product's ID, shown in the dashboard. |
| `key`        | The buyer's license key, unique to them.   |

The key ties a running copy to one buyer. Used under a different user ID, the call fails and the seller gets a **leaked key** alert.

## A typical integration

```
server start
  ├── /unlock   ──> gate the product on the decrypted payload
  └── /version  ──> newer build available?
        └── /update  ──> fetch + apply it
```

## See also

{% content-ref url="/pages/Fyp3OrDXNgiUx96j2SVT" %}
[Errors](/merithic-docs/api-reference/errors.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://merithic.gitbook.io/merithic-docs/api-reference/endpoints.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
