Create an incident update
curl --request POST \
--url https://api.phare.io/uptime/incidents/{incidentId}/updates \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content": "We are investigating the issue.",
"published_at": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.phare.io/uptime/incidents/{incidentId}/updates"
payload = {
"content": "We are investigating the issue.",
"published_at": "2023-11-07T05:31:56Z"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
content: 'We are investigating the issue.',
published_at: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.phare.io/uptime/incidents/{incidentId}/updates', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.phare.io/uptime/incidents/{incidentId}/updates",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'content' => 'We are investigating the issue.',
'published_at' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.phare.io/uptime/incidents/{incidentId}/updates"
payload := strings.NewReader("{\n \"content\": \"We are investigating the issue.\",\n \"published_at\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.phare.io/uptime/incidents/{incidentId}/updates")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content\": \"We are investigating the issue.\",\n \"published_at\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.phare.io/uptime/incidents/{incidentId}/updates")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"content\": \"We are investigating the issue.\",\n \"published_at\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"state": "unknown",
"content": "We are investigating the issue.",
"id": 1,
"published_at": "2023-11-07T05:31:56Z",
"creator": {
"id": 1,
"type": "user",
"label": "nicolas@phare.io"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"message": "Unauthorized"
}{
"message": "The platform:write permission is required to perform this action."
}{
"message": "<string>",
"errors": {
"key": [
"The key field is required"
]
}
}Incident Updates
Create an incident update
Create an incident update
POST
/
uptime
/
incidents
/
{incidentId}
/
updates
Create an incident update
curl --request POST \
--url https://api.phare.io/uptime/incidents/{incidentId}/updates \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content": "We are investigating the issue.",
"published_at": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.phare.io/uptime/incidents/{incidentId}/updates"
payload = {
"content": "We are investigating the issue.",
"published_at": "2023-11-07T05:31:56Z"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
content: 'We are investigating the issue.',
published_at: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.phare.io/uptime/incidents/{incidentId}/updates', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.phare.io/uptime/incidents/{incidentId}/updates",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'content' => 'We are investigating the issue.',
'published_at' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.phare.io/uptime/incidents/{incidentId}/updates"
payload := strings.NewReader("{\n \"content\": \"We are investigating the issue.\",\n \"published_at\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.phare.io/uptime/incidents/{incidentId}/updates")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content\": \"We are investigating the issue.\",\n \"published_at\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.phare.io/uptime/incidents/{incidentId}/updates")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"content\": \"We are investigating the issue.\",\n \"published_at\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"state": "unknown",
"content": "We are investigating the issue.",
"id": 1,
"published_at": "2023-11-07T05:31:56Z",
"creator": {
"id": 1,
"type": "user",
"label": "nicolas@phare.io"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z"
}{
"message": "Unauthorized"
}{
"message": "The platform:write permission is required to perform this action."
}{
"message": "<string>",
"errors": {
"key": [
"The key field is required"
]
}
}Authorizations
Use a user token to access authenticated routes. The token must be specified in the Authorization HTTP header with the following format 'Authorization: Bearer '.
Headers
A project header is required when using an organization-scoped API key.
Example:
1
A project header is required when using an organization-scoped API key.
Example:
"luminous-guiding-tower"
Path Parameters
ID of the incident
Body
application/json
Incident update request
Response
Success, incident update created
Available options:
unknown, investigating, identified, monitoring, resolved Content of the incident update
Example:
"We are investigating the issue."
Incident update ID
Example:
1
Date of publication of the incident update
Creator of the incident update
Show child attributes
Show child attributes
Date of creation for the entity
Date of last update for the entity
Last modified on February 22, 2026
Was this page helpful?