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

# Get or Create End User

<Info>
  The End User API is now deprecated and has been replaced by the Customer API.
</Info>

This endpoint gets or creates an end user. If the provided\_id does not exist for the provided `customer_id`, a new end user will be created and information about the user will be sent back. If the provided\_id does exist for the `customer_id`, the existing user will be returned.

### Body

<ParamField body="provided_id" type="string" required>
  The ID you use to identify this end user in your database
</ParamField>

<ParamField body="email" type="string" required>
  The email adress of your end user
</ParamField>

<ParamField body="customer_id" type="number" required>
  The ID of the end user group the new user should belong to
</ParamField>

<ParamField body="attributes" type="object">
  A json mapping of key values you can use to load user-specific data into your
  dashboards. Any key value is valid, but header and footer are reserved keys
  that you can use to load html to display in the header and footer of your
  email
</ParamField>

### Response

<ResponseField name="success" type="number">
  Indicates whether the call was successful. 1 if successful, 0 if not.
</ResponseField>

<ResponseField name="end_user" type="object">
  The data of the end user

  <Expandable title="Toggle object">
    <ResponseField name="provided_id" type="string">
      This was the provided\_id provided in the request body
    </ResponseField>

    <ResponseField name="email" type="string">
      This was the email provided in the request body
    </ResponseField>

    <ResponseField name="attributes" type="string">
      This was the set of attributes provided in the request body
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash Example Request theme={null}
  curl --location --request POST 'https://api.explo.co/api/create_end_user/' \
  --header 'Content-Type: application/json' \
  --header 'Explo-Authorization: Token <token>' \
  --data-raw '{
      "provided_id": "example_1",
      "email": "example@explo.co",
      "customer_id": 123
  }'
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  {
    "success": 1,
    "end_user": {
      "provided_id": 3,
      "email": "example@explo.co",
      "attributes": "{'name': 'Example', 'header': '<div/>'"
    }
  }
  ```
</ResponseExample>
