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

# Affinity: V2 Reminders Post

> Create a Reminder. Affinity V2 Reminders Post reference includes SDK V2 and CLI requests, input constraints, response fields, and Deepline cost.

Create a Reminder.

<Info>
  Tool ID: `affinity_v2_reminders_post`
</Info>

## Run this action

Use the TypeScript SDK for a single call. Put `ctx.tools.execute(...)` inside a Play when the call should be durable, scheduled, or run across a CSV.

```ts theme={null}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'affinity_v2_reminders_post',
  {
    "owner": {
      "id": 123
    },
    "entity": {
      "type": "company",
      "id": 123
    },
    "type": "one-time"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={null}
deepline tools execute affinity_v2_reminders_post --input '{
  "owner": {
    "id": 123
  },
  "entity": {
    "type": "company",
    "id": 123
  },
  "type": "one-time"
}' --json
```

## Example response

The static output schema is not detailed enough to generate a reliable example. Use `deepline tools get affinity_v2_reminders_post --json` for the complete live contract.

## Input reference

Request body for creating a reminder. Discriminated by `type` — see `reminders.OneTimeReminderToBeCreated` and `reminders.RecurringReminderToBeCreated`. Exactly one of `company`, `person`, or `opportunity` must be provided.

| Name                 | Type                        | Required | Default | Details                                                                                                                                                                         |
| -------------------- | --------------------------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `payload.owner`      | `object`                    | Yes      | —       | —                                                                                                                                                                               |
| `payload.content`    | `string`                    | No       | —       | Free-form text attached to the reminder.                                                                                                                                        |
| `payload.entity`     | `object`                    | Yes      | —       | The entity the reminder is attached to. Exactly one of `company`, `person`, or `opportunity` can be tagged on a reminder — the variant is selected by the `type` discriminator. |
| `payload.type`       | `"one-time" \| "recurring"` | Yes      | —       | Allowed: `one-time`, `recurring`.                                                                                                                                               |
| `payload.dueDate`    | `string`                    | No       | —       | —                                                                                                                                                                               |
| `payload.recurrence` | `object`                    | No       | —       | Recurrence configuration.                                                                                                                                                       |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Request body for creating a reminder. Discriminated by `type` — see `reminders.OneTimeReminderToBeCreated` and `reminders.RecurringReminderToBeCreated`. Exactly one of `company`, `person`, or `opportunity` must be provided.",
    "properties": {
      "owner": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The persons's unique identifier",
            "minimum": 1,
            "maximum": 9007199254740991,
            "format": "int64"
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      },
      "content": {
        "type": [
          "string",
          "null"
        ],
        "description": "Free-form text attached to the reminder."
      },
      "entity": {
        "type": "object",
        "description": "The entity the reminder is attached to. Exactly one of `company`, `person`, or `opportunity` can be tagged on a reminder — the variant is selected by the `type` discriminator.",
        "properties": {
          "type": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "company",
                  "person"
                ]
              },
              {
                "type": "string",
                "description": "Discriminator. Always `opportunity` for this variant.",
                "const": "opportunity"
              }
            ]
          },
          "id": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The company's unique identifier.",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              },
              {
                "type": "integer",
                "description": "The person's unique identifier.",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              },
              {
                "type": "integer",
                "description": "The opportunity's unique identifier.",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              }
            ]
          }
        },
        "required": [
          "type",
          "id"
        ],
        "anyOf": [
          {
            "type": "object",
            "description": "Reference to a Company tagged on a reminder being created.",
            "properties": {
              "type": {
                "type": "string",
                "description": "Discriminator. Always `company` for this variant.",
                "const": "company"
              },
              "id": {
                "type": "integer",
                "description": "The company's unique identifier.",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              }
            },
            "required": [
              "type",
              "id"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "description": "Reference to a Person tagged on a reminder being created. Must reference an external person or collaborator.",
            "properties": {
              "type": {
                "type": "string",
                "description": "Discriminator. Always `person` for this variant.",
                "const": "person"
              },
              "id": {
                "type": "integer",
                "description": "The person's unique identifier.",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              }
            },
            "required": [
              "type",
              "id"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "description": "Reference to an Opportunity tagged on a reminder being created.",
            "properties": {
              "type": {
                "type": "string",
                "description": "Discriminator. Always `opportunity` for this variant.",
                "const": "opportunity"
              },
              "id": {
                "type": "integer",
                "description": "The opportunity's unique identifier.",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              }
            },
            "required": [
              "type",
              "id"
            ],
            "additionalProperties": false
          }
        ],
        "additionalProperties": false
      },
      "type": {
        "type": "string",
        "enum": [
          "one-time",
          "recurring"
        ]
      },
      "dueDate": {
        "anyOf": [
          {
            "type": "string",
            "description": "When the reminder is due.",
            "format": "date-time"
          },
          {
            "type": "string",
            "description": "When the reminder is due. Optional for recurring reminders; computed from `recurrence.periodDays` when omitted.",
            "format": "date-time"
          }
        ]
      },
      "recurrence": {
        "type": "object",
        "description": "Recurrence configuration.",
        "properties": {
          "resetTrigger": {
            "type": "string",
            "description": "The interaction that resets a recurring reminder's clock. `interaction` covers both emails and calendar events.",
            "enum": [
              "interaction",
              "email",
              "event"
            ]
          },
          "periodDays": {
            "type": "integer",
            "description": "Number of days between successive due dates.",
            "minimum": 1,
            "maximum": 2147483647,
            "format": "int32"
          }
        },
        "required": [
          "resetTrigger",
          "periodDays"
        ],
        "additionalProperties": false
      }
    },
    "required": [
      "owner",
      "entity",
      "type"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

| Name                                  | Type                                                            | Required | Default | Details                                                 |
| ------------------------------------- | --------------------------------------------------------------- | -------- | ------- | ------------------------------------------------------- |
| `result.data`                         | `object`                                                        | Yes      | —       | —                                                       |
| `result.data.id`                      | `integer`                                                       | Yes      | —       | Format: `int64`. Minimum: 1. Maximum: 9007199254740991. |
| `result.data.content`                 | `string \| null`                                                | Yes      | —       | —                                                       |
| `result.data.dueDate`                 | `string`                                                        | Yes      | —       | Format: `date-time`.                                    |
| `result.data.creator`                 | `object`                                                        | Yes      | —       | —                                                       |
| `result.data.creator.id`              | `integer`                                                       | Yes      | —       | Format: `int64`. Minimum: 1. Maximum: 9007199254740991. |
| `result.data.owner`                   | `object`                                                        | Yes      | —       | —                                                       |
| `result.data.owner.id`                | `integer`                                                       | Yes      | —       | Format: `int64`. Minimum: 1. Maximum: 9007199254740991. |
| `result.data.completer`               | `record`                                                        | Yes      | —       | —                                                       |
| `result.data.company`                 | `record`                                                        | Yes      | —       | —                                                       |
| `result.data.person`                  | `record`                                                        | Yes      | —       | —                                                       |
| `result.data.opportunity`             | `record`                                                        | Yes      | —       | —                                                       |
| `result.data.createdAt`               | `string`                                                        | Yes      | —       | Format: `date-time`.                                    |
| `result.data.updatedAt`               | `string \| null`                                                | Yes      | —       | Format: `date-time`.                                    |
| `result.data.type`                    | `"one-time" \| "recurring"`                                     | Yes      | —       | Allowed: `one-time`, `recurring`.                       |
| `result.data.status`                  | `"active" \| "overdue" \| "completed" \| "active" \| "overdue"` | Yes      | —       | —                                                       |
| `result.data.completedAt`             | `string \| null`                                                | Yes      | —       | Format: `date-time`.                                    |
| `result.data.recurrence`              | `object \| null`                                                | Yes      | —       | —                                                       |
| `result.data.recurrence.resetTrigger` | `"interaction" \| "email" \| "event"`                           | Yes      | —       | Allowed: `interaction`, `email`, `event`.               |
| `result.data.recurrence.periodDays`   | `integer`                                                       | Yes      | —       | Format: `int32`. Minimum: 1. Maximum: 2147483647.       |
| `result.meta`                         | `object`                                                        | No       | —       | —                                                       |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "data": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "minimum": 1,
            "maximum": 9007199254740991,
            "format": "int64"
          },
          "content": {
            "type": [
              "string",
              "null"
            ]
          },
          "dueDate": {
            "type": "string",
            "format": "date-time"
          },
          "creator": {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              }
            },
            "required": [
              "id"
            ],
            "additionalProperties": false
          },
          "owner": {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              }
            },
            "required": [
              "id"
            ],
            "additionalProperties": false
          },
          "completer": {
            "type": "object",
            "additionalProperties": true
          },
          "company": {
            "type": "object",
            "additionalProperties": true
          },
          "person": {
            "type": "object",
            "additionalProperties": true
          },
          "opportunity": {
            "type": "object",
            "additionalProperties": true
          },
          "createdAt": {
            "type": "string",
            "format": "date-time"
          },
          "updatedAt": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time"
          },
          "type": {
            "type": "string",
            "enum": [
              "one-time",
              "recurring"
            ]
          },
          "status": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "active",
                  "overdue",
                  "completed"
                ]
              },
              {
                "type": "string",
                "enum": [
                  "active",
                  "overdue"
                ]
              }
            ]
          },
          "completedAt": {
            "type": [
              "string",
              "null"
            ],
            "format": "date-time"
          },
          "recurrence": {
            "type": [
              "object",
              "null"
            ],
            "properties": {
              "resetTrigger": {
                "type": "string",
                "enum": [
                  "interaction",
                  "email",
                  "event"
                ]
              },
              "periodDays": {
                "type": "integer",
                "minimum": 1,
                "maximum": 2147483647,
                "format": "int32"
              }
            },
            "required": [
              "resetTrigger",
              "periodDays"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "id",
          "content",
          "dueDate",
          "creator",
          "owner",
          "completer",
          "company",
          "person",
          "opportunity",
          "createdAt",
          "updatedAt",
          "type",
          "status",
          "completedAt",
          "recurrence"
        ],
        "anyOf": [
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              },
              "content": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "dueDate": {
                "type": "string",
                "format": "date-time"
              },
              "creator": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 9007199254740991,
                    "format": "int64"
                  }
                },
                "required": [
                  "id"
                ],
                "additionalProperties": false
              },
              "owner": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 9007199254740991,
                    "format": "int64"
                  }
                },
                "required": [
                  "id"
                ],
                "additionalProperties": false
              },
              "completer": {
                "type": "object",
                "additionalProperties": true
              },
              "company": {
                "type": "object",
                "additionalProperties": true
              },
              "person": {
                "type": "object",
                "additionalProperties": true
              },
              "opportunity": {
                "type": "object",
                "additionalProperties": true
              },
              "createdAt": {
                "type": "string",
                "format": "date-time"
              },
              "updatedAt": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "date-time"
              }
            },
            "required": [
              "id",
              "content",
              "dueDate",
              "creator",
              "owner",
              "completer",
              "company",
              "person",
              "opportunity",
              "createdAt",
              "updatedAt"
            ],
            "additionalProperties": false
          },
          {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer",
                "minimum": 1,
                "maximum": 9007199254740991,
                "format": "int64"
              },
              "content": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "dueDate": {
                "type": "string",
                "format": "date-time"
              },
              "creator": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 9007199254740991,
                    "format": "int64"
                  }
                },
                "required": [
                  "id"
                ],
                "additionalProperties": false
              },
              "owner": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 9007199254740991,
                    "format": "int64"
                  }
                },
                "required": [
                  "id"
                ],
                "additionalProperties": false
              },
              "completer": {
                "type": "object",
                "additionalProperties": true
              },
              "company": {
                "type": "object",
                "additionalProperties": true
              },
              "person": {
                "type": "object",
                "additionalProperties": true
              },
              "opportunity": {
                "type": "object",
                "additionalProperties": true
              },
              "createdAt": {
                "type": "string",
                "format": "date-time"
              },
              "updatedAt": {
                "type": [
                  "string",
                  "null"
                ],
                "format": "date-time"
              }
            },
            "required": [
              "id",
              "content",
              "dueDate",
              "creator",
              "owner",
              "completer",
              "company",
              "person",
              "opportunity",
              "createdAt",
              "updatedAt"
            ],
            "additionalProperties": false
          }
        ],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Affinity provider guide](/docs/providers/affinity/guide)
* [SDK V2 quickstart](/docs/sdk-v2/quickstart)
* [SDK reference](/docs/sdk-v2/sdk-reference)
* [Run tools across a CSV](/docs/sdk-v2/batch-csv)
