diff --git a/okta/data_source_okta_auth_server.go b/okta/data_source_okta_auth_server.go index d577f9351..f64a73b08 100644 --- a/okta/data_source_okta_auth_server.go +++ b/okta/data_source_okta_auth_server.go @@ -5,6 +5,7 @@ import ( "github.com/hashicorp/terraform-plugin-sdk/v2/diag" "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema" + "github.com/okta/okta-sdk-golang/v2/okta" "github.com/okta/okta-sdk-golang/v2/okta/query" ) @@ -59,14 +60,19 @@ func dataSourceAuthServer() *schema.Resource { func dataSourceAuthServerRead(ctx context.Context, d *schema.ResourceData, m interface{}) diag.Diagnostics { name := d.Get("name").(string) - servers, _, err := getOktaClientFromMetadata(m).AuthorizationServer.ListAuthorizationServers(ctx, &query.Params{Q: name, Limit: 1}) + servers, _, err := getOktaClientFromMetadata(m).AuthorizationServer.ListAuthorizationServers(ctx, &query.Params{Q: name, Limit: defaultPaginationLimit}) if err != nil { return diag.Errorf("failed to find auth server '%s': %v", name, err) } - if len(servers) < 1 || servers[0].Name != name { + var authServer *okta.AuthorizationServer + for i := range servers { + if servers[i].Name == name { + authServer = servers[i] + } + } + if authServer == nil { return diag.Errorf("authorization server with name '%s' does not exist", name) } - authServer := servers[0] d.SetId(authServer.Id) _ = d.Set("name", authServer.Name) _ = d.Set("description", authServer.Description)