Skip to main content
What you’ll learn
  • How to generate and configure API keys
  • How to rotate and revoke keys securely
  • How to store keys as CI secrets
Every TestDino integration — test streaming, Public API calls, MCP, Azure DevOps — authenticates with a scoped credential. This guide shows how to create, rotate, and securely store the API Key for test reporting and the Personal Access Token (PAT) for Public API and MCP access. The API key is the first step of setup. Create it here, then integrate TestDino with the Node.js CLI to stream results from your machine, or wire it into CI to stream on every run. For first-time setup, create an API Key (test reporting) — the Personal Access Token is only for the Public API and MCP.

Create a Key

Create Project Access Token modal showing Token Name, Scopes (azureext, public-api), and Expiration in days fields TestDino issues two credential types. Pick the one that matches what you’re doing: The API Key lives on the project. Open the project first, then go to Project Settings → API Keys tab → Keys & Tokens section. The PAT is a user credential you create from User Settings → Personal Access Tokens. Each credential is shown only once at creation.
Project vs User settingsThe API Key belongs to a single project (Project Settings). The PAT belongs to you as a user (User Settings) and can reach any project you have access to. If you don’t see the API Keys tab, you’re likely in Org Settings — navigate into a project first.

Token prefixes

Every credential carries a prefix that identifies its type. Check the prefix to confirm you are using the right token for the surface. Public API and MCP requests use a td_pat_ PAT in the header: Authorization: Bearer td_pat_.... Create it from User Settings → Personal Access Tokens with the public-api scope. The td_api_ Project API Key is used for streaming test results and the Azure DevOps Extension.

API Key (test reporting)

Use this to stream Playwright test results to TestDino. It has the td_api_ prefix.
  1. Open your project in TestDino
  2. Go to Project Settings → API Keys tab
  3. In the Keys & Tokens section, click + New → API Key
  4. Enter a Key Name and Expiration (1 to 365 days)
  5. Click Create API Key
Create API Key modal showing Key Name and Expiration in days fields

Personal Access Token (Public API & MCP)

Use this for the Public API and the MCP integration. It is a user credential that reaches any project you have access to.
  1. Sign in to TestDino, open your profile, then User Settings
  2. Go to Personal Access Tokens and click Generate new token
  3. Enter a Token Name and select the public-api scope
  4. Grant access to the projects you need, set an Expiration, and create it
The td_pat_ token is shown once, so copy it right away. Store it in a password manager or your CI secrets.

Access Token (Azure DevOps Extension)

TestDino Keys & Tokens page with the New dropdown expanded showing API Key and Access Token options Use this for the Azure DevOps Extension. It is a project-scoped td_api_ token (the same key type used for streaming), created with the azureext scope.
  1. Open your project in TestDino
  2. Go to Project Settings → API Keys tab
  3. In the Keys & Tokens section, click + New → Access Token
  4. Enter a Token Name, select the azureext scope, set Expiration (days), and click Create Token
The credential is copied to your clipboard and shown once. Keys & Tokens table listing API Key and Access Token rows with Name, Type, Status, Scopes, Created At, and Expires At columns

Use your API key

@testdino/playwright reads the key from the TESTDINO_TOKEN environment variable. Set it, then run your tests. Results stream to TestDino during the run:
The key is referenced once in your Playwright config, so every run picks it up:
playwright.config.ts
In CI workflows, store the key as a secret and expose it to the test step:

Set up CI/CD secrets

Never hardcode API keys in your workflow files. Store them as secrets and reference them at runtime.
  1. Go to your repository → Settings → Secrets and variables → Actions
  2. Click New repository secret
  3. Name it TESTDINO_TOKEN
  4. Paste your API key
  5. Click Add secret

Rotate a key

When a key expires or you suspect it’s been exposed:
  1. Generate a new key in Project Settings → API Keys tab
  2. Update your CI secrets with the new key
  3. Run one upload to confirm the new key works
  4. Revoke or delete the old key
TipDon’t delete the old key until you’ve confirmed the new one works. This avoids downtime if something goes wrong during the switch.

Security Practices

  • Use short expiration periods for CI keys
  • Create separate keys for different pipelines or environments
  • Rotate keys if you suspect exposure
  • Never commit keys to version control

Key Limits

Next steps

With a key in hand, integrate TestDino to stream results from your machine, or set up CI to stream on every run.

Node.js CLI

Install @testdino/playwright and stream your first run

CI Setup

Stream results in GitHub, GitLab, Azure DevOps, and more

Public API

Use an Access Token to query test data over the API

Project Settings

All project configuration