-
-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Description
Overview
Add support for bulk operations to create, update, or revoke multiple keys efficiently.
Motivation
Bulk operations improve efficiency when managing many keys at once.
Proposed API
// Bulk create
const results = await keys.createBulk([
{ ownerId: 'user_1', scopes: ['read'] },
{ ownerId: 'user_2', scopes: ['write'] },
])
// Bulk revoke
await keys.revokeBulk(['key_1', 'key_2', 'key_3'])
// Bulk update
await keys.updateBulk([
{ id: 'key_1', metadata: { name: 'Updated' } },
{ id: 'key_2', metadata: { enabled: false } }
])Implementation Details
Performance Considerations
- Batch database operations
- Support transaction rollback on errors
- Return success/failure for each operation
API Design
interface BulkResult<T> {
successful: T[]
failed: Array<{ item: any, error: Error }>
}
const result = await manager.createBulk(items)Acceptance Criteria
- Implement bulk create
- Implement bulk update
- Implement bulk revoke
- Add transaction support
- Return detailed results
- Add tests for bulk operations
- Document bulk operation limits
Priority
Low - Efficiency improvement
Metadata
Metadata
Assignees
Labels
No labels