How to use the systeme.io public API (Application Programming Interface)
In this article, you will learn how to configure and use the systeme.io public API, including how to generate API keys and what actions you can perform.
1. What is an API?
The acronym API stands for "Application Programming Interface", a series of instructions by which a platform offers services to other platforms. It's a strategic gateway for external developers, enabling them to access specific functionality or data from a platform in a structured, secure way. It's like a set of ready-to-use tools that make it easy to build new applications, services, or combinations.
In short, systeme.io opens up to other platforms to offer its services where it has added value.
2. How does our public API work?
Our API exposes a carefully selected set of features, enabling developers to interact with our platform transparently and efficiently. If you'd like to know more about how it works, you can read our official API documentation.
3. How to generate your API keys
API keys are unique identifiers that authenticate requests to our Public API. They enable you to programmatically access and manage various resources on our platform.
To connect an external integration, you first need to generate a secure API key. Click on your profile picture and select Settings (1). In the left menu, click MCP & API keys (2).

Scroll down to the Public API keys section and click Create (3).

Give your key a name, set an expiration date, and click Save (4).

Note: To keep your API key active indefinitely, leave the 'Expiration' field empty.
Your key is now ready.

4. What can you do with our API?
Our API opens up some interesting possibilities. Below you will find the main actions you can perform using our public API:
a. Contacts, tags, and custom fields management:
- Contacts: Create new contacts, update existing ones, list your audience with advanced filters, or delete contacts.
- Tags: Create, assign, list, and remove tags from contacts.
- Custom fields: Retrieve available contact custom fields and their identifiers (slugs) to correctly fill in contact information.
b. Newsletters and campaigns management:
- Newsletters: Create new drafts or partially update existing ones. You can define the editor type (Classic or Visual), retrieve the full HTML content, explicitly set the sender's details, and fetch specific newsletters using their ID.
- Campaigns: Create, retrieve, update, and delete entire email campaigns, as well as individual campaign steps.
c. Funnels and Page editor management:
- Funnels: Create new funnels, add new steps (pages) to them, and fetch a list of all individual steps within a specific funnel.
- Page editor: Save generated page content directly to your funnel steps or website pages (full replace), and retrieve JSON schemas for specific page types.
d. Price plans and coupon management:
- Create, edit, and delete: Generate new price plans and coupons, or partially update and delete existing ones.
- List and search: Browse through all your existing price plans and coupons, or fetch specific items by their ID.
e. Courses and students management:
- Courses and students: Fetch a list of your existing courses and retrieve a list of students currently enrolled.
- Enroll students: Programmatically enroll contacts into your individual courses.
Note on courses: Support for course bundles will be added in future updates.
f. Community management:
- Communities: Retrieve a list of your existing communities and access a list of the current members within a specific community.
- Invite members: Programmatically invite new users to join your communities by providing their contact ID.
g. Automation rules management:
- Automation rules: Programmatically connect common events and actions, update existing rules (e.g., changing an action while keeping the trigger the same), or soft-delete rules.
- List and retrieve: Browse your automation rules or fetch a specific rule by its ID.
h. Subscriptions management:
- Subscriptions: Retrieve a list of all resources in a subscription from third-party platforms, and cancel a subscription either immediately or at the end of the billing cycle.
i. Webhook management:
- Programmatically create new webhooks to receive real-time notifications, retrieve lists of your existing webhooks, and remove webhooks that are no longer needed.
j. Digital product management:
- Digital products: Create, update, delete, and retrieve specific digital products.
- Link price plans: Programmatically create or link price plans directly to your digital products
k. SMS templates and booking calendar management:
- List and retrieve: Fetch a list of your existing SMS templates and booking calendar events, or search for specific ones.
Notes:
- To easily identify and manage your tokens, each must have a unique name.
- A token can only be copied immediately after creating it. If you forgot to copy your token, delete it and create a new one.
- As a security measure, we will send you an email notification whenever a new public API key is created in your systeme.io account.
- You can create up to 3 API keys per account.
Learn more: API documentation.