---
title: Approve Pipeline Trigger Phase
description: Approve Pipeline Trigger Phase
product: general
token_estimate: 1394
---
# Approve Pipeline Trigger Phase

> For AI agents: a documentation index is available at [/llms.txt](/llms.txt). Append `.md` to any page URL for markdown, or send `Accept: text/markdown`.

## Approve Pipeline Trigger Phase

**PUT** `/console/v1/release_pipeline_triggers/{id}/approve`

Full URL: `https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve`

Approve Pipeline Trigger Phase

## Authorizations

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| STATSIG-API-KEY | string | Yes | — | apiKey (header) |

## Path parameters

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| id (path) | string | Yes | — | — |

## Body (application/json)

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| phaseID | string | Yes | — | Phase ID to ensure the correct state of the pipeline is updated |

## Response (application/json)

**200** — Approved pipeline trigger phase successfully

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| message | string | Yes | — | A simple string explaining the result of the operation. |
| data | object | Yes | — | — |
| data.id | string | Yes | — | Trigger ID |
| data.releasePipelineID | string | Yes | — | Release Pipeline ID |
| data.actions | object[] | Yes | — | Actions |
| data.actions.type | oneOf | Yes | — | Constraints: string, string |
| data.actions.timeMs | number | Yes | — | — |
| data.actions.phaseID | string | Yes | — | — |
| data.actions.actorID | string | No | — | — |
| data.actions.actorName | string | Yes | — | — |
| data.creatorID | string | Yes | — | Trigger Creator ID |
| data.createdTime | number | Yes | — | Trigger Creation Time Constraints: format: double |
| data.description | string | No | — | Optional description for this trigger |
| data.gateID | string | No | — | Gate ID |
| data.dynamicConfigID | string | No | — | Dynamic Config ID |
| data.lastModifierID | string | Yes | — | Last modifier ID |
| data.lastModifierName | string | Yes | — | Last modifier name |
| data.configSnapshotID | string | No | — | The snapshot of the config that this trigger is releasing |
| data.status | string | Yes | — | Pipeline status with this trigger |
| data.currentPhase | string | Yes | — | Current phase Constraints: nullable |
| data.currentPhaseID | string | Yes | — | Current phase ID Constraints: nullable |
| data.currentPhaseEndTime | number | Yes | — | Current phase end time Constraints: format: double, nullable |

```json
{
  "message": "string",
  "data": {
    "id": "string",
    "releasePipelineID": "string",
    "actions": [
      {
        "type": {},
        "timeMs": 0,
        "phaseID": "string",
        "actorID": "string",
        "actorName": "string"
      }
    ],
    "creatorID": "string",
    "createdTime": 0,
    "description": "string",
    "gateID": "string",
    "dynamicConfigID": "string",
    "lastModifierID": "string",
    "lastModifierName": "string",
    "configSnapshotID": "string",
    "status": "string",
    "currentPhase": "string",
    "currentPhaseID": "string",
    "currentPhaseEndTime": 0
  }
}
```

## Code samples

### cURL

```bash
curl -X PUT "https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve" \
  -H "Content-Type: application/json" \
  -H "STATSIG-API-KEY: YOUR_API_KEY"
```

### Python

```python
import requests

response = requests.put(
    "https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve",
    headers={
        "Content-Type": "application/json",
        "STATSIG-API-KEY": "YOUR_API_KEY"
    }
)
data = response.json()
```

### JavaScript

```javascript
const response = await fetch("https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve", {
  method: "PUT",
  headers: {
    "Content-Type": "application/json",
    "STATSIG-API-KEY": "YOUR_API_KEY"
  }
});
const data = await response.json();
```

### PHP

```php
<?php
$ch = curl_init("https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Content-Type: application/json",
    "STATSIG-API-KEY: YOUR_API_KEY"
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
```

### Go

```go
package main

import (
  "bytes"
  "net/http"
)

func main() {
req, _ := http.NewRequest("PUT", "https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve", nil)
req.Header.Set("Content-Type", "application/json")
req.Header.Set("STATSIG-API-KEY", "YOUR_API_KEY")
  client := &http.Client{}
  resp, _ := client.Do(req)
  defer resp.Body.Close()
}
```

### Java

```java
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
      .uri(URI.create("https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve"))
      .method("PUT", HttpRequest.BodyPublishers.noBody())
.header("Content-Type", "application/json")
      .header("STATSIG-API-KEY", "YOUR_API_KEY")
      .build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
```

### Ruby

```ruby
require "net/http"
require "json"

uri = URI("https://statsigapi.net/console/v1/release_pipeline_triggers/{id}/approve")
request = Net::HTTP::Put.new(uri)
request["Content-Type"] = "application/json"
request["STATSIG-API-KEY"] = "YOUR_API_KEY"
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http|
  http.request(request)
end
```

