# Support tickets

You can create tickets for customers via Moov's API, or customers can directly access support when they are signed in to Moov's Dashboard.

Customers can access Moov support two ways: through an integration built with our [support ticket API](/api/moov-accounts/support/) or, if users are signed in to the Dashboard, they can open an issue through the Dashboard support widget. Note: Only merchants who were onboarded via [hosted onboarding](/guides/accounts/hosted-onboarding/) have access to the Dashboard.

When a support ticket is opened, it creates an issue tied to the Moov account that requests it. You are able to view and track all issues for your connected accounts through the Dashboard. Note, only production accounts will be able to access customer support.

This guide details the API integration.

### [Create a new issue](#create-a-new-issue)

You can use the `POST` support ticket [endpoint](/api/moov-accounts/support/create/) to allow a customer to send Moov a titled message along with their contact info.

```zsh
curl -X POST "https://api.moov.io/accounts/{accountID}/tickets" \
  -H "Authorization: Bearer {token}" \
  --data '{
    "body": "Message body",
    "title": "Message title",
    "contact": {
      "email": "melany.roberts@yahoo.com",
      "name": "Melany Roberts"
  }'\
```

### [Retrieve a support ticket](#retrieve-a-support-ticket)

Once the issue has been created, you can retrieve the issue with the `GET` support ticket [endpoint](/api/moov-accounts/support/get/).

```zsh
curl -X GET "https://api.moov.io/accounts/{accountID}/tickets/{ticketID}" \
  -H "Authorization: Bearer {token}" \
```

The response will include the original support message as well as other relevant data.

```json
{
  "ticketID": "string",
  "number": 1,
  "title": "string",
  "contact": {
    "email": "melany.roberts@yahoo.com",
    "name": "Melany Roberts"
  },
  "status": "new",
  "createdOn": "2025-08-24T14:15:22Z",
  "updatedOn": "2025-08-25T11:00:00Z",
  "latestMessageOn": "2025-08-25T11:00:00Z"
}
```

### [List support ticket messages](#list-support-ticket-messages)

You can retrieve the messages between the customer and Moov support using the list support ticket messages [endpoint](/api/moov-accounts/support/get-messages/).

```zsh
curl -X GET "https://api.moov.io/accounts/{accountID}/tickets/{ticketID}/messages" \
  -H "Authorization: Bearer {token}" \
```

You'll receive a response with all messages associated with the support ticket.

```json
[
  {
    "author": "Melany Roberts",
    "body": "First message",
    "sentOn": "2025-08-24T14:15:22Z"
  },
  {
    "author": "Melany Roberts",
    "body": "Follow up message",
    "sentOn": "2025-08-25T11:00:00Z"
  }
]
```

### [Update support ticket](#update-support-ticket)

You can update the support ticket's status to `closed` when the issue has been resolved using the `PATCH` support ticket [endpoint](/api/moov-accounts/support/update/).

```zsh
curl -X POST "https://api.moov.io/accounts/{accountID}/tickets/{ticketID}" \
  -H "Authorization: Bearer {token}" \
  --data '{
    "status": "closed"
  }'\
```
