Skip to content

Commit 530ed81

Browse files
committed
Added API call to fetch usage data
1 parent a03681a commit 530ed81

File tree

11 files changed

+2223
-169
lines changed

11 files changed

+2223
-169
lines changed

components/usage-api/go/v1/usage.pb.go

+629-154
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

components/usage-api/go/v1/usage_grpc.pb.go

+38
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

components/usage-api/typescript/src/usage/v1/usage_grpc_pb.d.ts

+17
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ interface IUsageServiceService extends grpc.ServiceDefinition<grpc.UntypedServic
1919
reconcileUsage: IUsageServiceService_IReconcileUsage;
2020
getCostCenter: IUsageServiceService_IGetCostCenter;
2121
reconcileUsageWithLedger: IUsageServiceService_IReconcileUsageWithLedger;
22+
listUsage: IUsageServiceService_IListUsage;
2223
}
2324

2425
interface IUsageServiceService_IListBilledUsage extends grpc.MethodDefinition<usage_v1_usage_pb.ListBilledUsageRequest, usage_v1_usage_pb.ListBilledUsageResponse> {
@@ -57,6 +58,15 @@ interface IUsageServiceService_IReconcileUsageWithLedger extends grpc.MethodDefi
5758
responseSerialize: grpc.serialize<usage_v1_usage_pb.ReconcileUsageWithLedgerResponse>;
5859
responseDeserialize: grpc.deserialize<usage_v1_usage_pb.ReconcileUsageWithLedgerResponse>;
5960
}
61+
interface IUsageServiceService_IListUsage extends grpc.MethodDefinition<usage_v1_usage_pb.ListUsageRequest, usage_v1_usage_pb.ListUsageResponse> {
62+
path: "/usage.v1.UsageService/ListUsage";
63+
requestStream: false;
64+
responseStream: false;
65+
requestSerialize: grpc.serialize<usage_v1_usage_pb.ListUsageRequest>;
66+
requestDeserialize: grpc.deserialize<usage_v1_usage_pb.ListUsageRequest>;
67+
responseSerialize: grpc.serialize<usage_v1_usage_pb.ListUsageResponse>;
68+
responseDeserialize: grpc.deserialize<usage_v1_usage_pb.ListUsageResponse>;
69+
}
6070

6171
export const UsageServiceService: IUsageServiceService;
6272

@@ -65,6 +75,7 @@ export interface IUsageServiceServer extends grpc.UntypedServiceImplementation {
6575
reconcileUsage: grpc.handleUnaryCall<usage_v1_usage_pb.ReconcileUsageRequest, usage_v1_usage_pb.ReconcileUsageResponse>;
6676
getCostCenter: grpc.handleUnaryCall<usage_v1_usage_pb.GetCostCenterRequest, usage_v1_usage_pb.GetCostCenterResponse>;
6777
reconcileUsageWithLedger: grpc.handleUnaryCall<usage_v1_usage_pb.ReconcileUsageWithLedgerRequest, usage_v1_usage_pb.ReconcileUsageWithLedgerResponse>;
78+
listUsage: grpc.handleUnaryCall<usage_v1_usage_pb.ListUsageRequest, usage_v1_usage_pb.ListUsageResponse>;
6879
}
6980

7081
export interface IUsageServiceClient {
@@ -80,6 +91,9 @@ export interface IUsageServiceClient {
8091
reconcileUsageWithLedger(request: usage_v1_usage_pb.ReconcileUsageWithLedgerRequest, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ReconcileUsageWithLedgerResponse) => void): grpc.ClientUnaryCall;
8192
reconcileUsageWithLedger(request: usage_v1_usage_pb.ReconcileUsageWithLedgerRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ReconcileUsageWithLedgerResponse) => void): grpc.ClientUnaryCall;
8293
reconcileUsageWithLedger(request: usage_v1_usage_pb.ReconcileUsageWithLedgerRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ReconcileUsageWithLedgerResponse) => void): grpc.ClientUnaryCall;
94+
listUsage(request: usage_v1_usage_pb.ListUsageRequest, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ListUsageResponse) => void): grpc.ClientUnaryCall;
95+
listUsage(request: usage_v1_usage_pb.ListUsageRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ListUsageResponse) => void): grpc.ClientUnaryCall;
96+
listUsage(request: usage_v1_usage_pb.ListUsageRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ListUsageResponse) => void): grpc.ClientUnaryCall;
8397
}
8498

8599
export class UsageServiceClient extends grpc.Client implements IUsageServiceClient {
@@ -96,4 +110,7 @@ export class UsageServiceClient extends grpc.Client implements IUsageServiceClie
96110
public reconcileUsageWithLedger(request: usage_v1_usage_pb.ReconcileUsageWithLedgerRequest, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ReconcileUsageWithLedgerResponse) => void): grpc.ClientUnaryCall;
97111
public reconcileUsageWithLedger(request: usage_v1_usage_pb.ReconcileUsageWithLedgerRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ReconcileUsageWithLedgerResponse) => void): grpc.ClientUnaryCall;
98112
public reconcileUsageWithLedger(request: usage_v1_usage_pb.ReconcileUsageWithLedgerRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ReconcileUsageWithLedgerResponse) => void): grpc.ClientUnaryCall;
113+
public listUsage(request: usage_v1_usage_pb.ListUsageRequest, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ListUsageResponse) => void): grpc.ClientUnaryCall;
114+
public listUsage(request: usage_v1_usage_pb.ListUsageRequest, metadata: grpc.Metadata, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ListUsageResponse) => void): grpc.ClientUnaryCall;
115+
public listUsage(request: usage_v1_usage_pb.ListUsageRequest, metadata: grpc.Metadata, options: Partial<grpc.CallOptions>, callback: (error: grpc.ServiceError | null, response: usage_v1_usage_pb.ListUsageResponse) => void): grpc.ClientUnaryCall;
99116
}

components/usage-api/typescript/src/usage/v1/usage_grpc_pb.js

+34
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,28 @@ function deserialize_usage_v1_ListBilledUsageResponse(buffer_arg) {
5555
return usage_v1_usage_pb.ListBilledUsageResponse.deserializeBinary(new Uint8Array(buffer_arg));
5656
}
5757

58+
function serialize_usage_v1_ListUsageRequest(arg) {
59+
if (!(arg instanceof usage_v1_usage_pb.ListUsageRequest)) {
60+
throw new Error('Expected argument of type usage.v1.ListUsageRequest');
61+
}
62+
return Buffer.from(arg.serializeBinary());
63+
}
64+
65+
function deserialize_usage_v1_ListUsageRequest(buffer_arg) {
66+
return usage_v1_usage_pb.ListUsageRequest.deserializeBinary(new Uint8Array(buffer_arg));
67+
}
68+
69+
function serialize_usage_v1_ListUsageResponse(arg) {
70+
if (!(arg instanceof usage_v1_usage_pb.ListUsageResponse)) {
71+
throw new Error('Expected argument of type usage.v1.ListUsageResponse');
72+
}
73+
return Buffer.from(arg.serializeBinary());
74+
}
75+
76+
function deserialize_usage_v1_ListUsageResponse(buffer_arg) {
77+
return usage_v1_usage_pb.ListUsageResponse.deserializeBinary(new Uint8Array(buffer_arg));
78+
}
79+
5880
function serialize_usage_v1_ReconcileUsageRequest(arg) {
5981
if (!(arg instanceof usage_v1_usage_pb.ReconcileUsageRequest)) {
6082
throw new Error('Expected argument of type usage.v1.ReconcileUsageRequest');
@@ -149,6 +171,18 @@ reconcileUsageWithLedger: {
149171
responseSerialize: serialize_usage_v1_ReconcileUsageWithLedgerResponse,
150172
responseDeserialize: deserialize_usage_v1_ReconcileUsageWithLedgerResponse,
151173
},
174+
// ListUsage retrieves all usage for the specified attributionId and theb given time range
175+
listUsage: {
176+
path: '/usage.v1.UsageService/ListUsage',
177+
requestStream: false,
178+
responseStream: false,
179+
requestType: usage_v1_usage_pb.ListUsageRequest,
180+
responseType: usage_v1_usage_pb.ListUsageResponse,
181+
requestSerialize: serialize_usage_v1_ListUsageRequest,
182+
requestDeserialize: deserialize_usage_v1_ListUsageRequest,
183+
responseSerialize: serialize_usage_v1_ListUsageResponse,
184+
responseDeserialize: deserialize_usage_v1_ListUsageResponse,
185+
},
152186
};
153187

154188
exports.UsageServiceClient = grpc.makeGenericClientConstructor(UsageServiceService);

components/usage-api/typescript/src/usage/v1/usage_pb.d.ts

+134
Original file line numberDiff line numberDiff line change
@@ -189,6 +189,140 @@ export namespace PaginatedResponse {
189189
}
190190
}
191191

192+
export class ListUsageRequest extends jspb.Message {
193+
getAttributionId(): string;
194+
setAttributionId(value: string): ListUsageRequest;
195+
196+
hasFrom(): boolean;
197+
clearFrom(): void;
198+
getFrom(): google_protobuf_timestamp_pb.Timestamp | undefined;
199+
setFrom(value?: google_protobuf_timestamp_pb.Timestamp): ListUsageRequest;
200+
201+
hasTo(): boolean;
202+
clearTo(): void;
203+
getTo(): google_protobuf_timestamp_pb.Timestamp | undefined;
204+
setTo(value?: google_protobuf_timestamp_pb.Timestamp): ListUsageRequest;
205+
getOrder(): ListUsageRequest.Ordering;
206+
setOrder(value: ListUsageRequest.Ordering): ListUsageRequest;
207+
208+
hasPagination(): boolean;
209+
clearPagination(): void;
210+
getPagination(): PaginatedRequest | undefined;
211+
setPagination(value?: PaginatedRequest): ListUsageRequest;
212+
213+
serializeBinary(): Uint8Array;
214+
toObject(includeInstance?: boolean): ListUsageRequest.AsObject;
215+
static toObject(includeInstance: boolean, msg: ListUsageRequest): ListUsageRequest.AsObject;
216+
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
217+
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
218+
static serializeBinaryToWriter(message: ListUsageRequest, writer: jspb.BinaryWriter): void;
219+
static deserializeBinary(bytes: Uint8Array): ListUsageRequest;
220+
static deserializeBinaryFromReader(message: ListUsageRequest, reader: jspb.BinaryReader): ListUsageRequest;
221+
}
222+
223+
export namespace ListUsageRequest {
224+
export type AsObject = {
225+
attributionId: string,
226+
from?: google_protobuf_timestamp_pb.Timestamp.AsObject,
227+
to?: google_protobuf_timestamp_pb.Timestamp.AsObject,
228+
order: ListUsageRequest.Ordering,
229+
pagination?: PaginatedRequest.AsObject,
230+
}
231+
232+
export enum Ordering {
233+
ORDERING_DESCENDING = 0,
234+
ORDERING_ASCENDING = 1,
235+
}
236+
237+
}
238+
239+
export class ListUsageResponse extends jspb.Message {
240+
clearUsageEntriesList(): void;
241+
getUsageEntriesList(): Array<Usage>;
242+
setUsageEntriesList(value: Array<Usage>): ListUsageResponse;
243+
addUsageEntries(value?: Usage, index?: number): Usage;
244+
245+
hasPagination(): boolean;
246+
clearPagination(): void;
247+
getPagination(): PaginatedResponse | undefined;
248+
setPagination(value?: PaginatedResponse): ListUsageResponse;
249+
getCreditBalanceAtStart(): number;
250+
setCreditBalanceAtStart(value: number): ListUsageResponse;
251+
getCreditBalanceAtEnd(): number;
252+
setCreditBalanceAtEnd(value: number): ListUsageResponse;
253+
254+
serializeBinary(): Uint8Array;
255+
toObject(includeInstance?: boolean): ListUsageResponse.AsObject;
256+
static toObject(includeInstance: boolean, msg: ListUsageResponse): ListUsageResponse.AsObject;
257+
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
258+
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
259+
static serializeBinaryToWriter(message: ListUsageResponse, writer: jspb.BinaryWriter): void;
260+
static deserializeBinary(bytes: Uint8Array): ListUsageResponse;
261+
static deserializeBinaryFromReader(message: ListUsageResponse, reader: jspb.BinaryReader): ListUsageResponse;
262+
}
263+
264+
export namespace ListUsageResponse {
265+
export type AsObject = {
266+
usageEntriesList: Array<Usage.AsObject>,
267+
pagination?: PaginatedResponse.AsObject,
268+
creditBalanceAtStart: number,
269+
creditBalanceAtEnd: number,
270+
}
271+
}
272+
273+
export class Usage extends jspb.Message {
274+
getId(): string;
275+
setId(value: string): Usage;
276+
getAttributionId(): string;
277+
setAttributionId(value: string): Usage;
278+
getDescription(): string;
279+
setDescription(value: string): Usage;
280+
getCredits(): number;
281+
setCredits(value: number): Usage;
282+
283+
hasEffectiveTime(): boolean;
284+
clearEffectiveTime(): void;
285+
getEffectiveTime(): google_protobuf_timestamp_pb.Timestamp | undefined;
286+
setEffectiveTime(value?: google_protobuf_timestamp_pb.Timestamp): Usage;
287+
getKind(): Usage.Kind;
288+
setKind(value: Usage.Kind): Usage;
289+
getWorkspaceInstanceId(): string;
290+
setWorkspaceInstanceId(value: string): Usage;
291+
getDraft(): boolean;
292+
setDraft(value: boolean): Usage;
293+
getMetadata(): string;
294+
setMetadata(value: string): Usage;
295+
296+
serializeBinary(): Uint8Array;
297+
toObject(includeInstance?: boolean): Usage.AsObject;
298+
static toObject(includeInstance: boolean, msg: Usage): Usage.AsObject;
299+
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
300+
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
301+
static serializeBinaryToWriter(message: Usage, writer: jspb.BinaryWriter): void;
302+
static deserializeBinary(bytes: Uint8Array): Usage;
303+
static deserializeBinaryFromReader(message: Usage, reader: jspb.BinaryReader): Usage;
304+
}
305+
306+
export namespace Usage {
307+
export type AsObject = {
308+
id: string,
309+
attributionId: string,
310+
description: string,
311+
credits: number,
312+
effectiveTime?: google_protobuf_timestamp_pb.Timestamp.AsObject,
313+
kind: Usage.Kind,
314+
workspaceInstanceId: string,
315+
draft: boolean,
316+
metadata: string,
317+
}
318+
319+
export enum Kind {
320+
KIND_WORKSPACE_INSTANCE = 0,
321+
KIND_INVOICE = 1,
322+
}
323+
324+
}
325+
192326
export class BilledSession extends jspb.Message {
193327
getAttributionId(): string;
194328
setAttributionId(value: string): BilledSession;

0 commit comments

Comments
 (0)