I wrote the book on developer marketing. Literally. Picks and Shovels hit #1 on Amazon.

Get your copy
Engineering and DevOpsSDK

SDK

ess-dee-kay

Software development kit: a set of tools and libraries for building with a specific platform or API.

An SDK (software development kit) is a package of tools, libraries, documentation, and code samples that makes it easier to build on a specific platform or service. If an API is the raw interface, an SDK is the friendly wrapper that handles the boilerplate.

Without an SDK, a developer calling a payment API would need to construct HTTP requests, handle authentication headers, parse JSON responses, and manage error codes manually. With an SDK, the same operation is a single function call: stripe.charges.create({ amount: 1000 }). The SDK handles everything underneath.

SDKs exist for specific programming languages. A company with a REST API might offer SDKs for Python, JavaScript, Go, Java, and Ruby. Each SDK wraps the same API in idiomatic code for that language, so a Python developer writes Pythonic code and a Go developer writes Go-style code.

Examples

A developer integrates a payment service.

Instead of writing raw HTTP calls to the payment API, the developer installs the Python SDK: pip install stripe. They initialize it with their API key and call stripe.PaymentIntent.create(amount=2000, currency='usd'). Five lines of code instead of thirty.

A company decides which SDK languages to support.

The company's API analytics show that 60% of requests come from Node.js, 25% from Python, and 10% from Go. They build SDKs for Node.js and Python first, with Go as the next priority. The remaining 5% of users work directly with the REST API.

An SDK version falls behind the API.

The API ships a new feature but the Python SDK has not been updated in three months. Python developers cannot use the new feature without making raw API calls. The company invests in automated SDK generation to keep all language SDKs in sync with the API.

In practice

Read more on the blog

Frequently asked questions

Does every API need an SDK?

Not necessarily. Simple APIs with a few endpoints may not need SDKs. Complex APIs with authentication, pagination, webhooks, and many endpoints benefit greatly from SDKs. If developers are spending significant time writing boilerplate to use your API, you need an SDK.

How many programming languages should an SDK support?

Start with the languages your customers use most. Check your API logs to see which languages are making requests. Most companies start with 2-3 SDKs (JavaScript/TypeScript and Python are the most common) and add more based on demand.

Related terms

Picks and Shovels: Marketing to Developers During the AI Gold Rush

Want the complete playbook?

Picks and Shovels is the definitive guide to developer marketing. Amazon #1 bestseller with practical strategies from 30 years of marketing to developers.