---
title: "Create an action for a specific contact"
description: "POST /contacts/{contact_id}/actions — Creates an action on this contact. text is required — the step to take, max 140 characters. status sets the action type: asap, date, date_time, waiting or queued (default date); assignee_id defaults…"
canonical_url: https://developer.onepagecrm.com/api/reference/contacts/post-contacts-contact_id-actions/
source: Markdown mirror of https://developer.onepagecrm.com/api/reference/contacts/post-contacts-contact_id-actions/
---

`POST /contacts/{contact_id}/actions`

Creates an action on this contact. text is required — the step to take, max 140 characters. status sets the action type: asap, date, date_time, waiting or queued (default date); assignee_id defaults to the calling user. A contact holds one ASAP action per assignee — creating a second demotes the existing one to a dated action for today.

Resource: [Contacts](https://developer.onepagecrm.com/api/reference/contacts/) · [API Reference](https://developer.onepagecrm.com/api/reference/)

## Request

```bash
curl -X POST "https://app.onepagecrm.com/api/v3/contacts/{contact_id}/actions" \
  -u $user_id:$api_key \
  -H "Content-Type: application/json" \
  -d '{
    "assignee_id": "5aaa9b009007ba08c9ebaef7",
    "status": "date_time",
    "text": "#1 Email Jane introducing our organization",
    "date": "2018-05-16",
    "exact_time": 1526472000,
    "position": 1
  }'
```

Authentication is HTTP Basic — `user_id` as username, `api_key` as password.
See https://developer.onepagecrm.com/api/authentication/.

## Path parameters

| Name | Type | Description |
| --- | --- | --- |
| `contact_id` | string | Contact ID |

## Request body

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `assignee_id` | string (bson-id) |  | ID of the user, to whom the action is assigned. Defaults to the logged API user's ID. |
| `status` | string |  | Status of the action |
| `text` | string |  | The main text/description of the action |
| `date` | string (date) |  | Due date for the action (status must be one of `date`, `date_time` or `queued_with_date`). Defaults to today's date. |
| `exact_time` | integer (unix-timestamp) |  | The UNIX Epoch time in seconds the action is due (status must be `date_time`) |
| `position` | integer (int32) |  | The position of the action (in the list of queued actions) |

## Responses

### 201

Created

```json
{
  "status": 0,
  "message": "OK",
  "timestamp": 1528373119,
  "data": {
    "action": {
      "id": "5aeac8789007ba56ffca92b9",
      "assignee_id": "5aaa9b009007ba08c9ebaef7",
      "contact_id": "5aba31ea9007ba0f570c92d4",
      "text": "#1 Email Jane introducing our organization",
      "status": "date_time",
      "date": "2018-05-16",
      "exact_time": 1526472000,
      "position": 1,
      "done": false,
      "done_at": "2018-05-16",
      "created_at": "2018-05-16T11:52:09Z",
      "modified_at": "2018-05-16T12:52:09Z"
    }
  }
}
```

Standard error responses: 400, 401, 403, 404, 409, 500 — shared across the API. See https://developer.onepagecrm.com/api/errors/.

## Related guides

- [Authentication](https://developer.onepagecrm.com/api/authentication/)
- [Errors](https://developer.onepagecrm.com/api/errors/)
- [Rate limits](https://developer.onepagecrm.com/api/rate-limits/)
