---
title: "Update application tech flags"
method: PUT
path: "/api/v1/app/{appId}/policy/flags"
tags: ["Scan Policies"]
---

# Update application tech flags

`PUT /api/v1/app/{appId}/policy/flags`

## Update Tech Flags
Updates the technology flags for this application.

Adjusting these tech flags alters the behavior of plugins by either conditionally executing or operating differently based on the enabled flags. Optimizing tech flags by excluding unused technologies can speed up scans and reduce false positives.

**Additional Information:**
- The `techFlags` map provided must contain keys that exactly match the accepted technology flags. Use the [Get application tech flags](ref:getapptechflags) endpoint to read the current configuration for an application.
- The default value for all flags is `true`. Setting a flag to `false` will disable or alter the behavior of related plugins.

**Accepted Technology Flags:**

| Technology Flags        |
|-------------------------|
| Db                      |
| Db.MySQL                |
| Db.PostgreSQL           |
| Db.Microsoft SQL Server |
| Db.Oracle               |
| Db.SQLite               |
| Db.Microsoft Access     |
| Db.Firebird             |
| Db.SAP MaxDB            |
| Db.Sybase               |
| Db.IBM DB2              |
| Db.HypersonicSQL        |
| Db.MongoDB              |
| Db.CouchDB              |
| Language                |
| Language.ASP            |
| Language.C              |
| Language.Java           |
| Language.Java.Spring    |
| Language.JavaScript     |
| Language.JSP/Servlet    |
| Language.PHP            |
| Language.Python         |
| Language.Ruby           |
| Language.XML            |
| OS                      |
| OS.Linux                |
| OS.MacOS                |
| OS.Windows              |
| SCM                     |
| SCM.Git                 |
| SCM.SVN                 |
| WS                      |
| WS.Apache               |
| WS.IIS                  |

> 🧾 Audited
> This is recorded as `TECH_FLAG_MODIFIED` [User Activity](https://apidocs.stackhawk.com/reference/listauditactivity#user-activity-types).


> Requires `write:application` permission.

## Path parameters

- `appId` string, uuid, required

## Request body

- object

## Response `200`

OK

- ApplicationUpdateApplicationScanPolicyResponse
  - `scanPolicy` ScanpolicyScanPolicy — The ScanPolicy defines the vulnerability checks aka 'plugins' and technology flags that configure HawkScan runs. Scan policies are applied as configuration to HawkScan, and are either predefined _StackHawk Policies_ identified by `name` or customized by _Application Policies_ per `applicationId`. Plugins in the scan define the vulnerability checks that run in HawkScan tests. Tech flags further toggle the behavior of vulnerability checks relative to applicable technologies.
    - `applicationId` string — The UUID identifier of the scan policy application. If no application ID is present, the scan policy is defined by StackHawk. If the application ID is present, then the scan policy is customized for the given application only.
    - `description` string — The description for this policy.
    - `displayName` string — The human readable display name for this policy.
    - `id` string — The UUID identifier of this scan policy.
    - `isCustomized` boolean — Indicates whether the plugins have been updated from original scan policy.
    - `name` string — The referencable unique name of a StackHawk scan policy.
    - `plugins` ScanpolicyPlugin[] — List of the plugins defined for this policy.
      - `defaultRisk` 'UNKNOWN' | 'INFO' | 'LOW' | 'MEDIUM' | 'HIGH' — Default risk for this plugin. Currently unused.
      - `enabled` boolean — Enables the plugin. Plugins will only run in a scan when marked as enabled.
      - `name` string — The Plugin name.
      - `pluginId` string — The UUID identifier of this plugin.
      - `pluginType` 'ACTIVE' | 'PASSIVE' — The type of plugin to run as. Either ACTIVE or PASSIVE.
      - `status` 'ADDON_STATUS_ALPHA' | 'ADDON_STATUS_BETA' | 'ADDON_STATUS_RELEASE' — The release quality of this plugin.
      - `strength` 'STRENGTH_LOW' | 'STRENGTH_MEDIUM' | 'STRENGTH_HIGH' | 'STRENGTH_INSANE' | 'STRENGTH_OFF' — The strength of this plugin. Currently unused.
      - `threshold` 'THRESHOLD_LOW' | 'THRESHOLD_MEDIUM' | 'THRESHOLD_HIGH' | 'THRESHOLD_OFF' — The threshold of this plugin. Currently unused.
    - `techFlags` object — Technology flags for this policy. This is a collection of specific technology identifiers that further configure scan behavior.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized

---

[API](https://skmtc.net/stackhawk/apis/stackhawk-public-api.md) · [All operations](https://skmtc.net/stackhawk/apis/stackhawk-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/stackhawk/stackhawk-public-api/revisions/ad3dfd54cb63/schema)
