@opusdns/api 0.207.0 → 0.209.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/openapi.yaml CHANGED
@@ -2107,9 +2107,7 @@ components:
2107
2107
  properties:
2108
2108
  redirects:
2109
2109
  items:
2110
- anyOf:
2111
- - $ref: '#/components/schemas/HttpRedirectRequest'
2112
- - $ref: '#/components/schemas/WildcardHttpRedirectRequest'
2110
+ $ref: '#/components/schemas/HttpRedirectRequest'
2113
2111
  title: Redirects
2114
2112
  type: array
2115
2113
  required:
@@ -2154,9 +2152,7 @@ components:
2154
2152
  $ref: '#/components/schemas/HttpProtocol'
2155
2153
  redirects:
2156
2154
  items:
2157
- anyOf:
2158
- - $ref: '#/components/schemas/HttpRedirectRequest'
2159
- - $ref: '#/components/schemas/WildcardHttpRedirectRequest'
2155
+ $ref: '#/components/schemas/HttpRedirectRequest'
2160
2156
  title: Redirects
2161
2157
  type: array
2162
2158
  required:
@@ -2168,9 +2164,7 @@ components:
2168
2164
  properties:
2169
2165
  redirects:
2170
2166
  items:
2171
- anyOf:
2172
- - $ref: '#/components/schemas/HttpRedirectRequest'
2173
- - $ref: '#/components/schemas/WildcardHttpRedirectRequest'
2167
+ $ref: '#/components/schemas/HttpRedirectRequest'
2174
2168
  title: Redirects
2175
2169
  type: array
2176
2170
  required:
@@ -7142,33 +7136,6 @@ components:
7142
7136
  title: Whois Server
7143
7137
  title: WhoisBase
7144
7138
  type: object
7145
- WildcardHttpRedirectRequest:
7146
- properties:
7147
- redirect_code:
7148
- $ref: '#/components/schemas/RedirectCode'
7149
- request_path:
7150
- title: Request Path
7151
- type: string
7152
- request_subdomain:
7153
- title: Request Subdomain
7154
- type: string
7155
- target_hostname:
7156
- title: Target Hostname
7157
- type: string
7158
- target_path:
7159
- title: Target Path
7160
- type: string
7161
- target_protocol:
7162
- $ref: '#/components/schemas/HttpProtocol'
7163
- required:
7164
- - request_path
7165
- - target_protocol
7166
- - target_hostname
7167
- - target_path
7168
- - redirect_code
7169
- - request_subdomain
7170
- title: WildcardHttpRedirectRequest
7171
- type: object
7172
7139
  ZoneSortField:
7173
7140
  enum:
7174
7141
  - name
@@ -7350,7 +7317,7 @@ info:
7350
7317
  '
7351
7318
  summary: OpusDNS - your gateway to a seamless domain management experience.
7352
7319
  title: OpusDNS API
7353
- version: 2026-02-26-130702
7320
+ version: 2026-02-26-134941
7354
7321
  x-logo:
7355
7322
  altText: OpusDNS API Reference
7356
7323
  url: https://d24lr4zqs1tgqh.cloudfront.net/c9505a20-5ae1-406c-b060-d392569caebf.jpg
@@ -10482,9 +10449,106 @@ paths:
10482
10449
  '200':
10483
10450
  content:
10484
10451
  application/json:
10452
+ examples:
10453
+ domain_forwards_list:
10454
+ description: Paginated list of domain forwards with multiple protocols
10455
+ and redirect configurations
10456
+ summary: Domain forwards list
10457
+ value:
10458
+ pagination:
10459
+ current_page: 1
10460
+ has_next_page: false
10461
+ has_previous_page: false
10462
+ page_size: 10
10463
+ total_items: 3
10464
+ total_pages: 1
10465
+ results:
10466
+ - created_on: '2025-02-20T10:30:45'
10467
+ domain_forward_id: domain_forward_01jx0000000000000000000001
10468
+ enabled: true
10469
+ hostname: example.com.
10470
+ http:
10471
+ created_on: '2025-02-20T10:30:45'
10472
+ redirects:
10473
+ - protected: false
10474
+ redirect_code: 301
10475
+ request_hostname: example.com.
10476
+ request_path: /
10477
+ request_protocol: http
10478
+ target_hostname: example.com
10479
+ target_path: /
10480
+ target_protocol: https
10481
+ updated_on: '2025-02-20T10:30:45'
10482
+ https:
10483
+ created_on: '2025-02-20T10:30:45'
10484
+ redirects:
10485
+ - protected: false
10486
+ redirect_code: 302
10487
+ request_hostname: example.com.
10488
+ request_path: /
10489
+ request_protocol: https
10490
+ target_hostname: www.example.com
10491
+ target_path: /
10492
+ target_protocol: https
10493
+ updated_on: '2025-02-20T10:30:45'
10494
+ updated_on: '2025-02-20T10:30:45'
10495
+ - created_on: '2025-02-20T10:30:45'
10496
+ domain_forward_id: domain_forward_01jx0000000000000000000002
10497
+ enabled: false
10498
+ hostname: api.example.com.
10499
+ https:
10500
+ created_on: '2025-02-20T10:30:45'
10501
+ redirects:
10502
+ - protected: false
10503
+ redirect_code: 308
10504
+ request_hostname: api.example.com.
10505
+ request_path: /v1
10506
+ request_protocol: https
10507
+ target_hostname: api-v2.example.com
10508
+ target_path: /v1
10509
+ target_protocol: https
10510
+ updated_on: '2025-02-20T10:30:45'
10511
+ updated_on: '2025-02-20T10:30:45'
10512
+ - created_on: '2025-02-20T10:30:45'
10513
+ domain_forward_id: domain_forward_01jx0000000000000000000003
10514
+ enabled: true
10515
+ hostname: old.example.com.
10516
+ http:
10517
+ created_on: '2025-02-20T10:30:45'
10518
+ redirects:
10519
+ - protected: false
10520
+ redirect_code: 301
10521
+ request_hostname: old.example.com.
10522
+ request_path: /blog
10523
+ request_protocol: http
10524
+ target_hostname: example.com
10525
+ target_path: /news
10526
+ target_protocol: https
10527
+ - protected: false
10528
+ redirect_code: 301
10529
+ request_hostname: old.example.com.
10530
+ request_path: /
10531
+ request_protocol: http
10532
+ target_hostname: example.com
10533
+ target_path: /
10534
+ target_protocol: https
10535
+ updated_on: '2025-02-20T10:30:45'
10536
+ https:
10537
+ created_on: '2025-02-20T10:30:45'
10538
+ redirects:
10539
+ - protected: false
10540
+ redirect_code: 301
10541
+ request_hostname: old.example.com.
10542
+ request_path: /
10543
+ request_protocol: https
10544
+ target_hostname: example.com
10545
+ target_path: /
10546
+ target_protocol: https
10547
+ updated_on: '2025-02-20T10:30:45'
10548
+ updated_on: '2025-02-20T10:30:45'
10485
10549
  schema:
10486
10550
  $ref: '#/components/schemas/Pagination_DomainForward_'
10487
- description: Successful Response
10551
+ description: List of domain forwards retrieved successfully
10488
10552
  '401':
10489
10553
  content:
10490
10554
  application/problem+json:
@@ -10534,7 +10598,7 @@ paths:
10534
10598
  required: true
10535
10599
  responses:
10536
10600
  '204':
10537
- description: Successful Response
10601
+ description: Domain forward redirects updated successfully.
10538
10602
  '401':
10539
10603
  content:
10540
10604
  application/problem+json:
@@ -10591,10 +10655,12 @@ paths:
10591
10655
  content:
10592
10656
  application/json:
10593
10657
  examples:
10594
- domain_forward:
10595
- description: Create a HTTP domain forward with redirect from HTTP
10596
- to HTTPS and HTTPS to auth.example.com
10597
- summary: HTTP domain forward
10658
+ http_and_https_forwards:
10659
+ description: Create a domain forward with both HTTP and HTTPS protocols
10660
+ configured. HTTP requests are redirected with 301 (Moved Permanently)
10661
+ to HTTPS, while HTTPS requests are redirected with 302 (Found) to
10662
+ a different target (e.g., auth service).
10663
+ summary: HTTP and HTTPS domain forwards
10598
10664
  value:
10599
10665
  enabled: false
10600
10666
  hostname: example.com.
@@ -10612,10 +10678,11 @@ paths:
10612
10678
  target_hostname: auth.example.com
10613
10679
  target_path: /
10614
10680
  target_protocol: https
10615
- http_to_https:
10616
- description: Create a HTTP domain forward with redirect from HTTP
10617
- to HTTPS
10618
- summary: HTTP to HTTPS
10681
+ http_to_https_only:
10682
+ description: Create a domain forward with only HTTPS protocol configured.
10683
+ This is useful for HTTPS-only services where you want to redirect
10684
+ HTTPS traffic without handling HTTP.
10685
+ summary: HTTPS-only forward
10619
10686
  value:
10620
10687
  enabled: false
10621
10688
  hostname: example.com.
@@ -10634,17 +10701,18 @@ paths:
10634
10701
  content:
10635
10702
  application/json:
10636
10703
  examples:
10637
- http_domain_forward_response:
10638
- description: Response when creating a HTTP domain forward with redirect
10639
- from HTTP to HTTPS and HTTPS to auth.example.com
10640
- summary: Response for HTTP domain forward
10704
+ http_and_https_response:
10705
+ description: Response when creating a domain forward with both HTTP
10706
+ and HTTPS protocols. The forward is created but initially disabled
10707
+ (enabled=false) until DNS records are provisioned.
10708
+ summary: Response for HTTP and HTTPS forwards
10641
10709
  value:
10642
- created_on: '2025-11-14T09:01:38'
10710
+ created_on: '2025-02-20T10:30:45'
10643
10711
  domain_forward_id: domain_forward_01jx0000000000000000000001
10644
10712
  enabled: false
10645
10713
  hostname: example.com.
10646
10714
  http:
10647
- created_on: '2025-11-14T09:01:38'
10715
+ created_on: '2025-02-20T10:30:45'
10648
10716
  redirects:
10649
10717
  - protected: false
10650
10718
  redirect_code: 301
@@ -10654,9 +10722,9 @@ paths:
10654
10722
  target_hostname: example.com
10655
10723
  target_path: /
10656
10724
  target_protocol: https
10657
- updated_on: '2025-11-14T09:01:38'
10725
+ updated_on: '2025-02-20T10:30:45'
10658
10726
  https:
10659
- created_on: '2025-11-14T09:01:38'
10727
+ created_on: '2025-02-20T10:30:45'
10660
10728
  redirects:
10661
10729
  - protected: false
10662
10730
  redirect_code: 302
@@ -10666,18 +10734,19 @@ paths:
10666
10734
  target_hostname: auth.example.com
10667
10735
  target_path: /
10668
10736
  target_protocol: https
10669
- updated_on: '2025-11-14T09:01:38'
10670
- updated_on: '2025-11-14T09:01:38'
10671
- http_to_https_response:
10672
- description: Response when creating a HTTP to HTTPS domain forward
10673
- summary: Response for HTTP to HTTPS
10737
+ updated_on: '2025-02-20T10:30:45'
10738
+ updated_on: '2025-02-20T10:30:45'
10739
+ https_only_response:
10740
+ description: Response when creating a HTTPS-only domain forward
10741
+ with minimal protocol configuration.
10742
+ summary: Response for HTTPS-only forward
10674
10743
  value:
10675
- created_on: '2025-11-14T09:01:38'
10744
+ created_on: '2025-02-20T10:30:45'
10676
10745
  domain_forward_id: domain_forward_01jx0000000000000000000002
10677
10746
  enabled: false
10678
10747
  hostname: example.com.
10679
10748
  http:
10680
- created_on: '2025-11-14T09:01:38'
10749
+ created_on: '2025-02-20T10:30:45'
10681
10750
  redirects:
10682
10751
  - protected: false
10683
10752
  redirect_code: 301
@@ -10687,8 +10756,8 @@ paths:
10687
10756
  target_hostname: example.com
10688
10757
  target_path: /
10689
10758
  target_protocol: https
10690
- updated_on: '2025-11-14T09:01:38'
10691
- updated_on: '2025-11-14T09:01:38'
10759
+ updated_on: '2025-02-20T10:30:45'
10760
+ updated_on: '2025-02-20T10:30:45'
10692
10761
  schema:
10693
10762
  $ref: '#/components/schemas/DomainForward'
10694
10763
  description: Domain forward created successfully
@@ -10740,7 +10809,7 @@ paths:
10740
10809
  type: domain-forward-already-exists
10741
10810
  schema:
10742
10811
  $ref: '#/components/schemas/Problem'
10743
- description: Domain forward already exists
10812
+ description: Domain forward already exists for this hostname
10744
10813
  '422':
10745
10814
  content:
10746
10815
  application/problem+json:
@@ -10755,6 +10824,8 @@ paths:
10755
10824
  - domain_forward
10756
10825
  /v1/domain-forwards/metrics:
10757
10826
  get:
10827
+ description: Retrieves overall metrics for domain forwards including total and
10828
+ unique visit counts.
10758
10829
  operationId: metrics_v1_domain_forwards_metrics_get
10759
10830
  parameters:
10760
10831
  - in: query
@@ -10804,9 +10875,59 @@ paths:
10804
10875
  '200':
10805
10876
  content:
10806
10877
  application/json:
10878
+ examples:
10879
+ basic_metrics:
10880
+ description: Basic metrics showing 1 invoked forward with 1,250
10881
+ total visits
10882
+ summary: Basic metrics example
10883
+ value:
10884
+ configured_forwards: 3
10885
+ invoked_forwards: 1
10886
+ total_visits: 1250
10887
+ unique_visits: 847
10888
+ comprehensive_metrics:
10889
+ description: Comprehensive metrics showing 5 invoked forwards with
10890
+ 15,842 total visits
10891
+ summary: Comprehensive metrics example
10892
+ value:
10893
+ configured_forwards: 12
10894
+ invoked_forwards: 5
10895
+ total_visits: 15842
10896
+ unique_visits: 9234
10807
10897
  schema:
10808
10898
  $ref: '#/components/schemas/DomainForwardMetricsResponse'
10809
- description: Successful Response
10899
+ description: Domain forward metrics retrieved successfully
10900
+ '400':
10901
+ content:
10902
+ application/json:
10903
+ example:
10904
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
10905
+ for exact match or 'domain' to filter by domain including all subdomains.
10906
+ description: Invalid query parameters
10907
+ '401':
10908
+ content:
10909
+ application/problem+json:
10910
+ example:
10911
+ code: ERROR_AUTHENTICATION
10912
+ detail: Additional error context.
10913
+ status: 401
10914
+ title: Authentication Error
10915
+ type: authentication
10916
+ schema:
10917
+ $ref: '#/components/schemas/Problem'
10918
+ description: Unauthorized
10919
+ '403':
10920
+ content:
10921
+ application/problem+json:
10922
+ example:
10923
+ code: ERROR_PERMISSION_DENIED
10924
+ detail: Insufficient permissions to perform this action
10925
+ status: 403
10926
+ title: Permission Denied
10927
+ type: permission-denied
10928
+ schema:
10929
+ $ref: '#/components/schemas/Problem'
10930
+ description: Forbidden
10810
10931
  '422':
10811
10932
  content:
10812
10933
  application/problem+json:
@@ -10816,11 +10937,13 @@ paths:
10816
10937
  security:
10817
10938
  - OAuth2PasswordBearer: []
10818
10939
  - APIKeyHeader: []
10819
- summary: Metrics
10940
+ summary: Get domain forward metrics
10820
10941
  tags:
10821
10942
  - domain_forward
10822
10943
  /v1/domain-forwards/metrics/browser:
10823
10944
  get:
10945
+ description: Retrieves visitor traffic broken down by browser type (Chrome,
10946
+ Safari, Firefox, etc.) with total and unique visit counts.
10824
10947
  operationId: browser_stats_v1_domain_forwards_metrics_browser_get
10825
10948
  parameters:
10826
10949
  - in: query
@@ -10870,9 +10993,82 @@ paths:
10870
10993
  '200':
10871
10994
  content:
10872
10995
  application/json:
10996
+ examples:
10997
+ basic_browser_stats:
10998
+ description: Shows top 4 browsers with visit counts and unique visitor
10999
+ counts
11000
+ summary: Basic browser statistics
11001
+ value:
11002
+ results:
11003
+ - key: Chrome
11004
+ total: 450
11005
+ unique: 320
11006
+ - key: Safari
11007
+ total: 280
11008
+ unique: 195
11009
+ - key: Firefox
11010
+ total: 195
11011
+ unique: 145
11012
+ - key: Edge
11013
+ total: 145
11014
+ unique: 107
11015
+ comprehensive_browser_stats:
11016
+ description: Shows extended browser list with detailed visitor tracking
11017
+ summary: Comprehensive browser statistics
11018
+ value:
11019
+ results:
11020
+ - key: Chrome
11021
+ total: 6200
11022
+ unique: 4125
11023
+ - key: Safari
11024
+ total: 3850
11025
+ unique: 2680
11026
+ - key: Firefox
11027
+ total: 2680
11028
+ unique: 1950
11029
+ - key: Edge
11030
+ total: 1890
11031
+ unique: 1375
11032
+ - key: Opera
11033
+ total: 890
11034
+ unique: 620
11035
+ - key: Samsung Internet
11036
+ total: 452
11037
+ unique: 325
10873
11038
  schema:
10874
11039
  $ref: '#/components/schemas/DomainForwardBrowserStatsResponse'
10875
- description: Successful Response
11040
+ description: Browser statistics retrieved successfully
11041
+ '400':
11042
+ content:
11043
+ application/json:
11044
+ example:
11045
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
11046
+ for exact match or 'domain' to filter by domain including all subdomains.
11047
+ description: Invalid query parameters
11048
+ '401':
11049
+ content:
11050
+ application/problem+json:
11051
+ example:
11052
+ code: ERROR_AUTHENTICATION
11053
+ detail: Additional error context.
11054
+ status: 401
11055
+ title: Authentication Error
11056
+ type: authentication
11057
+ schema:
11058
+ $ref: '#/components/schemas/Problem'
11059
+ description: Unauthorized
11060
+ '403':
11061
+ content:
11062
+ application/problem+json:
11063
+ example:
11064
+ code: ERROR_PERMISSION_DENIED
11065
+ detail: Insufficient permissions to perform this action
11066
+ status: 403
11067
+ title: Permission Denied
11068
+ type: permission-denied
11069
+ schema:
11070
+ $ref: '#/components/schemas/Problem'
11071
+ description: Forbidden
10876
11072
  '422':
10877
11073
  content:
10878
11074
  application/problem+json:
@@ -10882,11 +11078,13 @@ paths:
10882
11078
  security:
10883
11079
  - OAuth2PasswordBearer: []
10884
11080
  - APIKeyHeader: []
10885
- summary: Browser Stats
11081
+ summary: Get browser statistics
10886
11082
  tags:
10887
11083
  - domain_forward
10888
11084
  /v1/domain-forwards/metrics/geo:
10889
11085
  get:
11086
+ description: Retrieves visitor traffic broken down by geographic location (country
11087
+ code) with visit counts.
10890
11088
  operationId: geo_stats_v1_domain_forwards_metrics_geo_get
10891
11089
  parameters:
10892
11090
  - in: query
@@ -10936,9 +11134,75 @@ paths:
10936
11134
  '200':
10937
11135
  content:
10938
11136
  application/json:
11137
+ examples:
11138
+ basic_geo_stats:
11139
+ description: Shows visits by country for top 4 regions
11140
+ summary: Basic geographic statistics
11141
+ value:
11142
+ results:
11143
+ - key: US
11144
+ total: 450
11145
+ - key: GB
11146
+ total: 220
11147
+ - key: DE
11148
+ total: 180
11149
+ - key: FR
11150
+ total: 145
11151
+ comprehensive_geo_stats:
11152
+ description: Shows detailed geographic distribution across 8 countries
11153
+ summary: Comprehensive geographic statistics
11154
+ value:
11155
+ results:
11156
+ - key: US
11157
+ total: 5800
11158
+ - key: GB
11159
+ total: 2100
11160
+ - key: DE
11161
+ total: 1850
11162
+ - key: FR
11163
+ total: 1450
11164
+ - key: CA
11165
+ total: 980
11166
+ - key: AU
11167
+ total: 750
11168
+ - key: JP
11169
+ total: 620
11170
+ - key: IN
11171
+ total: 520
10939
11172
  schema:
10940
11173
  $ref: '#/components/schemas/DomainForwardGeoStatsResponse'
10941
- description: Successful Response
11174
+ description: Geographic statistics retrieved successfully
11175
+ '400':
11176
+ content:
11177
+ application/json:
11178
+ example:
11179
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
11180
+ for exact match or 'domain' to filter by domain including all subdomains.
11181
+ description: Invalid query parameters
11182
+ '401':
11183
+ content:
11184
+ application/problem+json:
11185
+ example:
11186
+ code: ERROR_AUTHENTICATION
11187
+ detail: Additional error context.
11188
+ status: 401
11189
+ title: Authentication Error
11190
+ type: authentication
11191
+ schema:
11192
+ $ref: '#/components/schemas/Problem'
11193
+ description: Unauthorized
11194
+ '403':
11195
+ content:
11196
+ application/problem+json:
11197
+ example:
11198
+ code: ERROR_PERMISSION_DENIED
11199
+ detail: Insufficient permissions to perform this action
11200
+ status: 403
11201
+ title: Permission Denied
11202
+ type: permission-denied
11203
+ schema:
11204
+ $ref: '#/components/schemas/Problem'
11205
+ description: Forbidden
10942
11206
  '422':
10943
11207
  content:
10944
11208
  application/problem+json:
@@ -10948,11 +11212,13 @@ paths:
10948
11212
  security:
10949
11213
  - OAuth2PasswordBearer: []
10950
11214
  - APIKeyHeader: []
10951
- summary: Geo Stats
11215
+ summary: Get geographic statistics
10952
11216
  tags:
10953
11217
  - domain_forward
10954
11218
  /v1/domain-forwards/metrics/platform:
10955
11219
  get:
11220
+ description: Retrieves visitor traffic broken down by platform (Windows, Macintosh,
11221
+ iOS, Android, Linux) with total and unique visit counts.
10956
11222
  operationId: platform_stats_v1_domain_forwards_metrics_platform_get
10957
11223
  parameters:
10958
11224
  - in: query
@@ -11002,9 +11268,80 @@ paths:
11002
11268
  '200':
11003
11269
  content:
11004
11270
  application/json:
11271
+ examples:
11272
+ basic_platform_stats:
11273
+ description: Shows distribution of visits across desktop and mobile
11274
+ platforms
11275
+ summary: Basic platform statistics
11276
+ value:
11277
+ results:
11278
+ - key: Windows
11279
+ total: 520
11280
+ unique: 380
11281
+ - key: Macintosh
11282
+ total: 350
11283
+ unique: 245
11284
+ - key: iOS
11285
+ total: 280
11286
+ unique: 200
11287
+ - key: Android
11288
+ total: 100
11289
+ unique: 75
11290
+ comprehensive_platform_stats:
11291
+ description: Shows detailed platform breakdown including Linux and
11292
+ other systems
11293
+ summary: Comprehensive platform statistics
11294
+ value:
11295
+ results:
11296
+ - key: Windows
11297
+ total: 7200
11298
+ unique: 5100
11299
+ - key: Macintosh
11300
+ total: 4800
11301
+ unique: 3400
11302
+ - key: iOS
11303
+ total: 2100
11304
+ unique: 1500
11305
+ - key: Android
11306
+ total: 1250
11307
+ unique: 900
11308
+ - key: Linux
11309
+ total: 492
11310
+ unique: 350
11005
11311
  schema:
11006
11312
  $ref: '#/components/schemas/DomainForwardPlatformStatsResponse'
11007
- description: Successful Response
11313
+ description: Platform statistics retrieved successfully
11314
+ '400':
11315
+ content:
11316
+ application/json:
11317
+ example:
11318
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
11319
+ for exact match or 'domain' to filter by domain including all subdomains.
11320
+ description: Invalid query parameters
11321
+ '401':
11322
+ content:
11323
+ application/problem+json:
11324
+ example:
11325
+ code: ERROR_AUTHENTICATION
11326
+ detail: Additional error context.
11327
+ status: 401
11328
+ title: Authentication Error
11329
+ type: authentication
11330
+ schema:
11331
+ $ref: '#/components/schemas/Problem'
11332
+ description: Unauthorized
11333
+ '403':
11334
+ content:
11335
+ application/problem+json:
11336
+ example:
11337
+ code: ERROR_PERMISSION_DENIED
11338
+ detail: Insufficient permissions to perform this action
11339
+ status: 403
11340
+ title: Permission Denied
11341
+ type: permission-denied
11342
+ schema:
11343
+ $ref: '#/components/schemas/Problem'
11344
+ description: Forbidden
11008
11345
  '422':
11009
11346
  content:
11010
11347
  application/problem+json:
@@ -11014,11 +11351,13 @@ paths:
11014
11351
  security:
11015
11352
  - OAuth2PasswordBearer: []
11016
11353
  - APIKeyHeader: []
11017
- summary: Platform Stats
11354
+ summary: Get platform statistics
11018
11355
  tags:
11019
11356
  - domain_forward
11020
11357
  /v1/domain-forwards/metrics/referrer:
11021
11358
  get:
11359
+ description: Retrieves visitor referral sources (where traffic came from) with
11360
+ total and unique visit counts.
11022
11361
  operationId: referrer_stats_v1_domain_forwards_metrics_referrer_get
11023
11362
  parameters:
11024
11363
  - in: query
@@ -11068,9 +11407,82 @@ paths:
11068
11407
  '200':
11069
11408
  content:
11070
11409
  application/json:
11410
+ examples:
11411
+ basic_referrer_stats:
11412
+ description: Shows top referral sources directing traffic to forwards
11413
+ summary: Basic referrer statistics
11414
+ value:
11415
+ results:
11416
+ - key: https://google.com
11417
+ total: 450
11418
+ unique: 325
11419
+ - key: https://twitter.com
11420
+ total: 280
11421
+ unique: 195
11422
+ - key: direct
11423
+ total: 240
11424
+ unique: 180
11425
+ - key: https://reddit.com
11426
+ total: 95
11427
+ unique: 75
11428
+ comprehensive_referrer_stats:
11429
+ description: Shows extended list of referral sources including unique
11430
+ visitor counts
11431
+ summary: Comprehensive referrer statistics
11432
+ value:
11433
+ results:
11434
+ - key: https://google.com
11435
+ total: 5800
11436
+ unique: 4200
11437
+ - key: https://twitter.com
11438
+ total: 3200
11439
+ unique: 2300
11440
+ - key: direct
11441
+ total: 2900
11442
+ unique: 2100
11443
+ - key: https://reddit.com
11444
+ total: 1450
11445
+ unique: 1050
11446
+ - key: https://linkedin.com
11447
+ total: 980
11448
+ unique: 720
11449
+ - key: https://facebook.com
11450
+ total: 512
11451
+ unique: 380
11071
11452
  schema:
11072
11453
  $ref: '#/components/schemas/DomainForwardReferrerStatsResponse'
11073
- description: Successful Response
11454
+ description: Referrer statistics retrieved successfully
11455
+ '400':
11456
+ content:
11457
+ application/json:
11458
+ example:
11459
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
11460
+ for exact match or 'domain' to filter by domain including all subdomains.
11461
+ description: Invalid query parameters
11462
+ '401':
11463
+ content:
11464
+ application/problem+json:
11465
+ example:
11466
+ code: ERROR_AUTHENTICATION
11467
+ detail: Additional error context.
11468
+ status: 401
11469
+ title: Authentication Error
11470
+ type: authentication
11471
+ schema:
11472
+ $ref: '#/components/schemas/Problem'
11473
+ description: Unauthorized
11474
+ '403':
11475
+ content:
11476
+ application/problem+json:
11477
+ example:
11478
+ code: ERROR_PERMISSION_DENIED
11479
+ detail: Insufficient permissions to perform this action
11480
+ status: 403
11481
+ title: Permission Denied
11482
+ type: permission-denied
11483
+ schema:
11484
+ $ref: '#/components/schemas/Problem'
11485
+ description: Forbidden
11074
11486
  '422':
11075
11487
  content:
11076
11488
  application/problem+json:
@@ -11080,11 +11492,13 @@ paths:
11080
11492
  security:
11081
11493
  - OAuth2PasswordBearer: []
11082
11494
  - APIKeyHeader: []
11083
- summary: Referrer Stats
11495
+ summary: Get referrer statistics
11084
11496
  tags:
11085
11497
  - domain_forward
11086
11498
  /v1/domain-forwards/metrics/status-code:
11087
11499
  get:
11500
+ description: Retrieves distribution of HTTP redirect status codes (301, 302,
11501
+ 307, 308) used across forwards.
11088
11502
  operationId: status_code_stats_v1_domain_forwards_metrics_status_code_get
11089
11503
  parameters:
11090
11504
  - in: query
@@ -11134,23 +11548,84 @@ paths:
11134
11548
  '200':
11135
11549
  content:
11136
11550
  application/json:
11551
+ examples:
11552
+ basic_status_code_stats:
11553
+ description: Shows distribution of HTTP redirect status codes (301,
11554
+ 302, 307, 308)
11555
+ summary: Basic status code statistics
11556
+ value:
11557
+ results:
11558
+ - key: '301'
11559
+ total: 520
11560
+ - key: '302'
11561
+ total: 430
11562
+ - key: '307'
11563
+ total: 285
11564
+ - key: '308'
11565
+ total: 15
11566
+ comprehensive_status_code_stats:
11567
+ description: Shows detailed redirect code usage patterns at scale
11568
+ summary: Comprehensive status code statistics
11569
+ value:
11570
+ results:
11571
+ - key: '301'
11572
+ total: 6800
11573
+ - key: '302'
11574
+ total: 5200
11575
+ - key: '307'
11576
+ total: 2850
11577
+ - key: '308'
11578
+ total: 992
11137
11579
  schema:
11138
11580
  $ref: '#/components/schemas/DomainForwardStatusCodeStatsResponse'
11139
- description: Successful Response
11140
- '422':
11581
+ description: Status code statistics retrieved successfully
11582
+ '400':
11141
11583
  content:
11142
- application/problem+json:
11584
+ application/json:
11585
+ example:
11586
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
11587
+ for exact match or 'domain' to filter by domain including all subdomains.
11588
+ description: Invalid query parameters
11589
+ '401':
11590
+ content:
11591
+ application/problem+json:
11592
+ example:
11593
+ code: ERROR_AUTHENTICATION
11594
+ detail: Additional error context.
11595
+ status: 401
11596
+ title: Authentication Error
11597
+ type: authentication
11598
+ schema:
11599
+ $ref: '#/components/schemas/Problem'
11600
+ description: Unauthorized
11601
+ '403':
11602
+ content:
11603
+ application/problem+json:
11604
+ example:
11605
+ code: ERROR_PERMISSION_DENIED
11606
+ detail: Insufficient permissions to perform this action
11607
+ status: 403
11608
+ title: Permission Denied
11609
+ type: permission-denied
11610
+ schema:
11611
+ $ref: '#/components/schemas/Problem'
11612
+ description: Forbidden
11613
+ '422':
11614
+ content:
11615
+ application/problem+json:
11143
11616
  schema:
11144
11617
  $ref: '#/components/schemas/HTTPValidationError'
11145
11618
  description: Validation Error
11146
11619
  security:
11147
11620
  - OAuth2PasswordBearer: []
11148
11621
  - APIKeyHeader: []
11149
- summary: Status Code Stats
11622
+ summary: Get HTTP status code statistics
11150
11623
  tags:
11151
11624
  - domain_forward
11152
11625
  /v1/domain-forwards/metrics/time-series:
11153
11626
  get:
11627
+ description: Retrieves visit counts bucketed by time intervals (hourly, daily)
11628
+ for the specified time range.
11154
11629
  operationId: time_series_v1_domain_forwards_metrics_time_series_get
11155
11630
  parameters:
11156
11631
  - in: query
@@ -11200,9 +11675,114 @@ paths:
11200
11675
  '200':
11201
11676
  content:
11202
11677
  application/json:
11678
+ examples:
11679
+ daily_time_series:
11680
+ description: Shows visit counts bucketed by day over a 7-day period
11681
+ summary: Daily time series example
11682
+ value:
11683
+ results:
11684
+ - timestamp: '2025-02-20T12:00:00'
11685
+ total: 2500
11686
+ - timestamp: '2025-02-19T12:00:00'
11687
+ total: 2350
11688
+ - timestamp: '2025-02-18T12:00:00'
11689
+ total: 2200
11690
+ - timestamp: '2025-02-17T12:00:00'
11691
+ total: 2050
11692
+ - timestamp: '2025-02-16T12:00:00'
11693
+ total: 1900
11694
+ - timestamp: '2025-02-15T12:00:00'
11695
+ total: 1750
11696
+ - timestamp: '2025-02-14T12:00:00'
11697
+ total: 1600
11698
+ hourly_time_series:
11699
+ description: Shows visit counts bucketed by hour over a 24-hour
11700
+ period
11701
+ summary: Hourly time series example
11702
+ value:
11703
+ results:
11704
+ - timestamp: '2025-02-20T12:00:00'
11705
+ total: 150
11706
+ - timestamp: '2025-02-20T11:00:00'
11707
+ total: 140
11708
+ - timestamp: '2025-02-20T10:00:00'
11709
+ total: 130
11710
+ - timestamp: '2025-02-20T09:00:00'
11711
+ total: 120
11712
+ - timestamp: '2025-02-20T08:00:00'
11713
+ total: 110
11714
+ - timestamp: '2025-02-20T07:00:00'
11715
+ total: 100
11716
+ - timestamp: '2025-02-20T06:00:00'
11717
+ total: 90
11718
+ - timestamp: '2025-02-20T05:00:00'
11719
+ total: 80
11720
+ - timestamp: '2025-02-20T04:00:00'
11721
+ total: 70
11722
+ - timestamp: '2025-02-20T03:00:00'
11723
+ total: 60
11724
+ - timestamp: '2025-02-20T02:00:00'
11725
+ total: 50
11726
+ - timestamp: '2025-02-20T01:00:00'
11727
+ total: 40
11728
+ - timestamp: '2025-02-20T00:00:00'
11729
+ total: 30
11730
+ - timestamp: '2025-02-19T23:00:00'
11731
+ total: 20
11732
+ - timestamp: '2025-02-19T22:00:00'
11733
+ total: 10
11734
+ - timestamp: '2025-02-19T21:00:00'
11735
+ total: 0
11736
+ - timestamp: '2025-02-19T20:00:00'
11737
+ total: -10
11738
+ - timestamp: '2025-02-19T19:00:00'
11739
+ total: -20
11740
+ - timestamp: '2025-02-19T18:00:00'
11741
+ total: -30
11742
+ - timestamp: '2025-02-19T17:00:00'
11743
+ total: -40
11744
+ - timestamp: '2025-02-19T16:00:00'
11745
+ total: -50
11746
+ - timestamp: '2025-02-19T15:00:00'
11747
+ total: -60
11748
+ - timestamp: '2025-02-19T14:00:00'
11749
+ total: -70
11750
+ - timestamp: '2025-02-19T13:00:00'
11751
+ total: -80
11203
11752
  schema:
11204
11753
  $ref: '#/components/schemas/DomainForwardMetricsTimeSeriesResponse'
11205
- description: Successful Response
11754
+ description: Time series metrics retrieved successfully
11755
+ '400':
11756
+ content:
11757
+ application/json:
11758
+ example:
11759
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
11760
+ for exact match or 'domain' to filter by domain including all subdomains.
11761
+ description: Invalid query parameters
11762
+ '401':
11763
+ content:
11764
+ application/problem+json:
11765
+ example:
11766
+ code: ERROR_AUTHENTICATION
11767
+ detail: Additional error context.
11768
+ status: 401
11769
+ title: Authentication Error
11770
+ type: authentication
11771
+ schema:
11772
+ $ref: '#/components/schemas/Problem'
11773
+ description: Unauthorized
11774
+ '403':
11775
+ content:
11776
+ application/problem+json:
11777
+ example:
11778
+ code: ERROR_PERMISSION_DENIED
11779
+ detail: Insufficient permissions to perform this action
11780
+ status: 403
11781
+ title: Permission Denied
11782
+ type: permission-denied
11783
+ schema:
11784
+ $ref: '#/components/schemas/Problem'
11785
+ description: Forbidden
11206
11786
  '422':
11207
11787
  content:
11208
11788
  application/problem+json:
@@ -11212,11 +11792,13 @@ paths:
11212
11792
  security:
11213
11793
  - OAuth2PasswordBearer: []
11214
11794
  - APIKeyHeader: []
11215
- summary: Time Series
11795
+ summary: Get domain forward time series metrics
11216
11796
  tags:
11217
11797
  - domain_forward
11218
11798
  /v1/domain-forwards/metrics/user-agent:
11219
11799
  get:
11800
+ description: Retrieves visitor traffic broken down by user agent string with
11801
+ total and unique visit counts.
11220
11802
  operationId: user_agent_stats_v1_domain_forwards_metrics_user_agent_get
11221
11803
  parameters:
11222
11804
  - in: query
@@ -11266,9 +11848,74 @@ paths:
11266
11848
  '200':
11267
11849
  content:
11268
11850
  application/json:
11851
+ examples:
11852
+ basic_user_agent_stats:
11853
+ description: Shows top 3 user agents with visit distribution
11854
+ summary: Basic user agent statistics
11855
+ value:
11856
+ results:
11857
+ - key: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
11858
+ total: 320
11859
+ unique: 245
11860
+ - key: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36
11861
+ total: 220
11862
+ unique: 165
11863
+ - key: Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X)
11864
+ AppleWebKit/605.1.15
11865
+ total: 180
11866
+ unique: 140
11867
+ comprehensive_user_agent_stats:
11868
+ description: Shows extended user agent list with detailed metrics
11869
+ summary: Comprehensive user agent statistics
11870
+ value:
11871
+ results:
11872
+ - key: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
11873
+ total: 4200
11874
+ unique: 3100
11875
+ - key: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36
11876
+ total: 2850
11877
+ unique: 2100
11878
+ - key: Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X)
11879
+ AppleWebKit/605.1.15
11880
+ total: 1850
11881
+ unique: 1350
11882
+ - key: Mozilla/5.0 (Linux; Android 13) AppleWebKit/537.36
11883
+ total: 920
11884
+ unique: 680
11269
11885
  schema:
11270
11886
  $ref: '#/components/schemas/DomainForwardUserAgentStatsResponse'
11271
- description: Successful Response
11887
+ description: User agent statistics retrieved successfully
11888
+ '400':
11889
+ content:
11890
+ application/json:
11891
+ example:
11892
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
11893
+ for exact match or 'domain' to filter by domain including all subdomains.
11894
+ description: Invalid query parameters
11895
+ '401':
11896
+ content:
11897
+ application/problem+json:
11898
+ example:
11899
+ code: ERROR_AUTHENTICATION
11900
+ detail: Additional error context.
11901
+ status: 401
11902
+ title: Authentication Error
11903
+ type: authentication
11904
+ schema:
11905
+ $ref: '#/components/schemas/Problem'
11906
+ description: Unauthorized
11907
+ '403':
11908
+ content:
11909
+ application/problem+json:
11910
+ example:
11911
+ code: ERROR_PERMISSION_DENIED
11912
+ detail: Insufficient permissions to perform this action
11913
+ status: 403
11914
+ title: Permission Denied
11915
+ type: permission-denied
11916
+ schema:
11917
+ $ref: '#/components/schemas/Problem'
11918
+ description: Forbidden
11272
11919
  '422':
11273
11920
  content:
11274
11921
  application/problem+json:
@@ -11278,11 +11925,13 @@ paths:
11278
11925
  security:
11279
11926
  - OAuth2PasswordBearer: []
11280
11927
  - APIKeyHeader: []
11281
- summary: User Agent Stats
11928
+ summary: Get user agent statistics
11282
11929
  tags:
11283
11930
  - domain_forward
11284
11931
  /v1/domain-forwards/metrics/visits-by-key:
11285
11932
  get:
11933
+ description: Retrieves visit metrics grouped by a specified key (url, fqdn,
11934
+ domain, or forward) with total and unique visit counts.
11286
11935
  operationId: visits_by_key_v1_domain_forwards_metrics_visits_by_key_get
11287
11936
  parameters:
11288
11937
  - description: 'Grouping key: url, fqdn, domain, or forward'
@@ -11340,9 +11989,87 @@ paths:
11340
11989
  '200':
11341
11990
  content:
11342
11991
  application/json:
11992
+ examples:
11993
+ visits_by_domain:
11994
+ description: Shows visit distribution when grouped by domain
11995
+ summary: Visits grouped by domain
11996
+ value:
11997
+ results:
11998
+ - key: example.com
11999
+ total: 1065
12000
+ unique: 770
12001
+ - key: subdomain.example.com
12002
+ total: 520
12003
+ unique: 380
12004
+ - key: api.example.com
12005
+ total: 310
12006
+ unique: 220
12007
+ visits_by_forward:
12008
+ description: Shows visit distribution when grouped by source-to-destination
12009
+ forward mapping
12010
+ summary: Visits grouped by forward
12011
+ value:
12012
+ results:
12013
+ - key: example.com -> dest1.example.com
12014
+ total: 680
12015
+ unique: 480
12016
+ - key: subdomain.example.com -> dest2.example.com
12017
+ total: 520
12018
+ unique: 380
12019
+ - key: api.example.com -> api-v2.example.com
12020
+ total: 310
12021
+ unique: 220
12022
+ visits_by_url:
12023
+ description: Shows visit distribution when grouped by request URL
12024
+ summary: Visits grouped by URL
12025
+ value:
12026
+ results:
12027
+ - key: example.com/
12028
+ total: 450
12029
+ unique: 320
12030
+ - key: example.com/about
12031
+ total: 280
12032
+ unique: 195
12033
+ - key: example.com/blog
12034
+ total: 240
12035
+ unique: 180
12036
+ - key: example.com/contact
12037
+ total: 95
12038
+ unique: 75
11343
12039
  schema:
11344
12040
  $ref: '#/components/schemas/DomainForwardVisitsByKeyResponse'
11345
- description: Successful Response
12041
+ description: Visits by key statistics retrieved successfully
12042
+ '400':
12043
+ content:
12044
+ application/json:
12045
+ example:
12046
+ detail: Cannot specify both 'hostname' and 'domain'. Use 'hostname'
12047
+ for exact match or 'domain' to filter by domain including all subdomains.
12048
+ description: Invalid query parameters
12049
+ '401':
12050
+ content:
12051
+ application/problem+json:
12052
+ example:
12053
+ code: ERROR_AUTHENTICATION
12054
+ detail: Additional error context.
12055
+ status: 401
12056
+ title: Authentication Error
12057
+ type: authentication
12058
+ schema:
12059
+ $ref: '#/components/schemas/Problem'
12060
+ description: Unauthorized
12061
+ '403':
12062
+ content:
12063
+ application/problem+json:
12064
+ example:
12065
+ code: ERROR_PERMISSION_DENIED
12066
+ detail: Insufficient permissions to perform this action
12067
+ status: 403
12068
+ title: Permission Denied
12069
+ type: permission-denied
12070
+ schema:
12071
+ $ref: '#/components/schemas/Problem'
12072
+ description: Forbidden
11346
12073
  '422':
11347
12074
  content:
11348
12075
  application/problem+json:
@@ -11352,7 +12079,7 @@ paths:
11352
12079
  security:
11353
12080
  - OAuth2PasswordBearer: []
11354
12081
  - APIKeyHeader: []
11355
- summary: Visits By Key
12082
+ summary: Get visits grouped by key
11356
12083
  tags:
11357
12084
  - domain_forward
11358
12085
  /v1/domain-forwards/{hostname}:
@@ -11370,7 +12097,7 @@ paths:
11370
12097
  type: string
11371
12098
  responses:
11372
12099
  '204':
11373
- description: Successful Response
12100
+ description: Domain forward deleted successfully. No content returned.
11374
12101
  '401':
11375
12102
  content:
11376
12103
  application/problem+json:
@@ -11435,9 +12162,44 @@ paths:
11435
12162
  '200':
11436
12163
  content:
11437
12164
  application/json:
12165
+ examples:
12166
+ single_domain_forward:
12167
+ description: Detailed view of a single domain forward with all protocols
12168
+ and redirects
12169
+ summary: Single domain forward
12170
+ value:
12171
+ created_on: '2025-02-20T10:30:45'
12172
+ domain_forward_id: domain_forward_01jx0000000000000000000001
12173
+ enabled: true
12174
+ hostname: example.com.
12175
+ http:
12176
+ created_on: '2025-02-20T10:30:45'
12177
+ redirects:
12178
+ - protected: false
12179
+ redirect_code: 301
12180
+ request_hostname: example.com.
12181
+ request_path: /
12182
+ request_protocol: http
12183
+ target_hostname: example.com
12184
+ target_path: /
12185
+ target_protocol: https
12186
+ updated_on: '2025-02-20T10:30:45'
12187
+ https:
12188
+ created_on: '2025-02-20T10:30:45'
12189
+ redirects:
12190
+ - protected: false
12191
+ redirect_code: 302
12192
+ request_hostname: example.com.
12193
+ request_path: /
12194
+ request_protocol: https
12195
+ target_hostname: www.example.com
12196
+ target_path: /
12197
+ target_protocol: https
12198
+ updated_on: '2025-02-20T10:30:45'
12199
+ updated_on: '2025-02-20T10:30:45'
11438
12200
  schema:
11439
12201
  $ref: '#/components/schemas/DomainForward'
11440
- description: Successful Response
12202
+ description: Domain forward retrieved successfully
11441
12203
  '401':
11442
12204
  content:
11443
12205
  application/problem+json:
@@ -11509,9 +12271,27 @@ paths:
11509
12271
  '201':
11510
12272
  content:
11511
12273
  application/json:
12274
+ examples:
12275
+ created_protocol_set:
12276
+ description: New domain forward protocol set with HTTP redirects
12277
+ summary: Protocol set created
12278
+ value:
12279
+ created_on: '2025-02-20T10:30:45'
12280
+ hostname: example.com.
12281
+ protocol: http
12282
+ redirects:
12283
+ - protected: false
12284
+ redirect_code: 301
12285
+ request_hostname: example.com.
12286
+ request_path: /
12287
+ request_protocol: http
12288
+ target_hostname: example.com
12289
+ target_path: /
12290
+ target_protocol: https
12291
+ updated_on: '2025-02-20T10:30:45'
11512
12292
  schema:
11513
12293
  $ref: '#/components/schemas/DomainForwardSetResponse'
11514
- description: Successful Response
12294
+ description: Domain forward protocol set created successfully
11515
12295
  '401':
11516
12296
  content:
11517
12297
  application/problem+json:
@@ -11588,7 +12368,8 @@ paths:
11588
12368
  type: string
11589
12369
  responses:
11590
12370
  '204':
11591
- description: Successful Response
12371
+ description: Domain forward disabled successfully. DNS records have been
12372
+ removed but configuration is preserved.
11592
12373
  '401':
11593
12374
  content:
11594
12375
  application/problem+json:
@@ -11640,7 +12421,8 @@ paths:
11640
12421
  type: string
11641
12422
  responses:
11642
12423
  '204':
11643
- description: Successful Response
12424
+ description: Domain forward enabled successfully. DNS records have been
12425
+ created.
11644
12426
  '401':
11645
12427
  content:
11646
12428
  application/problem+json:
@@ -11697,7 +12479,8 @@ paths:
11697
12479
  type: string
11698
12480
  responses:
11699
12481
  '204':
11700
- description: Successful Response
12482
+ description: Domain forward protocol set deleted successfully. No content
12483
+ returned.
11701
12484
  '401':
11702
12485
  content:
11703
12486
  application/problem+json:
@@ -11768,9 +12551,44 @@ paths:
11768
12551
  '200':
11769
12552
  content:
11770
12553
  application/json:
12554
+ examples:
12555
+ http_protocol_set:
12556
+ description: Domain forward set containing HTTP protocol redirects
12557
+ summary: HTTP protocol set
12558
+ value:
12559
+ created_on: '2025-02-20T10:30:45'
12560
+ hostname: example.com.
12561
+ protocol: http
12562
+ redirects:
12563
+ - protected: false
12564
+ redirect_code: 301
12565
+ request_hostname: example.com.
12566
+ request_path: /
12567
+ request_protocol: http
12568
+ target_hostname: example.com
12569
+ target_path: /
12570
+ target_protocol: https
12571
+ updated_on: '2025-02-20T10:30:45'
12572
+ https_protocol_set:
12573
+ description: Domain forward set containing HTTPS protocol redirects
12574
+ summary: HTTPS protocol set
12575
+ value:
12576
+ created_on: '2025-02-20T10:30:45'
12577
+ hostname: example.com.
12578
+ protocol: https
12579
+ redirects:
12580
+ - protected: false
12581
+ redirect_code: 302
12582
+ request_hostname: example.com.
12583
+ request_path: /
12584
+ request_protocol: https
12585
+ target_hostname: www.example.com
12586
+ target_path: /
12587
+ target_protocol: https
12588
+ updated_on: '2025-02-20T10:30:45'
11771
12589
  schema:
11772
12590
  $ref: '#/components/schemas/DomainForwardSetResponse'
11773
- description: Successful Response
12591
+ description: Domain forward set retrieved successfully
11774
12592
  '401':
11775
12593
  content:
11776
12594
  application/problem+json:
@@ -11819,98 +12637,6 @@ paths:
11819
12637
  summary: Get domain forward set
11820
12638
  tags:
11821
12639
  - domain_forward
11822
- post:
11823
- deprecated: true
11824
- description: 'Deprecated: Use POST /{hostname} with protocol in body instead.
11825
- Creates a new domain forward set for a specific protocol (HTTP or HTTPS).'
11826
- operationId: create_domain_forward_set_deprecated_v1_domain_forwards__hostname___protocol__post
11827
- parameters:
11828
- - in: path
11829
- name: protocol
11830
- required: true
11831
- schema:
11832
- $ref: '#/components/schemas/HttpProtocol'
11833
- - description: Hostname
11834
- in: path
11835
- name: hostname
11836
- required: true
11837
- schema:
11838
- description: Hostname
11839
- title: Hostname
11840
- type: string
11841
- requestBody:
11842
- content:
11843
- application/json:
11844
- schema:
11845
- $ref: '#/components/schemas/DomainForwardSetRequest'
11846
- required: true
11847
- responses:
11848
- '201':
11849
- content:
11850
- application/json:
11851
- schema:
11852
- $ref: '#/components/schemas/DomainForwardSetResponse'
11853
- description: Successful Response
11854
- '401':
11855
- content:
11856
- application/problem+json:
11857
- example:
11858
- code: ERROR_AUTHENTICATION
11859
- detail: Additional error context.
11860
- status: 401
11861
- title: Authentication Error
11862
- type: authentication
11863
- schema:
11864
- $ref: '#/components/schemas/Problem'
11865
- description: Unauthorized
11866
- '403':
11867
- content:
11868
- application/problem+json:
11869
- example:
11870
- code: ERROR_PERMISSION_DENIED
11871
- detail: Insufficient permissions to perform this action
11872
- status: 403
11873
- title: Permission Denied
11874
- type: permission-denied
11875
- schema:
11876
- $ref: '#/components/schemas/Problem'
11877
- description: Forbidden
11878
- '404':
11879
- content:
11880
- application/problem+json:
11881
- example:
11882
- code: ERROR_DOMAIN_FORWARD_NOT_EXISTS
11883
- detail: Domain forward not found for Additional error context.
11884
- status: 404
11885
- title: Domain Forward Error
11886
- type: domain-forward-not-found
11887
- schema:
11888
- $ref: '#/components/schemas/Problem'
11889
- description: Not Found
11890
- '409':
11891
- content:
11892
- application/problem+json:
11893
- example:
11894
- code: ERROR_DOMAIN_FORWARD_ALREADY_EXISTS
11895
- detail: Domain forward already exists for Additional error context.
11896
- status: 409
11897
- title: Domain Forward Error
11898
- type: domain-forward-already-exists
11899
- schema:
11900
- $ref: '#/components/schemas/Problem'
11901
- description: Conflict
11902
- '422':
11903
- content:
11904
- application/problem+json:
11905
- schema:
11906
- $ref: '#/components/schemas/HTTPValidationError'
11907
- description: Validation Error
11908
- security:
11909
- - OAuth2PasswordBearer: []
11910
- - APIKeyHeader: []
11911
- summary: Create domain forward set (deprecated)
11912
- tags:
11913
- - domain_forward
11914
12640
  put:
11915
12641
  description: Updates an existing domain forward set for a specific protocol
11916
12642
  (HTTP or HTTPS). All existing redirects for this protocol are replaced with
@@ -11940,9 +12666,28 @@ paths:
11940
12666
  '200':
11941
12667
  content:
11942
12668
  application/json:
12669
+ examples:
12670
+ updated_protocol_set:
12671
+ description: Updated domain forward protocol set with new redirect
12672
+ configuration
12673
+ summary: Protocol set updated
12674
+ value:
12675
+ created_on: '2025-02-20T10:30:45'
12676
+ hostname: example.com.
12677
+ protocol: https
12678
+ redirects:
12679
+ - protected: false
12680
+ redirect_code: 302
12681
+ request_hostname: example.com.
12682
+ request_path: /
12683
+ request_protocol: https
12684
+ target_hostname: www.example.com
12685
+ target_path: /
12686
+ target_protocol: https
12687
+ updated_on: '2025-02-20T10:30:45'
11943
12688
  schema:
11944
12689
  $ref: '#/components/schemas/DomainForwardSetResponse'
11945
- description: Successful Response
12690
+ description: Domain forward protocol set updated successfully
11946
12691
  '401':
11947
12692
  content:
11948
12693
  application/problem+json: