Calling an AI API from C#: Practical Patterns

AI services are normally consumed over HTTPS APIs. A production C# application should keep credentials out of source code, validate responses, and handle transient failures.

Keep Configuration Outside Source Code

public sealed class AiOptions
{
    public string Endpoint { get; set; } = "";
    public string ApiKey { get; set; } = "";
}

Load secrets through your application's configuration and secret-management mechanism rather than committing them to Git.

Use HttpClient

using var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", apiKey);

var response = await client.PostAsJsonAsync(endpoint, request);
response.EnsureSuccessStatusCode();
var result = await response.Content.ReadFromJsonAsync<AiResponse>();

Handle Failures

Do Not Trust Generated Output

Generated text or structured data can be incomplete or incorrect. Treat it as untrusted input and validate it before writing to a database, executing an operation, or returning sensitive information.

Conclusion

The most reliable AI integrations look like ordinary API integrations: clear contracts, secure configuration, timeouts, error handling, validation, logging, and tests.

Back to AI for Developers

🤖 AlgoLassi Assistant Have a question about this tutorial?

Ask AlgoLassi and get an answer plus the tutorials worth studying next.

Ask a question

đŸ’Ŧ Comments

Sign in with Google to publish immediately, or comment anonymously and wait for approval.

Comments will appear here when available.