@salesforce/b2c-tooling-sdk 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +180 -13
- package/data/scaffolds/cartridge/files/.project.ejs +17 -0
- package/data/scaffolds/cartridge/files/cartridge/cartridge.properties.ejs +4 -0
- package/data/scaffolds/cartridge/files/cartridge/controllers/Example.js.ejs +19 -0
- package/data/scaffolds/cartridge/files/cartridge/models/example.js.ejs +14 -0
- package/data/scaffolds/cartridge/files/cartridge/scripts/helpers/exampleHelpers.js.ejs +18 -0
- package/data/scaffolds/cartridge/files/cartridge/static/default/css/example.css +6 -0
- package/data/scaffolds/cartridge/files/cartridge/templates/default/example/show.isml.ejs +11 -0
- package/data/scaffolds/cartridge/scaffold.json +88 -0
- package/data/scaffolds/controller/files/controller.js.ejs +134 -0
- package/data/scaffolds/controller/files/template.isml.ejs +22 -0
- package/data/scaffolds/controller/scaffold.json +64 -0
- package/data/scaffolds/custom-api/files/api.json.ejs +11 -0
- package/data/scaffolds/custom-api/files/schema.yaml.ejs +188 -0
- package/data/scaffolds/custom-api/files/script.js.ejs +95 -0
- package/data/scaffolds/custom-api/scaffold.json +65 -0
- package/data/scaffolds/hook/files/hook.js.ejs +99 -0
- package/data/scaffolds/hook/files/hooks-entry.json.ejs +6 -0
- package/data/scaffolds/hook/scaffold.json +60 -0
- package/data/scaffolds/job-step/files/step-chunk.js.ejs +136 -0
- package/data/scaffolds/job-step/files/step-task.js.ejs +47 -0
- package/data/scaffolds/job-step/files/steptypes-entry.json.ejs +41 -0
- package/data/scaffolds/job-step/scaffold.json +64 -0
- package/data/scaffolds/page-designer-component/files/component.isml.ejs +23 -0
- package/data/scaffolds/page-designer-component/files/component.js.ejs +35 -0
- package/data/scaffolds/page-designer-component/files/component.json.ejs +50 -0
- package/data/scaffolds/page-designer-component/scaffold.json +66 -0
- package/data/scaffolds/service/files/service-http.js.ejs +245 -0
- package/data/scaffolds/service/files/service-sftp.js.ejs +371 -0
- package/data/scaffolds/service/files/service-soap.js.ejs +230 -0
- package/data/scaffolds/service/scaffold.json +83 -0
- package/data/script-api/dw.extensions.payments.SalesforcePaymentsMgr.md +48 -0
- package/data/script-api/dw.system.Request.md +5 -0
- package/data/script-api/dw.web.Cookie.md +108 -31
- package/data/script-api/index.json +2 -2
- package/data/script-api/index.md +1 -1
- package/dist/cjs/auth/oauth-implicit.d.ts +1 -0
- package/dist/cjs/auth/oauth-implicit.js +8 -3
- package/dist/cjs/auth/oauth-implicit.js.map +1 -1
- package/dist/cjs/auth/oauth.d.ts +1 -0
- package/dist/cjs/auth/oauth.js +8 -3
- package/dist/cjs/auth/oauth.js.map +1 -1
- package/dist/cjs/auth/types.d.ts +5 -0
- package/dist/cjs/auth/types.js.map +1 -1
- package/dist/cjs/cli/am-command.d.ts +74 -0
- package/dist/cjs/cli/am-command.js +191 -0
- package/dist/cjs/cli/am-command.js.map +1 -0
- package/dist/cjs/cli/base-command.d.ts +38 -0
- package/dist/cjs/cli/base-command.js +142 -0
- package/dist/cjs/cli/base-command.js.map +1 -1
- package/dist/cjs/cli/config.d.ts +9 -0
- package/dist/cjs/cli/config.js +20 -3
- package/dist/cjs/cli/config.js.map +1 -1
- package/dist/cjs/cli/index.d.ts +1 -0
- package/dist/cjs/cli/index.js +1 -0
- package/dist/cjs/cli/index.js.map +1 -1
- package/dist/cjs/cli/instance-command.d.ts +2 -1
- package/dist/cjs/cli/oauth-command.d.ts +22 -2
- package/dist/cjs/cli/oauth-command.js +53 -8
- package/dist/cjs/cli/oauth-command.js.map +1 -1
- package/dist/cjs/cli/ods-command.d.ts +6 -2
- package/dist/cjs/cli/ods-command.js +10 -4
- package/dist/cjs/cli/ods-command.js.map +1 -1
- package/dist/cjs/cli/webdav-command.d.ts +2 -1
- package/dist/cjs/clients/am-api.d.ts +521 -0
- package/dist/cjs/clients/am-api.js +986 -0
- package/dist/cjs/clients/am-api.js.map +1 -0
- package/dist/cjs/clients/am-apiclients-api.generated.d.ts +803 -0
- package/dist/cjs/clients/am-apiclients-api.generated.js +6 -0
- package/dist/cjs/clients/am-apiclients-api.generated.js.map +1 -0
- package/dist/cjs/clients/am-roles-api.generated.d.ts +298 -0
- package/dist/cjs/clients/am-roles-api.generated.js +6 -0
- package/dist/cjs/clients/am-roles-api.generated.js.map +1 -0
- package/dist/cjs/clients/am-users-api.generated.d.ts +954 -0
- package/dist/cjs/clients/am-users-api.generated.js +6 -0
- package/dist/cjs/clients/am-users-api.generated.js.map +1 -0
- package/dist/cjs/clients/index.d.ts +4 -2
- package/dist/cjs/clients/index.js +2 -1
- package/dist/cjs/clients/index.js.map +1 -1
- package/dist/cjs/clients/middleware-registry.d.ts +1 -1
- package/dist/cjs/clients/middleware-registry.js.map +1 -1
- package/dist/cjs/clients/middleware.d.ts +49 -2
- package/dist/cjs/clients/middleware.js +214 -2
- package/dist/cjs/clients/middleware.js.map +1 -1
- package/dist/cjs/clients/mrt.js +5 -1
- package/dist/cjs/clients/mrt.js.map +1 -1
- package/dist/cjs/config/dw-json.d.ts +104 -33
- package/dist/cjs/config/dw-json.js +167 -2
- package/dist/cjs/config/dw-json.js.map +1 -1
- package/dist/cjs/config/index.d.ts +6 -4
- package/dist/cjs/config/index.js +6 -2
- package/dist/cjs/config/index.js.map +1 -1
- package/dist/cjs/config/instance-manager.d.ts +97 -0
- package/dist/cjs/config/instance-manager.js +166 -0
- package/dist/cjs/config/instance-manager.js.map +1 -0
- package/dist/cjs/config/mapping.d.ts +63 -5
- package/dist/cjs/config/mapping.js +165 -20
- package/dist/cjs/config/mapping.js.map +1 -1
- package/dist/cjs/config/sources/dw-json-source.d.ts +17 -1
- package/dist/cjs/config/sources/dw-json-source.js +70 -3
- package/dist/cjs/config/sources/dw-json-source.js.map +1 -1
- package/dist/cjs/config/sources/package-json-source.js +6 -3
- package/dist/cjs/config/sources/package-json-source.js.map +1 -1
- package/dist/cjs/config/types.d.ts +72 -0
- package/dist/cjs/defaults.d.ts +6 -0
- package/dist/cjs/defaults.js +6 -0
- package/dist/cjs/defaults.js.map +1 -1
- package/dist/cjs/i18n/index.js +3 -0
- package/dist/cjs/i18n/index.js.map +1 -1
- package/dist/cjs/index.d.ts +8 -4
- package/dist/cjs/index.js +9 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/logging/logger.js +13 -1
- package/dist/cjs/logging/logger.js.map +1 -1
- package/dist/cjs/operations/content/asset-query.d.ts +22 -0
- package/dist/cjs/operations/content/asset-query.js +77 -0
- package/dist/cjs/operations/content/asset-query.js.map +1 -0
- package/dist/cjs/operations/content/export.d.ts +57 -0
- package/dist/cjs/operations/content/export.js +224 -0
- package/dist/cjs/operations/content/export.js.map +1 -0
- package/dist/cjs/operations/content/index.d.ts +43 -0
- package/dist/cjs/operations/content/index.js +48 -0
- package/dist/cjs/operations/content/index.js.map +1 -0
- package/dist/cjs/operations/content/library.d.ts +137 -0
- package/dist/cjs/operations/content/library.js +392 -0
- package/dist/cjs/operations/content/library.js.map +1 -0
- package/dist/cjs/operations/content/types.d.ts +144 -0
- package/dist/cjs/operations/content/types.js +7 -0
- package/dist/cjs/operations/content/types.js.map +1 -0
- package/dist/cjs/operations/mrt/b2c-config.js +19 -4
- package/dist/cjs/operations/mrt/b2c-config.js.map +1 -1
- package/dist/cjs/operations/mrt/index.d.ts +2 -0
- package/dist/cjs/operations/mrt/index.js +2 -0
- package/dist/cjs/operations/mrt/index.js.map +1 -1
- package/dist/cjs/operations/mrt/tail-logs.d.ts +130 -0
- package/dist/cjs/operations/mrt/tail-logs.js +223 -0
- package/dist/cjs/operations/mrt/tail-logs.js.map +1 -0
- package/dist/cjs/operations/ods/index.d.ts +2 -0
- package/dist/cjs/operations/ods/index.js +1 -0
- package/dist/cjs/operations/ods/index.js.map +1 -1
- package/dist/cjs/operations/ods/wait-for-sandbox.d.ts +64 -0
- package/dist/cjs/operations/ods/wait-for-sandbox.js +114 -0
- package/dist/cjs/operations/ods/wait-for-sandbox.js.map +1 -0
- package/dist/cjs/operations/orgs/index.d.ts +74 -0
- package/dist/cjs/operations/orgs/index.js +33 -0
- package/dist/cjs/operations/orgs/index.js.map +1 -0
- package/dist/cjs/operations/roles/index.d.ts +43 -0
- package/dist/cjs/operations/roles/index.js +48 -0
- package/dist/cjs/operations/roles/index.js.map +1 -0
- package/dist/cjs/operations/users/index.d.ts +153 -0
- package/dist/cjs/operations/users/index.js +139 -0
- package/dist/cjs/operations/users/index.js.map +1 -0
- package/dist/cjs/scaffold/engine.d.ts +68 -0
- package/dist/cjs/scaffold/engine.js +149 -0
- package/dist/cjs/scaffold/engine.js.map +1 -0
- package/dist/cjs/scaffold/executor.d.ts +36 -0
- package/dist/cjs/scaffold/executor.js +285 -0
- package/dist/cjs/scaffold/executor.js.map +1 -0
- package/dist/cjs/scaffold/index.d.ts +74 -0
- package/dist/cjs/scaffold/index.js +23 -0
- package/dist/cjs/scaffold/index.js.map +1 -0
- package/dist/cjs/scaffold/merge.d.ts +56 -0
- package/dist/cjs/scaffold/merge.js +183 -0
- package/dist/cjs/scaffold/merge.js.map +1 -0
- package/dist/cjs/scaffold/parameter-resolver.d.ts +86 -0
- package/dist/cjs/scaffold/parameter-resolver.js +179 -0
- package/dist/cjs/scaffold/parameter-resolver.js.map +1 -0
- package/dist/cjs/scaffold/registry.d.ts +45 -0
- package/dist/cjs/scaffold/registry.js +219 -0
- package/dist/cjs/scaffold/registry.js.map +1 -0
- package/dist/cjs/scaffold/sources.d.ts +45 -0
- package/dist/cjs/scaffold/sources.js +113 -0
- package/dist/cjs/scaffold/sources.js.map +1 -0
- package/dist/cjs/scaffold/types.d.ts +280 -0
- package/dist/cjs/scaffold/types.js +14 -0
- package/dist/cjs/scaffold/types.js.map +1 -0
- package/dist/cjs/scaffold/validation.d.ts +81 -0
- package/dist/cjs/scaffold/validation.js +250 -0
- package/dist/cjs/scaffold/validation.js.map +1 -0
- package/dist/cjs/scaffold/validators.d.ts +33 -0
- package/dist/cjs/scaffold/validators.js +334 -0
- package/dist/cjs/scaffold/validators.js.map +1 -0
- package/dist/cjs/telemetry/index.d.ts +26 -0
- package/dist/cjs/telemetry/index.js +32 -0
- package/dist/cjs/telemetry/index.js.map +1 -0
- package/dist/cjs/telemetry/telemetry.d.ts +90 -0
- package/dist/cjs/telemetry/telemetry.js +283 -0
- package/dist/cjs/telemetry/telemetry.js.map +1 -0
- package/dist/cjs/telemetry/types.d.ts +62 -0
- package/dist/cjs/telemetry/types.js +7 -0
- package/dist/cjs/telemetry/types.js.map +1 -0
- package/dist/esm/auth/oauth-implicit.d.ts +1 -0
- package/dist/esm/auth/oauth-implicit.js +8 -3
- package/dist/esm/auth/oauth-implicit.js.map +1 -1
- package/dist/esm/auth/oauth.d.ts +1 -0
- package/dist/esm/auth/oauth.js +8 -3
- package/dist/esm/auth/oauth.js.map +1 -1
- package/dist/esm/auth/types.d.ts +5 -0
- package/dist/esm/auth/types.js.map +1 -1
- package/dist/esm/cli/am-command.d.ts +74 -0
- package/dist/esm/cli/am-command.js +198 -0
- package/dist/esm/cli/am-command.js.map +1 -0
- package/dist/esm/cli/base-command.d.ts +38 -0
- package/dist/esm/cli/base-command.js +142 -0
- package/dist/esm/cli/base-command.js.map +1 -1
- package/dist/esm/cli/config.d.ts +9 -0
- package/dist/esm/cli/config.js +20 -3
- package/dist/esm/cli/config.js.map +1 -1
- package/dist/esm/cli/index.d.ts +1 -0
- package/dist/esm/cli/index.js +1 -0
- package/dist/esm/cli/index.js.map +1 -1
- package/dist/esm/cli/instance-command.d.ts +2 -1
- package/dist/esm/cli/oauth-command.d.ts +22 -2
- package/dist/esm/cli/oauth-command.js +53 -8
- package/dist/esm/cli/oauth-command.js.map +1 -1
- package/dist/esm/cli/ods-command.d.ts +6 -2
- package/dist/esm/cli/ods-command.js +10 -4
- package/dist/esm/cli/ods-command.js.map +1 -1
- package/dist/esm/cli/webdav-command.d.ts +2 -1
- package/dist/esm/clients/am-api.d.ts +521 -0
- package/dist/esm/clients/am-api.js +986 -0
- package/dist/esm/clients/am-api.js.map +1 -0
- package/dist/esm/clients/am-apiclients-api.generated.d.ts +803 -0
- package/dist/esm/clients/am-apiclients-api.generated.js +6 -0
- package/dist/esm/clients/am-apiclients-api.generated.js.map +1 -0
- package/dist/esm/clients/am-roles-api.generated.d.ts +298 -0
- package/dist/esm/clients/am-roles-api.generated.js +6 -0
- package/dist/esm/clients/am-roles-api.generated.js.map +1 -0
- package/dist/esm/clients/am-users-api.generated.d.ts +954 -0
- package/dist/esm/clients/am-users-api.generated.js +6 -0
- package/dist/esm/clients/am-users-api.generated.js.map +1 -0
- package/dist/esm/clients/index.d.ts +4 -2
- package/dist/esm/clients/index.js +2 -1
- package/dist/esm/clients/index.js.map +1 -1
- package/dist/esm/clients/middleware-registry.d.ts +1 -1
- package/dist/esm/clients/middleware-registry.js.map +1 -1
- package/dist/esm/clients/middleware.d.ts +49 -2
- package/dist/esm/clients/middleware.js +214 -2
- package/dist/esm/clients/middleware.js.map +1 -1
- package/dist/esm/clients/mrt.js +5 -1
- package/dist/esm/clients/mrt.js.map +1 -1
- package/dist/esm/config/dw-json.d.ts +104 -33
- package/dist/esm/config/dw-json.js +167 -2
- package/dist/esm/config/dw-json.js.map +1 -1
- package/dist/esm/config/index.d.ts +6 -4
- package/dist/esm/config/index.js +6 -2
- package/dist/esm/config/index.js.map +1 -1
- package/dist/esm/config/instance-manager.d.ts +97 -0
- package/dist/esm/config/instance-manager.js +166 -0
- package/dist/esm/config/instance-manager.js.map +1 -0
- package/dist/esm/config/mapping.d.ts +63 -5
- package/dist/esm/config/mapping.js +165 -20
- package/dist/esm/config/mapping.js.map +1 -1
- package/dist/esm/config/sources/dw-json-source.d.ts +17 -1
- package/dist/esm/config/sources/dw-json-source.js +70 -3
- package/dist/esm/config/sources/dw-json-source.js.map +1 -1
- package/dist/esm/config/sources/package-json-source.js +6 -3
- package/dist/esm/config/sources/package-json-source.js.map +1 -1
- package/dist/esm/config/types.d.ts +72 -0
- package/dist/esm/defaults.d.ts +6 -0
- package/dist/esm/defaults.js +6 -0
- package/dist/esm/defaults.js.map +1 -1
- package/dist/esm/i18n/index.js +3 -0
- package/dist/esm/i18n/index.js.map +1 -1
- package/dist/esm/index.d.ts +8 -4
- package/dist/esm/index.js +9 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/logging/logger.js +13 -1
- package/dist/esm/logging/logger.js.map +1 -1
- package/dist/esm/operations/content/asset-query.d.ts +22 -0
- package/dist/esm/operations/content/asset-query.js +77 -0
- package/dist/esm/operations/content/asset-query.js.map +1 -0
- package/dist/esm/operations/content/export.d.ts +57 -0
- package/dist/esm/operations/content/export.js +224 -0
- package/dist/esm/operations/content/export.js.map +1 -0
- package/dist/esm/operations/content/index.d.ts +43 -0
- package/dist/esm/operations/content/index.js +48 -0
- package/dist/esm/operations/content/index.js.map +1 -0
- package/dist/esm/operations/content/library.d.ts +137 -0
- package/dist/esm/operations/content/library.js +392 -0
- package/dist/esm/operations/content/library.js.map +1 -0
- package/dist/esm/operations/content/types.d.ts +144 -0
- package/dist/esm/operations/content/types.js +7 -0
- package/dist/esm/operations/content/types.js.map +1 -0
- package/dist/esm/operations/mrt/b2c-config.js +19 -4
- package/dist/esm/operations/mrt/b2c-config.js.map +1 -1
- package/dist/esm/operations/mrt/index.d.ts +2 -0
- package/dist/esm/operations/mrt/index.js +2 -0
- package/dist/esm/operations/mrt/index.js.map +1 -1
- package/dist/esm/operations/mrt/tail-logs.d.ts +130 -0
- package/dist/esm/operations/mrt/tail-logs.js +223 -0
- package/dist/esm/operations/mrt/tail-logs.js.map +1 -0
- package/dist/esm/operations/ods/index.d.ts +2 -0
- package/dist/esm/operations/ods/index.js +1 -0
- package/dist/esm/operations/ods/index.js.map +1 -1
- package/dist/esm/operations/ods/wait-for-sandbox.d.ts +64 -0
- package/dist/esm/operations/ods/wait-for-sandbox.js +114 -0
- package/dist/esm/operations/ods/wait-for-sandbox.js.map +1 -0
- package/dist/esm/operations/orgs/index.d.ts +74 -0
- package/dist/esm/operations/orgs/index.js +33 -0
- package/dist/esm/operations/orgs/index.js.map +1 -0
- package/dist/esm/operations/roles/index.d.ts +43 -0
- package/dist/esm/operations/roles/index.js +48 -0
- package/dist/esm/operations/roles/index.js.map +1 -0
- package/dist/esm/operations/users/index.d.ts +153 -0
- package/dist/esm/operations/users/index.js +139 -0
- package/dist/esm/operations/users/index.js.map +1 -0
- package/dist/esm/scaffold/engine.d.ts +68 -0
- package/dist/esm/scaffold/engine.js +149 -0
- package/dist/esm/scaffold/engine.js.map +1 -0
- package/dist/esm/scaffold/executor.d.ts +36 -0
- package/dist/esm/scaffold/executor.js +285 -0
- package/dist/esm/scaffold/executor.js.map +1 -0
- package/dist/esm/scaffold/index.d.ts +74 -0
- package/dist/esm/scaffold/index.js +23 -0
- package/dist/esm/scaffold/index.js.map +1 -0
- package/dist/esm/scaffold/merge.d.ts +56 -0
- package/dist/esm/scaffold/merge.js +183 -0
- package/dist/esm/scaffold/merge.js.map +1 -0
- package/dist/esm/scaffold/parameter-resolver.d.ts +86 -0
- package/dist/esm/scaffold/parameter-resolver.js +179 -0
- package/dist/esm/scaffold/parameter-resolver.js.map +1 -0
- package/dist/esm/scaffold/registry.d.ts +45 -0
- package/dist/esm/scaffold/registry.js +219 -0
- package/dist/esm/scaffold/registry.js.map +1 -0
- package/dist/esm/scaffold/sources.d.ts +45 -0
- package/dist/esm/scaffold/sources.js +113 -0
- package/dist/esm/scaffold/sources.js.map +1 -0
- package/dist/esm/scaffold/types.d.ts +280 -0
- package/dist/esm/scaffold/types.js +14 -0
- package/dist/esm/scaffold/types.js.map +1 -0
- package/dist/esm/scaffold/validation.d.ts +81 -0
- package/dist/esm/scaffold/validation.js +250 -0
- package/dist/esm/scaffold/validation.js.map +1 -0
- package/dist/esm/scaffold/validators.d.ts +33 -0
- package/dist/esm/scaffold/validators.js +334 -0
- package/dist/esm/scaffold/validators.js.map +1 -0
- package/dist/esm/telemetry/index.d.ts +26 -0
- package/dist/esm/telemetry/index.js +32 -0
- package/dist/esm/telemetry/index.js.map +1 -0
- package/dist/esm/telemetry/telemetry.d.ts +90 -0
- package/dist/esm/telemetry/telemetry.js +283 -0
- package/dist/esm/telemetry/telemetry.js.map +1 -0
- package/dist/esm/telemetry/types.d.ts +62 -0
- package/dist/esm/telemetry/types.js +7 -0
- package/dist/esm/telemetry/types.js.map +1 -0
- package/package.json +86 -17
- package/specs/am-apiclients-api-v1.yaml +965 -0
- package/specs/am-roles-api-v1.yaml +316 -0
- package/specs/am-users-api-v1.yaml +1142 -0
|
@@ -0,0 +1,965 @@
|
|
|
1
|
+
openapi: 3.0.3
|
|
2
|
+
info:
|
|
3
|
+
title: API Clients
|
|
4
|
+
description: |
|
|
5
|
+
# API Overview
|
|
6
|
+
|
|
7
|
+
Manage API clients within the Account Manager system. API clients are service accounts used for programmatic access to APIs. They can be assigned roles and organizations, support various authentication methods (JWT, client secrets), and can be enabled, disabled, or deleted based on their state.
|
|
8
|
+
|
|
9
|
+
## Authentication & Authorization
|
|
10
|
+
|
|
11
|
+
All requests to the API Clients API must be authenticated using OAuth 2.0 bearer token authentication. The API supports two OAuth 2.0 flows: client credentials and authorization code. The token endpoint is available at `https://account.demandware.com/dwsso/oauth2/access_token`.
|
|
12
|
+
|
|
13
|
+
## Use Cases
|
|
14
|
+
|
|
15
|
+
### Create an API Client for Service Integration
|
|
16
|
+
|
|
17
|
+
Create a new API client to enable programmatic access for service-to-service integrations. For example, access the B2C Commerce API (SCAPI), the Open Commerce API (OCAPI), or the On-Demand Sandbox API. You can't use the same client ID for both the B2C Commerce API (SCAPI) and OCAPI. Each API framework requires its own client ID. An API Client ID that's meant for OCAPI must not have the role "Salesforce Commerce API" assigned to it.
|
|
18
|
+
|
|
19
|
+
API clients are created in an inactive state by default and must be explicitly activated before use.
|
|
20
|
+
|
|
21
|
+
### Manage API Client Lifecycle
|
|
22
|
+
|
|
23
|
+
Update API client properties, change passwords, disable inactive clients, and delete clients that have been disabled for at least 7 days.
|
|
24
|
+
version: 1.0.0-beta
|
|
25
|
+
servers:
|
|
26
|
+
- url: https://account.demandware.com
|
|
27
|
+
description: Account Manager Production Instance
|
|
28
|
+
security:
|
|
29
|
+
- AmOAuth2: []
|
|
30
|
+
paths:
|
|
31
|
+
/dw/rest/v1/apiclients:
|
|
32
|
+
get:
|
|
33
|
+
operationId: getApiClients
|
|
34
|
+
summary: Retrieve a paginated list of all API clients.
|
|
35
|
+
description: Get the list of API clients with no filtering.
|
|
36
|
+
parameters:
|
|
37
|
+
- name: pageable
|
|
38
|
+
in: query
|
|
39
|
+
required: false
|
|
40
|
+
schema:
|
|
41
|
+
$ref: "#/components/schemas/Pageable"
|
|
42
|
+
responses:
|
|
43
|
+
"400":
|
|
44
|
+
description: Bad Request
|
|
45
|
+
"401":
|
|
46
|
+
description: Access token is missing or invalid.
|
|
47
|
+
content:
|
|
48
|
+
application/json:
|
|
49
|
+
schema:
|
|
50
|
+
allOf:
|
|
51
|
+
- $ref: "#/components/schemas/ErrorResponse"
|
|
52
|
+
examples:
|
|
53
|
+
errorAuthenticationRequired:
|
|
54
|
+
$ref: "#/components/examples/ErrorAuthenticationRequired"
|
|
55
|
+
"429":
|
|
56
|
+
$ref: "#/components/responses/RateLimitedError"
|
|
57
|
+
"200":
|
|
58
|
+
description: OK
|
|
59
|
+
headers:
|
|
60
|
+
X-RateLimit-Limit:
|
|
61
|
+
$ref: "#/components/headers/X-RateLimit-Limit"
|
|
62
|
+
X-RateLimit-Remaining:
|
|
63
|
+
$ref: "#/components/headers/X-RateLimit-Remaining"
|
|
64
|
+
X-RateLimit-Reset:
|
|
65
|
+
$ref: "#/components/headers/X-RateLimit-Reset"
|
|
66
|
+
content:
|
|
67
|
+
application/json:
|
|
68
|
+
schema:
|
|
69
|
+
$ref: "#/components/schemas/APIClientCollection"
|
|
70
|
+
post:
|
|
71
|
+
operationId: createApiClient
|
|
72
|
+
summary: Create an API client.
|
|
73
|
+
description: |
|
|
74
|
+
Create a new API client with the specified properties.
|
|
75
|
+
Note: API clients are created with active=false by default and must be explicitly activated.
|
|
76
|
+
requestBody:
|
|
77
|
+
content:
|
|
78
|
+
application/json:
|
|
79
|
+
schema:
|
|
80
|
+
$ref: "#/components/schemas/APIClientCreate"
|
|
81
|
+
example:
|
|
82
|
+
name: "apiclient-stg"
|
|
83
|
+
description: "Client for staging environment."
|
|
84
|
+
organizations:
|
|
85
|
+
- "e39dbb7a-63bd-4972-980b-0f6fb3a24bd6"
|
|
86
|
+
password: "MySecureP@ss123"
|
|
87
|
+
roles:
|
|
88
|
+
- "SALESFORCE_COMMERCE_API"
|
|
89
|
+
roleTenantFilter: "SALESFORCE_COMMERCE_API:abcd_prd"
|
|
90
|
+
required: true
|
|
91
|
+
responses:
|
|
92
|
+
"400":
|
|
93
|
+
description: Bad Request
|
|
94
|
+
content:
|
|
95
|
+
application/json:
|
|
96
|
+
schema:
|
|
97
|
+
allOf:
|
|
98
|
+
- $ref: "#/components/schemas/ErrorResponse"
|
|
99
|
+
examples:
|
|
100
|
+
errorCreatingUserFailed:
|
|
101
|
+
$ref: "#/components/examples/ErrorApiClientValidation"
|
|
102
|
+
"403":
|
|
103
|
+
description: Principal lacks permission to create API client.
|
|
104
|
+
"401":
|
|
105
|
+
description: Access token is missing or invalid.
|
|
106
|
+
content:
|
|
107
|
+
application/json:
|
|
108
|
+
schema:
|
|
109
|
+
allOf:
|
|
110
|
+
- $ref: "#/components/schemas/ErrorResponse"
|
|
111
|
+
examples:
|
|
112
|
+
errorAuthenticationRequired:
|
|
113
|
+
$ref: "#/components/examples/ErrorAuthenticationRequired"
|
|
114
|
+
"429":
|
|
115
|
+
$ref: "#/components/responses/RateLimitedError"
|
|
116
|
+
201:
|
|
117
|
+
description: Created
|
|
118
|
+
headers:
|
|
119
|
+
X-RateLimit-Limit:
|
|
120
|
+
$ref: "#/components/headers/X-RateLimit-Limit"
|
|
121
|
+
X-RateLimit-Remaining:
|
|
122
|
+
$ref: "#/components/headers/X-RateLimit-Remaining"
|
|
123
|
+
X-RateLimit-Reset:
|
|
124
|
+
$ref: "#/components/headers/X-RateLimit-Reset"
|
|
125
|
+
Location:
|
|
126
|
+
description: URL to read created API client.
|
|
127
|
+
schema:
|
|
128
|
+
type: string
|
|
129
|
+
format: uri
|
|
130
|
+
content:
|
|
131
|
+
application/json:
|
|
132
|
+
schema:
|
|
133
|
+
$ref: "#/components/schemas/APIClientRead"
|
|
134
|
+
example:
|
|
135
|
+
id: "b7d9e3f2-45c8-4a1b-9e6d-8f3a2c7b5e4a"
|
|
136
|
+
name: "Production Service Client"
|
|
137
|
+
description: "API client for production services."
|
|
138
|
+
passwordModificationTimestamp: null
|
|
139
|
+
jwtPublicKey: null
|
|
140
|
+
redirectUrls: []
|
|
141
|
+
scopes:
|
|
142
|
+
- "mail"
|
|
143
|
+
defaultScopes:
|
|
144
|
+
- "mail"
|
|
145
|
+
organizations:
|
|
146
|
+
- "f3e7a9c2-68d4-4b5e-9a1f-7c2d8e4b6a9c"
|
|
147
|
+
active: false
|
|
148
|
+
versionControl: []
|
|
149
|
+
roles:
|
|
150
|
+
- "SALESFORCE_COMMERCE_API"
|
|
151
|
+
roleTenantFilter: "SALESFORCE_COMMERCE_API:abcd_prd"
|
|
152
|
+
tokenEndpointAuthMethod: "client_secret_post"
|
|
153
|
+
lastAuthenticatedDate: null
|
|
154
|
+
disabledTimestamp: null
|
|
155
|
+
createdAt: "2024-12-04T13:45:00Z"
|
|
156
|
+
/dw/rest/v1/apiclients/{apiClientId}:
|
|
157
|
+
get:
|
|
158
|
+
operationId: getApiClient
|
|
159
|
+
summary: Retrieve details of a specific API client.
|
|
160
|
+
description: Gets the API client with the specified ID. Use the expand parameter to retrieve more information on related organizations and roles.
|
|
161
|
+
parameters:
|
|
162
|
+
- name: apiClientId
|
|
163
|
+
in: path
|
|
164
|
+
required: true
|
|
165
|
+
schema:
|
|
166
|
+
type: string
|
|
167
|
+
- name: expand
|
|
168
|
+
in: query
|
|
169
|
+
required: false
|
|
170
|
+
style: form
|
|
171
|
+
explode: false
|
|
172
|
+
example: organizations
|
|
173
|
+
description: Comma-separated list of fields that should be expanded in the response. Ensures that fully inlined organization and/or role objects get returned.
|
|
174
|
+
schema:
|
|
175
|
+
type: array
|
|
176
|
+
items:
|
|
177
|
+
type: string
|
|
178
|
+
enum:
|
|
179
|
+
- organizations
|
|
180
|
+
- roles
|
|
181
|
+
responses:
|
|
182
|
+
"400":
|
|
183
|
+
description: Bad Request
|
|
184
|
+
"401":
|
|
185
|
+
description: Access token is missing or invalid.
|
|
186
|
+
content:
|
|
187
|
+
application/json:
|
|
188
|
+
schema:
|
|
189
|
+
allOf:
|
|
190
|
+
- $ref: "#/components/schemas/ErrorResponse"
|
|
191
|
+
examples:
|
|
192
|
+
errorAuthenticationRequired:
|
|
193
|
+
$ref: "#/components/examples/ErrorAuthenticationRequired"
|
|
194
|
+
404:
|
|
195
|
+
description: No API client found with the specified ID.
|
|
196
|
+
"429":
|
|
197
|
+
$ref: "#/components/responses/RateLimitedError"
|
|
198
|
+
"200":
|
|
199
|
+
description: OK
|
|
200
|
+
headers:
|
|
201
|
+
X-RateLimit-Limit:
|
|
202
|
+
$ref: "#/components/headers/X-RateLimit-Limit"
|
|
203
|
+
X-RateLimit-Remaining:
|
|
204
|
+
$ref: "#/components/headers/X-RateLimit-Remaining"
|
|
205
|
+
X-RateLimit-Reset:
|
|
206
|
+
$ref: "#/components/headers/X-RateLimit-Reset"
|
|
207
|
+
content:
|
|
208
|
+
application/json:
|
|
209
|
+
schema:
|
|
210
|
+
$ref: "#/components/schemas/APIClientRead"
|
|
211
|
+
example:
|
|
212
|
+
id: "b7d9e3f2-45c8-4a1b-9e6d-8f3a2c7b5e4a"
|
|
213
|
+
name: "Production Service Client"
|
|
214
|
+
description: "API client for production services."
|
|
215
|
+
passwordModificationTimestamp: null
|
|
216
|
+
jwtPublicKey: null
|
|
217
|
+
redirectUrls: []
|
|
218
|
+
scopes:
|
|
219
|
+
- "mail"
|
|
220
|
+
defaultScopes:
|
|
221
|
+
- "mail"
|
|
222
|
+
organizations:
|
|
223
|
+
- "f3e7a9c2-68d4-4b5e-9a1f-7c2d8e4b6a9c"
|
|
224
|
+
active: false
|
|
225
|
+
versionControl: []
|
|
226
|
+
roles: []
|
|
227
|
+
roleTenantFilter: null
|
|
228
|
+
tokenEndpointAuthMethod: "client_secret_post"
|
|
229
|
+
lastAuthenticatedDate: null
|
|
230
|
+
disabledTimestamp: null
|
|
231
|
+
createdAt: "2024-12-04T13:45:00Z"
|
|
232
|
+
put:
|
|
233
|
+
operationId: updateApiClient
|
|
234
|
+
summary: Update an API client.
|
|
235
|
+
description: Apply a partial update to an existing API client. An omitted field stays at its previous value and a contained field replaces the previously saved value.
|
|
236
|
+
parameters:
|
|
237
|
+
- name: apiClientId
|
|
238
|
+
in: path
|
|
239
|
+
required: true
|
|
240
|
+
schema:
|
|
241
|
+
type: string
|
|
242
|
+
requestBody:
|
|
243
|
+
content:
|
|
244
|
+
application/json:
|
|
245
|
+
schema:
|
|
246
|
+
$ref: "#/components/schemas/APIClientUpdate"
|
|
247
|
+
example:
|
|
248
|
+
name: "apiclient-staging"
|
|
249
|
+
description: "API client for staging services."
|
|
250
|
+
organizations:
|
|
251
|
+
- "e39dbb7a-63bd-4972-980b-0f6fb3a24bd6"
|
|
252
|
+
password: "SecureP@ssw0rd123"
|
|
253
|
+
required: true
|
|
254
|
+
responses:
|
|
255
|
+
"400":
|
|
256
|
+
description: Bad Request
|
|
257
|
+
content:
|
|
258
|
+
application/json:
|
|
259
|
+
schema:
|
|
260
|
+
allOf:
|
|
261
|
+
- $ref: "#/components/schemas/ErrorResponse"
|
|
262
|
+
examples:
|
|
263
|
+
errorCreatingUserFailed:
|
|
264
|
+
$ref: "#/components/examples/ErrorApiClientValidation"
|
|
265
|
+
"401":
|
|
266
|
+
$ref: "#/components/responses/UnauthorizedError"
|
|
267
|
+
"429":
|
|
268
|
+
$ref: "#/components/responses/RateLimitedError"
|
|
269
|
+
"200":
|
|
270
|
+
description: OK
|
|
271
|
+
headers:
|
|
272
|
+
X-RateLimit-Limit:
|
|
273
|
+
$ref: "#/components/headers/X-RateLimit-Limit"
|
|
274
|
+
X-RateLimit-Remaining:
|
|
275
|
+
$ref: "#/components/headers/X-RateLimit-Remaining"
|
|
276
|
+
X-RateLimit-Reset:
|
|
277
|
+
$ref: "#/components/headers/X-RateLimit-Reset"
|
|
278
|
+
content:
|
|
279
|
+
application/json:
|
|
280
|
+
schema:
|
|
281
|
+
$ref: "#/components/schemas/APIClientRead"
|
|
282
|
+
example:
|
|
283
|
+
id: "b7d9e3f2-45c8-4a1b-9e6d-8f3a2c7b5e4a"
|
|
284
|
+
name: "Production Service Client"
|
|
285
|
+
description: "API Client for production services"
|
|
286
|
+
passwordModificationTimestamp: null
|
|
287
|
+
jwtPublicKey: null
|
|
288
|
+
redirectUrls: []
|
|
289
|
+
scopes:
|
|
290
|
+
- "mail"
|
|
291
|
+
defaultScopes:
|
|
292
|
+
- "mail"
|
|
293
|
+
organizations:
|
|
294
|
+
- "f3e7a9c2-68d4-4b5e-9a1f-7c2d8e4b6a9c"
|
|
295
|
+
active: false
|
|
296
|
+
versionControl: []
|
|
297
|
+
roles: []
|
|
298
|
+
roleTenantFilter: null
|
|
299
|
+
tokenEndpointAuthMethod: "client_secret_post"
|
|
300
|
+
lastAuthenticatedDate: null
|
|
301
|
+
disabledTimestamp: null
|
|
302
|
+
createdAt: "2024-12-04T13:45:00Z"
|
|
303
|
+
delete:
|
|
304
|
+
operationId: deleteApiClient
|
|
305
|
+
summary: Delete an API client.
|
|
306
|
+
description: |
|
|
307
|
+
Only API clients that have been disabled for at least 7 days can be deleted.
|
|
308
|
+
parameters:
|
|
309
|
+
- name: apiClientId
|
|
310
|
+
in: path
|
|
311
|
+
required: true
|
|
312
|
+
schema:
|
|
313
|
+
type: string
|
|
314
|
+
responses:
|
|
315
|
+
"400":
|
|
316
|
+
description: Bad Request
|
|
317
|
+
"401":
|
|
318
|
+
description: Access token is missing or invalid.
|
|
319
|
+
content:
|
|
320
|
+
application/json:
|
|
321
|
+
schema:
|
|
322
|
+
allOf:
|
|
323
|
+
- $ref: "#/components/schemas/ErrorResponse"
|
|
324
|
+
examples:
|
|
325
|
+
errorAuthenticationRequired:
|
|
326
|
+
$ref: "#/components/examples/ErrorAuthenticationRequired"
|
|
327
|
+
"412":
|
|
328
|
+
description: Precondition Failed - API client must be disabled for at least 7 days before deletion.
|
|
329
|
+
"429":
|
|
330
|
+
$ref: "#/components/responses/RateLimitedError"
|
|
331
|
+
"204":
|
|
332
|
+
description: The resource was deleted successfully.
|
|
333
|
+
headers:
|
|
334
|
+
X-RateLimit-Limit:
|
|
335
|
+
$ref: "#/components/headers/X-RateLimit-Limit"
|
|
336
|
+
X-RateLimit-Remaining:
|
|
337
|
+
$ref: "#/components/headers/X-RateLimit-Remaining"
|
|
338
|
+
X-RateLimit-Reset:
|
|
339
|
+
$ref: "#/components/headers/X-RateLimit-Reset"
|
|
340
|
+
/dw/rest/v1/apiclients/{apiClientId}/password:
|
|
341
|
+
put:
|
|
342
|
+
operationId: changePassword
|
|
343
|
+
summary: Change the password for an API client.
|
|
344
|
+
description: Update an API client's password by providing the current and new password.
|
|
345
|
+
parameters:
|
|
346
|
+
- name: apiClientId
|
|
347
|
+
in: path
|
|
348
|
+
required: true
|
|
349
|
+
schema:
|
|
350
|
+
type: string
|
|
351
|
+
requestBody:
|
|
352
|
+
content:
|
|
353
|
+
application/json:
|
|
354
|
+
schema:
|
|
355
|
+
type: object
|
|
356
|
+
required:
|
|
357
|
+
- old
|
|
358
|
+
- new
|
|
359
|
+
properties:
|
|
360
|
+
old:
|
|
361
|
+
type: string
|
|
362
|
+
description: Current password.
|
|
363
|
+
new:
|
|
364
|
+
type: string
|
|
365
|
+
description: New password.
|
|
366
|
+
maxLength: 128
|
|
367
|
+
minLength: 12
|
|
368
|
+
required: true
|
|
369
|
+
responses:
|
|
370
|
+
"400":
|
|
371
|
+
description: Bad Request
|
|
372
|
+
"401":
|
|
373
|
+
description: Access token is missing or invalid.
|
|
374
|
+
content:
|
|
375
|
+
application/json:
|
|
376
|
+
schema:
|
|
377
|
+
allOf:
|
|
378
|
+
- $ref: "#/components/schemas/ErrorResponse"
|
|
379
|
+
examples:
|
|
380
|
+
errorAuthenticationRequired:
|
|
381
|
+
$ref: "#/components/examples/ErrorAuthenticationRequired"
|
|
382
|
+
"403":
|
|
383
|
+
description: Principal lacks permission to change API client password.
|
|
384
|
+
"429":
|
|
385
|
+
$ref: "#/components/responses/RateLimitedError"
|
|
386
|
+
"204":
|
|
387
|
+
description: No Content - Password changed successfully
|
|
388
|
+
headers:
|
|
389
|
+
X-RateLimit-Limit:
|
|
390
|
+
$ref: "#/components/headers/X-RateLimit-Limit"
|
|
391
|
+
X-RateLimit-Remaining:
|
|
392
|
+
$ref: "#/components/headers/X-RateLimit-Remaining"
|
|
393
|
+
X-RateLimit-Reset:
|
|
394
|
+
$ref: "#/components/headers/X-RateLimit-Reset"
|
|
395
|
+
components:
|
|
396
|
+
examples:
|
|
397
|
+
ErrorApiClientValidation:
|
|
398
|
+
summary: 400 Bad request
|
|
399
|
+
description: Response for `400 Bad request` status
|
|
400
|
+
value: >
|
|
401
|
+
{
|
|
402
|
+
"errors": [
|
|
403
|
+
{
|
|
404
|
+
"message": "invalid argument APIClient",
|
|
405
|
+
"code": "invalid argument APIClient",
|
|
406
|
+
"fieldErrors": [
|
|
407
|
+
{
|
|
408
|
+
"codes": [
|
|
409
|
+
"NotNull.APIClient.name",
|
|
410
|
+
"NotNull.name",
|
|
411
|
+
"NotNull.java.lang.String",
|
|
412
|
+
"NotNull"
|
|
413
|
+
],
|
|
414
|
+
"arguments": null,
|
|
415
|
+
"defaultMessage": "must not be null",
|
|
416
|
+
"objectName": "APIClient",
|
|
417
|
+
"field": "name",
|
|
418
|
+
"rejectedValue": null,
|
|
419
|
+
"bindingFailure": false,
|
|
420
|
+
"code": "NotNull"
|
|
421
|
+
}
|
|
422
|
+
]
|
|
423
|
+
}
|
|
424
|
+
]
|
|
425
|
+
}
|
|
426
|
+
ErrorAuthenticationRequired:
|
|
427
|
+
summary: 401 Unauthorized
|
|
428
|
+
description: Response for `401 Unauthorized` status
|
|
429
|
+
value: >
|
|
430
|
+
{
|
|
431
|
+
"message": "Full authentication is required to access this resource",
|
|
432
|
+
"code": "InsufficientAuthenticationException",
|
|
433
|
+
"fieldErrors": null
|
|
434
|
+
}
|
|
435
|
+
responses:
|
|
436
|
+
UnauthorizedError:
|
|
437
|
+
description: Access token is missing or invalid
|
|
438
|
+
content:
|
|
439
|
+
application/json:
|
|
440
|
+
schema:
|
|
441
|
+
type: object
|
|
442
|
+
properties:
|
|
443
|
+
errors:
|
|
444
|
+
type: array
|
|
445
|
+
description: The list of errors.
|
|
446
|
+
items:
|
|
447
|
+
type: object
|
|
448
|
+
properties:
|
|
449
|
+
message:
|
|
450
|
+
type: string
|
|
451
|
+
description: Error message.
|
|
452
|
+
code:
|
|
453
|
+
type: string
|
|
454
|
+
description: Error code.
|
|
455
|
+
fieldErrors:
|
|
456
|
+
type: array
|
|
457
|
+
nullable: true
|
|
458
|
+
description: Field-specific errors.
|
|
459
|
+
items:
|
|
460
|
+
type: object
|
|
461
|
+
properties:
|
|
462
|
+
field:
|
|
463
|
+
type: string
|
|
464
|
+
description: The field that contained the erroneous value.
|
|
465
|
+
rejectedValue:
|
|
466
|
+
type: object
|
|
467
|
+
description: The value that was rejected.
|
|
468
|
+
bindingFailure:
|
|
469
|
+
type: boolean
|
|
470
|
+
description: Whether this error was caused by failed binding (e.g. type mismatch).
|
|
471
|
+
example:
|
|
472
|
+
errors:
|
|
473
|
+
- message: "Full authentication is required to access this resource"
|
|
474
|
+
code: "InsufficientAuthenticationException"
|
|
475
|
+
fieldErrors: null
|
|
476
|
+
RateLimitedError:
|
|
477
|
+
description: Request has been rate-limited. The X-RateLimit-* headers can be used to improve retry behavior.
|
|
478
|
+
headers:
|
|
479
|
+
X-RateLimit-Limit:
|
|
480
|
+
$ref: "#/components/headers/X-RateLimit-Limit"
|
|
481
|
+
X-RateLimit-Remaining:
|
|
482
|
+
$ref: "#/components/headers/X-RateLimit-Remaining"
|
|
483
|
+
X-RateLimit-Reset:
|
|
484
|
+
$ref: "#/components/headers/X-RateLimit-Reset"
|
|
485
|
+
securitySchemes:
|
|
486
|
+
AmOAuth2:
|
|
487
|
+
type: oauth2
|
|
488
|
+
description: Account Manager OAuth 2.0 bearer token authentication.
|
|
489
|
+
flows:
|
|
490
|
+
clientCredentials:
|
|
491
|
+
tokenUrl: https://account.demandware.com/dwsso/oauth2/access_token
|
|
492
|
+
scopes: {}
|
|
493
|
+
authorizationCode:
|
|
494
|
+
authorizationUrl: https://account.demandware.com/dwsso/oauth2/authorize
|
|
495
|
+
tokenUrl: https://account.demandware.com/dwsso/oauth2/access_token
|
|
496
|
+
scopes: {}
|
|
497
|
+
headers:
|
|
498
|
+
X-RateLimit-Limit:
|
|
499
|
+
schema:
|
|
500
|
+
type: integer
|
|
501
|
+
description: Rate limit per minute.
|
|
502
|
+
X-RateLimit-Remaining:
|
|
503
|
+
schema:
|
|
504
|
+
type: integer
|
|
505
|
+
description: The number of requests left in the current time window.
|
|
506
|
+
X-RateLimit-Reset:
|
|
507
|
+
schema:
|
|
508
|
+
type: string
|
|
509
|
+
format: date-time
|
|
510
|
+
description: The UTC timestamp at which the current rate limit window resets.
|
|
511
|
+
schemas:
|
|
512
|
+
APIClientCreate:
|
|
513
|
+
type: object
|
|
514
|
+
description: Request body for creating a new API client.
|
|
515
|
+
required:
|
|
516
|
+
- name
|
|
517
|
+
- organizations
|
|
518
|
+
- password
|
|
519
|
+
properties:
|
|
520
|
+
name:
|
|
521
|
+
maxLength: 200
|
|
522
|
+
minLength: 1
|
|
523
|
+
type: string
|
|
524
|
+
description: Name of the API client.
|
|
525
|
+
description:
|
|
526
|
+
maxLength: 256
|
|
527
|
+
minLength: 0
|
|
528
|
+
type: string
|
|
529
|
+
description: Description of the API client.
|
|
530
|
+
jwtPublicKey:
|
|
531
|
+
maxLength: 8192
|
|
532
|
+
minLength: 0
|
|
533
|
+
nullable: true
|
|
534
|
+
type: string
|
|
535
|
+
description: Public key for JWT authentication.
|
|
536
|
+
redirectUrls:
|
|
537
|
+
type: array
|
|
538
|
+
description: List of allowed redirect URLs for OAuth flows.
|
|
539
|
+
items:
|
|
540
|
+
type: string
|
|
541
|
+
scopes:
|
|
542
|
+
type: array
|
|
543
|
+
description: OAuth scopes available to this API client.
|
|
544
|
+
items:
|
|
545
|
+
type: string
|
|
546
|
+
defaultScopes:
|
|
547
|
+
type: array
|
|
548
|
+
description: Default OAuth scopes granted to this API client.
|
|
549
|
+
items:
|
|
550
|
+
type: string
|
|
551
|
+
organizations:
|
|
552
|
+
uniqueItems: true
|
|
553
|
+
type: array
|
|
554
|
+
description: List of organization IDs this API client belongs to.
|
|
555
|
+
items:
|
|
556
|
+
type: string
|
|
557
|
+
title: Organization ID
|
|
558
|
+
active:
|
|
559
|
+
type: boolean
|
|
560
|
+
default: false
|
|
561
|
+
description: Indicates whether the API client is active. New API clients are created as inactive (false) by default.
|
|
562
|
+
versionControl:
|
|
563
|
+
type: array
|
|
564
|
+
description: Version control system identifiers.
|
|
565
|
+
items:
|
|
566
|
+
type: string
|
|
567
|
+
roles:
|
|
568
|
+
uniqueItems: true
|
|
569
|
+
type: array
|
|
570
|
+
description: List of IDs of the roles this API client possesses.
|
|
571
|
+
items:
|
|
572
|
+
type: string
|
|
573
|
+
title: Role ID
|
|
574
|
+
roleTenantFilter:
|
|
575
|
+
$ref: "#/components/schemas/RoleTenantFilter"
|
|
576
|
+
tokenEndpointAuthMethod:
|
|
577
|
+
description: Enforced for OIDC flows.
|
|
578
|
+
type: string
|
|
579
|
+
enum:
|
|
580
|
+
- private_key_jwt
|
|
581
|
+
- client_secret_post
|
|
582
|
+
- client_secret_basic
|
|
583
|
+
- none
|
|
584
|
+
password:
|
|
585
|
+
type: string
|
|
586
|
+
maxLength: 128
|
|
587
|
+
minLength: 12
|
|
588
|
+
APIClientUpdate:
|
|
589
|
+
type: object
|
|
590
|
+
description: Request body for updating an existing API client.
|
|
591
|
+
properties:
|
|
592
|
+
name:
|
|
593
|
+
maxLength: 200
|
|
594
|
+
minLength: 1
|
|
595
|
+
type: string
|
|
596
|
+
description: Name of the API client.
|
|
597
|
+
description:
|
|
598
|
+
maxLength: 256
|
|
599
|
+
minLength: 0
|
|
600
|
+
type: string
|
|
601
|
+
description: Description of the API client.
|
|
602
|
+
jwtPublicKey:
|
|
603
|
+
maxLength: 8192
|
|
604
|
+
minLength: 0
|
|
605
|
+
nullable: true
|
|
606
|
+
type: string
|
|
607
|
+
description: Public key for JWT authentication.
|
|
608
|
+
redirectUrls:
|
|
609
|
+
type: array
|
|
610
|
+
description: List of allowed redirect URLs for OAuth flows.
|
|
611
|
+
items:
|
|
612
|
+
type: string
|
|
613
|
+
scopes:
|
|
614
|
+
type: array
|
|
615
|
+
description: OAuth scopes available to this API client.
|
|
616
|
+
items:
|
|
617
|
+
type: string
|
|
618
|
+
defaultScopes:
|
|
619
|
+
type: array
|
|
620
|
+
description: Default OAuth scopes granted to this API client.
|
|
621
|
+
items:
|
|
622
|
+
type: string
|
|
623
|
+
organizations:
|
|
624
|
+
uniqueItems: true
|
|
625
|
+
type: array
|
|
626
|
+
description: List of organization IDs this API client belongs to.
|
|
627
|
+
items:
|
|
628
|
+
type: string
|
|
629
|
+
title: Organization ID
|
|
630
|
+
active:
|
|
631
|
+
type: boolean
|
|
632
|
+
default: false
|
|
633
|
+
description: Indicates whether the API client is active. New API clients are created as inactive (false) by default.
|
|
634
|
+
versionControl:
|
|
635
|
+
type: array
|
|
636
|
+
description: Version control system identifiers.
|
|
637
|
+
items:
|
|
638
|
+
type: string
|
|
639
|
+
roles:
|
|
640
|
+
uniqueItems: true
|
|
641
|
+
type: array
|
|
642
|
+
description: List of IDs of the roles this API client possesses.
|
|
643
|
+
items:
|
|
644
|
+
type: string
|
|
645
|
+
title: Role ID
|
|
646
|
+
roleTenantFilter:
|
|
647
|
+
$ref: "#/components/schemas/RoleTenantFilter"
|
|
648
|
+
tokenEndpointAuthMethod:
|
|
649
|
+
description: Enforced for OIDC flows.
|
|
650
|
+
type: string
|
|
651
|
+
enum:
|
|
652
|
+
- private_key_jwt
|
|
653
|
+
- client_secret_post
|
|
654
|
+
- client_secret_basic
|
|
655
|
+
- none
|
|
656
|
+
APIClientRead:
|
|
657
|
+
type: object
|
|
658
|
+
description: API client object returned in read operations.
|
|
659
|
+
properties:
|
|
660
|
+
passwordModificationTimestamp:
|
|
661
|
+
type: integer
|
|
662
|
+
readOnly: true
|
|
663
|
+
nullable: true
|
|
664
|
+
format: int64
|
|
665
|
+
description: Timestamp of the last password modification.
|
|
666
|
+
name:
|
|
667
|
+
maxLength: 200
|
|
668
|
+
minLength: 1
|
|
669
|
+
type: string
|
|
670
|
+
description: Name of the API client.
|
|
671
|
+
description:
|
|
672
|
+
maxLength: 256
|
|
673
|
+
minLength: 0
|
|
674
|
+
type: string
|
|
675
|
+
description: Description of the API client.
|
|
676
|
+
jwtPublicKey:
|
|
677
|
+
maxLength: 8192
|
|
678
|
+
minLength: 0
|
|
679
|
+
nullable: true
|
|
680
|
+
type: string
|
|
681
|
+
description: Public key for JWT authentication.
|
|
682
|
+
redirectUrls:
|
|
683
|
+
type: array
|
|
684
|
+
description: List of allowed redirect URLs for OAuth flows.
|
|
685
|
+
items:
|
|
686
|
+
type: string
|
|
687
|
+
scopes:
|
|
688
|
+
type: array
|
|
689
|
+
description: OAuth scopes available to this API client.
|
|
690
|
+
items:
|
|
691
|
+
type: string
|
|
692
|
+
defaultScopes:
|
|
693
|
+
type: array
|
|
694
|
+
description: Default OAuth scopes granted to this API client.
|
|
695
|
+
items:
|
|
696
|
+
type: string
|
|
697
|
+
organizations:
|
|
698
|
+
uniqueItems: true
|
|
699
|
+
type: array
|
|
700
|
+
description: List of organization IDs this API client belongs to, or organization objects in case the expand parameter was used.
|
|
701
|
+
items:
|
|
702
|
+
oneOf:
|
|
703
|
+
- type: string
|
|
704
|
+
title: Organization ID
|
|
705
|
+
- $ref: "#/components/schemas/Organization"
|
|
706
|
+
active:
|
|
707
|
+
type: boolean
|
|
708
|
+
default: false
|
|
709
|
+
description: Indicates whether the API client is active. New API clients are created as inactive (false) by default.
|
|
710
|
+
versionControl:
|
|
711
|
+
type: array
|
|
712
|
+
description: Version control system identifiers.
|
|
713
|
+
items:
|
|
714
|
+
type: string
|
|
715
|
+
roles:
|
|
716
|
+
uniqueItems: true
|
|
717
|
+
type: array
|
|
718
|
+
description: List of role IDs assigned to this API client, or role objects in case the expand parameter was used.
|
|
719
|
+
items:
|
|
720
|
+
oneOf:
|
|
721
|
+
- type: string
|
|
722
|
+
title: Role ID
|
|
723
|
+
- $ref: "#/components/schemas/Role"
|
|
724
|
+
roleTenantFilter:
|
|
725
|
+
$ref: "#/components/schemas/RoleTenantFilter"
|
|
726
|
+
tokenEndpointAuthMethod:
|
|
727
|
+
description: Enforced for OIDC flows.
|
|
728
|
+
type: string
|
|
729
|
+
enum:
|
|
730
|
+
- private_key_jwt
|
|
731
|
+
- client_secret_post
|
|
732
|
+
- client_secret_basic
|
|
733
|
+
- none
|
|
734
|
+
lastAuthenticatedDate:
|
|
735
|
+
type: string
|
|
736
|
+
format: date
|
|
737
|
+
readOnly: true
|
|
738
|
+
nullable: true
|
|
739
|
+
description: Date of the last successful authentication.
|
|
740
|
+
disabledTimestamp:
|
|
741
|
+
type: string
|
|
742
|
+
format: date-time
|
|
743
|
+
readOnly: true
|
|
744
|
+
nullable: true
|
|
745
|
+
description: Timestamp when the API client was disabled.
|
|
746
|
+
createdAt:
|
|
747
|
+
type: string
|
|
748
|
+
format: date-time
|
|
749
|
+
readOnly: true
|
|
750
|
+
description: Timestamp when the API client was created.
|
|
751
|
+
roleTenantFilterMap:
|
|
752
|
+
readOnly: true
|
|
753
|
+
type: object
|
|
754
|
+
description: Map of role tenant filter assignments.
|
|
755
|
+
id:
|
|
756
|
+
type: string
|
|
757
|
+
readOnly: true
|
|
758
|
+
description: Unique identifier of the API client.
|
|
759
|
+
Pageable:
|
|
760
|
+
type: object
|
|
761
|
+
description: Pagination parameters for list operations.
|
|
762
|
+
properties:
|
|
763
|
+
page:
|
|
764
|
+
minimum: 0
|
|
765
|
+
type: integer
|
|
766
|
+
format: int32
|
|
767
|
+
description: Zero-based page index.
|
|
768
|
+
size:
|
|
769
|
+
minimum: 1
|
|
770
|
+
default: 20
|
|
771
|
+
maximum: 4000
|
|
772
|
+
type: integer
|
|
773
|
+
format: int32
|
|
774
|
+
description: Number of items to return per page.
|
|
775
|
+
APIClientCollection:
|
|
776
|
+
type: object
|
|
777
|
+
description: A paginated collection of API clients.
|
|
778
|
+
properties:
|
|
779
|
+
content:
|
|
780
|
+
type: array
|
|
781
|
+
items:
|
|
782
|
+
$ref: "#/components/schemas/APIClientRead"
|
|
783
|
+
Role:
|
|
784
|
+
type: object
|
|
785
|
+
description: A role defines permissions and access levels that can be assigned to Users and API Clients.
|
|
786
|
+
properties:
|
|
787
|
+
description:
|
|
788
|
+
type: string
|
|
789
|
+
description: Description of the role.
|
|
790
|
+
roleEnumName:
|
|
791
|
+
maxLength: 50
|
|
792
|
+
minLength: 0
|
|
793
|
+
type: string
|
|
794
|
+
description: Enumeration name of the role.
|
|
795
|
+
permissions:
|
|
796
|
+
uniqueItems: true
|
|
797
|
+
type: array
|
|
798
|
+
description: List of permissions granted by this role.
|
|
799
|
+
items:
|
|
800
|
+
type: string
|
|
801
|
+
scope:
|
|
802
|
+
type: string
|
|
803
|
+
description: Scope level of the role (global or instance-specific).
|
|
804
|
+
enum:
|
|
805
|
+
- GLOBAL
|
|
806
|
+
- INSTANCE
|
|
807
|
+
targetType:
|
|
808
|
+
type: string
|
|
809
|
+
nullable: true
|
|
810
|
+
description: Type of entity this role can be assigned to.
|
|
811
|
+
enum:
|
|
812
|
+
- ApiClient
|
|
813
|
+
- User
|
|
814
|
+
twoFAEnabled:
|
|
815
|
+
type: boolean
|
|
816
|
+
description: Indicates if two-factor authentication is required for this role.
|
|
817
|
+
id:
|
|
818
|
+
type: string
|
|
819
|
+
description: Unique identifier of the role.
|
|
820
|
+
Organization:
|
|
821
|
+
type: object
|
|
822
|
+
description: An organization represents a customer, partner, or internal entity within the Account Manager system.
|
|
823
|
+
properties:
|
|
824
|
+
name:
|
|
825
|
+
type: string
|
|
826
|
+
description: Name of the organization.
|
|
827
|
+
contactUsers:
|
|
828
|
+
type: array
|
|
829
|
+
description: List of contact user IDs.
|
|
830
|
+
items:
|
|
831
|
+
type: string
|
|
832
|
+
realms:
|
|
833
|
+
type: array
|
|
834
|
+
description: List of realm identifiers.
|
|
835
|
+
items:
|
|
836
|
+
type: string
|
|
837
|
+
passwordMinEntropy:
|
|
838
|
+
type: integer
|
|
839
|
+
description: Minimum password entropy requirement.
|
|
840
|
+
passwordHistorySize:
|
|
841
|
+
type: integer
|
|
842
|
+
description: Number of previous passwords to remember.
|
|
843
|
+
passwordDaysExpiration:
|
|
844
|
+
type: integer
|
|
845
|
+
description: Number of days until password expires.
|
|
846
|
+
sfAccountIds:
|
|
847
|
+
type: array
|
|
848
|
+
description: Salesforce account identifiers.
|
|
849
|
+
items:
|
|
850
|
+
type: string
|
|
851
|
+
type:
|
|
852
|
+
type: string
|
|
853
|
+
description: Type of organization.
|
|
854
|
+
enum:
|
|
855
|
+
- CUSTOMER
|
|
856
|
+
- PARTNER
|
|
857
|
+
- INTERNAL
|
|
858
|
+
twoFARoles:
|
|
859
|
+
type: array
|
|
860
|
+
description: List of role IDs that require two-factor authentication.
|
|
861
|
+
items:
|
|
862
|
+
type: string
|
|
863
|
+
twoFAEnabled:
|
|
864
|
+
type: boolean
|
|
865
|
+
description: Indicates if two-factor authentication is enabled for the organization.
|
|
866
|
+
sfMyDomain:
|
|
867
|
+
type: string
|
|
868
|
+
nullable: true
|
|
869
|
+
description: Salesforce My Domain name.
|
|
870
|
+
sfMyDomainSuffix:
|
|
871
|
+
type: string
|
|
872
|
+
description: Salesforce My Domain suffix.
|
|
873
|
+
sfMyDomainVerified:
|
|
874
|
+
type: boolean
|
|
875
|
+
description: Indicates if Salesforce My Domain is verified.
|
|
876
|
+
sfMyDomainVerificationTimestamp:
|
|
877
|
+
type: string
|
|
878
|
+
format: date-time
|
|
879
|
+
nullable: true
|
|
880
|
+
description: Timestamp when Salesforce My Domain was verified.
|
|
881
|
+
sfIdentityFederation:
|
|
882
|
+
type: string
|
|
883
|
+
description: Salesforce identity federation status.
|
|
884
|
+
enum:
|
|
885
|
+
- DISABLED
|
|
886
|
+
- ENABLED
|
|
887
|
+
justInTimeUserProvisioningEnabled:
|
|
888
|
+
type: boolean
|
|
889
|
+
description: Indicates if just-in-time user provisioning is enabled.
|
|
890
|
+
allowedVerifierTypes:
|
|
891
|
+
type: array
|
|
892
|
+
description: List of allowed verifier types for authentication.
|
|
893
|
+
items:
|
|
894
|
+
type: string
|
|
895
|
+
disableInactiveUsers:
|
|
896
|
+
type: boolean
|
|
897
|
+
description: Indicates if inactive users should be automatically disabled.
|
|
898
|
+
inactiveUserDays:
|
|
899
|
+
type: integer
|
|
900
|
+
description: Number of days before a user is considered inactive.
|
|
901
|
+
id:
|
|
902
|
+
type: string
|
|
903
|
+
readOnly: true
|
|
904
|
+
description: Unique identifier of the organization.
|
|
905
|
+
ErrorResponse:
|
|
906
|
+
type: object
|
|
907
|
+
description: Standard error response format returned when API requests fail.
|
|
908
|
+
properties:
|
|
909
|
+
errors:
|
|
910
|
+
type: array
|
|
911
|
+
description: The list of errors
|
|
912
|
+
items:
|
|
913
|
+
type: object
|
|
914
|
+
properties:
|
|
915
|
+
message:
|
|
916
|
+
type: string
|
|
917
|
+
description: Error message
|
|
918
|
+
code:
|
|
919
|
+
type: string
|
|
920
|
+
description: Error code
|
|
921
|
+
fieldErrors:
|
|
922
|
+
type: array
|
|
923
|
+
nullable: true
|
|
924
|
+
description: Field-specific errors
|
|
925
|
+
items:
|
|
926
|
+
type: object
|
|
927
|
+
properties:
|
|
928
|
+
codes:
|
|
929
|
+
type: array
|
|
930
|
+
items:
|
|
931
|
+
type: string
|
|
932
|
+
description: List of error codes.
|
|
933
|
+
arguments:
|
|
934
|
+
nullable: true
|
|
935
|
+
description: Arguments for the error message.
|
|
936
|
+
defaultMessage:
|
|
937
|
+
type: string
|
|
938
|
+
description: Default error message.
|
|
939
|
+
objectName:
|
|
940
|
+
type: string
|
|
941
|
+
description: Name of the object that failed validation.
|
|
942
|
+
field:
|
|
943
|
+
type: string
|
|
944
|
+
description: The field that contained the erroneous value
|
|
945
|
+
rejectedValue:
|
|
946
|
+
nullable: true
|
|
947
|
+
description: The value that was rejected
|
|
948
|
+
bindingFailure:
|
|
949
|
+
type: boolean
|
|
950
|
+
description: Whether this error was caused by failed binding (e.g. type mismatch)
|
|
951
|
+
code:
|
|
952
|
+
type: string
|
|
953
|
+
description: Error code.
|
|
954
|
+
RoleTenantFilter:
|
|
955
|
+
type: string
|
|
956
|
+
pattern: '(\w+:\w{4,}_\w{3,}(,\w{4,}_\w{3,})*(;)?)*'
|
|
957
|
+
description: |
|
|
958
|
+
Filter for role tenant assignments. Format: ROLE_ENUM_NAME:instance_id,instance_id;ROLE_ENUM_NAME:instance_id
|
|
959
|
+
- Role enum names are separated by semicolons (;)
|
|
960
|
+
- Each role enum name is followed by a colon (:) and its tenant filters
|
|
961
|
+
- Tenant filters are comma-separated (,)
|
|
962
|
+
- Each tenant filter consists of a 4-character realm and 3-character instance_id separated by underscore (_)
|
|
963
|
+
- A special case is an instance_id ending in _sbx, as it gives access to all sandboxes of a realm
|
|
964
|
+
|
|
965
|
+
Example: CC_USER:aabc_prd,aabc_t12;LOGCENTER_USER:aamn_sbx
|