improved interceptor that accepts and maps JSON array