feat(api): add validation for connect account request

This commit is contained in:
Stevan Freeborn
2026-02-12 13:39:38 -06:00
parent 6f62d4ce11
commit 050bf0adba
4 changed files with 96 additions and 1 deletions
@@ -9,7 +9,9 @@ internal static class Endpoint
return groupBuilder.MapPost(Route, HandleAsync);
}
private static async Task<IResult> HandleAsync()
private static async Task<IResult> HandleAsync(
[FromBody] Request request
)
{
return Results.Ok();
}
@@ -0,0 +1,22 @@
namespace FiscalOS.API.Accounts.Connect;
public record Request : IValidatableObject
{
public string PublicToken { get; init; } = string.Empty;
public string PlaidInstitutionId { get; init; } = string.Empty;
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (string.IsNullOrWhiteSpace(PublicToken))
{
var fieldName = nameof(PublicToken);
yield return new($"The {fieldName} field is required.", [fieldName]);
}
if (string.IsNullOrWhiteSpace(PlaidInstitutionId))
{
var fieldName = nameof(PlaidInstitutionId);
yield return new($"The {fieldName} field is required.", [fieldName]);
}
}
}