SDK
Saves you hours — or locks you in. Know which before you choose.
What is an SDK
SDK stands for Software Development Kit. It is a library — code someone else wrote — that wraps an API and makes it easier to use in your programming language.
Instead of constructing HTTP requests manually, handling headers, parsing JSON responses, and implementing retry logic yourself, you install the SDK and call a function. The SDK handles the mechanics. You handle the logic.
Anthropic has SDKs for Python, TypeScript, and Java. OpenAI has them for Python and TypeScript. The SDK for a model on sourc.dev is what turns "I need to call this API" into `client.messages.create(...)`.
The case for using an SDK
Speed. An SDK handles the parts that are the same for everyone — authentication, request formatting, error handling, streaming, retries. You skip implementing those and go directly to the part that is specific to your product.
For most developers building with a single provider's models, an SDK is the right choice. It is maintained by the provider, updated when the API changes, and documented alongside the API itself.
The case for knowing what it does
The SDK is an abstraction over the REST API. It adds convenience and it adds a dependency. If the SDK has a bug, you inherit it. If the provider deprecates a version, you upgrade on their schedule. If you need to do something the SDK does not support, you are working around it.
Understanding the underlying REST API — what request you are actually sending, what response you are actually receiving — makes you better at debugging when things go wrong, and better at evaluating whether the SDK is doing what you think.
How to use this
Start with the SDK. It is faster. Once your integration is working, read the API documentation once. Understand what the SDK is doing underneath. That knowledge costs an hour and pays back every time you hit an error you cannot otherwise explain.
Verified March 2026 · Source: Anthropic, OpenAI SDK documentation