---
title: "Getting started"
description: "Keep shopper consent in sync between dealerMe and your own systems."
canonical_url: "https://dealerme.com/docs/getting-started"
---

> Index of every page on this site: [llms.txt](https://dealerme.com/llms.txt)

Use the dealerMe API to keep shopper consent in sync between dealerMe and your own systems: whether each contact has agreed to be reached by email, text or phone call.

## Base URL

All endpoints live under version 1 of the API:

```text
https://api.dealerme.com/v1
```

Send and receive JSON. Include `Accept: application/json` on every request, and `Content-Type: application/json` when you send a body.

## Making a request

Every request needs an API token, plus a header that tells dealerMe which organization the request is for. See [Authentication](https://dealerme.com/docs/authentication) for how to create a token and which header each endpoint expects.

<code-group>

```bash [CURL]
DEALERME_TOKEN="your API token"
DEALERME_ORG_ID="your organization id"

curl "https://api.dealerme.com/v1/consent-management/email/consent?contact_value=jane@example.com" \
  -H "Authorization: Bearer $DEALERME_TOKEN" \
  -H "X-DealerMe-Organization-Id: $DEALERME_ORG_ID" \
  -H 'Accept: application/json'
```

</code-group>

## Errors

dealerMe uses standard HTTP status codes.

<table>
<thead>
  <tr>
    <th>
      Status
    </th>
    
    <th>
      Meaning
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      <code>
        200
      </code>
      
      , <code>
        201
      </code>
    </td>
    
    <td>
      The request succeeded.
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        401
      </code>
    </td>
    
    <td>
      The API token is missing or invalid.
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        403
      </code>
    </td>
    
    <td>
      The organization doesn't exist, or the token's user isn't a member of it.
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        422
      </code>
    </td>
    
    <td>
      The request body didn't pass validation. The response lists each problem by field.
    </td>
  </tr>
  
  <tr>
    <td>
      <code>
        429
      </code>
    </td>
    
    <td>
      Too many requests. Wait and try again.
    </td>
  </tr>
</tbody>
</table>

A validation error looks like this:

```json
{
  "message": "The email field is required.",
  "errors": {
    "email": ["The email field is required."]
  }
}
```

## What's in the API

<table>
<thead>
  <tr>
    <th>
      Area
    </th>
    
    <th>
      What it's for
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      <a href="/docs/api/consent">
        Consent
      </a>
    </td>
    
    <td>
      Whether a contact has agreed to be reached by email, text or phone call.
    </td>
  </tr>
</tbody>
</table>

## Sitemap

See the full [sitemap](https://dealerme.com/sitemap.md) for all pages.
