/* generated using openapi-typescript-codegen -- do not edit */ /* istanbul ignore file */ /* tslint:disable */ /* eslint-disable */ import type { ApiResponse_InquiryResponse } from '../models/ApiResponse_InquiryResponse'; import type { CreateInquiryRequest } from '../models/CreateInquiryRequest'; import type { i64 } from '../models/i64'; import type { InquiryRespondRequest } from '../models/InquiryRespondRequest'; import type { InquiryStatus } from '../models/InquiryStatus'; import type { PaginatedResponse_InquirySummary } from '../models/PaginatedResponse_InquirySummary'; import type { SuccessResponse } from '../models/SuccessResponse'; import type { UpdateInquiryRequest } from '../models/UpdateInquiryRequest'; import type { CancelablePromise } from '../core/CancelablePromise'; import { OpenAPI } from '../core/OpenAPI'; import { request as __request } from '../core/request'; export class InquiriesService { /** * List inquiries for a specific execution * @returns PaginatedResponse_InquirySummary List of inquiries for execution * @throws ApiError */ public static listInquiriesByExecution({ executionId, page, pageSize, }: { /** * Execution ID */ executionId: number, /** * Page number (1-based) */ page?: number, /** * Number of items per page */ pageSize?: number, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/v1/executions/{execution_id}/inquiries', path: { 'execution_id': executionId, }, query: { 'page': page, 'page_size': pageSize, }, errors: { 401: `Unauthorized`, 404: `Execution not found`, 500: `Internal server error`, }, }); } /** * List all inquiries with pagination and optional filters * @returns PaginatedResponse_InquirySummary List of inquiries * @throws ApiError */ public static listInquiries({ status, execution, assignedTo, offset, limit, }: { /** * Filter by status */ status?: (null | InquiryStatus), /** * Filter by execution ID */ execution?: (null | i64), /** * Filter by assigned identity */ assignedTo?: (null | i64), /** * Pagination offset */ offset?: number | null, /** * Pagination limit */ limit?: number | null, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/v1/inquiries', query: { 'status': status, 'execution': execution, 'assigned_to': assignedTo, 'offset': offset, 'limit': limit, }, errors: { 401: `Unauthorized`, 500: `Internal server error`, }, }); } /** * Create a new inquiry * @returns ApiResponse_InquiryResponse Inquiry created successfully * @throws ApiError */ public static createInquiry({ requestBody, }: { requestBody: CreateInquiryRequest, }): CancelablePromise { return __request(OpenAPI, { method: 'POST', url: '/api/v1/inquiries', body: requestBody, mediaType: 'application/json', errors: { 400: `Invalid request`, 401: `Unauthorized`, 404: `Execution not found`, 500: `Internal server error`, }, }); } /** * List inquiries by status * @returns PaginatedResponse_InquirySummary List of inquiries with specified status * @throws ApiError */ public static listInquiriesByStatus({ status, page, pageSize, }: { /** * Inquiry status (pending, responded, timeout, canceled) */ status: string, /** * Page number (1-based) */ page?: number, /** * Number of items per page */ pageSize?: number, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/v1/inquiries/status/{status}', path: { 'status': status, }, query: { 'page': page, 'page_size': pageSize, }, errors: { 400: `Invalid status`, 401: `Unauthorized`, 500: `Internal server error`, }, }); } /** * Get a single inquiry by ID * @returns ApiResponse_InquiryResponse Inquiry details * @throws ApiError */ public static getInquiry({ id, }: { /** * Inquiry ID */ id: number, }): CancelablePromise { return __request(OpenAPI, { method: 'GET', url: '/api/v1/inquiries/{id}', path: { 'id': id, }, errors: { 401: `Unauthorized`, 404: `Inquiry not found`, 500: `Internal server error`, }, }); } /** * Update an existing inquiry * @returns ApiResponse_InquiryResponse Inquiry updated successfully * @throws ApiError */ public static updateInquiry({ id, requestBody, }: { /** * Inquiry ID */ id: number, requestBody: UpdateInquiryRequest, }): CancelablePromise { return __request(OpenAPI, { method: 'PUT', url: '/api/v1/inquiries/{id}', path: { 'id': id, }, body: requestBody, mediaType: 'application/json', errors: { 400: `Invalid request`, 401: `Unauthorized`, 404: `Inquiry not found`, 500: `Internal server error`, }, }); } /** * Delete an inquiry * @returns SuccessResponse Inquiry deleted successfully * @throws ApiError */ public static deleteInquiry({ id, }: { /** * Inquiry ID */ id: number, }): CancelablePromise { return __request(OpenAPI, { method: 'DELETE', url: '/api/v1/inquiries/{id}', path: { 'id': id, }, errors: { 401: `Unauthorized`, 404: `Inquiry not found`, 500: `Internal server error`, }, }); } /** * Respond to an inquiry (user-facing endpoint) * @returns ApiResponse_InquiryResponse Response submitted successfully * @throws ApiError */ public static respondToInquiry({ id, requestBody, }: { /** * Inquiry ID */ id: number, requestBody: InquiryRespondRequest, }): CancelablePromise { return __request(OpenAPI, { method: 'POST', url: '/api/v1/inquiries/{id}/respond', path: { 'id': id, }, body: requestBody, mediaType: 'application/json', errors: { 400: `Invalid request or inquiry cannot be responded to`, 401: `Unauthorized`, 403: `Not authorized to respond to this inquiry`, 404: `Inquiry not found`, 500: `Internal server error`, }, }); } }