curl --request PATCH \
--url https://app.launchdarkly.com/api/v2/applications/{applicationKey} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
[
{
"op": "replace",
"path": "/description",
"value": "Updated description"
}
]
'import requests
url = "https://app.launchdarkly.com/api/v2/applications/{applicationKey}"
payload = [
{
"op": "replace",
"path": "/description",
"value": "Updated description"
}
]
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify([{op: 'replace', path: '/description', value: 'Updated description'}])
};
fetch('https://app.launchdarkly.com/api/v2/applications/{applicationKey}', 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://app.launchdarkly.com/api/v2/applications/{applicationKey}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
[
'op' => 'replace',
'path' => '/description',
'value' => 'Updated description'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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://app.launchdarkly.com/api/v2/applications/{applicationKey}"
payload := strings.NewReader("[\n {\n \"op\": \"replace\",\n \"path\": \"/description\",\n \"value\": \"Updated description\"\n }\n]")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.patch("https://app.launchdarkly.com/api/v2/applications/{applicationKey}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("[\n {\n \"op\": \"replace\",\n \"path\": \"/description\",\n \"value\": \"Updated description\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/applications/{applicationKey}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"op\": \"replace\",\n \"path\": \"/description\",\n \"value\": \"Updated description\"\n }\n]"
response = http.request(request)
puts response.read_body{
"autoAdded": true,
"key": "com.launchdarkly.cafe",
"kind": "mobile",
"name": "LaunchDarklyCafe",
"flags": {
"items": [
{
"name": "Example flag",
"key": "flag-key-123abc",
"_links": {},
"_site": {
"href": "<string>",
"type": "<string>"
}
}
],
"totalCount": 1,
"_links": {}
},
"_access": {
"denied": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
],
"allowed": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
]
},
"_links": {},
"_version": 123,
"creationDate": "1654104600000",
"description": "The LaunchDarkly Cafe app",
"_maintainer": {
"member": {
"_links": {
"self": {
"href": "/api/v2/members/569f183514f4432160000007",
"type": "application/json"
}
},
"_id": "569f183514f4432160000007",
"role": "admin",
"email": "ariel@acme.com",
"firstName": "Ariel",
"lastName": "Flores"
},
"team": {
"customRoleKeys": [
"access-to-test-projects"
],
"key": "team-key-123abc",
"name": "QA Team",
"_links": {}
}
}
}{
"code": "invalid_request",
"message": "Invalid request body"
}{
"code": "unauthorized",
"message": "Invalid access token"
}{
"code": "forbidden",
"message": "Forbidden. Access to the requested resource was denied."
}{
"code": "not_found",
"message": "Invalid resource identifier"
}{
"code": "rate_limited",
"message": "You've exceeded the API rate limit. Try again later."
}Update application
Update an application. You can update the description and kind fields. Requires a JSON patch representation of the desired changes to the application. To learn more, read Updates.
curl --request PATCH \
--url https://app.launchdarkly.com/api/v2/applications/{applicationKey} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
[
{
"op": "replace",
"path": "/description",
"value": "Updated description"
}
]
'import requests
url = "https://app.launchdarkly.com/api/v2/applications/{applicationKey}"
payload = [
{
"op": "replace",
"path": "/description",
"value": "Updated description"
}
]
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify([{op: 'replace', path: '/description', value: 'Updated description'}])
};
fetch('https://app.launchdarkly.com/api/v2/applications/{applicationKey}', 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://app.launchdarkly.com/api/v2/applications/{applicationKey}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
[
'op' => 'replace',
'path' => '/description',
'value' => 'Updated description'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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://app.launchdarkly.com/api/v2/applications/{applicationKey}"
payload := strings.NewReader("[\n {\n \"op\": \"replace\",\n \"path\": \"/description\",\n \"value\": \"Updated description\"\n }\n]")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.patch("https://app.launchdarkly.com/api/v2/applications/{applicationKey}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("[\n {\n \"op\": \"replace\",\n \"path\": \"/description\",\n \"value\": \"Updated description\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://app.launchdarkly.com/api/v2/applications/{applicationKey}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"op\": \"replace\",\n \"path\": \"/description\",\n \"value\": \"Updated description\"\n }\n]"
response = http.request(request)
puts response.read_body{
"autoAdded": true,
"key": "com.launchdarkly.cafe",
"kind": "mobile",
"name": "LaunchDarklyCafe",
"flags": {
"items": [
{
"name": "Example flag",
"key": "flag-key-123abc",
"_links": {},
"_site": {
"href": "<string>",
"type": "<string>"
}
}
],
"totalCount": 1,
"_links": {}
},
"_access": {
"denied": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
],
"allowed": [
{
"action": "<string>",
"reason": {
"effect": "allow",
"resources": [
"proj/*:env/*;qa_*:/flag/*"
],
"notResources": [
"<string>"
],
"actions": [
"*"
],
"notActions": [
"<string>"
],
"role_name": "<string>"
}
}
]
},
"_links": {},
"_version": 123,
"creationDate": "1654104600000",
"description": "The LaunchDarkly Cafe app",
"_maintainer": {
"member": {
"_links": {
"self": {
"href": "/api/v2/members/569f183514f4432160000007",
"type": "application/json"
}
},
"_id": "569f183514f4432160000007",
"role": "admin",
"email": "ariel@acme.com",
"firstName": "Ariel",
"lastName": "Flores"
},
"team": {
"customRoleKeys": [
"access-to-test-projects"
],
"key": "team-key-123abc",
"name": "QA Team",
"_links": {}
}
}
}{
"code": "invalid_request",
"message": "Invalid request body"
}{
"code": "unauthorized",
"message": "Invalid access token"
}{
"code": "forbidden",
"message": "Forbidden. Access to the requested resource was denied."
}{
"code": "not_found",
"message": "Invalid resource identifier"
}{
"code": "rate_limited",
"message": "You've exceeded the API rate limit. Try again later."
}Authorizations
Path Parameters
The application key
Body
Response
Application response
Whether the application was automatically created because it was included in a context when a LaunchDarkly SDK evaluated a feature flag, or was created through the LaunchDarkly UI or REST API.
true
The unique identifier of this application
"com.launchdarkly.cafe"
To distinguish the kind of application
browser, mobile, server "mobile"
The name of the application
"LaunchDarklyCafe"
Details about the flags that have been evaluated by the application
Show child attributes
Show child attributes
Details on the allowed and denied actions for this application
Show child attributes
Show child attributes
The location and content type of related resources
Show child attributes
Show child attributes
Version of the application
Timestamp of when the application version was created
"1654104600000"
The application description
"The LaunchDarkly Cafe app"
Associated maintainer member or team info for the application
Show child attributes
Show child attributes