# OneHash API Documentation

This is the complete API documentation for connecting to the OneHash API using MindCloud's Universal API.

MindCloud offers one normalized API to access 3,400+ apps from a single place. It centralizes authentication and normalizes app APIs so they are easier and more consistent to use.

## Quickstart

1. A **MindCloud account** — sign in or create an account at [MindCloud](https://app.mindcloud.co).
2. A **MindCloud API Key** — create one in [API Keys](https://app.mindcloud.co/user/api-keys). Keep it on your server.
3. At least one **OneHash connection** — create or choose one in [Connections](https://app.mindcloud.co/credentials). Note its `connectionId`.

```text
POST https://connect.mindcloud.co/v2/universal/apps/oneHash/actions/{actionSlug}/run
```

## OneHash actions

- PUT `add-contact-labels` Add Contact Labels
- PUT `add-conversation-labels` Add Conversation Labels
- PUT `assign-conversation` Assign Conversation
- POST `create-canned-response` Create Canned Response
- POST `create-contact` Create Contact
- POST `create-contact-inbox` Create Contact Inbox
- POST `create-conversation` Create Conversation
- POST `create-conversation-message` Create Conversation Message
- POST `create-label` Create Label
- DELETE `delete-canned-response` Delete Canned Response
- DELETE `delete-contact` Delete Contact
- DELETE `delete-label` Delete Label
- GET `filter-contacts` Filter Contacts
- GET `filter-conversations` Filter Conversations
- GET `get-account-details` Get Account Details
- GET `get-contact` Get Contact
- GET `get-conversation` Get Conversation
- GET `get-conversation-counts` Get Conversation Counts
- GET `get-conversation-reporting-events` Get Conversation Reporting Events
- GET `get-label` Get Label
- GET `list-canned-responses` List Canned Responses
- GET `list-contact-conversations` List Contact Conversations
- GET `list-contact-labels` List Contact Labels
- GET `list-contacts` List Contacts
- GET `list-conversation-labels` List Conversation Labels
- GET `list-conversation-messages` List Conversation Messages
- GET `list-conversations` List Conversations
- GET `list-labels` List Labels
- GET `search-contacts` Search Contacts
- PUT `toggle-conversation-priority` Toggle Conversation Priority
- PUT `toggle-conversation-status` Toggle Conversation Status
- PUT `toggle-conversation-typing-status` Toggle Conversation Typing Status
- PUT `update-canned-response` Update Canned Response
- PUT `update-contact` Update Contact
- PUT `update-conversation` Update Conversation
- PUT `update-conversation-custom-attributes` Update Conversation Custom Attributes
- PUT `update-label` Update Label
