# Anatomy of an Integration

![We handle all the devops while you focus on the App](https://4017407078-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MfJn-9R_dn6dvcGNcdk%2Fuploads%2FJalCZmPBSkwKheG0J149%2FPlatform%20Diagram%20DRAFT%20\(1\).png?alt=media\&token=40d60d4f-07f5-4343-bec8-6aac385016da)

On Pandium, integrations are constructed as a simple Posix compliant [command line interface](https://en.wikipedia.org/wiki/Command-line_interface) application (CLI). The CLI should read tenant configuration and connector secrets from [environment variables](https://docs.pandium.com/getting-started/anatomy-of-an-integration/environment-variables). Any logs you wish to display to your end users should be written to [`stderr`](https://docs.pandium.com/getting-started/anatomy-of-an-integration/environment-variables/stderr).&#x20;

One can pass information to the next run by writing a json encoded string to [`stdout`](https://docs.pandium.com/getting-started/anatomy-of-an-integration/environment-variables/stdout). On the next run it will be injected in as an environment variable named`PAN_CTX_LAST_RUN_STDOUT` or `PAN_CTX_LAST_SUCESSFUL_RUN_STDOUT.`
