# Authenticate an account

Source: https://developers.swell.is/backend-api/accounts/authenticate-an-account

Perform account login on the server-side using this query. An application should maintain a session to store whether the account successfully logged in. The call will return the account record if `email` and `password` matched, or `null` if no account is found with the requested combination.

## Arguments

- `email` (string, required): Email of the account to authenticate.
- `password` (string, required): Plain-text password of the account to authenticate.

## Example request

`POST /accounts/:login`

**cURL**

```bash
$ curl https://api.swell.store/accounts/:login \
  -u store-id:secret-key \
  -d email=user@example.com \
  -d 'password=3xAmPLe!@#$'
```

**Node**

```javascript
const { swell } = require('swell-node');
swell.init('store-id', 'secret-key');

await swell.get('/accounts/:login', {
  email: 'user@example.com',
  password: '3xAmPLe!@#$'
});
```

**PHP**

```php
<?php $swell = new \Swell\Client('store-id', 'secret-key');

$swell->get('/accounts/:login', [
  'email' => 'user@example.com',
  'password' => '3xAmPLe!@#$'
]);
```

## Example response

```json
{
  "id": "60f1994f9111e70000000001",
  "email": "lachance@darkbrotherhood.com",
  "balance": 50,
  "billing": {
    "name": "Lucien Lachance",
    "first_name": "Lucien",
    "last_name": "Lechance",
    "address1": "Abandoned House",
    "city": "Cheydinhal",
    "state": "NY",
    "zip": 11201,
    "country": "US",
    "phone": "(555) 555-5555",
    "method": "card",
    "card": {
      "token": "card_1Ds1K7E30PFlZWil6Q7bJ1PD",
      "test": true,
      "last4": "4242",
      "brand": "Visa",
      "address_check": "unchecked",
      "zip_check": "unchecked",
      "cvc_check": "unchecked",
      "exp_month": 1,
      "exp_year": 2029,
      "fingerprint": "3e63991847bbdaafdbc5c8f110ad803f"
    },
    "account_card_id": "5c3ac9870b3b171a7dfaf089"
  },
  "cart_abandoned_count": 18,
  "currency": "USD",
  "date_created": "2021-07-16T14:35:59.938Z",
  "date_first_cart_abandoned": "2018-01-01T00:00:00.000Z",
  "date_first_order": "2019-01-01T00:00:00.000Z",
  "date_last_cart_abandoned": "2021-07-16T14:35:59.938Z",
  "date_last_login": "2021-07-16T14:35:59.938Z",
  "date_last_order": "2021-07-16T14:35:59.938Z",
  "date_updated": "2021-07-16T14:35:59.938Z",
  "first_name": "Lucien",
  "group": "vip",
  "last_name": "Lechance",
  "name": "Lucien Lechance",
  "order_value": 5,
  "password": "$2a$06$hnxbq8likRXJFRa6VrKn7uayucRZw1dH5EQsHwPbWliy3FoNYIpIq",
  "password_reset_key": null,
  "password_reset_url": null,
  "phone": "(555) 555-5555",
  "shipping": {
    "name": "Lucien Lachance",
    "first_name": "Lucien",
    "last_name": "Lechance",
    "address1": "Abandoned House",
    "city": "Cheydinhal",
    "state": "NY",
    "zip": 11201,
    "country": "US",
    "phone": "(555) 555-5555",
    "account_address_id": "5c12c5fdfcd74b34e19cf659"
  },
  "type": "individual"
}
```
