/* tslint:disable */ /* eslint-disable */ /** * MailSlurp API * MailSlurp is an API for sending and receiving emails and SMS from dynamically allocated email addresses and phone numbers. It\'s designed for developers and QA teams to test applications, process inbound emails, send templated notifications, attachments, and more. ## Resources - [Homepage](https://www.mailslurp.com) - Get an [API KEY](https://app.mailslurp.com/sign-up/) - Generated [SDK Clients](https://docs.mailslurp.com/) - [Examples](https://github.com/mailslurp/examples) repository * * The version of the OpenAPI document: 6.5.2 * Contact: contact@mailslurp.dev * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import { AuditLogEventDto, AuditLogEventDtoFromJSON, AuditLogEventDtoToJSON, AuditLogPageDto, AuditLogPageDtoFromJSON, AuditLogPageDtoToJSON, AuditLogSearchOptions, AuditLogSearchOptionsFromJSON, AuditLogSearchOptionsToJSON, } from '../models'; export interface GetAuditLogByEventIdRequest { eventId: string; since?: Date; before?: Date; } export interface GetAuditLogsRequest { since?: Date; before?: Date; action?: string; userId?: string; actorUserId?: string; targetUserId?: string; resourceType?: string; resourceId?: string; outcome?: string; requestId?: string; ipAddress?: string; pageSize?: number; cursor?: string; } export interface SearchAuditLogsRequest { auditLogSearchOptions: AuditLogSearchOptions; } /** * */ export class ApiAuditLogControllerApi extends runtime.BaseAPI { /** */ async getAuditLogByEventIdRaw( requestParameters: GetAuditLogByEventIdRequest, initOverrides?: RequestInit ): Promise> { if ( requestParameters.eventId === null || requestParameters.eventId === undefined ) { throw new runtime.RequiredError( 'eventId', 'Required parameter requestParameters.eventId was null or undefined when calling getAuditLogByEventId.' ); } const queryParameters: any = {}; if (requestParameters.since !== undefined) { queryParameters['since'] = (requestParameters.since as any).toISOString(); } if (requestParameters.before !== undefined) { queryParameters['before'] = ( requestParameters.before as any ).toISOString(); } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } const response = await this.request( { path: `/audit-logs/{eventId}`.replace( `{${'eventId'}}`, encodeURIComponent(String(requestParameters.eventId)) ), method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides ); return new runtime.JSONApiResponse(response, (jsonValue) => AuditLogEventDtoFromJSON(jsonValue) ); } /** */ async getAuditLogByEventId( requestParameters: GetAuditLogByEventIdRequest, initOverrides?: RequestInit ): Promise { const response = await this.getAuditLogByEventIdRaw( requestParameters, initOverrides ); return await response.value(); } /** */ async getAuditLogsRaw( requestParameters: GetAuditLogsRequest, initOverrides?: RequestInit ): Promise> { const queryParameters: any = {}; if (requestParameters.since !== undefined) { queryParameters['since'] = (requestParameters.since as any).toISOString(); } if (requestParameters.before !== undefined) { queryParameters['before'] = ( requestParameters.before as any ).toISOString(); } if (requestParameters.action !== undefined) { queryParameters['action'] = requestParameters.action; } if (requestParameters.userId !== undefined) { queryParameters['userId'] = requestParameters.userId; } if (requestParameters.actorUserId !== undefined) { queryParameters['actorUserId'] = requestParameters.actorUserId; } if (requestParameters.targetUserId !== undefined) { queryParameters['targetUserId'] = requestParameters.targetUserId; } if (requestParameters.resourceType !== undefined) { queryParameters['resourceType'] = requestParameters.resourceType; } if (requestParameters.resourceId !== undefined) { queryParameters['resourceId'] = requestParameters.resourceId; } if (requestParameters.outcome !== undefined) { queryParameters['outcome'] = requestParameters.outcome; } if (requestParameters.requestId !== undefined) { queryParameters['requestId'] = requestParameters.requestId; } if (requestParameters.ipAddress !== undefined) { queryParameters['ipAddress'] = requestParameters.ipAddress; } if (requestParameters.pageSize !== undefined) { queryParameters['pageSize'] = requestParameters.pageSize; } if (requestParameters.cursor !== undefined) { queryParameters['cursor'] = requestParameters.cursor; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } const response = await this.request( { path: `/audit-logs`, method: 'GET', headers: headerParameters, query: queryParameters, }, initOverrides ); return new runtime.JSONApiResponse(response, (jsonValue) => AuditLogPageDtoFromJSON(jsonValue) ); } /** */ async getAuditLogs( requestParameters: GetAuditLogsRequest, initOverrides?: RequestInit ): Promise { const response = await this.getAuditLogsRaw( requestParameters, initOverrides ); return await response.value(); } /** */ async searchAuditLogsRaw( requestParameters: SearchAuditLogsRequest, initOverrides?: RequestInit ): Promise> { if ( requestParameters.auditLogSearchOptions === null || requestParameters.auditLogSearchOptions === undefined ) { throw new runtime.RequiredError( 'auditLogSearchOptions', 'Required parameter requestParameters.auditLogSearchOptions was null or undefined when calling searchAuditLogs.' ); } const queryParameters: any = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.apiKey) { headerParameters['x-api-key'] = this.configuration.apiKey('x-api-key'); // API_KEY authentication } const response = await this.request( { path: `/audit-logs/search`, method: 'POST', headers: headerParameters, query: queryParameters, body: AuditLogSearchOptionsToJSON( requestParameters.auditLogSearchOptions ), }, initOverrides ); return new runtime.JSONApiResponse(response, (jsonValue) => AuditLogPageDtoFromJSON(jsonValue) ); } /** */ async searchAuditLogs( requestParameters: SearchAuditLogsRequest, initOverrides?: RequestInit ): Promise { const response = await this.searchAuditLogsRaw( requestParameters, initOverrides ); return await response.value(); } }