requestRevocation function

Future<ApacuanaSuccess<Map<String, dynamic>>> requestRevocation({
  1. required int reasonCode,
})

Solicita la revocación de un certificado.

reasonCode Código numérico de la razón de revocación. Retorna la respuesta del backend envuelta en ApacuanaSuccess.

Implementation

Future<ApacuanaSuccess<Map<String, dynamic>>> requestRevocation({
  required int reasonCode,
}) async {
  final cfg = getConfig();

  // Validación de entrada (paridad con el JS que exige number)
  if (reasonCode is! int) {
    throw ArgumentError(
      'The "params" object with a numeric "reasonCode" property is required.',
    );
  }

  final typeStr = cfg.integrationType;
  final typeEnum = IntegrationType.fromValue(typeStr);

  if (typeEnum == IntegrationType.onboarding ||
      typeStr == INTEGRATION_TYPE['ONBOARDING']) {
    return _requestRevocationOnBoarding(reasonCode);
  }
  if (typeEnum == IntegrationType.onPremise ||
      typeStr == INTEGRATION_TYPE['ONPREMISE']) {
    return _requestRevocationOnPremise(reasonCode);
  }

  throw ApacuanaAPIError(
    'Unsupported integration type: $typeStr',
    statusCode: 400,
    errorCode: 'UNSUPPORTED_INTEGRATION_TYPE',
  );
}