A software development kit (SDK) contains code, examples, and documentation that you use to create OpenStack cloud applications in the language of your choice.
If one of the following SDKs do not support your language or use case, you can use the APIs or one of the other known SDKs.
SDKs that specifically target OpenStack. These will give the deepest support for using OpenStack specific features, but won't help write applications that work on both OpenStack as well as other clouds.
SDKs that provide a multi-cloud abstraction layer and include support for OpenStack. These SDKs are excellent for writing applications that need to consume more than one type of cloud provider, but may expose a more limited set of features.