From 14322f40c28369778ca52ee509bcac396ac64ad0 Mon Sep 17 00:00:00 2001 From: Bryan Helmkamp Date: Thu, 5 Mar 2026 00:41:32 -0500 Subject: [PATCH] Wrap non-paginated list endpoints in paginated response shape Wrap 4 list endpoints that returned bare arrays in the standard paginated `{ data, meta: { has_more } }` shape so adding real pagination later is additive rather than a breaking change. Endpoints: GET /runs/{id}/questions, /runs/{id}/stages, /runs/{id}/verifications, and /verifications. Co-Authored-By: Claude Opus 4.6 --- apps/arc-web/app/routes/run-stages.tsx | 4 +- apps/arc-web/app/routes/run-verifications.tsx | 4 +- crates/arc-api/src/demo/mod.rs | 12 ++-- crates/arc-api/src/server.rs | 8 ++- crates/arc-api/tests/integration.rs | 4 +- docs/api-reference/arc-api.yaml | 68 +++++++++++++++---- openapi/arc-api.yaml | 68 +++++++++++++++---- .../src/.openapi-generator/FILES | 4 ++ .../src/api/human-in-the-loop-api.ts | 8 +-- .../src/api/run-internals-api.ts | 8 +-- .../arc-api-client/src/api/run-outputs-api.ts | 8 +-- .../src/api/verifications-api.ts | 6 +- packages/arc-api-client/src/models/index.ts | 4 ++ .../src/models/paginated-api-question-list.ts | 27 ++++++++ .../src/models/paginated-run-stage-list.ts | 27 ++++++++ .../models/paginated-run-verification-list.ts | 27 ++++++++ .../paginated-verification-category-list.ts | 27 ++++++++ 17 files changed, 262 insertions(+), 52 deletions(-) create mode 100644 packages/arc-api-client/src/models/paginated-api-question-list.ts create mode 100644 packages/arc-api-client/src/models/paginated-run-stage-list.ts create mode 100644 packages/arc-api-client/src/models/paginated-run-verification-list.ts create mode 100644 packages/arc-api-client/src/models/paginated-verification-category-list.ts diff --git a/apps/arc-web/app/routes/run-stages.tsx b/apps/arc-web/app/routes/run-stages.tsx index 4eba814fb..dd33e23c8 100644 --- a/apps/arc-web/app/routes/run-stages.tsx +++ b/apps/arc-web/app/routes/run-stages.tsx @@ -5,7 +5,7 @@ import { CheckCircleIcon, ArrowPathIcon, PauseCircleIcon, XCircleIcon } from "@h import { DocumentTextIcon, MapIcon, CommandLineIcon, ChatBubbleLeftIcon, WrenchScrewdriverIcon } from "@heroicons/react/24/outline"; import { apiJson } from "../api-client"; import { formatDurationSecs } from "../lib/format"; -import type { RunStage, StageTurn as ApiStageTurn, PaginatedStageTurnList } from "@qltysh/arc-api-client"; +import type { PaginatedRunStageList, StageTurn as ApiStageTurn, PaginatedStageTurnList } from "@qltysh/arc-api-client"; import type { Route } from "./+types/run-stages"; export const handle = { wide: true }; @@ -20,7 +20,7 @@ interface Stage { } export async function loader({ request, params }: Route.LoaderArgs) { - const apiStages = await apiJson(`/runs/${params.id}/stages`, { request }); + const { data: apiStages } = await apiJson(`/runs/${params.id}/stages`, { request }); const stages: Stage[] = apiStages.map((s) => ({ id: s.id, name: s.name, diff --git a/apps/arc-web/app/routes/run-verifications.tsx b/apps/arc-web/app/routes/run-verifications.tsx index 756d78b05..c7e8c9b19 100644 --- a/apps/arc-web/app/routes/run-verifications.tsx +++ b/apps/arc-web/app/routes/run-verifications.tsx @@ -20,11 +20,11 @@ import type { VerificationCategory, } from "../data/verifications"; import { apiJson } from "../api-client"; -import type { RunVerification } from "@qltysh/arc-api-client"; +import type { PaginatedRunVerificationList } from "@qltysh/arc-api-client"; import type { Route } from "./+types/run-verifications"; export async function loader({ request, params }: Route.LoaderArgs) { - const apiCategories = await apiJson(`/runs/${params.id}/verifications`, { request }); + const { data: apiCategories } = await apiJson(`/runs/${params.id}/verifications`, { request }); const categories: VerificationCategory[] = apiCategories.map((cat) => ({ name: cat.name, question: cat.question, diff --git a/crates/arc-api/src/demo/mod.rs b/crates/arc-api/src/demo/mod.rs index 235f102ea..4d9b2c0ef 100644 --- a/crates/arc-api/src/demo/mod.rs +++ b/crates/arc-api/src/demo/mod.rs @@ -22,6 +22,10 @@ fn paginated_response(items: Vec, pagination: &Paginatio (StatusCode::OK, Json(json!({ "data": data, "meta": { "has_more": has_more } }))).into_response() } +fn list_response(items: T) -> Response { + (StatusCode::OK, Json(json!({ "data": items, "meta": { "has_more": false } }))).into_response() +} + // ── Runs ─────────────────────────────────────────────────────────────── pub async fn list_runs( @@ -48,7 +52,7 @@ pub async fn get_run_stages( State(_state): State>, Path(_id): Path, ) -> Response { - (StatusCode::OK, Json(runs::stages())).into_response() + list_response(runs::stages()) } pub async fn get_stage_turns( @@ -88,7 +92,7 @@ pub async fn get_run_verifications( State(_state): State>, Path(_id): Path, ) -> Response { - (StatusCode::OK, Json(runs::verifications())).into_response() + list_response(runs::verifications()) } pub async fn get_run_configuration( @@ -150,7 +154,7 @@ pub async fn get_questions_stub( Path(_id): Path, ) -> Response { let empty: Vec = vec![]; - (StatusCode::OK, Json(empty)).into_response() + list_response(empty) } pub async fn answer_stub( @@ -459,7 +463,7 @@ pub async fn list_verifications( _auth: AuthenticatedService, State(_state): State>, ) -> Response { - (StatusCode::OK, Json(verifications::categories())).into_response() + list_response(verifications::categories()) } pub async fn get_verification_detail( diff --git a/crates/arc-api/src/server.rs b/crates/arc-api/src/server.rs index 941dabfe1..338c22ab1 100644 --- a/crates/arc-api/src/server.rs +++ b/crates/arc-api/src/server.rs @@ -12,6 +12,7 @@ use tokio::sync::broadcast; use tokio_stream::wrappers::BroadcastStream; use tokio_stream::StreamExt; +use serde_json::json; use tracing::{error, info}; use arc_agent::LocalSandbox; @@ -644,7 +645,7 @@ async fn get_questions( Some(managed_run) => { let interviewer = match &managed_run.interviewer { Some(i) => i, - None => return (StatusCode::OK, Json(Vec::::new())).into_response(), + None => return (StatusCode::OK, Json(json!({ "data": Vec::::new(), "meta": { "has_more": false } }))).into_response(), }; let pending = interviewer.pending_questions(); let questions: Vec = pending @@ -665,7 +666,7 @@ async fn get_questions( allow_freeform: pq.question.allow_freeform, }) .collect(); - (StatusCode::OK, Json(questions)).into_response() + (StatusCode::OK, Json(json!({ "data": questions, "meta": { "has_more": false } }))).into_response() } None => ApiError::not_found("Run not found.").into_response(), } @@ -1041,7 +1042,8 @@ mod tests { assert_eq!(response.status(), StatusCode::OK); let body = body_json(response.into_body()).await; - assert!(body.is_array()); + assert!(body["data"].is_array()); + assert_eq!(body["meta"]["has_more"], false); } #[tokio::test] diff --git a/crates/arc-api/tests/integration.rs b/crates/arc-api/tests/integration.rs index ac075c5ef..e043e1065 100644 --- a/crates/arc-api/tests/integration.rs +++ b/crates/arc-api/tests/integration.rs @@ -496,7 +496,7 @@ mod server_lifecycle { .unwrap(); let response = app.clone().oneshot(req).await.unwrap(); let body = body_json(response.into_body()).await; - let arr = body.as_array().unwrap(); + let arr = body["data"].as_array().unwrap(); if !arr.is_empty() { question_id = arr[0]["id"].as_str().unwrap().to_string(); break; @@ -557,7 +557,7 @@ mod server_lifecycle { let response = app.clone().oneshot(req).await.unwrap(); let body = body_json(response.into_body()).await; assert!( - body.as_array().unwrap().is_empty(), + body["data"].as_array().unwrap().is_empty(), "no pending questions after completion" ); } diff --git a/docs/api-reference/arc-api.yaml b/docs/api-reference/arc-api.yaml index 414c6fef7..f4a0fca61 100644 --- a/docs/api-reference/arc-api.yaml +++ b/docs/api-reference/arc-api.yaml @@ -298,9 +298,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/ApiQuestion" + $ref: "#/components/schemas/PaginatedApiQuestionList" "404": description: Run not found content: @@ -379,9 +377,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/RunStage" + $ref: "#/components/schemas/PaginatedRunStageList" "404": description: Run not found content: @@ -477,9 +473,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/RunVerification" + $ref: "#/components/schemas/PaginatedRunVerificationList" "404": description: Run not found content: @@ -673,9 +667,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/VerificationCategory" + $ref: "#/components/schemas/PaginatedVerificationCategoryList" /verifications/{slug}: get: @@ -1193,6 +1185,58 @@ components: meta: $ref: "#/components/schemas/PaginationMeta" + PaginatedApiQuestionList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/ApiQuestion" + meta: + $ref: "#/components/schemas/PaginationMeta" + + PaginatedRunStageList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/RunStage" + meta: + $ref: "#/components/schemas/PaginationMeta" + + PaginatedRunVerificationList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/RunVerification" + meta: + $ref: "#/components/schemas/PaginationMeta" + + PaginatedVerificationCategoryList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/VerificationCategory" + meta: + $ref: "#/components/schemas/PaginationMeta" + # ── Existing Run Schemas ──────────────────────────────────────────── RunStatus: diff --git a/openapi/arc-api.yaml b/openapi/arc-api.yaml index 414c6fef7..f4a0fca61 100644 --- a/openapi/arc-api.yaml +++ b/openapi/arc-api.yaml @@ -298,9 +298,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/ApiQuestion" + $ref: "#/components/schemas/PaginatedApiQuestionList" "404": description: Run not found content: @@ -379,9 +377,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/RunStage" + $ref: "#/components/schemas/PaginatedRunStageList" "404": description: Run not found content: @@ -477,9 +473,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/RunVerification" + $ref: "#/components/schemas/PaginatedRunVerificationList" "404": description: Run not found content: @@ -673,9 +667,7 @@ paths: content: application/json: schema: - type: array - items: - $ref: "#/components/schemas/VerificationCategory" + $ref: "#/components/schemas/PaginatedVerificationCategoryList" /verifications/{slug}: get: @@ -1193,6 +1185,58 @@ components: meta: $ref: "#/components/schemas/PaginationMeta" + PaginatedApiQuestionList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/ApiQuestion" + meta: + $ref: "#/components/schemas/PaginationMeta" + + PaginatedRunStageList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/RunStage" + meta: + $ref: "#/components/schemas/PaginationMeta" + + PaginatedRunVerificationList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/RunVerification" + meta: + $ref: "#/components/schemas/PaginationMeta" + + PaginatedVerificationCategoryList: + type: object + required: + - data + - meta + properties: + data: + type: array + items: + $ref: "#/components/schemas/VerificationCategory" + meta: + $ref: "#/components/schemas/PaginationMeta" + # ── Existing Run Schemas ──────────────────────────────────────────── RunStatus: diff --git a/packages/arc-api-client/src/.openapi-generator/FILES b/packages/arc-api-client/src/.openapi-generator/FILES index 96c955a79..83c35d692 100644 --- a/packages/arc-api-client/src/.openapi-generator/FILES +++ b/packages/arc-api-client/src/.openapi-generator/FILES @@ -40,14 +40,18 @@ models/file-diff.ts models/health-response.ts models/history-entry.ts models/index.ts +models/paginated-api-question-list.ts models/paginated-branch-list.ts models/paginated-history-entry-list.ts models/paginated-project-list.ts models/paginated-retro-list.ts models/paginated-run-list.ts +models/paginated-run-stage-list.ts +models/paginated-run-verification-list.ts models/paginated-saved-query-list.ts models/paginated-session-group-list.ts models/paginated-stage-turn-list.ts +models/paginated-verification-category-list.ts models/paginated-workflow-list.ts models/pagination-meta.ts models/preview-url-request.ts diff --git a/packages/arc-api-client/src/api/human-in-the-loop-api.ts b/packages/arc-api-client/src/api/human-in-the-loop-api.ts index d18f51761..000076d81 100644 --- a/packages/arc-api-client/src/api/human-in-the-loop-api.ts +++ b/packages/arc-api-client/src/api/human-in-the-loop-api.ts @@ -22,10 +22,10 @@ import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObj // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError, operationServerMap } from '../base'; // @ts-ignore -import type { ApiQuestion } from '../models'; -// @ts-ignore import type { ErrorResponse } from '../models'; // @ts-ignore +import type { PaginatedApiQuestionList } from '../models'; +// @ts-ignore import type { PreviewUrlRequest } from '../models'; // @ts-ignore import type { PreviewUrlResponse } from '../models'; @@ -227,7 +227,7 @@ export const HumanInTheLoopApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async listRunQuestions(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async listRunQuestions(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.listRunQuestions(id, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['HumanInTheLoopApi.listRunQuestions']?.[localVarOperationServerIndex]?.url; @@ -289,7 +289,7 @@ export const HumanInTheLoopApiFactory = function (configuration?: Configuration, * @param {*} [options] Override http request option. * @throws {RequiredError} */ - listRunQuestions(id: string, options?: RawAxiosRequestConfig): AxiosPromise> { + listRunQuestions(id: string, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.listRunQuestions(id, options).then((request) => request(axios, basePath)); }, /** diff --git a/packages/arc-api-client/src/api/run-internals-api.ts b/packages/arc-api-client/src/api/run-internals-api.ts index db5e2dd00..c4657670c 100644 --- a/packages/arc-api-client/src/api/run-internals-api.ts +++ b/packages/arc-api-client/src/api/run-internals-api.ts @@ -24,9 +24,9 @@ import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError // @ts-ignore import type { ErrorResponse } from '../models'; // @ts-ignore -import type { PaginatedStageTurnList } from '../models'; +import type { PaginatedRunStageList } from '../models'; // @ts-ignore -import type { RunStage } from '../models'; +import type { PaginatedStageTurnList } from '../models'; /** * RunInternalsApi - axios parameter creator */ @@ -232,7 +232,7 @@ export const RunInternalsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async listRunStages(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async listRunStages(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.listRunStages(id, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RunInternalsApi.listRunStages']?.[localVarOperationServerIndex]?.url; @@ -309,7 +309,7 @@ export const RunInternalsApiFactory = function (configuration?: Configuration, b * @param {*} [options] Override http request option. * @throws {RequiredError} */ - listRunStages(id: string, options?: RawAxiosRequestConfig): AxiosPromise> { + listRunStages(id: string, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.listRunStages(id, options).then((request) => request(axios, basePath)); }, /** diff --git a/packages/arc-api-client/src/api/run-outputs-api.ts b/packages/arc-api-client/src/api/run-outputs-api.ts index 77150bceb..00ed7260a 100644 --- a/packages/arc-api-client/src/api/run-outputs-api.ts +++ b/packages/arc-api-client/src/api/run-outputs-api.ts @@ -24,11 +24,11 @@ import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError // @ts-ignore import type { ErrorResponse } from '../models'; // @ts-ignore +import type { PaginatedRunVerificationList } from '../models'; +// @ts-ignore import type { RunFiles } from '../models'; // @ts-ignore import type { RunUsage } from '../models'; -// @ts-ignore -import type { RunVerification } from '../models'; /** * RunOutputsApi - axios parameter creator */ @@ -171,7 +171,7 @@ export const RunOutputsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async listRunVerifications(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async listRunVerifications(id: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.listRunVerifications(id, options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RunOutputsApi.listRunVerifications']?.[localVarOperationServerIndex]?.url; @@ -217,7 +217,7 @@ export const RunOutputsApiFactory = function (configuration?: Configuration, bas * @param {*} [options] Override http request option. * @throws {RequiredError} */ - listRunVerifications(id: string, options?: RawAxiosRequestConfig): AxiosPromise> { + listRunVerifications(id: string, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.listRunVerifications(id, options).then((request) => request(axios, basePath)); }, /** diff --git a/packages/arc-api-client/src/api/verifications-api.ts b/packages/arc-api-client/src/api/verifications-api.ts index 144eba2cd..342839c94 100644 --- a/packages/arc-api-client/src/api/verifications-api.ts +++ b/packages/arc-api-client/src/api/verifications-api.ts @@ -24,7 +24,7 @@ import { BASE_PATH, COLLECTION_FORMATS, type RequestArgs, BaseAPI, RequiredError // @ts-ignore import type { ErrorResponse } from '../models'; // @ts-ignore -import type { VerificationCategory } from '../models'; +import type { PaginatedVerificationCategoryList } from '../models'; // @ts-ignore import type { VerificationDetailResponse } from '../models'; /** @@ -111,7 +111,7 @@ export const VerificationsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async listVerifications(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { + async listVerifications(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.listVerifications(options); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['VerificationsApi.listVerifications']?.[localVarOperationServerIndex]?.url; @@ -145,7 +145,7 @@ export const VerificationsApiFactory = function (configuration?: Configuration, * @param {*} [options] Override http request option. * @throws {RequiredError} */ - listVerifications(options?: RawAxiosRequestConfig): AxiosPromise> { + listVerifications(options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.listVerifications(options).then((request) => request(axios, basePath)); }, /** diff --git a/packages/arc-api-client/src/models/index.ts b/packages/arc-api-client/src/models/index.ts index 2b1aebf02..256a71969 100644 --- a/packages/arc-api-client/src/models/index.ts +++ b/packages/arc-api-client/src/models/index.ts @@ -21,14 +21,18 @@ export * from './file-checkpoint'; export * from './file-diff'; export * from './health-response'; export * from './history-entry'; +export * from './paginated-api-question-list'; export * from './paginated-branch-list'; export * from './paginated-history-entry-list'; export * from './paginated-project-list'; export * from './paginated-retro-list'; export * from './paginated-run-list'; +export * from './paginated-run-stage-list'; +export * from './paginated-run-verification-list'; export * from './paginated-saved-query-list'; export * from './paginated-session-group-list'; export * from './paginated-stage-turn-list'; +export * from './paginated-verification-category-list'; export * from './paginated-workflow-list'; export * from './pagination-meta'; export * from './preview-url-request'; diff --git a/packages/arc-api-client/src/models/paginated-api-question-list.ts b/packages/arc-api-client/src/models/paginated-api-question-list.ts new file mode 100644 index 000000000..da44cca39 --- /dev/null +++ b/packages/arc-api-client/src/models/paginated-api-question-list.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Arc Run API + * HTTP API for managing Arc workflow run executions. + * + * The version of the OpenAPI document: 0.1.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import type { ApiQuestion } from './api-question'; +// May contain unused imports in some cases +// @ts-ignore +import type { PaginationMeta } from './pagination-meta'; + +export interface PaginatedApiQuestionList { + 'data': Array; + 'meta': PaginationMeta; +} + diff --git a/packages/arc-api-client/src/models/paginated-run-stage-list.ts b/packages/arc-api-client/src/models/paginated-run-stage-list.ts new file mode 100644 index 000000000..42ebf1c84 --- /dev/null +++ b/packages/arc-api-client/src/models/paginated-run-stage-list.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Arc Run API + * HTTP API for managing Arc workflow run executions. + * + * The version of the OpenAPI document: 0.1.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import type { PaginationMeta } from './pagination-meta'; +// May contain unused imports in some cases +// @ts-ignore +import type { RunStage } from './run-stage'; + +export interface PaginatedRunStageList { + 'data': Array; + 'meta': PaginationMeta; +} + diff --git a/packages/arc-api-client/src/models/paginated-run-verification-list.ts b/packages/arc-api-client/src/models/paginated-run-verification-list.ts new file mode 100644 index 000000000..2f1a84e37 --- /dev/null +++ b/packages/arc-api-client/src/models/paginated-run-verification-list.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Arc Run API + * HTTP API for managing Arc workflow run executions. + * + * The version of the OpenAPI document: 0.1.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import type { PaginationMeta } from './pagination-meta'; +// May contain unused imports in some cases +// @ts-ignore +import type { RunVerification } from './run-verification'; + +export interface PaginatedRunVerificationList { + 'data': Array; + 'meta': PaginationMeta; +} + diff --git a/packages/arc-api-client/src/models/paginated-verification-category-list.ts b/packages/arc-api-client/src/models/paginated-verification-category-list.ts new file mode 100644 index 000000000..b6c31ad11 --- /dev/null +++ b/packages/arc-api-client/src/models/paginated-verification-category-list.ts @@ -0,0 +1,27 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Arc Run API + * HTTP API for managing Arc workflow run executions. + * + * The version of the OpenAPI document: 0.1.0 + * + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import type { PaginationMeta } from './pagination-meta'; +// May contain unused imports in some cases +// @ts-ignore +import type { VerificationCategory } from './verification-category'; + +export interface PaginatedVerificationCategoryList { + 'data': Array; + 'meta': PaginationMeta; +} +