# Prerequisites and Access

Before starting an integration with the Digital Post Platform, certain organisational, administrative, and technical prerequisites must be in place.

This section describes the access, accounts, and resources required to authenticate, configure senders, and submit messages through the platform APIs.

These prerequisites are handled across roles. Depending on the market setup, the platform holder may manage configuration centrally, or invite sending organisations to the Administration Portal with scoped access to their own organisation accounts and sender identities. In the latter case, sending organisations complete their own setup based on the permissions granted.

## Administration Portal Access

To integrate with the platform, access to the Administration Portal is required.

The Administration Portal is used to manage:

- Organisation accounts
- Sender identities
- System integrations
- User roles and permissions
- Feature configuration
- Usage and reporting access


Depending on the market setup, access may be provided in one of two ways:

- The platform holder manages all configuration on behalf of sending organisations
- Sending organisations are invited to the Administration Portal with scoped access to their own organisation accounts


When access is granted, users are restricted to the organisations and sender identities for which they have permissions.

## Required Roles and Permissions

Users performing integration related configuration must have appropriate permissions in the Administration Portal.

At minimum, the following capabilities are required:

### Organisation Management

Required for:

- Viewing organisation identifiers
- Managing organisation level settings
- Enabling platform features


Typically requires permission to:

- Manage organisation


### Sender Management

Required for:

- Creating and activating sender identities
- Configuring sender features
- Managing sender branding


Typically requires permission to:

- Manage sender


### System Integration Management

Required for:

- Registering system integrations
- Uploading certificates
- Obtaining machine identifiers


Typically requires permission to:

- Set up system integration


### Reporting and Monitoring

Recommended for operational visibility:

- View statistics and analysis
- Access audit logs
- View delivery history


These permissions are often part of administrative or auditor roles.

Exact role definitions and permission models may vary between platform holders.

## Organisation Account

Each sending organisation operates within an organisation account.

An organisation account:

- Represents the legal or operational entity sending messages
- Defines governance boundaries
- Owns sender identities
- Determines available features


Before integration, the organisation account must exist and be active.

Each organisation account has a unique:

- organisationId


This identifier is required in API interactions.

## Sender Identity

Messages are always submitted under a sender identity.

A sender identity:

- Belongs to exactly one organisation account
- Represents a distinct communication identity
- Controls available message features
- Determines how messages appear to receivers


Each sender identity has a unique:

- senderId


Before sending messages:

- At least one sender identity must be created
- The sender must be active
- Required features must be enabled


Sender identities are managed through the Administration Portal.

## Sender Feature Configuration

Certain platform features must be enabled at sender level before they can be used in integrations.

Common configurable features include:

- Interim repository
- Opening receipt
- Mandatory messages


Feature availability depends on:

- Organisation level configuration
- Platform holder policies
- Assigned permissions


Only features enabled on both organisation and sender level can be used in message envelopes.

## System Integration

All API access requires a registered system integration.

A system integration represents the technical client that authenticates against the platform.

Each system integration is associated with:

- A machineId
- A registered client certificate
- A certificate thumbprint


System integrations are created and managed in the Administration Portal.

Before integration:

- A system integration must be active
- The public key of the client certificate must be uploaded
- The machineId must be available


These values are required for authentication.

## Authentication Credentials

API authentication is based on:

- Client certificate authentication
- OAuth 2.0 with JWT bearer tokens


Before integration, the following must be available:

- Private key for the registered certificate
- Certificate thumbprint
- machineId
- Platform token endpoint URL


These credentials are used to generate signed JWTs and exchange them for access tokens.

Authentication is described in detail in the Authentication section.

## Storage for Message Content

For S3 Upload Method, the platform uses external object storage for message ingestion.

Before sending messages, access to an S3 compatible storage service is required for S3 Upload Method.

The storage service must support:

- Programmatic access
- Read access from the platform
- Storage of envelopes and message content


Each delivery references:

- A bucket name
- A service endpoint
- Access credentials
- Key prefixes


The platform retrieves envelopes and files from this storage during delivery processing.

Storage configuration is provided when creating a delivery.

## Network and Security Requirements

Depending on the market setup, additional security controls may apply.

These may include:

- IP whitelisting
- Network restrictions
- Firewall rules
- Certificate validation


If IP restrictions are enabled, the sending system must originate traffic from approved addresses.

Applicable security policies are defined by the platform holder.

## Summary of Required Information

Before starting integration, the following information must be available:

### Administrative

- organisationId
- senderId
- Active sender identity
- Required permissions
- Active system integration


### Authentication

- machineId
- Client certificate
- Private key
- Certificate thumbprint
- Token endpoint URL


### Storage

- S3 service endpoint
- Bucket name
- Access credentials
- Key prefix structure


### Security

- Approved IP addresses (if applicable)
- Network access rules


## Responsibility Model

Responsibility for setup is shared between platform holders and sending organisations.

Depending on the market model:

- Platform holders may perform all configuration
- Sending organisations may configure their own accounts
- Or both may collaborate during onboarding


Integrators should confirm:

- Which roles perform which tasks
- Which permissions are required
- Which components they are responsible for maintaining before beginning development.


## Build with AI tools

Connect your AI coding agent to this documentation for context-aware assistance while building your sender integration.

**MCP server URL:**

`https://developer-api.e-boks.com/mcp`

This is a standard [Model Context Protocol (MCP)](https://modelcontextprotocol.io) endpoint. Add it to any MCP-compatible tool using the URL above.

**CLI-based tools:**

```bash
mcp add eboks-sender-api https://developer-api.e-boks.com/mcp
```

**JSON configuration:**

```json
{
  "mcpServers": {
    "eboks-sender-api": {
      "url": "https://developer-api.e-boks.com/mcp"
    }
  }
}
```

**IDE integrations** — most AI-enabled IDEs support adding MCP servers in their settings. Add the URL above as a new MCP server.

Once connected, your AI tool can reference the sender documentation, API specifications, and integration guides when helping you write integration code.

## Next Steps

Once prerequisites are in place, continue with:

- [Authentication Setup](/getting-started/authentication)
- [Prepare Your First Message](/getting-started/prepare-message)
- [Choose a Submission Method](/getting-started/choosesubmissionmethod)
- [Upload Content to S3](/getting-started/upload-s3)
- [Send Messages via Multipart](/getting-started/submit-multipart)
- [Verify and Troubleshoot](/getting-started/verify-delivery)


These steps are covered in the following sections of Getting Started.