curl --request POST \
--url 'https://api.flashcat.cloud/rum/application/create?app_key=' \
--header 'Content-Type: application/json' \
--data '
{
"application_name": "My Web App",
"is_private": false,
"links": {
"enabled": true,
"systems": [
{
"enabled": true,
"event_types": [
"crash",
"error"
],
"icon_color": "#0F766E",
"icon_text": "S3",
"id": "s3-crash-logs",
"name": "S3 Crash Logs",
"url": "https://s3.example.com/logs?app=${application_id}&trace=${trace_id}"
}
]
},
"team_id": 2477033058131,
"type": "browser"
}
'import requests
url = "https://api.flashcat.cloud/rum/application/create?app_key="
payload = {
"application_name": "My Web App",
"is_private": False,
"links": {
"enabled": True,
"systems": [
{
"enabled": True,
"event_types": ["crash", "error"],
"icon_color": "#0F766E",
"icon_text": "S3",
"id": "s3-crash-logs",
"name": "S3 Crash Logs",
"url": "https://s3.example.com/logs?app=${application_id}&trace=${trace_id}"
}
]
},
"team_id": 2477033058131,
"type": "browser"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
application_name: 'My Web App',
is_private: false,
links: {
enabled: true,
systems: [
{
enabled: true,
event_types: ['crash', 'error'],
icon_color: '#0F766E',
icon_text: 'S3',
id: 's3-crash-logs',
name: 'S3 Crash Logs',
url: 'https://s3.example.com/logs?app=${application_id}&trace=${trace_id}'
}
]
},
team_id: 2477033058131,
type: 'browser'
})
};
fetch('https://api.flashcat.cloud/rum/application/create?app_key=', 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.flashcat.cloud/rum/application/create?app_key=",
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([
'application_name' => 'My Web App',
'is_private' => false,
'links' => [
'enabled' => true,
'systems' => [
[
'enabled' => true,
'event_types' => [
'crash',
'error'
],
'icon_color' => '#0F766E',
'icon_text' => 'S3',
'id' => 's3-crash-logs',
'name' => 'S3 Crash Logs',
'url' => 'https://s3.example.com/logs?app=${application_id}&trace=${trace_id}'
]
]
],
'team_id' => 2477033058131,
'type' => 'browser'
]),
CURLOPT_HTTPHEADER => [
"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.flashcat.cloud/rum/application/create?app_key="
payload := strings.NewReader("{\n \"application_name\": \"My Web App\",\n \"is_private\": false,\n \"links\": {\n \"enabled\": true,\n \"systems\": [\n {\n \"enabled\": true,\n \"event_types\": [\n \"crash\",\n \"error\"\n ],\n \"icon_color\": \"#0F766E\",\n \"icon_text\": \"S3\",\n \"id\": \"s3-crash-logs\",\n \"name\": \"S3 Crash Logs\",\n \"url\": \"https://s3.example.com/logs?app=${application_id}&trace=${trace_id}\"\n }\n ]\n },\n \"team_id\": 2477033058131,\n \"type\": \"browser\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.flashcat.cloud/rum/application/create?app_key=")
.header("Content-Type", "application/json")
.body("{\n \"application_name\": \"My Web App\",\n \"is_private\": false,\n \"links\": {\n \"enabled\": true,\n \"systems\": [\n {\n \"enabled\": true,\n \"event_types\": [\n \"crash\",\n \"error\"\n ],\n \"icon_color\": \"#0F766E\",\n \"icon_text\": \"S3\",\n \"id\": \"s3-crash-logs\",\n \"name\": \"S3 Crash Logs\",\n \"url\": \"https://s3.example.com/logs?app=${application_id}&trace=${trace_id}\"\n }\n ]\n },\n \"team_id\": 2477033058131,\n \"type\": \"browser\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.flashcat.cloud/rum/application/create?app_key=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"application_name\": \"My Web App\",\n \"is_private\": false,\n \"links\": {\n \"enabled\": true,\n \"systems\": [\n {\n \"enabled\": true,\n \"event_types\": [\n \"crash\",\n \"error\"\n ],\n \"icon_color\": \"#0F766E\",\n \"icon_text\": \"S3\",\n \"id\": \"s3-crash-logs\",\n \"name\": \"S3 Crash Logs\",\n \"url\": \"https://s3.example.com/logs?app=${application_id}&trace=${trace_id}\"\n }\n ]\n },\n \"team_id\": 2477033058131,\n \"type\": \"browser\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"application_id": "qLpu24Dz4CAzWsESPbJYWA",
"application_name": "My Web App",
"client_token": "e090078724855a4ca168c3884880dfbc131"
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "InvalidParameter",
"message": "The specified parameter is not valid."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "Unauthorized",
"message": "You are unauthorized."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "RequestTooFrequently",
"message": "Request too frequently."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "InternalError",
"message": "We encountered an internal error, and it has been reported. Please try again later."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}Create application
Create a new RUM application. Returns the generated application_id and client_token.
curl --request POST \
--url 'https://api.flashcat.cloud/rum/application/create?app_key=' \
--header 'Content-Type: application/json' \
--data '
{
"application_name": "My Web App",
"is_private": false,
"links": {
"enabled": true,
"systems": [
{
"enabled": true,
"event_types": [
"crash",
"error"
],
"icon_color": "#0F766E",
"icon_text": "S3",
"id": "s3-crash-logs",
"name": "S3 Crash Logs",
"url": "https://s3.example.com/logs?app=${application_id}&trace=${trace_id}"
}
]
},
"team_id": 2477033058131,
"type": "browser"
}
'import requests
url = "https://api.flashcat.cloud/rum/application/create?app_key="
payload = {
"application_name": "My Web App",
"is_private": False,
"links": {
"enabled": True,
"systems": [
{
"enabled": True,
"event_types": ["crash", "error"],
"icon_color": "#0F766E",
"icon_text": "S3",
"id": "s3-crash-logs",
"name": "S3 Crash Logs",
"url": "https://s3.example.com/logs?app=${application_id}&trace=${trace_id}"
}
]
},
"team_id": 2477033058131,
"type": "browser"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
application_name: 'My Web App',
is_private: false,
links: {
enabled: true,
systems: [
{
enabled: true,
event_types: ['crash', 'error'],
icon_color: '#0F766E',
icon_text: 'S3',
id: 's3-crash-logs',
name: 'S3 Crash Logs',
url: 'https://s3.example.com/logs?app=${application_id}&trace=${trace_id}'
}
]
},
team_id: 2477033058131,
type: 'browser'
})
};
fetch('https://api.flashcat.cloud/rum/application/create?app_key=', 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.flashcat.cloud/rum/application/create?app_key=",
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([
'application_name' => 'My Web App',
'is_private' => false,
'links' => [
'enabled' => true,
'systems' => [
[
'enabled' => true,
'event_types' => [
'crash',
'error'
],
'icon_color' => '#0F766E',
'icon_text' => 'S3',
'id' => 's3-crash-logs',
'name' => 'S3 Crash Logs',
'url' => 'https://s3.example.com/logs?app=${application_id}&trace=${trace_id}'
]
]
],
'team_id' => 2477033058131,
'type' => 'browser'
]),
CURLOPT_HTTPHEADER => [
"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.flashcat.cloud/rum/application/create?app_key="
payload := strings.NewReader("{\n \"application_name\": \"My Web App\",\n \"is_private\": false,\n \"links\": {\n \"enabled\": true,\n \"systems\": [\n {\n \"enabled\": true,\n \"event_types\": [\n \"crash\",\n \"error\"\n ],\n \"icon_color\": \"#0F766E\",\n \"icon_text\": \"S3\",\n \"id\": \"s3-crash-logs\",\n \"name\": \"S3 Crash Logs\",\n \"url\": \"https://s3.example.com/logs?app=${application_id}&trace=${trace_id}\"\n }\n ]\n },\n \"team_id\": 2477033058131,\n \"type\": \"browser\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.flashcat.cloud/rum/application/create?app_key=")
.header("Content-Type", "application/json")
.body("{\n \"application_name\": \"My Web App\",\n \"is_private\": false,\n \"links\": {\n \"enabled\": true,\n \"systems\": [\n {\n \"enabled\": true,\n \"event_types\": [\n \"crash\",\n \"error\"\n ],\n \"icon_color\": \"#0F766E\",\n \"icon_text\": \"S3\",\n \"id\": \"s3-crash-logs\",\n \"name\": \"S3 Crash Logs\",\n \"url\": \"https://s3.example.com/logs?app=${application_id}&trace=${trace_id}\"\n }\n ]\n },\n \"team_id\": 2477033058131,\n \"type\": \"browser\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.flashcat.cloud/rum/application/create?app_key=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"application_name\": \"My Web App\",\n \"is_private\": false,\n \"links\": {\n \"enabled\": true,\n \"systems\": [\n {\n \"enabled\": true,\n \"event_types\": [\n \"crash\",\n \"error\"\n ],\n \"icon_color\": \"#0F766E\",\n \"icon_text\": \"S3\",\n \"id\": \"s3-crash-logs\",\n \"name\": \"S3 Crash Logs\",\n \"url\": \"https://s3.example.com/logs?app=${application_id}&trace=${trace_id}\"\n }\n ]\n },\n \"team_id\": 2477033058131,\n \"type\": \"browser\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"application_id": "qLpu24Dz4CAzWsESPbJYWA",
"application_name": "My Web App",
"client_token": "e090078724855a4ca168c3884880dfbc131"
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "InvalidParameter",
"message": "The specified parameter is not valid."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "Unauthorized",
"message": "You are unauthorized."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "RequestTooFrequently",
"message": "Request too frequently."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}{
"error": {
"code": "InternalError",
"message": "We encountered an internal error, and it has been reported. Please try again later."
},
"request_id": "01HK8XQE3Z7JM2NTFQ5YJ8P9R4"
}Restrictions
| Aspect | Value |
|---|---|
| Rate limits | 1,000 requests/minute; 50 requests/second per account |
| Permissions | Applications Manage (rum) |
Usage
typemust be one of:browser,ios,android,react-native,flutter,kotlin-multiplatform,roku,unity,miniprogram,harmony,electron.links.systems[].urlmust start withhttporhttps;${var}tokens are resolved from RUM event context.links.systems[].event_typesaccepts:crash,error,view,action,resource,session,all.client_tokenis auto-generated and used to initialize the RUM SDK.- Every call is recorded in the account audit log. Don’t put secrets in request fields.
Authorizations
App key issued from the Flashduty console under Account → APP Keys. Required on every public API call. Keep it secret — it grants the same access as the owning account.
Body
Parameters for creating a RUM application.
Application name. 1–40 characters.
1 - 40Owning team ID. Get team IDs via POST /team/list.
Platform identifier:
| Value | Meaning |
|---|---|
browser | Web browser application (JavaScript SDK) |
ios | Apple iOS application |
android | Android application |
react-native | React Native application |
flutter | Flutter application |
kotlin-multiplatform | Kotlin Multiplatform application |
roku | Roku channel application |
unity | Unity application |
miniprogram | WeChat mini program |
harmony | HarmonyOS application |
electron | Electron desktop application |
browser, ios, android, react-native, flutter, kotlin-multiplatform, roku, unity, miniprogram, harmony, electron Alerting configuration; defaults to disabled (enabled: false) when omitted.
Show child attributes
Show child attributes
Restrict access to team members only.
Optional external-link integration configuration.
Show child attributes
Show child attributes
Do not infer geographic location.
Do not collect IP addresses.
Optional APM tracing integration configuration.
Show child attributes
Show child attributes
Response
Success
Success response envelope. On every 2xx response, request_id identifies the call (also mirrored in the Flashcat-Request-Id header) and data holds the endpoint-specific payload. Failure responses use a different shape — see ErrorResponse.
Was this page helpful?