.NET Email Approval API

Job ID: 40523963

Budget: $30 – $250 USD

I need a lightweight, well-structured .NET (C#) Web API that handles a simple but critical workflow:

1. Accept an incoming JSON payload through a POST endpoint. The schema must remain flexible so I can pass whatever custom fields my process requires without code changes.
2. Parse that payload and immediately send an approval email to the recipient specified within it. We will be using a plain SMTP server with standard Username and Password authentication; I’ll supply the credentials separately. No SendGrid or SES integration is necessary.
3. The email must present the user with two clear actions—Approve or Deny—and a free-text comment box. When the user submits their decision, your solution should capture it and expose (or push) the result back to my system as a clean JSON response via another API endpoint.
4. Log every step for traceability and include basic validation and error handling so malformed JSON or SMTP issues are surfaced gracefully.

Deliverables:
• Complete Visual Studio solution targeting the latest LTS .NET version
• Well-commented C# source, demonstrating separation of concerns (controllers, services, SMTP helper, etc.)
• Sample request/response JSON files showing the custom-field approach
• Brief README with setup steps, environment variables (SMTP host, port, creds), and how to run the API locally or in Docker
• Postman or Swagger collection so I can test immediately

Once I can post a JSON file, watch the email go out, click a response, and receive the decision back through the API, the task is done.