WormaCeptor

Extension Providers

Register custom metadata extractors to enrich network transactions.

Extension Providers

Register custom metadata extractors that enrich network transactions with app-specific data:

WormaCeptorApi.registerExtensionProvider(
    object : ExtensionProvider {
        override val name = "AuthExtension"
        override val priority = 50 // default is 50, lower runs first
        override fun extractExtensions(context: ExtensionContext): Map<String, String> {
            return mapOf(
                "user_id" to getCurrentUserId(),
                "session_type" to getSessionType(),
            )
        }
    },
)

The extracted key-value pairs are stored with each transaction and displayed in the WormaCeptor UI.

Methods

MethodReturnDescription
registerExtensionProvider(provider: ExtensionProvider)UnitRegister a custom provider
unregisterExtensionProvider(name: String)BooleanUnregister by name. Returns true if removed
getRegisteredExtensionProviders()List<String>List registered provider names

ExtensionProvider Interface

interface ExtensionProvider {
    val name: String
    val priority: Int // default 50, lower values run first
    fun extractExtensions(context: ExtensionContext): Map<String, String>
}

ExtensionContext

data class ExtensionContext(
    val request: Request,
    val response: Response?,
    val durationMs: Long?,
    val timestamp: Long,
)

Provides access to the request, response, request duration, and timestamp for each transaction.

On this page