Skip to content

Integration Patterns

EMMI offers two integration patterns. Bulk analysis via SFTP and on demand analysis via direct API integration.


Which Integration is Right for You?

SFTP Integration

Best for: Scheduled batch processing with minimal development effort.

SFTP is the simpler option. You upload CSV files, we process them and deliver results to your server. Formats are agreed during onboarding and remain fixed. This is ideal if you:

  • Run periodic batch jobs (monthly, quarterly)
  • Want a standard analysis without needing to tune parameters
  • Have limited development resources
  • Prefer file-based workflows

Results typically include emissions estimates, climate risk metrics, and temperature alignment in a single output file.

Direct API Integration

Best for: Frequent processing with full control over analysis parameters.

The API gives you complete flexibility. You control which endpoints to call, what parameters to use, and how to structure your requests. This is ideal if you:

  • Need on-demand analysis
  • Want to customize scenarios, analysis years, and other parameters per request
  • Are building a custom integration or application
  • Need access to all available endpoints and options

See the API Developer Docs for the full range of capabilities.


Pattern Comparison

Feature SFTP Integration Direct API Integration
Interface File-based RESTful HTTP API
Processing Batch (scheduled) Real-time
Flexibility Fixed formats, agreed during onboarding Full control over all parameters
Output Combined results (emissions + risk + alignment) Per-endpoint responses
Authentication SSH key + credentials API key
Development effort Minimal Moderate

SFTP Integration

SFTP integration provides a file-based approach for submitting portfolio data to EMMI.

Getting Started

Contact support@emmi.io to request SFTP access.

You provide:

  • SSH public key (Ed25519 recommended)
  • Contact email for notifications

You receive:

  • Username
  • Connection details

Connection Details

Setting Value
Host sftp.emmi.io
Port 22
Authentication SSH key

Uploading Files

Connect using your SSH private key:

sftp -i ~/.ssh/your_private_key username@sftp.emmi.io

Once connected, upload files:

sftp> put portfolio_2024Q1.csv
sftp> put manifest_2024Q1.json
sftp> ls
sftp> bye

Or upload directly from the command line:

# Upload a single file
sftp -i ~/.ssh/your_private_key username@sftp.emmi.io <<< 'put portfolio_2024Q1.csv'

# Upload multiple files
sftp -i ~/.ssh/your_private_key username@sftp.emmi.io << EOF
put portfolio_2024Q1.csv
put manifest_2024Q1.json
EOF

CSV Format

One row per entity-year. Provide the columns you have available.

Example (equity/debt):

guid,name,country,industry_classification_system,industry,year,scope1,scope2,scope3,currency,revenue,total_assets,ebitda,total_debt
TECH-001,Tech Corp,United States,rbics,Technology,2023,25000,20000,60000,USD,5000000,5000000,500000,500000
TECH-001,Tech Corp,United States,rbics,Technology,2022,23000,18000,55000,USD,4800000,4700000,480000,500000

Custom File Formats

Custom file formats and processing workflows are agreed during onboarding based on your requirements. Contact support@emmi.io to discuss your data format and delivery preferences.

Manifest Specifications

The manifest lists files by asset type to process and also the parameters to be used for risk and temperature alignment.

{
  "files": {
    "equity": "equity_2024Q1.csv",
    "debt": "debt_2024Q1.csv"
  },
  "scenarios": ["ipcc_net_zero", "ngfs_below_two_degree"],
  "analysis_years": [2030, 2050]
}

Direct API Integration

Direct API integration provides programmatic access to EMMI's full analysis capabilities with real-time responses and complete control over parameters.

Workflow

┌─────────────────┐                              ┌─────────────────┐
│   Your System   │                              │   EMMI API      │
│                 │                              │                 │
│  1. Build       │         HTTPS POST           │  2. Process     │
│     request     │─────────────────────────────►│     request     │
│                 │                              │                 │
│  4. Handle      │         JSON Response        │  3. Return      │
│     response    │◄─────────────────────────────│     results     │
└─────────────────┘                              └─────────────────┘

Capabilities

With the API you can:

  • Call any endpoint independently or in combination
  • Customize all parameters per request (scenarios, analysis years, etc.)
  • Process single entities or portfolios
  • Integrate results directly into your applications

Getting Started

See the API Developer Docs for complete endpoint documentation, request/response schemas, and examples.


Need Help?

Contact support@emmi.io to discuss your specific requirements.