cURL
curl -X PATCH "$EXSITED_BASE_URL/api/v4/custom_feature/cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"component": {
"display_name": "Service contract (updated)",
"description": "Support contracts held by Acme Pty Ltd"
}
}'from exsited import build_client
client = build_client()
response = client.custom_features.update_custom_feature_by_id(
"cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d",
{
"component": {
"display_name": "Service contract (updated)",
"description": "Support contracts held by Acme Pty Ltd",
}
},
)
print(response.data)
import {buildClient} from 'exsited';
const client = await buildClient();
const response = await client.customFeatures.updateCustomFeatureById('cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d', {
component: {display_name: 'Service contract (updated)', description: 'Support contracts held by Acme Pty Ltd'},
});
console.log(response.data);
use Exsited\Client\ClientRegistry;
$client = ClientRegistry::buildClient();
$response = $client->customFeatures->updateCustomFeatureById(
'cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d',
[
'component' => [
'display_name' => 'Service contract (updated)',
'description' => 'Support contracts held by Acme Pty Ltd',
],
],
);
print_r($response->data);
import com.exsited.client.ApiResponse;
import com.exsited.client.ClientRegistry;
import com.exsited.client.ExsitedClient;
import com.exsited.resources.custom_features.custom_features_dto.CustomFeaturesDto.CustomFeature;
import java.util.Map;
ExsitedClient client = ClientRegistry.buildClient();
ApiResponse<CustomFeature> response = client.customFeatures().updateCustomFeatureById(
"cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d",
Map.of(
"component", Map.of(
"display_name", "Service contract (updated)",
"description", "Support contracts held by Acme Pty Ltd")));
System.out.println(response.getMap());
using Exsited.Client;
await using var client = ExsitedClient.BuildClient();
var response = await client.CustomFeatures.UpdateCustomFeatureByIdAsync(
"cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d",
new Dictionary<string, object?>
{
["component"] = new Dictionary<string, object?>
{
["display_name"] = "Service contract (updated)",
["description"] = "Support contracts held by Acme Pty Ltd",
},
});
Console.WriteLine(response.Json);
import 'package:exsited/exsited.dart';
final client = buildClient();
final response = await client.customFeatures.updateCustomFeatureById(
'cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d',
{
'component': {
'display_name': 'Service contract (updated)',
'description': 'Support contracts held by Acme Pty Ltd',
},
},
);
print(response.map);
import (
"context"
"fmt"
"log"
exsited "github.com/exsited/exsited-sdk-go/v4"
)
client, err := exsited.BuildClient(nil)
if err != nil {
log.Fatal(err)
}
defer client.Close()
response, err := client.CustomFeatures().UpdateCustomFeatureByID(context.Background(), "cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d", map[string]any{
"component": map[string]any{
"display_name": "Service contract (updated)",
"description": "Support contracts held by Acme Pty Ltd",
},
}, nil)
if err != nil {
log.Fatal(err)
}
fmt.Println(response.Map)
{
"custom_feature": {
"object": "<string>",
"id": "<string>",
"status": "<string>",
"name": "<string>",
"display_name": "<string>",
"description": "<string>",
"use_in": "<string>",
"relation": "<string>",
"custom_component": "<unknown>",
"custom_objects": [
{}
],
"custom_forms": [
{
"configuration": {
"settings": {
"custom_form": "<string>",
"form_layout": "<string>"
},
"column_1": {
"attributes": [
{
"data_type": "<string>",
"display_name": "<string>",
"name": "<string>",
"show_in_list_view": true,
"type": "<string>"
}
]
},
"column_2": {
"attributes": [
{
"name": "<string>",
"type": "<string>"
}
]
}
}
}
],
"child_custom_components": [
{}
],
"activity_logs": [
{}
],
"created_on": "<string>",
"last_updated_on": "<string>",
"created_by": "<unknown>",
"last_updated_by": "<unknown>",
"version": 123,
"href": "<string>"
},
"message": "<string>"
}Custom features
Update a custom feature
Changes a custom feature’s fields and returns the updated feature.
PATCH
/
custom_feature
/
{custom_feature_id}
cURL
curl -X PATCH "$EXSITED_BASE_URL/api/v4/custom_feature/cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"component": {
"display_name": "Service contract (updated)",
"description": "Support contracts held by Acme Pty Ltd"
}
}'from exsited import build_client
client = build_client()
response = client.custom_features.update_custom_feature_by_id(
"cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d",
{
"component": {
"display_name": "Service contract (updated)",
"description": "Support contracts held by Acme Pty Ltd",
}
},
)
print(response.data)
import {buildClient} from 'exsited';
const client = await buildClient();
const response = await client.customFeatures.updateCustomFeatureById('cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d', {
component: {display_name: 'Service contract (updated)', description: 'Support contracts held by Acme Pty Ltd'},
});
console.log(response.data);
use Exsited\Client\ClientRegistry;
$client = ClientRegistry::buildClient();
$response = $client->customFeatures->updateCustomFeatureById(
'cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d',
[
'component' => [
'display_name' => 'Service contract (updated)',
'description' => 'Support contracts held by Acme Pty Ltd',
],
],
);
print_r($response->data);
import com.exsited.client.ApiResponse;
import com.exsited.client.ClientRegistry;
import com.exsited.client.ExsitedClient;
import com.exsited.resources.custom_features.custom_features_dto.CustomFeaturesDto.CustomFeature;
import java.util.Map;
ExsitedClient client = ClientRegistry.buildClient();
ApiResponse<CustomFeature> response = client.customFeatures().updateCustomFeatureById(
"cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d",
Map.of(
"component", Map.of(
"display_name", "Service contract (updated)",
"description", "Support contracts held by Acme Pty Ltd")));
System.out.println(response.getMap());
using Exsited.Client;
await using var client = ExsitedClient.BuildClient();
var response = await client.CustomFeatures.UpdateCustomFeatureByIdAsync(
"cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d",
new Dictionary<string, object?>
{
["component"] = new Dictionary<string, object?>
{
["display_name"] = "Service contract (updated)",
["description"] = "Support contracts held by Acme Pty Ltd",
},
});
Console.WriteLine(response.Json);
import 'package:exsited/exsited.dart';
final client = buildClient();
final response = await client.customFeatures.updateCustomFeatureById(
'cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d',
{
'component': {
'display_name': 'Service contract (updated)',
'description': 'Support contracts held by Acme Pty Ltd',
},
},
);
print(response.map);
import (
"context"
"fmt"
"log"
exsited "github.com/exsited/exsited-sdk-go/v4"
)
client, err := exsited.BuildClient(nil)
if err != nil {
log.Fatal(err)
}
defer client.Close()
response, err := client.CustomFeatures().UpdateCustomFeatureByID(context.Background(), "cmp_4b7d2e9a1c3f4e8a9b6d5c2e1f0a3b7d", map[string]any{
"component": map[string]any{
"display_name": "Service contract (updated)",
"description": "Support contracts held by Acme Pty Ltd",
},
}, nil)
if err != nil {
log.Fatal(err)
}
fmt.Println(response.Map)
{
"custom_feature": {
"object": "<string>",
"id": "<string>",
"status": "<string>",
"name": "<string>",
"display_name": "<string>",
"description": "<string>",
"use_in": "<string>",
"relation": "<string>",
"custom_component": "<unknown>",
"custom_objects": [
{}
],
"custom_forms": [
{
"configuration": {
"settings": {
"custom_form": "<string>",
"form_layout": "<string>"
},
"column_1": {
"attributes": [
{
"data_type": "<string>",
"display_name": "<string>",
"name": "<string>",
"show_in_list_view": true,
"type": "<string>"
}
]
},
"column_2": {
"attributes": [
{
"name": "<string>",
"type": "<string>"
}
]
}
}
}
],
"child_custom_components": [
{}
],
"activity_logs": [
{}
],
"created_on": "<string>",
"last_updated_on": "<string>",
"created_by": "<unknown>",
"last_updated_by": "<unknown>",
"version": 123,
"href": "<string>"
},
"message": "<string>"
}Send the fields to change under
component, such as display_name and description. The updated feature comes back under custom_feature.
The SDK samples get their client from credentials your app registers once when it starts, as shown in Authentication. To try the call here, click Try it, set
host to your Exsited API host name and paste an access token from Get an access token. To send a raw JSON body instead of filling in fields, copy the cURL sample and edit its -d payload.Authorizations
An access token from POST /api/v4/oauth2/token. The SDKs get and renew it for you.
Path Parameters
The custom feature's id, which starts with cmp_.
Body
application/json
Show child attributes
Show child attributes