GrooveBox

GrooveBox: free online Groovy IDE for SAP Integration Suite, on Groovy 2.4 and Groovy 4

GrooveBox is a free, browser-based Groovy IDE and playground for SAP Integration Suite Groovy scripts. Paste a script, give it a payload, headers, properties and value mappings, and run it on Groovy 2.4 (Java 8) or Groovy 4 (Java 17): you see the output body, what changed in headers and properties, the Message Processing Log and any error.

Open the playground

SAP Integration Suite on SAP BTP is the current name of SAP's integration platform; its Cloud Integration capability runs the iFlows and their Groovy scripts. You may know it by its former names: SAP Cloud Platform Integration (CPI) and, before that, HANA Cloud Integration (HCI). GrooveBox works for the Groovy scripts written for all of them: think of it as an online Groovy editor, script tester and debugger for iFlow script steps.

Who it is for

Features

AreaWhat GrooveBox does
RuntimesV1: Groovy 2.4.21 on Java 8 with com.sap.gateway.ip.core.customdev.util.Message. V2: Groovy 4.0.24 on Java 17 with the Script API v2 (com.sap.it.script.v2.api.Message and Exchange).
MessageBody as String, InputStream or byte[] with the usual getBody(...) conversions, case-insensitive headers, properties, attachments.
Value mappingITApiFactory.getApi(ValueMappingApi.class, null) with getMappedValue and getMappedValues, from a table you fill in or import (CSV or the value_mapping.xml of an export from SAP Integration Suite).
Other SAP APIsSecureStoreService (user credentials, OAuth2 tokens), PartnerDirectoryService parameters and a number range counter, all with test data you provide.
Message Processing LogmessageLogFactory.getMessageLog(message) works as in SAP Integration Suite: string properties, attachments and custom headers appear in the MPL tab.
ResultsOutput body (beautified XML / JSON), header and property diff against the input, console output, the SAP API calls made, and errors with the failing line highlighted.
Your workKept in your browser; save the script as a .groovy file or export the whole session (script and inputs) as JSON.

How to use it

  1. Choose the runtime: V1 (Groovy 2.4) or V2 (Groovy 4).
  2. Write or paste the script. The function to call is processData by default; you can change it.
  3. Fill in the input: body, headers and properties (with their Java type), value mappings, attachments, secure store and partner directory entries.
  4. Press Run or Ctrl+Enter.
  5. Check the output tabs: Body, Headers, Properties, Attachments, MPL, Console, API and Error.
  6. Save the script with Save: it is downloaded to your computer as a .groovy file.

Example script

A typical SAP Integration Suite script reads the payload, looks up a value mapping, sets headers and properties and writes to the Message Processing Log. It runs unchanged in GrooveBox:

import com.sap.gateway.ip.core.customdev.util.Message
import com.sap.it.api.ITApiFactory
import com.sap.it.api.mapping.ValueMappingApi

def Message processData(Message message) {
    def order = new XmlSlurper().parseText(message.getBody(String))

    def valueMapping = ITApiFactory.getApi(ValueMappingApi.class, null)
    def country = valueMapping.getMappedValue('S4', 'Country', order.Customer.Country.text(), 'SF', 'Country')

    message.setHeader('SF_Country', country)
    message.setProperty('OrderId', order.Id.text())

    def messageLog = messageLogFactory.getMessageLog(message)
    messageLog?.setStringProperty('Country', country)
    return message
}

What GrooveBox does not do

Privacy and security

Frequently asked questions

Is GrooveBox a Groovy IDE or a Groovy playground?

Both. It is an online Groovy IDE for SAP Integration Suite scripts (code editor with Groovy syntax highlighting, the failing line marked on errors, scripts saved as .groovy files) and a Groovy playground where each script runs instantly on Groovy 2.4 or Groovy 4 with the test message you define.

Does GrooveBox work for SAP CPI scripts?

Yes. SAP Cloud Platform Integration (CPI) is the former name of what is now SAP Integration Suite: Groovy scripts written for CPI iFlows run in GrooveBox as they are, on the Groovy 2.4 runtime or, after migration, on Groovy 4.

Is GrooveBox free?

Yes. It runs in the browser, with no account and no installation.

Do I need an SAP tenant to test a Groovy script?

No. GrooveBox simulates the script environment of SAP Integration Suite (Message, value mapping, secure store, partner directory, Message Processing Log), so you can run a script before deploying it to a tenant.

Which Groovy versions are supported?

Groovy 2.4.21 on Java 8 (the classic script runtime) and Groovy 4.0.24 on Java 17 (the Script API v2 runtime).

Can I test value mapping lookups?

Yes. Enter the mappings in the Value Mapping tab or import them from a CSV or a value_mapping.xml exported from SAP Integration Suite; getMappedValue and getMappedValues return them, in both directions.

Can my script call external systems?

No. For security, scripts run without network access, file system access or the ability to start processes.

Is my code or data stored?

No. Nothing is stored or logged on the server; your work is kept only in your own browser.

Is GrooveBox made by SAP?

No. GrooveBox is an independent tool, not affiliated with or endorsed by SAP.

Last updated: