You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/configuration/api.md
+90-36Lines changed: 90 additions & 36 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -119,51 +119,98 @@ curl -u username:password \
119
119
120
120
## API Endpoints
121
121
122
-
### Zone Management
122
+
Poweradmin provides two API versions. API v2 (introduced in v4.1.0) is recommended for all new integrations. API v1 remains available for backward compatibility.
123
123
124
-
-`GET /api/v1/zones` - List all zones
125
-
-`GET /api/v1/zones/{id}` - Get zone details
126
-
-`POST /api/v1/zones` - Create new zone
127
-
-`PUT /api/v1/zones/{id}` - Update zone
128
-
-`DELETE /api/v1/zones/{id}` - Delete zone
124
+
### API v2 Endpoints *(v4.1.0+)*
129
125
130
-
###Record Management
126
+
#### Zone Management
131
127
132
-
-`GET /api/v1/zones/{id}/records` - List zone records
133
-
-`GET /api/v1/records/{id}` - Get record details
134
-
-`POST /api/v1/zones/{id}/records` - Create record
135
-
-`PUT /api/v1/records/{id}` - Update record
136
-
-`DELETE /api/v1/records/{id}` - Delete record
128
+
-`GET /api/v2/zones` - List all zones
129
+
-`GET /api/v2/zones/{id}` - Get zone details
130
+
-`POST /api/v2/zones` - Create new zone
131
+
-`PUT /api/v2/zones/{id}` - Update zone
132
+
-`DELETE /api/v2/zones/{id}` - Delete zone
137
133
138
-
###User Management
134
+
#### Zone Owners *(v4.2.0+)*
139
135
140
-
-`GET /api/v1/users` - List users (admin only)
141
-
-`GET /api/v1/users/{id}` - Get user details
142
-
-`POST /api/v1/users` - Create user (admin only)
143
-
-`PUT /api/v1/users/{id}` - Update user
144
-
-`DELETE /api/v1/users/{id}` - Delete user (admin only)
136
+
-`GET /api/v2/zones/{id}/owners` - List zone owners
137
+
-`POST /api/v2/zones/{id}/owners` - Add zone owner (supports batch assignment via `user_ids` array)
138
+
-`DELETE /api/v2/zones/{id}/owners/{user_id}` - Remove zone owner
145
139
146
-
###Permission Management
140
+
#### Record Management
147
141
148
-
-`GET /api/v1/permissions` - List available permissions
149
-
-`GET /api/v1/permissions/{id}` - Get permission details
142
+
-`GET /api/v2/zones/{id}/records` - List zone records
143
+
-`POST /api/v2/zones/{id}/records` - Create record
144
+
-`PUT /api/v2/zones/{id}/records/{record_id}` - Update record
145
+
-`DELETE /api/v2/zones/{id}/records/{record_id}` - Delete record
146
+
-`POST /api/v2/zones/{id}/records/bulk` - Bulk create records
147
+
148
+
#### RRset Management
149
+
150
+
-`GET /api/v2/zones/{id}/rrsets` - List all RRsets in a zone
151
+
-`GET /api/v2/zones/{id}/rrsets/{name}/{type}` - Get specific RRset
152
+
153
+
#### User Management
154
+
155
+
-`GET /api/v2/users` - List users
156
+
-`GET /api/v2/users/{id}` - Get user details
157
+
-`POST /api/v2/users` - Create user
158
+
-`PUT /api/v2/users/{id}` - Update user
159
+
-`DELETE /api/v2/users/{id}` - Delete user
160
+
161
+
#### Permission Management
162
+
163
+
-`GET /api/v2/permissions` - List available permissions
164
+
-`GET /api/v2/permissions/{id}` - Get permission details
150
165
151
-
### Permission Templates
166
+
####Permission Templates
152
167
153
-
-`GET /api/v1/permission-templates` - List permission templates
154
-
-`GET /api/v1/permission-templates/{id}` - Get permission template details
The following endpoints are available for internal use (session-based authentication):
176
+
-`GET /api/v2/zone-templates` - List zone templates
177
+
-`GET /api/v2/zone-templates/{id}` - Get zone template details
178
+
-`POST /api/v2/zone-templates` - Create zone template
179
+
-`PUT /api/v2/zone-templates/{id}` - Update zone template
180
+
-`DELETE /api/v2/zone-templates/{id}` - Delete zone template
181
+
-`GET /api/v2/zone-templates/{id}/records` - List template records
182
+
-`POST /api/v2/zone-templates/{id}/records` - Add template record
183
+
-`PUT /api/v2/zone-templates/{template_id}/records/{id}` - Update template record
184
+
-`DELETE /api/v2/zone-templates/{template_id}/records/{id}` - Delete template record
162
185
163
-
-`GET /api/internal/zones/{id}/validate` - Validate zone configuration
164
-
-`GET /api/internal/users/{id}/preferences` - Get user preferences
165
-
-`PUT /api/internal/users/{id}/preferences` - Update user preferences
166
-
-`POST /api/internal/validation` - Validate various data types
186
+
#### Group Management *(v4.2.0+)*
187
+
188
+
-`GET /api/v2/groups` - List groups
189
+
-`GET /api/v2/groups/{id}` - Get group details
190
+
-`POST /api/v2/groups` - Create group
191
+
-`PUT /api/v2/groups/{id}` - Update group
192
+
-`DELETE /api/v2/groups/{id}` - Delete group
193
+
-`GET /api/v2/groups/{id}/members` - List group members
194
+
-`POST /api/v2/groups/{id}/members` - Add member to group
195
+
-`DELETE /api/v2/groups/{id}/members/{user_id}` - Remove member from group
196
+
-`GET /api/v2/groups/{id}/zones` - List group zones
197
+
-`POST /api/v2/groups/{id}/zones` - Assign zone to group
198
+
-`DELETE /api/v2/groups/{id}/zones/{zone_id}` - Remove zone from group
199
+
200
+
### API v1 Endpoints (Legacy)
201
+
202
+
API v1 is available for backward compatibility. Consider migrating to v2 for new integrations.
203
+
204
+
-`GET/POST /api/v1/zones` - List / create zones
205
+
-`GET/PUT/DELETE /api/v1/zones/{id}` - Get / update / delete zone
206
+
-`GET/POST /api/v1/zones/{id}/records` - List / create records
207
+
-`PUT/DELETE /api/v1/zones/{id}/records/{record_id}` - Update / delete record
208
+
-`GET/POST /api/v1/users` - List / create users
209
+
-`GET/PUT/DELETE /api/v1/users/{id}` - Get / update / delete user
210
+
-`GET/POST /api/v1/permission-templates` - List / create templates
211
+
-`GET/PUT/DELETE /api/v1/permission-templates/{id}` - Get / update / delete template
212
+
-`GET /api/v1/permissions` - List permissions
213
+
-`GET /api/v1/permissions/{id}` - Get permission details
167
214
168
215
## API Documentation
169
216
@@ -186,8 +233,7 @@ When `docs_enabled` is true, interactive API documentation is available at `/api
186
233
],
187
234
```
188
235
189
-
!!! tip
190
-
To enable audit logging for API operations, use the [audit logging settings](logging.md) (`logging.database_enabled` and `logging.syslog_enabled`) instead.
236
+
> **Tip:** To enable audit logging for API operations, use the [audit logging settings](logging.md) (`logging.database_enabled` and `logging.syslog_enabled`) instead.
191
237
192
238
### Security Best Practices
193
239
@@ -337,8 +383,16 @@ GET /api/v1/users?page=2&limit=25
337
383
338
384
## Version History
339
385
386
+
### v4.2.0
387
+
-**Added:** Zone template CRUD endpoints (API v2)
388
+
-**Added:** Zone owners endpoints with batch assignment (API v2)
389
+
-**Added:** Group management endpoints - members and zones (API v2)
390
+
-**Added:** RRset endpoints (API v2)
391
+
-**Added:** Bulk record creation endpoint (API v2)
392
+
340
393
### v4.1.0
341
-
- Improved API stability and error handling
394
+
-**Added:** API v2 with consistent response wrapping
395
+
-**Added:** Permission validation for API endpoints
342
396
343
397
### v4.0.4
344
398
-**Fixed:** Basic Auth TypeError when LDAP authentication is enabled (issue #799)
0 commit comments