In this article, we explore the way in which Terraform runs its plugins, AKA providers. We replicate the protocol in another program, and we run the Terraform DNS provider outside of Terraform. We extract its schema, which can tell us which credentials the provider needs, and also the data sources that it exposes, along with the fields that each data source has.