Skip to content

Commit 3fd6bfb

Browse files
authored
Merge pull request #144 from ecordell/downloadapi
add download api definition to materialize v0
2 parents 93ee761 + 458a515 commit 3fd6bfb

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

authzed/api/materialize/v0/watchpermissionsets.proto

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,12 @@ service WatchPermissionSetsService {
5454
// cursor received. Once completed, the consumer may start streaming permission set changes using WatchPermissionSets
5555
// and the revision token from the last LookupPermissionSets response.
5656
rpc LookupPermissionSets(LookupPermissionSetsRequest) returns (stream LookupPermissionSetsResponse) {}
57+
58+
// DownloadPermissionSets returns URLs to download permission sets data as Avro files.
59+
// This provides an alternative to LookupPermissionSets for customers who need to download
60+
// large datasets efficiently. The returned URLs point to compressed Avro files containing
61+
// the permission sets data in a normalized format.
62+
rpc DownloadPermissionSets(DownloadPermissionSetsRequest) returns (DownloadPermissionSetsResponse) {}
5763
}
5864

5965
message WatchPermissionSetsRequest {
@@ -186,3 +192,21 @@ message BreakingSchemaChange {
186192
// change_at is the revision at which a breaking schema event has happened.
187193
authzed.api.v1.ZedToken change_at = 1;
188194
}
195+
196+
message DownloadPermissionSetsRequest {
197+
// optional_at_revision is a specific revision to download; for now this will
198+
// just validate that it matches the backing store if provided.
199+
authzed.api.v1.ZedToken optional_at_revision = 1;
200+
}
201+
202+
message File {
203+
// name is the filename of the downloadable file
204+
string name = 1;
205+
// url is the download URL for the file (typically a signed S3 URL)
206+
string url = 2;
207+
}
208+
209+
message DownloadPermissionSetsResponse {
210+
// files contains the list of downloadable files with their URLs
211+
repeated File files = 1;
212+
}

0 commit comments

Comments
 (0)