---
title: "Kiwi for TeamCity"
description: "Report check results from TeamCity to a run's Verify step with a checker key."
canonical: "https://kiwiflow.io/integrations/teamcity"
---

# Kiwi for TeamCity

Report check results from TeamCity to a run's Verify step with a checker key.

- Posts named check results over HTTP with a checker key. The key can report only the checks you choose in one project.
- Checks reserved for CI accept results only from a checker key.
- Records each result against the candidate under review. A pass counts toward Verify; a fail means the run needs rework.
- Records a retried report once.
- Kiwi does not start pipelines or read their logs. It records the results your pipeline sends.

## Set up

Store your checker key as a TeamCity secure value by generating a token for it in the project settings, and add `report-kiwi-check.sh` from the setup guide to your repository.

This `.teamcity/settings.kts` runs your tests, then reports the `tests-pass` check as `pass` or `fail`:

```
import jetbrains.buildServer.configs.kotlin.*
import jetbrains.buildServer.configs.kotlin.buildSteps.script

version = "2025.11"

project {
  buildType {
    id("Kiwi")
    name = "Kiwi"
    vcs {
      root(DslContext.settingsRoot)
    }
    params {
      text("env.KIWI_RUN_ID", "", label = "Kiwi run ID", display = ParameterDisplay.PROMPT, allowEmpty = false)
      password("env.KIWI_CHECKER_KEY", "credentialsJSON:<token>")
    }
    steps {
      script {
        scriptContent = "npm ci && npm test"
      }
      script {
        executionMode = BuildStep.ExecutionMode.RUN_ONLY_ON_FAILURE
        scriptContent = "./report-kiwi-check.sh tests-pass fail '%env.BUILD_URL%'"
      }
      script {
        executionMode = BuildStep.ExecutionMode.RUN_ON_SUCCESS
        scriptContent = "./report-kiwi-check.sh tests-pass pass '%env.BUILD_URL%'"
      }
    }
  }
}
```

Put the generated token in place of `<token>`, then run the build and enter the Kiwi run ID when TeamCity asks for it.

Run it on an agent that has `curl`, `jq` and `uuidgen`.

Replace `tests-pass` with the check ID from your plan.

## More CI/CD integrations

- [Kiwi for AWS CodeBuild](https://kiwiflow.io/integrations/aws-codebuild.md): Report check results from AWS CodeBuild to a run's Verify step with a checker key.
- [Kiwi for Azure Pipelines](https://kiwiflow.io/integrations/azure-pipelines.md): Report check results from Azure Pipelines to a run's Verify step with a checker key.
- [Kiwi for Bitbucket Pipelines](https://kiwiflow.io/integrations/bitbucket-pipelines.md): Report check results from Bitbucket Pipelines to a run's Verify step with a checker key.
- [Kiwi for Bitrise](https://kiwiflow.io/integrations/bitrise.md): Report check results from Bitrise to a run's Verify step with a checker key.
- [Kiwi for Buildkite](https://kiwiflow.io/integrations/buildkite.md): Report check results from Buildkite to a run's Verify step with a checker key.
- [Kiwi for CircleCI](https://kiwiflow.io/integrations/circleci.md): Report check results from CircleCI to a run's Verify step with a checker key.
- [Kiwi for Codemagic](https://kiwiflow.io/integrations/codemagic.md): Report check results from Codemagic to a run's Verify step with a checker key.
- [Kiwi for GitHub Actions](https://kiwiflow.io/integrations/github-actions.md): Report check results from GitHub Actions to a run's Verify step with a checker key.
- [Kiwi for GitLab CI/CD](https://kiwiflow.io/integrations/gitlab-ci.md): Report check results from GitLab CI/CD to a run's Verify step with a checker key.
- [Kiwi for Google Cloud Build](https://kiwiflow.io/integrations/google-cloud-build.md): Report check results from Google Cloud Build to a run's Verify step with a checker key.
- [Kiwi for Jenkins](https://kiwiflow.io/integrations/jenkins.md): Report check results from Jenkins to a run's Verify step with a checker key.
- [Kiwi for Travis CI](https://kiwiflow.io/integrations/travis-ci.md): Report check results from Travis CI to a run's Verify step with a checker key.

- [Get started](https://kiwiflow.io/get-started)
- [Read the setup guide](https://docs.kiwiflow.io/ci-reporting)
