Enable the GraphQL Console

This topic covers the deployment and upgrade steps for the GraphQL Console and the related query-engine capabilities delivered in Vera 2026.2. Complete these steps after you upgrade the containers and databases to the 2026.2 release. To learn how administrators use the console, check out Query and export Vera data.

Choose the path that matches your environment:

  • For new installations, deploy the services below and enable the feature flag. Vera imports the default document types and templates on first startup.

  • For upgrades from a previous version, follow every section in this topic, including the Requirements Traceability Matrix template update if you use RTM reports.

Deploy the required services

The GraphQL Console requires three cooperating components:

Component

Role

vera-query-engine

HotChocolate GraphQL API and the bundled query IDE assets (Nitro / Banana Cake Pop).

vera-web-portal

Admin-only proxy at /api/admin/graphql; enforces system administrator access and read-only queries.

vera-worker-documents

Document generation; must reach the query engine for data.

Docker Compose

Add or verify the following in your docker-compose.yml file. The query engine must stay on the internal Docker network. Don't publish its port to the host or expose it through your ingress. Administrators reach GraphQL only through the web portal proxy.

For the web portal, set the upstream query-engine URL:

Copy
vera.web.portal:
  environment:
    # Upstream for /api/admin/graphql (internal service name only)
    - VERA_QUERY_ENGINE_URL=http://vera.query.engine/graphql
    # Feature flag, see the next section
    - VERA_WEB_PORTAL_ENABLE_GRAPHQL_CONSOLE=true

For the query engine, add the service with no host port mapping:

Copy
vera.query.engine:
  image: veraserver20190209075900.azurecr.io/tricentis/vera-query-engine:${VERA_RELEASE_TAG}
  container_name: vera-query-engine
  restart: always
  volumes:
    - ${VERA_SERVER_DATA_DIRECTORY}:/Data
  environment:
    - ASPNETCORE_URLS=http://+:80
    - ASPNETCORE_ENVIRONMENT=${ASPNETCORE_ENVIRONMENT}
    - RabbitMQConnectionString=amqp://${RABBITMQ_USERNAME}:${RABBITMQ_PASSWORD}@rabbitmq:5672
    - MongoDBConnectionString=mongodb://host.docker.internal:27017/
    - LocalAddress=http://vera.query.engine
    - VERA_SERVER_DATA_DIR=/Data
    - VeraServerUrl=http://vera.server:5000
    # Public portal origin used in attachment download URLs
    - VeraWebPortalUrl=${VERA_WEB_PORTAL_URL}

For the documents worker, configure the query-engine address and the default import volumes:

Copy
vera.worker.documents:
  volumes:
    - ${VERA_SERVER_DATA_DIRECTORY}:/Data
    - ${VERA_SERVER_DATA_DIRECTORY}/DocumentTypes:/app/DocumentTypeImport/DefaultDocumentTypes
    - ${VERA_SERVER_DATA_DIRECTORY}/DocumentTemplates:/app/TemplateImport/DefaultTemplates
  environment:
    - QueryEngineAddress=http://vera.query.engine/graphql
  depends_on:
    - vera.query.engine
    - vera.worker.carbone

Kubernetes (Helm)

When you deploy with the Vera Helm chart:

  • The chart sets VERA_QUERY_ENGINE_URL automatically on the web portal Deployment.

  • The chart sets VeraWebPortalUrl automatically on the query-engine Deployment from the runtime public origin.

  • Set webPortal.enableGraphqlConsole: "true" in your client values. This maps to the ConfigMap key enable-graphql-console and the environment variable VERA_WEB_PORTAL_ENABLE_GRAPHQL_CONSOLE.

Enable the feature flag

The GraphQL Console is off by default for phased rollout. Set the flag for your deployment type:

Deployment

Setting

Docker Compose

VERA_WEB_PORTAL_ENABLE_GRAPHQL_CONSOLE=true on vera.web.portal.

Helm / Kubernetes

webPortal.enableGraphqlConsole: "true".

Portal config file

graphqlConsole: true in the web portal configuration. The environment variable overrides this value when set.

When the flag is disabled, the admin sidebar hides GraphQL Console, the React route is unavailable, and /api/admin/graphql returns HTTP 404.

Restart the web portal after you change the flag.

Update the Requirements Traceability Matrix (upgrades only)

Vera 2026.2 adds approvalDateTime, executionStartTime, and executionEndTime to the RTM GraphQL results. New installations receive the updated document type and template automatically. Existing environments must upload the revised template file.

Step 1: Locate the RTM template ID

To find the template ID, follow these steps:

  1. Sign in to Site Administration as a system administrator.

  2. Open Document Templates.

  3. Find the template named Requirement Traceability Matrix and note its template ID (GUID).

Alternatively, call the templates filter API:

Copy
POST /rest/api/documents/templates/filter
Content-Type: application/json
Api-User-Token: <admin-token>

{
  "filter": {
    "name": { "contains": "Requirement Traceability Matrix" }
  }
}

Step 2: Upload the revised template

Revise the template file with a PUT request. Use the updated Requirement Traceability Matrix.xlsx from the vera-documents-templates 2026.2 package, which includes the Approval Date and Execution Start and End columns:

Copy
PUT /rest/api/documents/templates/{templateId}
Content-Type: multipart/form-data
Api-User-Token: <admin-token>

correlationId: <new-guid>
name: Requirement Traceability Matrix
description: Requirement Traceability Matrix
documentTypeId: <document-type-guid>
ownerUserId: <owner-user-guid>
templateFile: <Requirement Traceability Matrix.xlsx>

The following example uses curl. Replace the placeholders with values from your environment:

Copy
curl -X PUT "https://<your-vera-host>/rest/api/documents/templates/{templateId}" \
  -H "Api-User-Token: <admin-token>" \
  -F "correlationId=$(uuidgen)" \
  -F "name=Requirement Traceability Matrix" \
  -F "description=Requirement Traceability Matrix" \
  -F "documentTypeId=<document-type-guid>" \
  -F "ownerUserId=<owner-user-guid>" \
  -F "templateFile=@Requirement Traceability Matrix.xlsx;type=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"

In generated RTM documents, approval dates display in GMT. Execution start and end dates use the format stored in the database, which differs from the approval date format.

Verify the installation

To confirm the console works, follow these steps:

  1. Confirm that the vera-query-engine, vera-web-portal, and vera-worker-documents containers are healthy.

  2. Confirm that VERA_WEB_PORTAL_ENABLE_GRAPHQL_CONSOLE=true, or the Helm equivalent, and restart the portal if you changed it.

  3. Sign in as a system administrator and open Reports > GraphQL Console.

  4. Run a simple introspection or test query, for example { domains { name } }.

  5. Generate an RTM document for a test release and confirm that the approval and execution date columns populate.

Security notes

Follow these security practices for the query engine:

  • Don't expose vera-query-engine on a public URL.

  • The portal proxy rejects mutations. Don't bypass it with direct engine access.

  • Vera logs GraphQL query execution server-side, but it doesn't write Audit History entries.

What's next

Query and export Vera data to build compliance and reporting exports with the console.