@@ -173,12 +173,11 @@ func get[Res any](ctx context.Context, client Client, path string, query Query)
173
173
return request [Res ](client , req )
174
174
}
175
175
176
- func post [Req , Res any ](client Client , path string , req * Req ) (* Res , error ) {
176
+ func post [Res any ](ctx context. Context , client Client , path string , req any ) (* Res , error ) {
177
177
body , err := encodeRequestBody (req )
178
178
if err != nil {
179
179
return nil , err
180
180
}
181
- ctx := context .TODO ()
182
181
httpReq , err := client .buildRequest (ctx , http .MethodPost , path , nil , body )
183
182
if err != nil {
184
183
return nil , err
@@ -197,34 +196,31 @@ func encodeRequestBody(req any) (io.Reader, error) {
197
196
return bytes .NewReader (b ), nil
198
197
}
199
198
200
- func put [Req , Res any ](client Client , path string , req * Req ) (* Res , error ) {
199
+ func put [Res any ](ctx context. Context , client Client , path string , req any ) (* Res , error ) {
201
200
body , err := encodeRequestBody (req )
202
201
if err != nil {
203
202
return nil , err
204
203
}
205
- ctx := context .TODO ()
206
204
httpReq , err := client .buildRequest (ctx , http .MethodPut , path , nil , body )
207
205
if err != nil {
208
206
return nil , err
209
207
}
210
208
return request [Res ](client , httpReq )
211
209
}
212
210
213
- func patch [Req , Res any ](client Client , path string , req * Req ) (* Res , error ) {
211
+ func patch [Res any ](ctx context. Context , client Client , path string , req any ) (* Res , error ) {
214
212
body , err := encodeRequestBody (req )
215
213
if err != nil {
216
214
return nil , err
217
215
}
218
- ctx := context .TODO ()
219
216
httpReq , err := client .buildRequest (ctx , http .MethodPatch , path , nil , body )
220
217
if err != nil {
221
218
return nil , err
222
219
}
223
220
return request [Res ](client , httpReq )
224
221
}
225
222
226
- func delete (client Client , path string , query Query ) error {
227
- ctx := context .TODO ()
223
+ func delete (ctx context.Context , client Client , path string , query Query ) error {
228
224
httpReq , err := client .buildRequest (ctx , http .MethodDelete , path , query , nil )
229
225
if err != nil {
230
226
return err
@@ -244,31 +240,28 @@ func (c Client) ListUsers(ctx context.Context, req ListUsersRequest) (*ListRespo
244
240
})
245
241
}
246
242
247
- func (c Client ) GetUser (id uid.ID ) (* User , error ) {
248
- ctx := context .TODO ()
243
+ func (c Client ) GetUser (ctx context.Context , id uid.ID ) (* User , error ) {
249
244
return get [User ](ctx , c , fmt .Sprintf ("/api/users/%s" , id ), Query {})
250
245
}
251
246
252
- func (c Client ) CreateUser (req * CreateUserRequest ) (* CreateUserResponse , error ) {
253
- return post [CreateUserRequest , CreateUserResponse ](c , "/api/users" , req )
247
+ func (c Client ) CreateUser (ctx context. Context , req * CreateUserRequest ) (* CreateUserResponse , error ) {
248
+ return post [CreateUserResponse ](ctx , c , "/api/users" , req )
254
249
}
255
250
256
- func (c Client ) UpdateUser (req * UpdateUserRequest ) (* User , error ) {
257
- return put [UpdateUserRequest , User ](c , fmt .Sprintf ("/api/users/%s" , req .ID .String ()), req )
251
+ func (c Client ) UpdateUser (ctx context. Context , req * UpdateUserRequest ) (* User , error ) {
252
+ return put [User ](ctx , c , fmt .Sprintf ("/api/users/%s" , req .ID .String ()), req )
258
253
}
259
254
260
- func (c Client ) DeleteUser (id uid.ID ) error {
261
- return delete (c , fmt .Sprintf ("/api/users/%s" , id ), Query {})
255
+ func (c Client ) DeleteUser (ctx context. Context , id uid.ID ) error {
256
+ return delete (ctx , c , fmt .Sprintf ("/api/users/%s" , id ), Query {})
262
257
}
263
258
264
- func (c Client ) StartDeviceFlow () (* DeviceFlowResponse , error ) {
265
- return post [EmptyRequest , DeviceFlowResponse ](c , "/api/device" , nil )
259
+ func (c Client ) StartDeviceFlow (ctx context. Context ) (* DeviceFlowResponse , error ) {
260
+ return post [DeviceFlowResponse ](ctx , c , "/api/device" , nil )
266
261
}
267
262
268
- func (c Client ) GetDeviceFlowStatus (req * DeviceFlowStatusRequest ) (* DeviceFlowStatusResponse , error ) {
269
- return post [DeviceFlowStatusRequest , DeviceFlowStatusResponse ](c , "/api/device/status" , & DeviceFlowStatusRequest {
270
- DeviceCode : req .DeviceCode ,
271
- })
263
+ func (c Client ) GetDeviceFlowStatus (ctx context.Context , req * DeviceFlowStatusRequest ) (* DeviceFlowStatusResponse , error ) {
264
+ return post [DeviceFlowStatusResponse ](ctx , c , "/api/device/status" , req )
272
265
}
273
266
274
267
func (c Client ) ListGroups (ctx context.Context , req ListGroupsRequest ) (* ListResponse [Group ], error ) {
@@ -278,21 +271,20 @@ func (c Client) ListGroups(ctx context.Context, req ListGroupsRequest) (*ListRes
278
271
})
279
272
}
280
273
281
- func (c Client ) GetGroup (id uid.ID ) (* Group , error ) {
282
- ctx := context .TODO ()
274
+ func (c Client ) GetGroup (ctx context.Context , id uid.ID ) (* Group , error ) {
283
275
return get [Group ](ctx , c , fmt .Sprintf ("/api/groups/%s" , id ), Query {})
284
276
}
285
277
286
- func (c Client ) CreateGroup (req * CreateGroupRequest ) (* Group , error ) {
287
- return post [CreateGroupRequest , Group ](c , "/api/groups" , req )
278
+ func (c Client ) CreateGroup (ctx context. Context , req * CreateGroupRequest ) (* Group , error ) {
279
+ return post [Group ](ctx , c , "/api/groups" , req )
288
280
}
289
281
290
- func (c Client ) DeleteGroup (id uid.ID ) error {
291
- return delete (c , fmt .Sprintf ("/api/groups/%s" , id ), Query {})
282
+ func (c Client ) DeleteGroup (ctx context. Context , id uid.ID ) error {
283
+ return delete (ctx , c , fmt .Sprintf ("/api/groups/%s" , id ), Query {})
292
284
}
293
285
294
- func (c Client ) UpdateUsersInGroup (req * UpdateUsersInGroupRequest ) error {
295
- _ , err := patch [UpdateUsersInGroupRequest , EmptyResponse ](c , fmt .Sprintf ("/api/groups/%s/users" , req .GroupID ), req )
286
+ func (c Client ) UpdateUsersInGroup (ctx context. Context , req * UpdateUsersInGroupRequest ) error {
287
+ _ , err := patch [EmptyResponse ](ctx , c , fmt .Sprintf ("/api/groups/%s/users" , req .GroupID ), req )
296
288
return err
297
289
}
298
290
@@ -309,38 +301,36 @@ func (c Client) ListOrganizations(ctx context.Context, req ListOrganizationsRequ
309
301
})
310
302
}
311
303
312
- func (c Client ) GetOrganization (id uid.ID ) (* Organization , error ) {
313
- ctx := context .TODO ()
304
+ func (c Client ) GetOrganization (ctx context.Context , id uid.ID ) (* Organization , error ) {
314
305
return get [Organization ](ctx , c , fmt .Sprintf ("/api/organizations/%s" , id ), Query {})
315
306
}
316
307
317
- func (c Client ) CreateOrganization (req * CreateOrganizationRequest ) (* Organization , error ) {
318
- return post [CreateOrganizationRequest , Organization ](c , "/api/organizations" , req )
308
+ func (c Client ) CreateOrganization (ctx context. Context , req * CreateOrganizationRequest ) (* Organization , error ) {
309
+ return post [Organization ](ctx , c , "/api/organizations" , req )
319
310
}
320
311
321
- func (c Client ) DeleteOrganization (id uid.ID ) error {
322
- return delete (c , fmt .Sprintf ("/api/organizations/%s" , id ), Query {})
312
+ func (c Client ) DeleteOrganization (ctx context. Context , id uid.ID ) error {
313
+ return delete (ctx , c , fmt .Sprintf ("/api/organizations/%s" , id ), Query {})
323
314
}
324
315
325
- func (c Client ) GetProvider (id uid.ID ) (* Provider , error ) {
326
- ctx := context .TODO ()
316
+ func (c Client ) GetProvider (ctx context.Context , id uid.ID ) (* Provider , error ) {
327
317
return get [Provider ](ctx , c , fmt .Sprintf ("/api/providers/%s" , id ), Query {})
328
318
}
329
319
330
- func (c Client ) CreateProvider (req * CreateProviderRequest ) (* Provider , error ) {
331
- return post [CreateProviderRequest , Provider ](c , "/api/providers" , req )
320
+ func (c Client ) CreateProvider (ctx context. Context , req * CreateProviderRequest ) (* Provider , error ) {
321
+ return post [Provider ](ctx , c , "/api/providers" , req )
332
322
}
333
323
334
- func (c Client ) PatchProvider (req PatchProviderRequest ) (* Provider , error ) {
335
- return patch [PatchProviderRequest , Provider ](c , fmt .Sprintf ("/api/providers/%s" , req .ID .String ()), & req )
324
+ func (c Client ) PatchProvider (ctx context. Context , req PatchProviderRequest ) (* Provider , error ) {
325
+ return patch [Provider ](ctx , c , fmt .Sprintf ("/api/providers/%s" , req .ID .String ()), & req )
336
326
}
337
327
338
- func (c Client ) UpdateProvider (req UpdateProviderRequest ) (* Provider , error ) {
339
- return put [UpdateProviderRequest , Provider ](c , fmt .Sprintf ("/api/providers/%s" , req .ID .String ()), & req )
328
+ func (c Client ) UpdateProvider (ctx context. Context , req UpdateProviderRequest ) (* Provider , error ) {
329
+ return put [Provider ](ctx , c , fmt .Sprintf ("/api/providers/%s" , req .ID .String ()), & req )
340
330
}
341
331
342
- func (c Client ) DeleteProvider (id uid.ID ) error {
343
- return delete (c , fmt .Sprintf ("/api/providers/%s" , id ), Query {})
332
+ func (c Client ) DeleteProvider (ctx context. Context , id uid.ID ) error {
333
+ return delete (ctx , c , fmt .Sprintf ("/api/providers/%s" , id ), Query {})
344
334
}
345
335
346
336
func (c Client ) ListGrants (ctx context.Context , req ListGrantsRequest ) (* ListResponse [Grant ], error ) {
@@ -358,12 +348,12 @@ func (c Client) ListGrants(ctx context.Context, req ListGrantsRequest) (*ListRes
358
348
})
359
349
}
360
350
361
- func (c Client ) CreateGrant (req * GrantRequest ) (* CreateGrantResponse , error ) {
362
- return post [GrantRequest , CreateGrantResponse ](c , "/api/grants" , req )
351
+ func (c Client ) CreateGrant (ctx context. Context , req * GrantRequest ) (* CreateGrantResponse , error ) {
352
+ return post [CreateGrantResponse ](ctx , c , "/api/grants" , req )
363
353
}
364
354
365
- func (c Client ) DeleteGrant (id uid.ID ) error {
366
- return delete (c , fmt .Sprintf ("/api/grants/%s" , id ), Query {})
355
+ func (c Client ) DeleteGrant (ctx context. Context , id uid.ID ) error {
356
+ return delete (ctx , c , fmt .Sprintf ("/api/grants/%s" , id ), Query {})
367
357
}
368
358
369
359
func (c Client ) ListDestinations (ctx context.Context , req ListDestinationsRequest ) (* ListResponse [Destination ], error ) {
@@ -374,16 +364,16 @@ func (c Client) ListDestinations(ctx context.Context, req ListDestinationsReques
374
364
})
375
365
}
376
366
377
- func (c Client ) CreateDestination (req * CreateDestinationRequest ) (* Destination , error ) {
378
- return post [CreateDestinationRequest , Destination ](c , "/api/destinations" , req )
367
+ func (c Client ) CreateDestination (ctx context. Context , req * CreateDestinationRequest ) (* Destination , error ) {
368
+ return post [Destination ](ctx , c , "/api/destinations" , req )
379
369
}
380
370
381
- func (c Client ) UpdateDestination (req UpdateDestinationRequest ) (* Destination , error ) {
382
- return put [UpdateDestinationRequest , Destination ](c , fmt .Sprintf ("/api/destinations/%s" , req .ID .String ()), & req )
371
+ func (c Client ) UpdateDestination (ctx context. Context , req UpdateDestinationRequest ) (* Destination , error ) {
372
+ return put [Destination ](ctx , c , fmt .Sprintf ("/api/destinations/%s" , req .ID .String ()), & req )
383
373
}
384
374
385
- func (c Client ) DeleteDestination (id uid.ID ) error {
386
- return delete (c , fmt .Sprintf ("/api/destinations/%s" , id ), Query {})
375
+ func (c Client ) DeleteDestination (ctx context. Context , id uid.ID ) error {
376
+ return delete (ctx , c , fmt .Sprintf ("/api/destinations/%s" , id ), Query {})
387
377
}
388
378
389
379
func (c Client ) ListAccessKeys (ctx context.Context , req ListAccessKeysRequest ) (* ListResponse [AccessKey ], error ) {
@@ -395,47 +385,45 @@ func (c Client) ListAccessKeys(ctx context.Context, req ListAccessKeysRequest) (
395
385
})
396
386
}
397
387
398
- func (c Client ) CreateAccessKey (req * CreateAccessKeyRequest ) (* CreateAccessKeyResponse , error ) {
399
- return post [CreateAccessKeyRequest , CreateAccessKeyResponse ](c , "/api/access-keys" , req )
388
+ func (c Client ) CreateAccessKey (ctx context. Context , req * CreateAccessKeyRequest ) (* CreateAccessKeyResponse , error ) {
389
+ return post [CreateAccessKeyResponse ](ctx , c , "/api/access-keys" , req )
400
390
}
401
391
402
- func (c Client ) DeleteAccessKey (id uid.ID ) error {
403
- return delete (c , fmt .Sprintf ("/api/access-keys/%s" , id ), Query {})
392
+ func (c Client ) DeleteAccessKey (ctx context. Context , id uid.ID ) error {
393
+ return delete (ctx , c , fmt .Sprintf ("/api/access-keys/%s" , id ), Query {})
404
394
}
405
395
406
- func (c Client ) DeleteAccessKeyByName (name string ) error {
407
- return delete (c , "/api/access-keys" , Query {"name" : []string {name }})
396
+ func (c Client ) DeleteAccessKeyByName (ctx context. Context , name string ) error {
397
+ return delete (ctx , c , "/api/access-keys" , Query {"name" : []string {name }})
408
398
}
409
399
410
- func (c Client ) CreateToken () (* CreateTokenResponse , error ) {
411
- return post [EmptyRequest , CreateTokenResponse ](c , "/api/tokens" , & EmptyRequest {})
400
+ func (c Client ) CreateToken (ctx context. Context ) (* CreateTokenResponse , error ) {
401
+ return post [CreateTokenResponse ](ctx , c , "/api/tokens" , & EmptyRequest {})
412
402
}
413
403
414
- func (c Client ) Login (req * LoginRequest ) (* LoginResponse , error ) {
415
- return post [LoginRequest , LoginResponse ](c , "/api/login" , req )
404
+ func (c Client ) Login (ctx context. Context , req * LoginRequest ) (* LoginResponse , error ) {
405
+ return post [LoginResponse ](ctx , c , "/api/login" , req )
416
406
}
417
407
418
- func (c Client ) Logout () error {
419
- _ , err := post [EmptyRequest , EmptyResponse ](c , "/api/logout" , & EmptyRequest {})
408
+ func (c Client ) Logout (ctx context. Context ) error {
409
+ _ , err := post [EmptyResponse ](ctx , c , "/api/logout" , & EmptyRequest {})
420
410
return err
421
411
}
422
412
423
- func (c Client ) Signup (req * SignupRequest ) (* SignupResponse , error ) {
424
- return post [SignupRequest , SignupResponse ](c , "/api/signup" , req )
413
+ func (c Client ) Signup (ctx context. Context , req * SignupRequest ) (* SignupResponse , error ) {
414
+ return post [SignupResponse ](ctx , c , "/api/signup" , req )
425
415
}
426
416
427
- func (c Client ) GetServerVersion () (* Version , error ) {
428
- ctx := context .TODO ()
417
+ func (c Client ) GetServerVersion (ctx context.Context ) (* Version , error ) {
429
418
return get [Version ](ctx , c , "/api/version" , Query {})
430
419
}
431
420
432
- func (c Client ) GetSettings () (* Settings , error ) {
433
- ctx := context .TODO ()
421
+ func (c Client ) GetSettings (ctx context.Context ) (* Settings , error ) {
434
422
return get [Settings ](ctx , c , "/api/settings" , Query {})
435
423
}
436
424
437
- func (c Client ) UpdateSettings (req * Settings ) (* Settings , error ) {
438
- return put [Settings , Settings ]( c , "/api/settings" , req )
425
+ func (c Client ) UpdateSettings (ctx context. Context , req * Settings ) (* Settings , error ) {
426
+ return put [Settings ]( ctx , c , "/api/settings" , req )
439
427
}
440
428
441
429
func partialText (body []byte , limit int ) string {
0 commit comments