pub const OPENAPI_V2: &str = "openapi: 3.1.0\ninfo:\n title: Hyphae Native HTTP API\n version: 2.0.0-alpha\n description: >-\n Optional loopback-first adapter over one existing NativeProductService.\n It never opens HyphaeEngine, a second NativeProduct, or format-2 state.\n license:\n name: Apache-2.0\n identifier: Apache-2.0\nx-hyphae-authority: existing-one-owner-native-product-service\nx-hyphae-v1-compatibility:\n exact-mappings-only: true\n unmappable-fails-explicitly: true\n opens-format-2-state: false\nx-hyphae-provisional-streams: >-\n Every application/x-ndjson data record is provisional. Success exists only\n after a terminal completion record with status complete.\nservers:\n - url: http://127.0.0.1:8788\n description: Default loopback-only listener\ntags:\n - name: discovery\n - name: catalog\n - name: sql\n - name: structures\n - name: search\n - name: administration\n - name: proofs\npaths:\n /v2/capabilities:\n get:\n tags: [discovery]\n operationId: nativeCapabilitiesV2\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/execute:\n post:\n tags: [administration]\n operationId: executeNativeOperationV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/catalog:\n post:\n tags: [catalog]\n operationId: executeCatalogV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/sql:\n post:\n tags: [sql]\n operationId: executeSqlV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/structures:\n post:\n tags: [structures]\n operationId: executeStructureV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/search:\n post:\n tags: [search]\n operationId: executeSearchV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/search/collection:\n post:\n operationId: searchNativeCollectionV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/search/ingest:\n post:\n operationId: ingestNativeCollectionV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/search/document:\n post:\n tags: [search]\n operationId: mutateNativeSearchDocumentV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/admin:\n post:\n tags: [administration]\n operationId: executeAdminV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/telemetry:\n post:\n tags: [administration]\n operationId: telemetryV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/doctor:\n post:\n tags: [administration]\n operationId: doctorV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/backup:\n post:\n tags: [administration]\n operationId: backupV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/restore:\n post:\n tags: [administration]\n operationId: restoreNativeBackupV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/proofs/verify:\n post:\n tags: [proofs]\n operationId: verifyNativeProofV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/transactions/status:\n post:\n tags: [administration]\n operationId: transactionStatusV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\": { $ref: \"#/components/responses/ProductResponse\" }\n default: { $ref: \"#/components/responses/ProductError\" }\n /v2/read-stream:\n post:\n tags: [sql, catalog, structures, search]\n operationId: streamNativeReadV2\n security: [{ BearerAuth: [] }, {}]\n requestBody: { $ref: \"#/components/requestBodies/ProductRequest\" }\n responses:\n \"200\":\n description: Provisional records followed by mandatory completion\n headers:\n X-Hyphae-Request-Id: { $ref: \"#/components/headers/RequestId\" }\n X-Hyphae-Stream-Completion:\n schema: { const: required }\n content:\n application/x-ndjson:\n schema:\n $ref: \"../json-schema/read-stream-v2.schema.json\"\n default: { $ref: \"#/components/responses/ProductError\" }\ncomponents:\n securitySchemes:\n BearerAuth:\n type: http\n scheme: bearer\n headers:\n RequestId:\n required: true\n schema:\n type: string\n pattern: \"^[1-9][0-9]{0,38}$\"\n requestBodies:\n ProductRequest:\n required: true\n content:\n application/vnd.hyphae.product-v1:\n schema:\n type: string\n format: binary\n responses:\n ProductResponse:\n description: Canonical HYPRSP01 Product response\n headers:\n X-Hyphae-Request-Id: { $ref: \"#/components/headers/RequestId\" }\n X-Hyphae-Session-Id:\n description: Opaque principal-bound HTTP session identity when state is retained\n schema: { type: string, pattern: \"^[0-9a-f]{32}$\" }\n content:\n application/vnd.hyphae.product-v1:\n schema:\n type: string\n format: binary\n ProductError:\n description: ProductError field parity; binary HYPERR01 is available by Accept negotiation\n headers:\n X-Hyphae-Request-Id: { $ref: \"#/components/headers/RequestId\" }\n content:\n application/json:\n schema:\n $ref: \"../json-schema/product-error-v2.schema.json\"\n application/vnd.hyphae.error-v1:\n schema:\n type: string\n format: binary\n";Expand description
OpenAPI 3.1 document for the Native HTTP version 2 adapter.