All integrations

Laposta

MARKETING · MARKETING

Mailing lists, contacts, segments, and campaigns in the account they connected.

Connecting Laposta in practice

Laposta’s limit depends on the plan rather than the key — 30 requests a minute on a free account, 120 on a paid one — and authentication is HTTP Basic with the API key as the username and no password at all, which is why every example ends in a bare colon. Asking for an object that does not exist returns 400 with code 203 rather than 404, so the usual "404 means gone" branch never fires.

Scopes that draw scrutiny

  • API key (Basic auth username) One account-wide key from Access & Subscription → Links - API, passed as the Basic username with an empty password. There are no scopes, and partners can use it to create whole new Laposta accounts.

Rate limits

  • Free accounts: 30 requests per minute. Paid accounts: 120 requests per minute.
  • Over the limit returns 429 Too Many Requests with a Retry-After header in seconds.

Worth knowing

  • A 400 with code 203 and the offending parameter is how Laposta reports an unknown list_id or member_id; a 404 means the URL itself does not exist.
  • 402 Request Failed is a distinct state — the input was fine but the request was not processed — so 4xx here is not uniformly "your fault, do not retry".
  • The API answers on api.laposta.nl and api.laposta.org and is HTTPS only, so the host differs from the marketing domain a customer will quote at you.
  • Laposta publishes a working API key in its own examples for testing, which makes copied sample code look like it authenticates correctly against someone else’s account.

Checked against Authentication, rate limiting and error messages (2026-09-29)

Acts as the person, not as itself

Each user connects their own account. Every call carries both identities — the agent and the person it is acting for — so the agent can never reach past what that individual can already do.

Credentials never touch the agent

Tokens live in the vault and attach server-side at call time. The agent holds a session, not a secret, and revoking access does not mean rotating a key.

Every call on the record

Who asked, which agent acted, which action ran, and the verdict that let it through — one audit trail across every integration, not one per vendor.

What an agent can do

Each action is granted on its own. An agent allowed to read is not thereby allowed to write, and the scope beside each row is what the acting user must have connected for it to run at all.

laposta_delete_v2_campaign_by_campaign_idWRITE

Delete a campaign. DELETE /v2/campaign/{campaign_id}. Permanently remove a campaign.

api
laposta_delete_v2_field_by_field_idWRITE

Delete a field. DELETE /v2/field/{field_id}. Remove a custom field from a list.

api
laposta_delete_v2_list_by_list_idWRITE

Delete a list. DELETE /v2/list/{list_id}. Permanently remove a list and its contacts.

api
laposta_delete_v2_list_by_list_id_membersWRITE

Empty a list. DELETE /v2/list/{list_id}/members. Remove every contact from the list, keeping the list itself.

api
laposta_delete_v2_member_by_member_idWRITE

Delete a contact. DELETE /v2/member/{member_id}. Remove a contact from a list.

api
laposta_delete_v2_segment_by_segment_idWRITE

Delete a segment. DELETE /v2/segment/{segment_id}. Remove a segment from a list.

api
laposta_delete_v2_webhook_by_webhook_idWRITE

Delete a webhook. DELETE /v2/webhook/{webhook_id}. Remove a webhook from a list.

api
laposta_get_v2_campaignREAD

List all campaigns. GET /v2/campaign. Retrieve every campaign in the account.

api
laposta_get_v2_campaign_by_campaign_idREAD

Get a campaign. GET /v2/campaign/{campaign_id}. Retrieve one campaign.

api
laposta_get_v2_campaign_by_campaign_id_contentREAD

Get a campaign's content. GET /v2/campaign/{campaign_id}/content. Retrieve the HTML and text content of a campaign.

api
laposta_get_v2_campaign_by_campaign_id_historyREAD

Get a campaign's history. GET /v2/campaign/{campaign_id}/history. Retrieve the activity history of one campaign.

api
laposta_get_v2_fieldREAD

List all fields of a list. GET /v2/field. Retrieve the custom fields defined on a list.

api
laposta_get_v2_field_by_field_idREAD

Get a field. GET /v2/field/{field_id}. Retrieve one custom field.

api
laposta_get_v2_listREAD

List all lists. GET /v2/list. Retrieve every list in the account.

api
laposta_get_v2_list_by_list_idREAD

Get a list. GET /v2/list/{list_id}. Retrieve one list by its id.

api
laposta_get_v2_memberREAD

List all contacts of a list. GET /v2/member. Retrieve the contacts on a list.

api
laposta_get_v2_member_by_member_idREAD

Get a contact. GET /v2/member/{member_id}. Retrieve one contact.

api
laposta_get_v2_member_by_member_id_historyREAD

Get a contact's history. GET /v2/member/{member_id}/history. Retrieve the activity history of one contact.

api
laposta_get_v2_reportREAD

List results for all campaigns. GET /v2/report. Retrieve delivery and engagement results for every campaign.

api
laposta_get_v2_report_by_campaign_idREAD

Get results for a campaign. GET /v2/report/{campaign_id}. Retrieve delivery and engagement results for one campaign.

api
laposta_get_v2_segmentREAD

List all segments of a list. GET /v2/segment. Retrieve the segments defined on a list.

api
laposta_get_v2_segment_by_segment_idREAD

Get a segment. GET /v2/segment/{segment_id}. Retrieve one segment.

api
laposta_get_v2_webhookREAD

List all webhooks of a list. GET /v2/webhook. Retrieve the webhooks registered on a list.

api
laposta_get_v2_webhook_by_webhook_idREAD

Get a webhook. GET /v2/webhook/{webhook_id}. Retrieve one webhook.

api
laposta_post_v2_campaignWRITE

Create a campaign. POST /v2/campaign. Create a new campaign.

api
laposta_post_v2_campaign_by_campaign_idWRITE

Update a campaign. POST /v2/campaign/{campaign_id}. Modify a campaign.

api
laposta_post_v2_campaign_by_campaign_id_action_scheduleWRITE

Schedule a campaign. POST /v2/campaign/{campaign_id}/action/schedule. Schedule the campaign for delivery at a given moment. This schedules a real send: at the moment named, Laposta delivers the campaign by email to its recipients.

api
laposta_post_v2_campaign_by_campaign_id_action_sendWRITE

Send a campaign. POST /v2/campaign/{campaign_id}/action/send. Send the campaign to its list immediately. This delivers real email.

api
laposta_post_v2_campaign_by_campaign_id_action_testmailWRITE

Send a campaign test mail. POST /v2/campaign/{campaign_id}/action/testmail. Send a test copy of the campaign to named addresses. This sends a real email to the address given.

api
laposta_post_v2_campaign_by_campaign_id_contentWRITE

Set a campaign's content. POST /v2/campaign/{campaign_id}/content. Fill in the HTML and text content of a campaign.

api
laposta_post_v2_fieldWRITE

Create a field. POST /v2/field. Define a new custom field on a list.

api
laposta_post_v2_field_by_field_idWRITE

Update a field. POST /v2/field/{field_id}. Modify a custom field.

api
laposta_post_v2_listWRITE

Create a list. POST /v2/list. Add a new list.

api
laposta_post_v2_list_by_list_idWRITE

Update a list. POST /v2/list/{list_id}. Modify an existing list.

api
laposta_post_v2_list_by_list_id_membersWRITE

Bulk-synchronise a list. POST /v2/list/{list_id}/members. Replace or merge the list's contacts in one bulk call.

api
laposta_post_v2_memberWRITE

Create a contact. POST /v2/member. Add a contact to a list.

api
laposta_post_v2_member_by_member_idWRITE

Update a contact. POST /v2/member/{member_id}. Modify a contact, including its labels.

api
laposta_post_v2_segmentWRITE

Create a segment. POST /v2/segment. Define a new segment on a list.

api
laposta_post_v2_segment_by_segment_idWRITE

Update a segment. POST /v2/segment/{segment_id}. Modify a segment.

api
laposta_post_v2_webhookWRITE

Create a webhook. POST /v2/webhook. Register a webhook on a list.

api
laposta_post_v2_webhook_by_webhook_idWRITE

Update a webhook. POST /v2/webhook/{webhook_id}. Modify a webhook.

api

Put Laposta behind one governed endpoint.

Same permissions, same audit trail, whatever else you connect next.