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

# Introduction

> Aptly is a property management platform. This API gives external tools, scripts, and AI agents direct read/write access to your boards, cards, contacts, and more.

<Note>
  **Documentation Index**
  Fetch the complete index of all available pages at: [https://docs.getaptly.com/llms.txt](https://docs.getaptly.com/llms.txt)
  Start here to discover all endpoints before exploring further.
</Note>

Aptly is a property management platform that helps companies run leasing, maintenance, resident operations, and more. The Aptly API gives external tools, scripts, and AI agents direct read/write access to your Aptly data.

Use this API to sync data from a PMS, build a custom integration, automate workflows, or connect an AI agent to your boards.

## How Aptly is structured

Understanding the data model makes the API much easier to use.

| Object      | Description                                                                                                                                                                                                        |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Company** | The top-level account. Your API key is scoped to a company.                                                                                                                                                        |
| **Board**   | A workspace that tracks a specific workflow. Examples: a Leasing board for prospects and applications, a Maintenance board for work orders, a Residents board for active leases. Identified by a `boardId` (UUID). |
| **Card**    | An individual record on a board. A card might represent a lead, a lease, a work order, or a vendor. Identified by `_id`.                                                                                           |
| **Field**   | A structured data column on a board. Each field has a UUID key, a human-readable label, and a type (text, date, money, multiselect, etc.). Fetch the board schema to get the full list before reading or writing.  |
| **Contact** | A person record (prospect, resident, owner, vendor) scoped to the company. Contacts can be linked to cards across multiple boards.                                                                                 |

## What you can do

* **Read and list cards** — paginate through all cards on a board or fetch a single card by ID
* **Create and update cards** — push records into any board using field keys from the schema
* **Manage contacts** — create, update, and look up people records by email across all boards
* **Add comments and files** — attach notes or documents to any card
* **Add tab views** — embed external URLs as tabs directly on a board
* **Read the board schema** — discover field keys and types before reading or writing data

## Who this API is for

**Developers** building integrations between Aptly and other tools like PMS platforms, telephony systems, or CRMs.

**AI agents** that need to read board data, create or update cards, look up contacts, or take action based on property management workflows. The Aptly MCP server is the recommended interface for agentic use.

**Operators and automators** running scripts or no-code workflows to push data in and out of Aptly boards.

## MCP server

Aptly exposes a Model Context Protocol (MCP) server for AI agent integrations. This is the recommended way to connect LLMs and AI agents to Aptly.

## Base URL

```
https://core-api.getaptly.com
```

## Quick start

<Steps>
  <Step title="Enable the API for your board">
    In Aptly, open the board → **Card Sources** → **API** and toggle the API on.
  </Step>

  <Step title="Create an API key">
    Under the API section, click **Create New Key**, give it a name, and copy the key value.
  </Step>

  <Step title="Fetch the schema">
    ```bash theme={null}
    curl https://core-api.getaptly.com/api/schema/{boardId} \
      -H "x-token: YOUR_API_KEY"
    ```

    This returns the list of field keys you'll need for reading and writing cards.
  </Step>

  <Step title="Create a card">
    ```bash theme={null}
    curl -X POST https://core-api.getaptly.com/api/board/{boardId} \
      -H "x-token: YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "name": "John Smith", "<fieldKey>": "<value>" }'
    ```
  </Step>
</Steps>
