This SDK enables building Terraform plugin which allows Terraform's users to manage existing and popular service providers as well as custom in-house solutions. The SDK is stable and broadly used across the provider ecosystem.
For new provider development it is recommended to investigate
terraform-plugin-framework, which is a reimagined provider SDK that supports additional capabilities. Refer to the Which SDK Should I Use? documentation for more information about differences between SDKs.
Terraform 0.12.0 or later is needed for version 2.0.0 and later of the Plugin SDK.
When running provider tests, Terraform 0.12.26 or later is needed for version 2.0.0 and later of the Plugin SDK. Users can still use any version after 0.12.0.
This project follows the support policy of Go as its support policy. The two latest major releases of Go are supported by the project.
Currently, that means Go 1.18 or later must be used when including this project as a dependency.
See Extending Terraform section on the website.
Migrating to the standalone SDK v1 is covered on the Plugin SDK section of the website.
Migrating to the v2 release of the SDK is covered in the v2 Upgrade Guide of the website.