---
updatedAt: 2026-04-07T00:00:10.000Z
agentTools:
  projectIndex: https://docs.pelcro.com/llms.txt
---

# Newsletters

Manage newsletter subscriptions and consent records for email marketing.

## Overview

Newsletters track email subscription consent for marketing communications. Each record stores the subscriber's email, consent details, and which lists they've subscribed to.

***

## How It Works

1. **Collect consent** - Capture email and consent when a visitor subscribes to your newsletter
2. **Assign to lists** - Organize subscribers into different mailing lists
3. **Track source** - Record where the subscription originated for compliance

**Example:** A visitor enters their email in your footer signup form. Create a newsletter record with their email, the consent URL, and assign them to your "Weekly Updates" list.

***

## API Endpoints

| Method   | Endpoint                                            | Description                                         |
| -------- | --------------------------------------------------- | --------------------------------------------------- |
| `GET`    | [List newsletters](https://docs.pelcro.com/reference/api-core-list-newsletters)   | Retrieve a paginated list of newsletter subscribers |
| `POST`   | [Create newsletter](https://docs.pelcro.com/reference/api-core-create-newsletter) | Create a new newsletter subscriber                  |
| `GET`    | [Get newsletter](https://docs.pelcro.com/reference/api-core-get-newsletter)       | Retrieve a specific newsletter subscriber           |
| `PUT`    | [Update newsletter](https://docs.pelcro.com/reference/api-core-update-newsletter) | Update a newsletter subscriber                      |
| `DELETE` | [Delete newsletter](https://docs.pelcro.com/reference/api-core-delete-newsletter) | Permanently delete a newsletter subscriber          |

***

## Important Behaviors

* **Source normalization**: The `source` field is automatically lowercased before storage. Submitting `Web` stores as `web`.
* **Hard delete**: Deleting a newsletter permanently removes the record and all its history. This is not reversible.
* **Consent defaults**: When `consent_url`, `consent_ip`, `consent_text`, or `consent_type` are omitted on create/update, they are stored as empty strings (`""`) not `null`.
* **Email uniqueness**: Email must be unique per site. Duplicate emails on different sites are allowed.
* **Update requires email + source**: Both `email` and `source` are required on every update call, not just on create.

***

## Source Values

| Value   | Description                 |
| ------- | --------------------------- |
| `web`   | Signed up via website       |
| `phone` | Signed up via phone         |
| `mail`  | Signed up via physical mail |
| `other` | Other source                |

***

## Newsletter Object

| Attribute      | Type         | Description                                                                   |
| -------------- | ------------ | ----------------------------------------------------------------------------- |
| `id`           | integer      | Unique identifier for the newsletter subscriber                               |
| `email`        | string       | Subscriber's email address (unique per site)                                  |
| `first_name`   | string\|null | Subscriber's first name                                                       |
| `last_name`    | string\|null | Subscriber's last name                                                        |
| `source`       | string       | Signup source: `web`, `phone`, `mail`, or `other`                             |
| `lists`        | string\|null | Free-text field for list assignments (no format enforced)                     |
| `consent_url`  | string       | URL where consent was given (defaults to `""`)                                |
| `consent_ip`   | string       | IP address when consent was given (must be valid IPv4/IPv6, defaults to `""`) |
| `consent_text` | string       | Consent text shown to subscriber (defaults to `""`)                           |
| `consent_type` | string       | Type of consent given (defaults to `""`)                                      |
| `postal_code`  | string\|null | Subscriber's postal code (max 10 chars)                                       |
| `created_at`   | integer      | Unix timestamp of creation                                                    |
| `updated_at`   | integer      | Unix timestamp of last update                                                 |

# Sub pages

* [List newsletters](https://docs.pelcro.com/reference/api-core-list-newsletters.md)
* [Create newsletter](https://docs.pelcro.com/reference/api-core-create-newsletter.md)
* [Get newsletter](https://docs.pelcro.com/reference/api-core-get-newsletter.md)
* [Update newsletter](https://docs.pelcro.com/reference/api-core-update-newsletter.md)
* [Delete newsletter](https://docs.pelcro.com/reference/api-core-delete-newsletter.md)

# Sibling pages

* [Overview](https://docs.pelcro.com/reference/api-core-intro.md)
* [Pagination](https://docs.pelcro.com/reference/api-core-pagination-limits.md)
* [Rate limits](https://docs.pelcro.com/reference/api-core-rate-limits.md)
* [Errors](https://docs.pelcro.com/reference/api-core-errors.md)
* [Sorting and filtering](https://docs.pelcro.com/reference/api-core-filtering-and-sorting.md)
* [Expanding relationships](https://docs.pelcro.com/reference/api-core-expanding-relationships.md)
* [Account](https://docs.pelcro.com/reference/api-core-account.md)
* [Analytics](https://docs.pelcro.com/reference/api-core-analytics.md)
* [Addresses](https://docs.pelcro.com/reference/api-core-addresses.md)
* [Bills](https://docs.pelcro.com/reference/api-core-bills.md)
* [Campaigns](https://docs.pelcro.com/reference/api-core-campaigns.md)
* [Charges](https://docs.pelcro.com/reference/api-core-charges.md)
* [Coupons](https://docs.pelcro.com/reference/api-core-coupons.md)
* [Customers](https://docs.pelcro.com/reference/api-core-customers.md)
* [E-commerce](https://docs.pelcro.com/reference/api-core-ecommerce.md)
* [Exports](https://docs.pelcro.com/reference/api-core-export.md)
* [Invoices](https://docs.pelcro.com/reference/api-core-invoice.md)
* [Memberships](https://docs.pelcro.com/reference/api-core-membership.md)
* [Organizations](https://docs.pelcro.com/reference/api-core-organizations.md)
* [Payment Methods](https://docs.pelcro.com/reference/api-core-source.md)
* [Plans](https://docs.pelcro.com/reference/api-core-plan.md)
* [Products](https://docs.pelcro.com/reference/api-core-product.md)
* [Refunds](https://docs.pelcro.com/reference/api-core-refunds.md)
* [Sites](https://docs.pelcro.com/reference/api-core-sites.md)
* [Subscriptions](https://docs.pelcro.com/reference/api-core-subscription.md)
* [Vendors](https://docs.pelcro.com/reference/api-core-vendors.md)
* [Webhooks](https://docs.pelcro.com/reference/api-core-webhook.md)