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
| Method | Return | Description |
|---|---|---|
registerExtensionProvider(provider: ExtensionProvider) | Unit | Register a custom provider |
unregisterExtensionProvider(name: String) | Boolean | Unregister 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.