Skip to content

Package: iflowkit-email

iflowkit-email is the sample package included in the iFlowKit Core repository.

Manifest summary

json
{
  "name": "iFlowKit-Email",
  "version": "1.0.15",
  "vendor": "iFlowKit",
  "systems": {
    "outlook": { "services": ["Mail"] }
  },
  "credentials": {
    "outlook": [
      {
        "name": "OUTLOOK_AUTHCODE",
        "typeCode": "oauth2.authorizationCode",
        "propertyName": "IFK_OUTLOOK_AUTH"
      },
      {
        "name": "OUTLOOK_CLIENT_CREDENTIALS",
        "typeCode": "oauth2.clientCredentials",
        "propertyName": "IFK_OUTLOOK_CC"
      }
    ]
  },
  "plugins": {
    "email": {
      "id": "com.iflowkit.plugin.email",
      "parameters": {
        "defaultSenderAddress": "no-reply@iflowkit.local"
      }
    }
  }
}

Build

bash
gradle clean buildPkg -Ppkg=iflowkit-email

How it works

Manifest-driven inclusion

The package declares the Outlook Mail service and the Email plugin. The package build includes only the declared systems, services and plugins.

Facade entry point

Package facade classes should provide a clear entry point for CPI scripts, so integration flows do not need to know low-level system and plugin details.

Plugin parameters

The Email plugin receives a default sender address through the package manifest:

json
{
  "defaultSenderAddress": "no-reply@iflowkit.local"
}

Package code can read this through PackageContext and expose a clean helper method.

Suggested use

Use this package as a reference for:

  • structuring new packages
  • declaring credentials
  • including a system service
  • wiring plugin parameters
  • building a CPI-ready JAR