Skip to content

Commit 51b24ac

Browse files
authored
fix: Added new ZIA API endpoints (#415)
# 3.8.24 (February 27, 2026) ## Notes - Golang: **v1.24** ### Enhancements - [PR #415](#415) Added the following new ZIA Endpoints - `GET /emailRecipientProfile` Retrieves a list of all recipient email profiles in an organization. - `POST /emailRecipientProfile` Adds a new recipient profile. - `GET /emailRecipientProfile/{profileId}` Retrieves the recipient email profile based on the specified ID - `PUT /emailRecipientProfile/{profileId}` Updates the recipient email profile based on the specified ID - `DELETE /emailRecipientProfile/{profileId}` Deletes the recipient email profile based on the specified ID - `GET /emailRecipientProfile/lite` Retrieves a list of all recipient email profiles in an organization - `GET /emailRecipientProfile/count` Retrieves the count of recipient email profiles - [PR #415](#415) Added the following new ZTW DNS Gateway Endpoints - `GET /dnsGateways` Retrieves a list of all DNS gateways. - `POST /dnsGateways` Creates a new DNS gateway. - `GET /dnsGateways/lite` Retrieves a lite list of all DNS gateways. - `GET /dnsGateways/{gatewayId}` Retrieves the DNS gateway based on the specified ID. - `PUT /dnsGateways/{id}` Updates the DNS gateway based on the specified ID. - `DELETE /dnsGateways/{id}` Deletes the DNS gateway based on the specified ID.
1 parent 1bb645d commit 51b24ac

File tree

25 files changed

+1018
-56
lines changed

25 files changed

+1018
-56
lines changed
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ jobs:
5757
max_attempts: 2
5858
timeout_minutes: 20 # Adjust as needed
5959
command: |
60-
make sweep:zidentity
61-
make test:integration:zidentity
60+
make sweep:zid
61+
make test:integration:zid
6262
env:
6363
ZSCALER_CLIENT_ID: ${{ secrets.ZSCALER_CLIENT_ID }}
6464
ZSCALER_CLIENT_SECRET: ${{ secrets.ZSCALER_CLIENT_SECRET }}
@@ -70,6 +70,6 @@ jobs:
7070
uses: codecov/codecov-action@v5
7171
with:
7272
token: ${{ secrets.CODECOV_TOKEN }}
73-
files: ./zidentitycoverage.out
74-
flags: zidentity
73+
files: ./zidcoverage.out
74+
flags: zid
7575
fail_ci_if_error: false

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ vendor/
2323
go-test
2424
/go-test
2525
.vscode
26+
.cursor
27+
.claude
2628
zpacoverage.txt
2729
ziacoverage.txt
2830
zpacoverage.html

CHANGELOG.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,29 @@
11
# Changelog
22

3+
# 3.8.24 (February 27, 2026)
4+
5+
## Notes
6+
- Golang: **v1.24**
7+
8+
### Enhancements
9+
10+
- [PR #415](https://github.com/zscaler/zscaler-sdk-go/pull/415) Added the following new ZIA Endpoints
11+
- `GET /emailRecipientProfile` Retrieves a list of all recipient email profiles in an organization.
12+
- `POST /emailRecipientProfile` Adds a new recipient profile.
13+
- `GET /emailRecipientProfile/{profileId}` Retrieves the recipient email profile based on the specified ID
14+
- `PUT /emailRecipientProfile/{profileId}` Updates the recipient email profile based on the specified ID
15+
- `DELETE /emailRecipientProfile/{profileId}` Deletes the recipient email profile based on the specified ID
16+
- `GET /emailRecipientProfile/lite` Retrieves a list of all recipient email profiles in an organization
17+
- `GET /emailRecipientProfile/count` Retrieves the count of recipient email profiles
18+
19+
- [PR #415](https://github.com/zscaler/zscaler-sdk-go/pull/415) Added the following new ZTW DNS Gateway Endpoints
20+
- `GET /dnsGateways` Retrieves a list of all DNS gateways.
21+
- `POST /dnsGateways` Creates a new DNS gateway.
22+
- `GET /dnsGateways/lite` Retrieves a lite list of all DNS gateways.
23+
- `GET /dnsGateways/{gatewayId}` Retrieves the DNS gateway based on the specified ID.
24+
- `PUT /dnsGateways/{id}` Updates the DNS gateway based on the specified ID.
25+
- `DELETE /dnsGateways/{id}` Deletes the DNS gateway based on the specified ID.
26+
327
# 3.8.23 (February 24, 2026)
428

529
## Notes

Makefile

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ help:
3131
@echo "$(COLOR_OK) test:integration:zdx Run only zdx integration tests$(COLOR_NONE)"
3232
@echo "$(COLOR_OK) test:integration:zia Run only zia integration tests$(COLOR_NONE)"
3333
@echo "$(COLOR_OK) test:integration:zpa Run only zpa integration tests$(COLOR_NONE)"
34-
@echo "$(COLOR_OK) test:integration:zidentity Run only zidentity integration tests$(COLOR_NONE)"
34+
@echo "$(COLOR_OK) test:integration:zid Run only zid integration tests$(COLOR_NONE)"
3535
@echo "$(COLOR_OK) test:unit Run all unit tests$(COLOR_NONE)"
3636
@echo "$(COLOR_OK) test:unit:zpa Run ZPA unit tests$(COLOR_NONE)"
3737
@echo "$(COLOR_OK) test:unit:zia Run ZIA unit tests$(COLOR_NONE)"
@@ -83,9 +83,9 @@ sweep\:zia:
8383
@echo "$(COLOR_WARNING)WARNING: This will destroy infrastructure. Use only in development accounts.$(COLOR_NONE)"
8484
ZIA_SDK_TEST_SWEEP=true go test ./zscaler/zia/sweep -v -sweep=true
8585

86-
sweep\:zidentity:
86+
sweep\:zid:
8787
@echo "$(COLOR_WARNING)WARNING: This will destroy infrastructure. Use only in development accounts.$(COLOR_NONE)"
88-
ZIDENTITY_SDK_TEST_SWEEP=true go test ./zscaler/zidentity/sweep -v -sweep=true
88+
ZIDENTITY_SDK_TEST_SWEEP=true go test ./zscaler/zid/sweep -v -sweep=true
8989

9090
test\:all:
9191
@echo "$(COLOR_ZSCALER)Running all tests...$(COLOR_NONE)"
@@ -124,11 +124,11 @@ test\:integration\:zia:
124124
go tool cover -html=ziacoverage.out -o ziacoverage.html
125125
@go tool cover -func ziacoverage.out | grep total:
126126

127-
test\:integration\:zidentity:
128-
@echo "$(COLOR_ZSCALER)Running zidentity integration tests...$(COLOR_NONE)"
129-
go test -v -failfast -race -cover -coverprofile=zidentitycoverage.out -covermode=atomic ./zscaler/zidentity/... -parallel 10 -timeout 60m
130-
go tool cover -html=zidentitycoverage.out -o zidentitycoverage.html
131-
@go tool cover -func zidentitycoverage.out | grep total:
127+
test\:integration\:zid:
128+
@echo "$(COLOR_ZSCALER)Running zid integration tests...$(COLOR_NONE)"
129+
go test -v -failfast -race -cover -coverprofile=zidcoverage.out -covermode=atomic ./zscaler/zid/... -parallel 10 -timeout 60m
130+
go tool cover -html=zidcoverage.out -o zidcoverage.html
131+
@go tool cover -func zidcoverage.out | grep total:
132132

133133
test\:unit:
134134
@echo "$(COLOR_OK)Running all unit tests...$(COLOR_NONE)"

docs/guides/release-notes.md

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,34 @@ Track all Zscaler SDK GO releases. New resources, features, and bug fixes will b
1313

1414
---
1515

16-
``Last updated: v3.8.23``
16+
``Last updated: v3.8.24``
1717

1818
---
1919

20+
# 3.8.24 (February 27, 2026)
21+
22+
## Notes
23+
- Golang: **v1.24**
24+
25+
### Enhancements
26+
27+
- [PR #415](https://github.com/zscaler/zscaler-sdk-go/pull/415) Added the following new ZIA Endpoints
28+
- `GET /emailRecipientProfile` Retrieves a list of all recipient email profiles in an organization.
29+
- `POST /emailRecipientProfile` Adds a new recipient profile.
30+
- `GET /emailRecipientProfile/{profileId}` Retrieves the recipient email profile based on the specified ID
31+
- `PUT /emailRecipientProfile/{profileId}` Updates the recipient email profile based on the specified ID
32+
- `DELETE /emailRecipientProfile/{profileId}` Deletes the recipient email profile based on the specified ID
33+
- `GET /emailRecipientProfile/lite` Retrieves a list of all recipient email profiles in an organization
34+
- `GET /emailRecipientProfile/count` Retrieves the count of recipient email profiles
35+
36+
- [PR #415](https://github.com/zscaler/zscaler-sdk-go/pull/415) Added the following new ZTW DNS Gateway Endpoints
37+
- `GET /dnsGateways` Retrieves a list of all DNS gateways.
38+
- `POST /dnsGateways` Creates a new DNS gateway.
39+
- `GET /dnsGateways/lite` Retrieves a lite list of all DNS gateways.
40+
- `GET /dnsGateways/{gatewayId}` Retrieves the DNS gateway based on the specified ID.
41+
- `PUT /dnsGateways/{id}` Updates the DNS gateway based on the specified ID.
42+
- `DELETE /dnsGateways/{id}` Deletes the DNS gateway based on the specified ID.
43+
2044
# 3.8.23 (February 24, 2026)
2145

2246
## Notes

go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ require (
1212
github.com/google/uuid v1.6.0
1313
github.com/hashicorp/go-retryablehttp v0.7.8
1414
github.com/hashicorp/terraform-plugin-sdk v1.17.2
15-
github.com/hashicorp/terraform-plugin-sdk/v2 v2.38.2
15+
github.com/hashicorp/terraform-plugin-sdk/v2 v2.39.0
1616
github.com/kelseyhightower/envconfig v1.4.0
1717
github.com/olekukonko/tablewriter v0.0.5
1818
github.com/stretchr/testify v1.11.1
@@ -38,6 +38,6 @@ require (
3838
github.com/pmezard/go-difflib v1.0.0 // indirect
3939
github.com/rivo/uniseg v0.4.7 // indirect
4040
go.yaml.in/yaml/v4 v4.0.0-rc.3 // indirect
41-
golang.org/x/crypto v0.47.0 // indirect
42-
golang.org/x/sys v0.40.0 // indirect
41+
golang.org/x/crypto v0.48.0 // indirect
42+
golang.org/x/sys v0.41.0 // indirect
4343
)

go.sum

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -190,8 +190,8 @@ github.com/hashicorp/terraform-plugin-log v0.10.0 h1:eu2kW6/QBVdN4P3Ju2WiB2W3Obj
190190
github.com/hashicorp/terraform-plugin-log v0.10.0/go.mod h1:/9RR5Cv2aAbrqcTSdNmY1NRHP4E3ekrXRGjqORpXyB0=
191191
github.com/hashicorp/terraform-plugin-sdk v1.17.2 h1:V7DUR3yBWFrVB9z3ddpY7kiYVSsq4NYR67NiTs93NQo=
192192
github.com/hashicorp/terraform-plugin-sdk v1.17.2/go.mod h1:wkvldbraEMkz23NxkkAsFS88A1R9eUiooiaUZyS6TLw=
193-
github.com/hashicorp/terraform-plugin-sdk/v2 v2.38.2 h1:sy0Bc4A/GZNdmwpVX/Its9aIweCfY9fRfY1IgmXkOj8=
194-
github.com/hashicorp/terraform-plugin-sdk/v2 v2.38.2/go.mod h1:MQisArXYCowb/5q4lDS/BWp5KnXiZ4lxOIyrpKBpUBE=
193+
github.com/hashicorp/terraform-plugin-sdk/v2 v2.39.0 h1:ltFG/dSs4mMHNpBqHptCtJqYM4FekUDJbUcWj+6HGlg=
194+
github.com/hashicorp/terraform-plugin-sdk/v2 v2.39.0/go.mod h1:xJk7ap8vRI/B2U6TrVs7bu/gTihyor8XBTLSs5Y6z2w=
195195
github.com/hashicorp/terraform-plugin-test/v2 v2.2.1/go.mod h1:eZ9JL3O69Cb71Skn6OhHyj17sLmHRb+H6VrDcJjKrYU=
196196
github.com/hashicorp/terraform-svchost v0.0.0-20200729002733-f050f53b9734/go.mod h1:kNDNcF7sN4DocDLBkQYz73HGKwN1ANB1blq4lIYLYvg=
197197
github.com/hashicorp/yamux v0.0.0-20180604194846-3520598351bb/go.mod h1:+NfK9FKeTrX5uv1uIXGdwYDTeHna2qgaIlx54MXqjAM=
@@ -329,8 +329,8 @@ golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a/go.mod h1:LzIPMQfyMNhhGPh
329329
golang.org/x/crypto v0.0.0-20210322153248-0c34fe9e7dc2/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
330330
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
331331
golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU=
332-
golang.org/x/crypto v0.47.0 h1:V6e3FRj+n4dbpw86FJ8Fv7XVOql7TEwpHapKoMJ/GO8=
333-
golang.org/x/crypto v0.47.0/go.mod h1:ff3Y9VzzKbwSSEzWqJsJVBnWmRwRSHt/6Op5n9bQc4A=
332+
golang.org/x/crypto v0.48.0 h1:/VRzVqiRSggnhY7gNRxPauEQ5Drw9haKdM0jqfcCFts=
333+
golang.org/x/crypto v0.48.0/go.mod h1:r0kV5h3qnFPlQnBSrULhlsRfryS2pmewsg+XfMgkVos=
334334
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
335335
golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
336336
golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8=
@@ -461,15 +461,15 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
461461
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
462462
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
463463
golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
464-
golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ=
465-
golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
464+
golang.org/x/sys v0.41.0 h1:Ivj+2Cp/ylzLiEU89QhWblYnOE9zerudt9Ftecq2C6k=
465+
golang.org/x/sys v0.41.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
466466
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
467467
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
468468
golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k=
469469
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
470470
golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk=
471-
golang.org/x/term v0.39.0 h1:RclSuaJf32jOqZz74CkPA9qFuVTX7vhLlpfj/IGWlqY=
472-
golang.org/x/term v0.39.0/go.mod h1:yxzUCTP/U+FzoxfdKmLaA0RV1WgE0VY7hXBwKtY/4ww=
471+
golang.org/x/term v0.40.0 h1:36e4zGLqU4yhjlmxEaagx2KuYbJq3EwY8K943ZsHcvg=
472+
golang.org/x/term v0.40.0/go.mod h1:w2P8uVp06p2iyKKuvXIm7N/y0UCRt3UfJTfZ7oOpglM=
473473
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
474474
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
475475
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=

tests/unit/zidentity/services/common_test.go renamed to tests/unit/zid/services/common_test.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import (
77

88
"github.com/stretchr/testify/assert"
99
"github.com/stretchr/testify/require"
10-
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zidentity/services/common"
10+
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zid/services/common"
1111
)
1212

1313
func TestCommon_Structure(t *testing.T) {
@@ -71,20 +71,20 @@ func TestCommon_Structure(t *testing.T) {
7171

7272
t.Run("PaginationQueryParams creation", func(t *testing.T) {
7373
params := common.NewPaginationQueryParams(50)
74-
74+
7575
assert.Equal(t, 50, params.Limit)
7676
assert.Equal(t, 0, params.Offset)
7777
})
7878

7979
t.Run("PaginationQueryParams with default", func(t *testing.T) {
8080
params := common.NewPaginationQueryParams(0)
81-
81+
8282
assert.Equal(t, common.DefaultPaginationOptions.DefaultPageSize, params.Limit)
8383
})
8484

8585
t.Run("PaginationQueryParams with max limit", func(t *testing.T) {
8686
params := common.NewPaginationQueryParams(5000)
87-
87+
8888
assert.Equal(t, common.DefaultPaginationOptions.MaxPageSize, params.Limit)
8989
})
9090

@@ -94,7 +94,7 @@ func TestCommon_Structure(t *testing.T) {
9494
WithLimit(50).
9595
WithNameFilter("test").
9696
WithExcludeDynamicGroups(true)
97-
97+
9898
assert.Equal(t, 200, params.Offset)
9999
assert.Equal(t, 50, params.Limit)
100100
assert.Equal(t, "test", params.NameLike)
@@ -109,7 +109,7 @@ func TestCommon_Structure(t *testing.T) {
109109
WithPrimaryEmailLike("john@example.com").
110110
WithDomainName([]string{"example.com", "test.com"}).
111111
WithIDPName([]string{"Okta", "Azure"})
112-
112+
113113
assert.Equal(t, []string{"user1", "user2"}, params.LoginName)
114114
assert.Equal(t, "john", params.LoginNameLike)
115115
assert.Equal(t, "John Doe", params.DisplayNameLike)
@@ -123,9 +123,9 @@ func TestCommon_Structure(t *testing.T) {
123123
params.WithOffset(50).
124124
WithNameFilter("test").
125125
WithExcludeDynamicGroups(true)
126-
126+
127127
values := params.ToURLValues()
128-
128+
129129
assert.Equal(t, "50", values.Get("offset"))
130130
assert.Equal(t, "100", values.Get("limit"))
131131
assert.Equal(t, "test", values.Get("name[like]"))
@@ -241,4 +241,3 @@ func TestCommon_ResponseParsing(t *testing.T) {
241241
assert.Equal(t, "/admin/api/v1/users", endpoint)
242242
})
243243
}
244-

tests/unit/zidentity/services/groups_test.go renamed to tests/unit/zid/services/groups_test.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ import (
1010
"github.com/stretchr/testify/assert"
1111
"github.com/stretchr/testify/require"
1212
testcommon "github.com/zscaler/zscaler-sdk-go/v3/tests/unit/common"
13-
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zidentity/services/common"
14-
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zidentity/services/groups"
13+
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zid/services/common"
14+
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zid/services/groups"
1515
)
1616

1717
func TestGroups_Structure(t *testing.T) {
@@ -453,4 +453,3 @@ func TestGroups_GetByName_SDK(t *testing.T) {
453453
require.NotNil(t, results)
454454
assert.Len(t, results, 2) // Should match "Engineering" and "Engineering Team"
455455
}
456-

tests/unit/zidentity/services/resource_servers_test.go renamed to tests/unit/zid/services/resource_servers_test.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ import (
99
"github.com/stretchr/testify/assert"
1010
"github.com/stretchr/testify/require"
1111
testcommon "github.com/zscaler/zscaler-sdk-go/v3/tests/unit/common"
12-
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zidentity/services/common"
13-
resourceservers "github.com/zscaler/zscaler-sdk-go/v3/zscaler/zidentity/services/resource_servers"
12+
"github.com/zscaler/zscaler-sdk-go/v3/zscaler/zid/services/common"
13+
resourceservers "github.com/zscaler/zscaler-sdk-go/v3/zscaler/zid/services/resource_servers"
1414
)
1515

1616
func TestResourceServers_Structure(t *testing.T) {
@@ -312,4 +312,3 @@ func TestResourceServers_GetByName_SDK(t *testing.T) {
312312
require.NotNil(t, results)
313313
assert.Len(t, results, 2) // Should match "ZPA API" and "ZPA Private API"
314314
}
315-

0 commit comments

Comments
 (0)