npm.io
1.1.7 • Published 6d ago

@dynatrace-sdk/client-app-settings-v2

Licence
Apache-2.0
Version
1.1.7
Deps
2
Size
424 kB
Vulns
0
Weekly
0

@dynatrace-sdk/client-app-settings-v2

npm License

Retrieve, update and manage app settings.

Installation

npm install @dynatrace-sdk/client-app-settings-v2

Getting help

License

This SDK is distributed under the Apache License, Version 2.0, see LICENSE for more information.

API reference

Full API reference for the latest version of the SDK is also available at the Dynatrace Developer.

appSettingsObjectsClient

import { appSettingsObjectsClient } from '@dynatrace-sdk/client-app-settings-v2';

deleteAppSettingsAllUsersPermissionByObjectId

appSettingsObjectsClient.deleteAppSettingsAllUsersPermissionByObjectId(config): Promise<void>

Required scope: app-settingswrite

Remove the permissions for an existing all-users accessor on this object, anyone with read/write permissions is allowed to delete permissions

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
void 204 success
Throws
Error Type Error Message
ErrorResponseError No object available for the given objectId or the all-users accessor doesn't have any permissions on this object
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.deleteAppSettingsAllUsersPermissionByObjectId(
    { objectId: "..." },
  );

deleteAppSettingsObjectByObjectId
appSettingsObjectsClient.deleteAppSettingsObjectByObjectId(config): Promise<void>

Deletes the specified settings object

Required scope: app-settingswrite

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.objectId*required string The ID of the required settings object
config.optimisticLockingVersion*required string

The version of the object for optimistic locking. You can use it to detect simultaneous modifications by different users.

It is generated upon retrieval (GET requests). If set on update (PUT request) or deletion, the update/deletion will be allowed only if there wasn't any change between the retrieval and the update.

Returns
Return type Status code Description
void 204 Success. Response doesn't have a body.
Throws
Error Type Error Message
ErrorResponseError Failed. The input is invalid. | Failed. Forbidden. | Failed. The requested resource doesn't exist.
ConflictingResource Failed. Conflicting resource.
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.deleteAppSettingsObjectByObjectId(
    { objectId: "...", optimisticLockingVersion: "..." },
  );

deleteAppSettingsPermissionByObjectIdAndAccessorId
appSettingsObjectsClient.deleteAppSettingsPermissionByObjectIdAndAccessorId(config): Promise<void>

Required scope: app-settingswrite

Remove the permissions for an existing accessor on this object, anyone with read/write permissions is allowed to delete permissions

Parameters
Name Type Description
config.accessorId*required string The user uuid or group uuid of the accessor, depending on the type
config.accessorType*required "user" | "group" The type of the accessor
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
void 204 success
Throws
Error Type Error Message
ErrorResponseError No object available for the given objectId or the accessor doesn't have any permissions on this object
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.deleteAppSettingsPermissionByObjectIdAndAccessorId(
    {
      objectId: "...",
      accessorType: "user",
      accessorId: "...",
    },
  );

getAppSettingsAllUsersPermissionByObjectId
appSettingsObjectsClient.getAppSettingsAllUsersPermissionByObjectId(config): Promise<AppSettingsAccessorPermissions>

Required scope: app-settingsread

Get current permissions of the all-users accessor on this object

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
AppSettingsAccessorPermissions 200 Success
Throws
Error Type Error Message
ErrorResponseError No object available for the given objectId or the all-users accessor doesn't have any permissions on this object
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.getAppSettingsAllUsersPermissionByObjectId(
    { objectId: "..." },
  );

getAppSettingsObjectByObjectId
appSettingsObjectsClient.getAppSettingsObjectByObjectId(config): Promise<AppSettingsObject>

Gets the specified settings object

Required scope: app-settingsread

Gets the specified settings object. Properties of type secret will be included in plain text if the call originates from a serverless function of your app; they will have irreversibly masked values otherwise. This protects these secrets from leaking to users of your app or other third parties.

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
AppSettingsObject 200 Success
Throws
Error Type Error Message
ErrorResponseError Failed. The input is invalid. | Failed. Forbidden. | No object available for the given objectId
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.getAppSettingsObjectByObjectId(
    { objectId: "..." },
  );

getAppSettingsObjects
appSettingsObjectsClient.getAppSettingsObjects(config): Promise<AppSettingsObjectsList>

Lists persisted settings objects

Required scope: app-settingsread

Lists persisted settings objects for selected schemas.

If nothing is persisted or if all persisted settings objects are not accessible due to missing permissions, no items will be returned.

To query the effective values (including schema defaults) please see getEffectiveAppSettingsValues.

Properties of type secret will be included in plain text if the call originates from a serverless function of your app; they will have irreversibly masked values otherwise. This protects these secrets from leaking to users of your app or other third parties.

Parameters
Name Type Description
config.addFields string

A list of fields to be included in the response. The provided set of fields extends the default set.

Specify the required top-level fields, separated by commas (for example, summary,value).

Supported fields: objectId, version, summary, searchSummary, schemaId, schemaVersion, modificationInfo, resourceContext, value, owner.

Default fields: objectId, version.

config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.filter string

The filter parameter, as explained here.

Filtering is supported on the following fields:

  • modificationInfo.createdBy
  • modificationInfo.createdTime
  • modificationInfo.lastModifiedBy
  • modificationInfo.lastModifiedTime
  • value with properties and sub-properties separated by dot (for example, value.owningApp = 'Notebooks')
  • owner.type
  • owner.id

If this parameter is omitted, all settings objects will be returned. The maximum nesting depth (via parentheses) is 5. The maximum expression length is 1024 characters.

Note that only fields included to the response via add-fields can be used for filtering.

config.pageKey string

The cursor for the next page of results. You can find it in the nextPageKey field of the previous response.

The first page is always returned if you don't specify the page-key query parameter.

When the page-key is set to obtain subsequent pages, you must omit all other query parameters.

config.pageSize number

The amount of settings objects in a single response payload.

If set to 0, all available settings objects will be included in the response (not allowed if filter or sort parameter is referencing value).

The maximal allowed page size is 500.

If not set, 100 is used.

config.schemaId string

Schema ID to which the requested objects belong.

To load the first page, when the nextPageKey is not set, this parameter is required.

config.sort string

The sort parameter, as explained here.

Sorting is supported on the following fields:

  • modificationInfo.createdBy
  • modificationInfo.createdTime
  • modificationInfo.lastModifiedBy
  • modificationInfo.lastModifiedTime
  • value with properties and sub-properties separated by dot (for example, value.owningApp)

Note that only fields included to the response via add-fields can be used for sorting.

Returns
Return type Status code Description
AppSettingsObjectsList 200 Success. Uses chunked encoding.

Even if a response returns a successful response code it is possible that the result is incomplete due to an internal error.

In this case an 'error' property with information about the problem is added. The caller may decide to work with the incomplete result or do a retry of the operation.|

Throws
Error Type Error Message
ErrorResponseError Failed. The input is invalid. | Failed. Forbidden. | Failed. The specified schema was not found.
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.getAppSettingsObjects();

getAppSettingsPermissionByObjectIdAndAccessorId
appSettingsObjectsClient.getAppSettingsPermissionByObjectIdAndAccessorId(config): Promise<AppSettingsAccessorPermissions>

Required scope: app-settingsread

Get current permissions of the accessor on this object

Parameters
Name Type Description
config.accessorId*required string The user uuid or group uuid of the accessor, depending on the type
config.accessorType*required "user" | "group" The type of the accessor
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
AppSettingsAccessorPermissions 200 Success
Throws
Error Type Error Message
ErrorResponseError No object available for the given objectId or the accessor doesn't have any permissions on this object
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.getAppSettingsPermissionByObjectIdAndAccessorId(
    {
      objectId: "...",
      accessorType: "user",
      accessorId: "...",
    },
  );

getAppSettingsPermissionsByObjectId
appSettingsObjectsClient.getAppSettingsPermissionsByObjectId(config): Promise<AppSettingsAccessorPermissionsList>

Required scope: app-settingsread

Get current permissions on this object

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
AppSettingsAccessorPermissionsList 200 Success
Throws
Error Type Error Message
ErrorResponseError No object available for the given objectId
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.getAppSettingsPermissionsByObjectId(
    { objectId: "..." },
  );

getEffectiveAppSettingsValues
appSettingsObjectsClient.getEffectiveAppSettingsValues(config): Promise<EffectiveAppSettingsValuesList>

Lists effective settings values

Required scope: app-settingsread

Lists effective settings values for selected schemas. If no object is persisted for a schema with "multiObject": false, the default value as defined in the schema will be returned.

Properties of type secret will be included in plain text if the call originates from a serverless function of your app; they will have irreversibly masked values otherwise. This protects these secrets from leaking to users of your app or other third parties.

Parameters
Name Type Description
config.addFields string

A list of fields to be included in the response. The provided set of fields extends the default set.

Specify the required top-level fields, separated by commas (for example, summary,schemaId).

Supported fields: summary, searchSummary, schemaId, schemaVersion, modificationInfo, value.

Default fields: value.

config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.pageKey string

The cursor for the next page of results. You can find it in the nextPageKey field of the previous response.

The first page is always returned if you don't specify the page-key query parameter.

When the page-key is set to obtain subsequent pages, you must omit all other query parameters.

config.pageSize number

The amount of settings objects in a single response payload.

If set to 0, all available settings objects will be included in the response.

The maximal allowed page size is 500.

If not set, 100 is used.

config.schemaId string

Schema ID to which the requested objects belong.

Only considered on load of the first page, when the nextPageKey is not set.

Returns
Return type Status code Description
EffectiveAppSettingsValuesList 200 Success. Uses chunked encoding.

Even if a response returns a successful response code it is possible that the result is incomplete due to an internal error.

In this case an 'error' property with information about the problem is added. The caller may decide to work with the incomplete result or do a retry of the operation.|

Throws
Error Type Error Message
ErrorResponseError Failed. The input is invalid. | Failed. The specified schema is not found.
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.getEffectiveAppSettingsValues();

postAppSettingsObject
appSettingsObjectsClient.postAppSettingsObject(config): Promise<void | AppSettingsObjectResponse>

Creates a new settings object

Required scope: app-settingswrite

Creates a new settings object.

Parameters
Name Type Description
config.body*required AppSettingsObjectCreate
config.validateOnly boolean If true, the request runs only validation of the submitted settings objects, without saving them.
Returns
Return type Status code Description
void 200 Success. No validation errors.
AppSettingsObjectResponse 201 Created
Throws
Error Type Error Message
ErrorResponseError Failed. The input is invalid. | Failed. Forbidden. | Failed. The requested resource doesn't exist.
ConflictingResource Failed. Conflicting resource.
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.postAppSettingsObject({
    body: { schemaId: "jira-connection", value: {} },
  });

postAppSettingsOwnershipByObjectId
appSettingsObjectsClient.postAppSettingsOwnershipByObjectId(config): Promise<void>

Required scope: app-settingswrite

Transfer ownership of the object, only the owner or the main admin is allowed to transfer the ownership (IAM permission needed).

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.body*required AppSettingsTransferOwnershipRequest
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
void 204 Success
Throws
Error Type Error Message
ErrorResponseError No object available for the given objectId
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.postAppSettingsOwnershipByObjectId(
    {
      objectId: "...",
      body: { newOwner: { type: "user" } },
    },
  );

postAppSettingsPermissionByObjectId
appSettingsObjectsClient.postAppSettingsPermissionByObjectId(config): Promise<AppSettingsAccessorPermissions>

Required scope: app-settingswrite

Add the permissions for a single accessor on this object, anyone with read/write permissions is allowed to add more permissions

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.body*required AppSettingsAccessorPermissions
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
AppSettingsAccessorPermissions 201 Success
Throws
Error Type Error Message
ErrorResponseError if accessor id already exists | No object available for the given objectId
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.postAppSettingsPermissionByObjectId(
    {
      objectId: "...",
      body: { accessor: { type: "user" }, permissions: {} },
    },
  );

putAppSettingsAllUsersPermissionByObjectId
appSettingsObjectsClient.putAppSettingsAllUsersPermissionByObjectId(config): Promise<void>

Required scope: app-settingswrite

Update the permissions for an existing all-users accessor on this object, anyone with read/write permissions is allowed to update permissions

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.body*required AppSettingsUpdatePermissionsRequest
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
void 200 success
Throws
Error Type Error Message
ErrorResponseError if permission list is empty, contains unsupported entries or unsupported combinations of entries | No object available for the given objectId or the all-users accessor doesn't have any permissions on this object
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.putAppSettingsAllUsersPermissionByObjectId(
    { objectId: "...", body: { permissions: {} } },
  );

putAppSettingsObjectByObjectId
appSettingsObjectsClient.putAppSettingsObjectByObjectId(config): Promise<AppSettingsUpdateResponse>

Updates an existing settings object

Required scope: app-settingswrite

Updates an existing settings object with new values. To update a property of the secret type you need to pass the new value unmasked. To keep the current value, send the current masked secret. You can obtain it via GET an object endpoint.

Some schemas don't allow passing of the masked secret. In that case you need to send the unmasked secret with every update of the object.

Parameters
Name Type Description
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.body*required AppSettingsObjectUpdate
config.objectId*required string The ID of the required settings object
config.optimisticLockingVersion*required string

The version of the object for optimistic locking. You can use it to detect simultaneous modifications by different users.

It is generated upon retrieval (GET requests). If set on update (PUT request) or deletion, the update/deletion will be allowed only if there wasn't any change between the retrieval and the update.

Returns
Return type Status code Description
AppSettingsUpdateResponse 200 Success
Throws
Error Type Error Message
ErrorResponseError Failed. The input is invalid. | Failed. Forbidden. | Failed. The requested resource doesn't exist.
ConflictingResource Failed. Conflicting resource.
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.putAppSettingsObjectByObjectId(
    {
      objectId: "...",
      optimisticLockingVersion: "...",
      body: { value: {} },
    },
  );

putAppSettingsPermissionByObjectIdAndAccessorId
appSettingsObjectsClient.putAppSettingsPermissionByObjectIdAndAccessorId(config): Promise<void>

Required scope: app-settingswrite

Update the permissions for an existing accessor on this object, anyone with read/write permissions is allowed to update permissions

Parameters
Name Type Description
config.accessorId*required string The user uuid or group uuid of the accessor, depending on the type
config.accessorType*required "user" | "group" The type of the accessor
config.adminAccess boolean If set to true and user has app-settingsadmin permission, the endpoint will act as if the user is the owner of all objects
config.body*required AppSettingsUpdatePermissionsRequest
config.objectId*required string The ID of the required settings object
Returns
Return type Status code Description
void 200 success
Throws
Error Type Error Message
ErrorResponseError if permission list is empty, contains unsupported entries or unsupported combinations of entries | No object available for the given objectId or the accessor doesn't have any permissions on this object
TooManyRequests Failed. Too many requests.
ServiceUnavailable Failed. Service unavailable.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.putAppSettingsPermissionByObjectIdAndAccessorId(
    {
      objectId: "...",
      accessorType: "user",
      accessorId: "...",
      body: { permissions: {} },
    },
  );

resolveEffectivePermissions
appSettingsObjectsClient.resolveEffectivePermissions(config): Promise<EffectivePermissions>

Get the effective settings permissions of the calling user in the environment

All the following scopes are required:

  • app-settingsread
  • app-settingswrite

One of the following permissions is required:

  • app-settingsread
  • app-settingswrite
Parameters
Name Type
config.body*required ResolutionRequest
Throws
Error Type Error Message
ErrorResponseError Failed. The input is invalid. | Failed. Forbidden. No access to any schema.
GeneralError Error.
Code example
import { appSettingsObjectsClient } from "@dynatrace-sdk/client-app-settings-v2";

const data =
  await appSettingsObjectsClient.resolveEffectivePermissions(
    {
      body: {
        permissions: [
          {
            permission: "app-settings:objects:read",
            context: { schemaId: "..." },
          },
        ],
      },
    },
  );

Types

AppSettingsAccessorPermissions
Name Type
accessor*required Identity
permissions*required AppSettingsPermissionsList
AppSettingsAccessorPermissionsList
Name Type
accessors*required Array<AppSettingsAccessorPermissions>
AppSettingsObject

A settings object.

Name Type Description
modificationInfo ModificationInfo Modification information about the setting.
objectId*required string The ID of the settings object.
owner Identity
resourceContext ResourceContext The resource context, which contains additional permission information about the object.
schemaId string The schema on which the object is based.
schemaVersion string The version of the schema on which the object is based.
searchSummary string A searchable summary string of the setting value. Plain text without Markdown.
summary string A short summary of settings. This can contain Markdown and will be escaped accordingly.
value AppSettingsValueRaw

The value of the setting.

It defines the actual values of settings' parameters.

The actual content depends on the object's schema.

version*required string

The version of the object for optimistic locking. You can use it to detect simultaneous modifications by different users.

It is generated upon retrieval (GET requests). If set on update (PUT request) or deletion, the update/deletion will be allowed only if there wasn't any change between the retrieval and the update.

AppSettingsObjectCreate

Configuration of a new settings object.

Name Type Description
insertAfter string

The position of the new object. The new object will be added after the specified one.

If null, the new object will be placed in the last position.

If set to empty string, the new object will be placed in the first position.

Only applicable for objects based on schemas with ordered objects (schema's ordered parameter is set to true).

schemaId*required string The schema on which the object is based.
value*required AppSettingsValue

The value of the setting.

It defines the actual values of settings' parameters.

The actual content depends on the object's schema.

AppSettingsObjectResponse

The response to a creation request.

Name Type Description
objectId*required string The ID of the created settings object.
version*required string

The version of the object for optimistic locking. You can use it to detect simultaneous modifications by different users.

It is generated upon retrieval (GET requests). If set on update (PUT request) or deletion, the update/deletion will be allowed only if there wasn't any change between the retrieval and the update.

AppSettingsObjectUpdate

An update of a settings object.

Name Type Description
insertAfter string

The position of the updated object. The new object will be moved behind the specified one.

insertAfter and insertBefore are evaluated together and only one of both can be set.

If null and insertBefore 'null', the existing object keeps the current position.

If set to empty string, the updated object will be placed in the first position.

Only applicable for objects based on schemas with ordered objects (schema's ordered parameter is set to true).

insertBefore string

The position of the updated object. The new object will be moved in front of the specified one.

insertAfter and insertBefore are evaluated together and only one of both can be set.

If null and insertAfter 'null', the existing object keeps the current position.

If set to empty string, the updated object will be placed in the last position.

Only applicable for objects based on schemas with ordered objects (schema's ordered parameter is set to true).

value*required AppSettingsValue

The value of the setting.

It defines the actual values of settings' parameters.

The actual content depends on the object's schema.

AppSettingsObjectsList

A list of settings objects.

Name Type Description
error ErrorIncomplete Error object for an incomplete response
items*required Array<AppSettingsObject> A list of settings objects.
nextPageKey string

The cursor for the next page of results. Has the value of null on the last page.

Use it in the nextPageKey query parameter to obtain subsequent pages of the result.

pageSize*required number The number of entries per page.
totalCount*required number The total number of entries in the result.
AppSettingsPermissionsList

type: Array<"r" | "w">

AppSettingsTransferOwnershipRequest
Name Type
newOwner Identity
AppSettingsUpdatePermissionsRequest
Name Type
permissions*required AppSettingsPermissionsList
AppSettingsUpdateResponse

The response to an update request.

Name Type Description
version*required string

The version of the object for optimistic locking. You can use it to detect simultaneous modifications by different users.

It is generated upon retrieval (GET requests). If set on update (PUT request) or deletion, the update/deletion will be allowed only if there wasn't any change between the retrieval and the update.

ConstraintViolation

Contains information about a constraint violation caused by invalid input.

Name Type Description
message*required string The constraint violation description message
parameterLocation "PATH" | "QUERY" | "HEADER" | "PAYLOAD_BODY" Describes the general location of the violating parameter
path string The path of the parameter that caused the constraint violation
EffectiveAppSettingsValue

An effective settings value.

Name Type Description
modificationInfo ModificationInfo Modification information about the setting.
schemaId string The schema on which the object is based.
schemaVersion string The version of the schema on which the object is based.
searchSummary string A searchable summary string of the setting value. Plain text without Markdown.
summary string A short summary of settings. This can contain Markdown and will be escaped accordingly.
value AppSettingsValueRaw

The value of the setting.

It defines the actual values of settings' parameters.

The actual content depends on the object's schema.

EffectiveAppSettingsValuesList

A list of effective settings values.

Name Type Description
error ErrorIncomplete Error object for an incomplete response
items*required Array<EffectiveAppSettingsValue> A list of effective settings values.
nextPageKey string

The cursor for the next page of results. Has the value of null on the last page.

Use it in the nextPageKey query parameter to obtain subsequent pages of the result.

pageSize*required number The number of entries per page.
totalCount*required number The total number of entries in the result.
EffectivePermission
Name Type
context PermissionContext
granted*required "true" | "false" | "condition"
permission*required string
EffectivePermissions

type: Array<EffectivePermission>

Error

Standard error response

Name Type Description
code*required number The error code (HTTP response)
details ErrorDetails Optional details of the error
message*required string The error message
retryAfterSeconds number Number of seconds a request can be retried after a 'too many requests' error response.
ErrorDetails

Optional details of the error

Name Type Description
constraintViolations Array<ConstraintViolation> A list of constraint violations of input parameters (path, query, request body)
errorRef string reference to the error occurrence in the internal self-monitoring, logging, etc.
missingScopes Array<string> In case of a 403 - Forbidden response, a list of missing scopes necessary to successfully execute the request
ErrorIncomplete

Error object for an incomplete response

Name Type Description
code*required number The error code (HTTP response)
details ErrorDetails Optional details of the error
message*required string The error message
retryAfterSeconds number Number of seconds a request can be retried after a 'too many requests' error response.
ErrorResponse
Name Type Description
error*required Error Standard error response
Identity
Name Type Description
id string user id or user group id if type is 'user' or 'group', missing if type is 'all-users'
type*required "user" | "group" | "all-users"
ModificationInfo

Modification information about the setting.

Name Type Description
createdBy string The unique identifier of the user who created the setting.
createdTime Date Timestamp when the setting was created in ISO 8601 format (yyyy-MM-dd'T'HHss.SSS'Z')
lastModifiedBy string The unique identifier of the user who performed the most recent modification.
lastModifiedReason string The reason for the most recent modification, if available.
lastModifiedTime Date Timestamp when the setting was last modified in ISO 8601 format (yyyy-MM-dd'T'HHss.SSS'Z')
Modifications

The additional modification details for this settings object.

Name Type Description
first boolean If non-moveable settings object is in the first group of non-moveable settings, or in the last (start or end of list).
modifiablePaths*required Array<string> Property paths which are modifiable, regardless if the write operation is allowed.
movable boolean If settings object can be moved/reordered. Only applicable for ordered list schema.
nonModifiablePaths*required Array<string> Property paths which are not modifiable, even if the write operation is allowed.
PermissionContext
Name Type
schemaId*required string
ResolutionRequest
Name Type
permissions*required Array<SinglePermissionRequest>
ResourceContext

The resource context, which contains additional permission information about the object.

Name Type Description
modifications*required Modifications The additional modification details for this settings object.
operations*required Array<"read" | "write" | "delete"> The allowed operations on this settings object.
SinglePermissionRequest

optional generic set of context data

Name Type
context PermissionContext
permission*required "app-settingsread" | "app-settingswrite" | "app-settingsadmin"

Enums

AppSettingsPermissionsListItem

Deprecated Use literal values.

Enum keys

R | W

ConstraintViolationParameterLocation

Deprecated Use literal values.

Describes the general location of the violating parameter

Enum keys

Header | Path | PayloadBody | Query

EffectivePermissionGranted

Deprecated Use literal values.

Enum keys

Condition | False | True

GetAppSettingsPermissionByObjectIdAndAccessorIdPathAccessorType

Deprecated Use literal values.

Enum keys

Group | User

IdentityType

Deprecated Use literal values.

Enum keys

AllUsers | Group | User

ResourceContextOperationsItem

Deprecated Use literal values.

Enum keys

Delete | Read | Write

SinglePermissionRequestPermission

Deprecated Use literal values.

Enum keys

AppSettingsObjectsAdmin | AppSettingsObjectsRead | AppSettingsObjectsWrite