modular_api_rest_client
Official MACSS outbound REST client for Dart.
Quick start
import 'package:modular_api_rest_client/modular_api_rest_client.dart';
final result = await httpClient<Map<String, Object?>>(
config: ServiceClientConfig(
serviceId: 'users',
baseUrl: Uri.parse('https://api.example.test'),
redactedSummary: 'users@example',
defaultHeaders: const {'accept': 'application/json'},
),
request: const ServiceRequest(
operationId: 'users.list',
method: 'GET',
path: '/users',
),
decoder: (json) => Map<String, Object?>.from(json as Map),
);
if (result.isSuccess) {
print(result.value.data);
} else {
print(result.failure.message);
}
Current slice
- normalized
ServiceResult<T>andServiceFailure - persistent
HttpServiceClient - one-shot
httpClient()helper - explicit request metadata via
ServiceRequest - JSON-first response decoding and HTTP metadata preservation