@contiva/sap-integration-suite-client
Version:
SAP Cloud Platform Integration API Client
841 lines • 101 kB
JavaScript
"use strict";
/* eslint-disable */
/* tslint:disable */
// @ts-nocheck
/*
* ---------------------------------------------------------------
* ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##
* ## ##
* ## AUTHOR: acacode ##
* ## SOURCE: https://github.com/acacode/swagger-typescript-api ##
* ---------------------------------------------------------------
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.Api = exports.HttpClient = exports.ContentType = void 0;
var ContentType;
(function (ContentType) {
ContentType["Json"] = "application/json";
ContentType["FormData"] = "multipart/form-data";
ContentType["UrlEncoded"] = "application/x-www-form-urlencoded";
ContentType["Text"] = "text/plain";
})(ContentType || (exports.ContentType = ContentType = {}));
class HttpClient {
constructor(apiConfig = {}) {
this.baseUrl = "https://{Account Short Name}-tmn.{SSL Host}.{Landscapehost}/api/v1";
this.securityData = null;
this.abortControllers = new Map();
this.customFetch = (...fetchParams) => fetch(...fetchParams);
this.baseApiParams = {
credentials: "same-origin",
headers: {},
redirect: "follow",
referrerPolicy: "no-referrer",
};
this.setSecurityData = (data) => {
this.securityData = data;
};
this.contentFormatters = {
[ContentType.Json]: (input) => input !== null && (typeof input === "object" || typeof input === "string") ? JSON.stringify(input) : input,
[ContentType.Text]: (input) => (input !== null && typeof input !== "string" ? JSON.stringify(input) : input),
[ContentType.FormData]: (input) => Object.keys(input || {}).reduce((formData, key) => {
const property = input[key];
formData.append(key, property instanceof Blob
? property
: typeof property === "object" && property !== null
? JSON.stringify(property)
: `${property}`);
return formData;
}, new FormData()),
[ContentType.UrlEncoded]: (input) => this.toQueryString(input),
};
this.createAbortSignal = (cancelToken) => {
if (this.abortControllers.has(cancelToken)) {
const abortController = this.abortControllers.get(cancelToken);
if (abortController) {
return abortController.signal;
}
return void 0;
}
const abortController = new AbortController();
this.abortControllers.set(cancelToken, abortController);
return abortController.signal;
};
this.abortRequest = (cancelToken) => {
const abortController = this.abortControllers.get(cancelToken);
if (abortController) {
abortController.abort();
this.abortControllers.delete(cancelToken);
}
};
this.request = async ({ body, secure, path, type, query, format, baseUrl, cancelToken, ...params }) => {
const secureParams = ((typeof secure === "boolean" ? secure : this.baseApiParams.secure) &&
this.securityWorker &&
(await this.securityWorker(this.securityData))) ||
{};
const requestParams = this.mergeRequestParams(params, secureParams);
const queryString = query && this.toQueryString(query);
const payloadFormatter = this.contentFormatters[type || ContentType.Json];
const responseFormat = format || requestParams.format;
return this.customFetch(`${baseUrl || this.baseUrl || ""}${path}${queryString ? `?${queryString}` : ""}`, {
...requestParams,
headers: {
...(requestParams.headers || {}),
...(type && type !== ContentType.FormData ? { "Content-Type": type } : {}),
},
signal: (cancelToken ? this.createAbortSignal(cancelToken) : requestParams.signal) || null,
body: typeof body === "undefined" || body === null ? null : payloadFormatter(body),
}).then(async (response) => {
const r = response.clone();
r.data = null;
r.error = null;
const data = !responseFormat
? r
: await response[responseFormat]()
.then((data) => {
if (r.ok) {
r.data = data;
}
else {
r.error = data;
}
return r;
})
.catch((e) => {
r.error = e;
return r;
});
if (cancelToken) {
this.abortControllers.delete(cancelToken);
}
if (!response.ok)
throw data;
return data;
});
};
Object.assign(this, apiConfig);
}
encodeQueryParam(key, value) {
const encodedKey = encodeURIComponent(key);
return `${encodedKey}=${encodeURIComponent(typeof value === "number" ? value : `${value}`)}`;
}
addQueryParam(query, key) {
return this.encodeQueryParam(key, query[key]);
}
addArrayQueryParam(query, key) {
const value = query[key];
return value.map((v) => this.encodeQueryParam(key, v)).join("&");
}
toQueryString(rawQuery) {
const query = rawQuery || {};
const keys = Object.keys(query).filter((key) => "undefined" !== typeof query[key]);
return keys
.map((key) => (Array.isArray(query[key]) ? this.addArrayQueryParam(query, key) : this.addQueryParam(query, key)))
.join("&");
}
addQueryParams(rawQuery) {
const queryString = this.toQueryString(rawQuery);
return queryString ? `?${queryString}` : "";
}
mergeRequestParams(params1, params2) {
return {
...this.baseApiParams,
...params1,
...(params2 || {}),
headers: {
...(this.baseApiParams.headers || {}),
...(params1.headers || {}),
...((params2 && params2.headers) || {}),
},
};
}
}
exports.HttpClient = HttpClient;
/**
* @title Integration Content
* @version 1.0.0
* @baseUrl https://{Account Short Name}-tmn.{SSL Host}.{Landscapehost}/api/v1
* @externalDocs https://help.sap.com/docs/SAP_INTEGRATION_SUITE/51ab953548be4459bfe8539ecaeee98d/d1679a80543f46509a7329243b595bdb.html
*
* Integration content enables you to read, update, deploy, or undeploy integration artifacts (such as integration flows) on a tenant.
* This API is implemented based on OData version 2 specification.
* If you like to request the OData API on your tenant, you need to know how to find out the address of the HTTP call. For more information, see [HTTP Calls and URL Components](https://help.sap.com/docs/SAP_INTEGRATION_SUITE/51ab953548be4459bfe8539ecaeee98d/ca75e12fc5904d96a038aef6c00db5fc.html).
* If you face problems using the API, you can create a ticket. Check out for the right support component on this page: [Support Components](https://help.sap.com/docs/SAP_INTEGRATION_SUITE/51ab953548be4459bfe8539ecaeee98d/bd2d883ae8ee4e2696038be7741d93d7.html).
*/
class Api extends HttpClient {
constructor() {
super(...arguments);
/**
* @description You can use the following request to get the CSRF token for this session, which is required for write access via POST, PUT and DELETE operations. Copy the received X-CSRF-Token from the response header.<br> **In API sandbox this request is not relevant!**
*
* @tags CSRF Token Handling
* @name GetRoot
* @summary Get CSRF token.
* @request GET:/
* @secure
*/
this.getRoot = (params = {}) => this.request({
path: `/`,
method: "GET",
secure: true,
...params,
});
this.copyIntegrationPackage = {
/**
* @description You can use the following request to copy an integration package from 'Discover' to 'Design' section. If the package already exists, either the existing package can be overwritten or a new package with a suffix for name and Id can be created. <br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to create an integration package.
*
* @tags Integration Package - Discover
* @name CopyIntegrationPackageCreate
* @summary Copy an integration package.
* @request POST:/CopyIntegrationPackage
* @secure
*/
copyIntegrationPackageCreate: (query, params = {}) => this.request({
path: `/CopyIntegrationPackage`,
method: "POST",
query: query,
secure: true,
type: ContentType.Json,
format: "json",
...params,
}),
};
this.integrationPackages = {
/**
* @description You can use the following request to get all integration packages.
*
* @tags Integration Packages - Design
* @name IntegrationPackagesList
* @summary Get all integration packages.
* @request GET:/IntegrationPackages
* @secure
*/
integrationPackagesList: (query, params = {}) => this.request({
path: `/IntegrationPackages`,
method: "GET",
query: query,
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to create/import an integration package.<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to create integration package.
*
* @tags Integration Packages - Design
* @name IntegrationPackagesCreate
* @summary Create/Import new integration package.
* @request POST:/IntegrationPackages
* @secure
*/
integrationPackagesCreate: (IntegrationPackage, query, params = {}) => this.request({
path: `/IntegrationPackages`,
method: "POST",
query: query,
body: IntegrationPackage,
secure: true,
type: ContentType.Json,
format: "json",
...params,
}),
};
this.integrationPackagesId = {
/**
* @description You can use the following request to get an integration packages by Id.
*
* @tags Integration Packages - Design
* @name IntegrationPackagesList
* @summary Get integration package by ID
* @request GET:/IntegrationPackages('{Id}')
* @secure
*/
integrationPackagesList: (id, params = {}) => this.request({
path: `/IntegrationPackages('${id}')`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to update an existing integration package.<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to update integration package.
*
* @tags Integration Packages - Design
* @name IntegrationPackagesUpdate
* @summary Update integration package.
* @request PUT:/IntegrationPackages('{Id}')
* @secure
*/
integrationPackagesUpdate: (id, IntegrationPackage, params = {}) => this.request({
path: `/IntegrationPackages('${id}')`,
method: "PUT",
body: IntegrationPackage,
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to delete an existing integration package.<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to delete integration package.
*
* @tags Integration Packages - Design
* @name IntegrationPackagesDelete
* @summary Delete integration package.
* @request DELETE:/IntegrationPackages('{Id}')
* @secure
*/
integrationPackagesDelete: (id, params = {}) => this.request({
path: `/IntegrationPackages('${id}')`,
method: "DELETE",
secure: true,
...params,
}),
/**
* @description You can use the following request to download an integration package of as .zip file. Download fails if the package contains one or more artifacts in draft state.
*
* @tags Integration Packages - Design
* @name ValueList
* @summary Download integration package by ID
* @request GET:/IntegrationPackages('{Id}')/$value
* @secure
*/
valueList: (id, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/$value`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get all integration flows of an integration package by package Id.
*
* @tags Integration Packages - Design
* @name IntegrationDesigntimeArtifactsList
* @summary Get all integration flows of a package.
* @request GET:/IntegrationPackages('{Id}')/IntegrationDesigntimeArtifacts
* @secure
*/
integrationDesigntimeArtifactsList: (id, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/IntegrationDesigntimeArtifacts`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get an integration flow of an integration package by package Id, integration flow and integration flow version.
*
* @tags Integration Packages - Design
* @name IntegrationDesigntimeArtifactsIdVersionList
* @summary Get an integration flow of a package.
* @request GET:/IntegrationPackages('{Id}')/IntegrationDesigntimeArtifacts(Id='{ArtifactId}',Version='{ArtifactVersion}')
* @secure
*/
integrationDesigntimeArtifactsIdVersionList: (id, artifactId, artifactVersion, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/IntegrationDesigntimeArtifacts(Id='${artifactId}',Version='${artifactVersion}')`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get all message mappings of an integration package by package Id.
*
* @tags Integration Packages - Design
* @name MessageMappingDesigntimeArtifactsList
* @summary Get all message mappings of an integration package.
* @request GET:/IntegrationPackages('{Id}')/MessageMappingDesigntimeArtifacts
* @secure
*/
messageMappingDesigntimeArtifactsList: (id, query, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/MessageMappingDesigntimeArtifacts`,
method: "GET",
query: query,
secure: true,
format: "json",
...params,
}),
/**
* @description Use the following request to get a message mapping of an integration package by package Id, message mapping Id, and message mapping version.
*
* @tags Integration Packages - Design
* @name MessageMappingDesigntimeArtifactsIdVersionList
* @summary Get message mapping of an integration package.
* @request GET:/IntegrationPackages('{Id}')/MessageMappingDesigntimeArtifacts(Id='{ArtifactId}',Version='{ArtifactVersion}')
* @secure
*/
messageMappingDesigntimeArtifactsIdVersionList: (id, artifactId, artifactVersion, query, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/MessageMappingDesigntimeArtifacts(Id='${artifactId}',Version='${artifactVersion}')`,
method: "GET",
query: query,
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get all value mappings of an integration package by package Id.
*
* @tags Integration Packages - Design
* @name ValueMappingDesigntimeArtifactsList
* @summary Get all value mappings of a package.
* @request GET:/IntegrationPackages('{Id}')/ValueMappingDesigntimeArtifacts
* @secure
*/
valueMappingDesigntimeArtifactsList: (id, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/ValueMappingDesigntimeArtifacts`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get a value mapping of an integration package by package Id, valuen mapping and value mapping version.
*
* @tags Integration Packages - Design
* @name ValueMappingDesigntimeArtifactsIdVersionList
* @summary Get a value mapping of a package.
* @request GET:/IntegrationPackages('{Id}')/ValueMappingDesigntimeArtifacts(Id='{ArtifactId}',Version='{ArtifactVersion}')
* @secure
*/
valueMappingDesigntimeArtifactsIdVersionList: (id, artifactId, artifactVersion, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/ValueMappingDesigntimeArtifacts(Id='${artifactId}',Version='${artifactVersion}')`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get all script collections of an integration package by package Id.
*
* @tags Integration Packages - Design
* @name ScriptCollectionDesigntimeArtifactsList
* @summary Get all script collections of a package.
* @request GET:/IntegrationPackages('{Id}')/ScriptCollectionDesigntimeArtifacts
* @secure
*/
scriptCollectionDesigntimeArtifactsList: (id, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/ScriptCollectionDesigntimeArtifacts`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get script collection of an integration package by package Id, script collection Id and script collection version.
*
* @tags Integration Packages - Design
* @name ScriptCollectionDesigntimeArtifactsIdVersionList
* @summary Get a script collection of a package.
* @request GET:/IntegrationPackages('{Id}')/ScriptCollectionDesigntimeArtifacts(Id='{ScriptCollectionArtifactID}',Version='{ArtifactVersion}')
* @secure
*/
scriptCollectionDesigntimeArtifactsIdVersionList: (id, artifactId, artifactVersion, scriptCollectionArtifactId, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/ScriptCollectionDesigntimeArtifacts(Id='${scriptCollectionArtifactId}',Version='${artifactVersion}')`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get custom tags of an integration package by package Id.
*
* @tags Integration Packages - Design
* @name CustomTagsList
* @summary Get Custom Tags of a package.
* @request GET:/IntegrationPackages('{Id}')/CustomTags
* @secure
*/
customTagsList: (id, query, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/CustomTags`,
method: "GET",
query: query,
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to update a Custom Tag.<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required permissions to update Custom Tags.
*
* @tags Integration Packages - Design
* @name LinksCustomTagsUpdate
* @summary Update a Custom Tag.
* @request PUT:/IntegrationPackages('{Id}')/$links/CustomTags('{Name}')
* @secure
*/
linksCustomTagsUpdate: (id, name, Value, params = {}) => this.request({
path: `/IntegrationPackages('${id}')/$links/CustomTags('${name}')`,
method: "PUT",
body: Value,
secure: true,
type: ContentType.Json,
...params,
}),
};
this.customTagConfigurationsCustomTags = {
/**
* @description You can use the following request to get all custom tags.
*
* @tags Custom Tags Configuration
* @name ValueList
* @summary Get all custom tags.
* @request GET:/CustomTagConfigurations('CustomTags')/$value
* @secure
*/
valueList: (params = {}) => this.request({
path: `/CustomTagConfigurations('CustomTags')/$value`,
method: "GET",
secure: true,
format: "json",
...params,
}),
};
this.customTagConfigurations = {
/**
* @description You can use the following request to create or upload custom tags configuration.<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to create integration flows.
*
* @tags Custom Tags Configuration
* @name CustomTagConfigurationsCreate
* @summary Create/upload custom tags configuration.
* @request POST:/CustomTagConfigurations
* @secure
*/
customTagConfigurationsCreate: (CustomTagConfiguration, params = {}) => this.request({
path: `/CustomTagConfigurations`,
method: "POST",
body: CustomTagConfiguration,
secure: true,
type: ContentType.Json,
...params,
}),
};
this.integrationDesigntimeArtifacts = {
/**
* @description You can use the following request to create or upload an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to create integration flows.
*
* @tags Integration Flow
* @name IntegrationDesigntimeArtifactsCreate
* @summary Create/upload an integration flow.
* @request POST:/IntegrationDesigntimeArtifacts
* @secure
*/
integrationDesigntimeArtifactsCreate: (IntegrationFlow, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts`,
method: "POST",
body: IntegrationFlow,
secure: true,
type: ContentType.Json,
format: "json",
...params,
}),
};
this.integrationDesigntimeArtifactsIdIdVersionVersion = {
/**
* @description You can use the following request to get an integration flow by Id and version.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, the following integration flows with Id and version are available: * '__IntegrationFlow_FAILED_DEPLOYMENT__' with version '__1.0.0__' * '__IntegrationFlow_MessageStore_COMPLETED_PROCESSING__' with version '__1.0.0__' * '__IntegrationFlow_AdapterData_FAILED_PROCESSING__' with version '__1.0.0__' * '__IntegrationFlowWithConfiguration__' with version '__1.0.5__'
*
* @tags Integration Flow
* @name IntegrationDesigntimeArtifactsIdVersionList
* @summary Get an integration flow by Id and version.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')
* @secure
*/
integrationDesigntimeArtifactsIdVersionList: (id, version, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')`,
method: "GET",
query: query,
secure: true,
type: ContentType.Json,
format: "json",
...params,
}),
/**
* @description You can use the following request to update an integration flow.<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to update integration flows.
*
* @tags Integration Flow
* @name IntegrationDesigntimeArtifactsIdVersionUpdate
* @summary Update an integration flow.
* @request PUT:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')
* @secure
*/
integrationDesigntimeArtifactsIdVersionUpdate: (id, version, IntegrationDesigntimeArtifact, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')`,
method: "PUT",
body: IntegrationDesigntimeArtifact,
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to delete an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to delete integration flows.
*
* @tags Integration Flow
* @name IntegrationDesigntimeArtifactsIdVersionDelete
* @summary Delete an integration flow.
* @request DELETE:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')
* @secure
*/
integrationDesigntimeArtifactsIdVersionDelete: (id, version, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')`,
method: "DELETE",
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to download an integration flow as zip file. Integration flows of configure-only packages cannot be downloaded.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox the following integration flows with Id and version are available: * '__IntegrationFlow_FAILED_DEPLOYMENT__' with version '__1.0.0__' * '__IntegrationFlow_MessageStore_COMPLETED_PROCESSING__' with version '__1.0.0__' * '__IntegrationFlow_AdapterData_FAILED_PROCESSING__' with version '__1.0.0__' * '__IntegrationFlowWithConfiguration__' with version '__1.0.5__'
*
* @tags Integration Flow
* @name ValueList
* @summary Download an integration flow as zip file.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/$value
* @secure
*/
valueList: (id, version, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/$value`,
method: "GET",
secure: true,
responseType: 'arraybuffer',
headers: { 'Accept': 'application/zip' },
...params,
}),
/**
* @description You can use the following request to get the configuration parameters (key/value pairs) of an integration artifact by Id and version.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, the following integration flow contains configuration parameters: '__IntegrationFlowWithConfiguration__' with version '__1.0.5__'
*
* @tags Configurations of Integration Flow
* @name ConfigurationsList
* @summary Get configurations of an integration flow by Id and version.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/Configurations
* @secure
*/
configurationsList: (id, version, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/Configurations`,
method: "GET",
query: query,
secure: true,
type: ContentType.Json,
format: "json",
...params,
}),
/**
* @description You can use the following request to get the number of configuration parameters (key/value pairs) for an integration artifact by Id and version.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, the following integration flow contains configuration parameters: '__IntegrationFlowWithConfiguration__' with version '__1.0.5__'
*
* @tags Configurations of Integration Flow
* @name ConfigurationsCountList
* @summary Get number of configuration parameters.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/Configurations/$count
* @secure
*/
configurationsCountList: (id, version, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/Configurations/$count`,
method: "GET",
query: query,
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to update the value for a configuration parameters of an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions for integration flows.You need to configure an API endpoint for your account, where you have the required write permissions to update configuration parameters of an integration flow.
*
* @tags Configurations of Integration Flow
* @name LinksConfigurationsUpdate
* @summary Update configuration parameter of an integration flow.
* @request PUT:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/$links/Configurations('{ParameterKey}')
* @secure
*/
linksConfigurationsUpdate: (id, version, parameterKey, ConfigurationParameter, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/$links/Configurations('${parameterKey}')`,
method: "PUT",
body: ConfigurationParameter,
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to get all resources of an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).
*
* @tags Resources of Integration Flow
* @name ResourcesList
* @summary Get all resources of an integration flow.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/Resources
* @secure
*/
resourcesList: (id, version, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/Resources`,
method: "GET",
query: query,
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to add a resource to an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to update integration flows.
*
* @tags Resources of Integration Flow
* @name ResourcesCreate
* @summary Add a Resource to an integration flow.
* @request POST:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/Resources
* @secure
*/
resourcesCreate: (id, version, Resource, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/Resources`,
method: "POST",
body: Resource,
secure: true,
type: ContentType.Json,
format: "json",
...params,
}),
/**
* @description You can use the following request to get the number of all resources for an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).
*
* @tags Resources of Integration Flow
* @name ResourcesCountList
* @summary Get number of resource.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/Resources/$count
* @secure
*/
resourcesCountList: (id, version, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/Resources/$count`,
method: "GET",
query: query,
secure: true,
...params,
}),
/**
* @description You can use the following request to get a resource of an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).
*
* @tags Resources of Integration Flow
* @name ResourcesNameResourceTypeList
* @summary Get a resource of an integration flow.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/Resources(Name='{Name}',ResourceType='{Type}')
* @secure
*/
resourcesNameResourceTypeList: (id, version, name, type, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/Resources(Name='${name}',ResourceType='${type}')`,
method: "GET",
query: query,
secure: true,
type: ContentType.Json,
format: "json",
...params,
}),
/**
* @description You can use the following request to download resource content of an integration flow. <br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).
*
* @tags Resources of Integration Flow
* @name ResourcesNameResourceTypeValueList
* @summary Download resource content of an integration flow.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/Resources(Name='{Name}',ResourceType='{Type}')/$value
* @secure
*/
resourcesNameResourceTypeValueList: (id, version, name, type, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/Resources(Name='${name}',ResourceType='${type}')/$value`,
method: "GET",
query: query,
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to update a resource of an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to update an integration flow.
*
* @tags Resources of Integration Flow
* @name LinksResourcesNameResourceTypeUpdate
* @summary Update a resource of an integration flow.
* @request PUT:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/$links/Resources(Name='{Name}',ResourceType='{Type}')
* @secure
*/
linksResourcesNameResourceTypeUpdate: (id, version, name, type, Resource, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/$links/Resources(Name='${name}',ResourceType='${type}')`,
method: "PUT",
query: query,
body: Resource,
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to delete a resource of an integration flow.<br>For further details, refer to the SAP Help Portal documentation [OData API: Integration Content](https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/d1679a80543f46509a7329243b595bdb.html) and to the following SAP Community blog [Remote OData APIs for Integration Flows](https://blogs.sap.com/2018/07/06/cloud-integration-remote-odata-apis-for-integration-flows/).<br> In API sandbox, only read APIs can be tested. You need to configure an API endpoint for your account, where you have the required write permissions to update integration flows.
*
* @tags Resources of Integration Flow
* @name LinksResourcesNameResourceTypeDelete
* @summary Delete a resource of an integration flow.
* @request DELETE:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/$links/Resources(Name='{Name}',ResourceType='{Type}')
* @secure
*/
linksResourcesNameResourceTypeDelete: (id, version, name, type, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/$links/Resources(Name='${name}',ResourceType='${type}')`,
method: "DELETE",
query: query,
secure: true,
type: ContentType.Json,
...params,
}),
/**
* @description You can use the following request to get the status of the guidelines execution.
*
* @tags Integration Flow - Design Guidelines
* @name DesignGuidelineExecutionResultsList
* @summary Get guidelines execution status.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/DesignGuidelineExecutionResults
* @secure
*/
designGuidelineExecutionResultsList: (id, version, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/DesignGuidelineExecutionResults`,
method: "GET",
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get the results of the guidelines execution.
*
* @tags Integration Flow - Design Guidelines
* @name DesignGuidelineExecutionResultsList2
* @summary Get guidelines execution results.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/DesignGuidelineExecutionResults('{ExecutionId}')
* @originalName designGuidelineExecutionResultsList
* @duplicate
* @secure
*/
designGuidelineExecutionResultsList2: (id, version, executionId, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/DesignGuidelineExecutionResults('${executionId}')`,
method: "GET",
query: query,
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to get the report of the guidelines execution as a file.
*
* @tags Integration Flow - Design Guidelines
* @name DesignGuidelineExecutionResultsValueList
* @summary Download guidelines execution report.
* @request GET:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/DesignGuidelineExecutionResults('{ExecutionId}')/$value
* @secure
*/
designGuidelineExecutionResultsValueList: (id, version, executionId, query, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/DesignGuidelineExecutionResults('${executionId}')/$value`,
method: "GET",
query: query,
secure: true,
format: "json",
...params,
}),
/**
* @description You can use the following request to revert or skip a guidline.
*
* @tags Integration Flow - Design Guidelines
* @name LinksDesignGuidelineExecutionResultsUpdate
* @summary Revert or skip a guideline.
* @request PUT:/IntegrationDesigntimeArtifacts(Id='{Id}',Version='{Version}')/$links/DesignGuidelineExecutionResults('{ExecutionId}')
* @secure
*/
linksDesignGuidelineExecutionResultsUpdate: (id, version, executionId, SkipRevertGuideline, params = {}) => this.request({
path: `/IntegrationDesigntimeArtifacts(Id='${id}',Version='${version}')/$links/DesignGuidelineExecutionResults('${executionId}')`,
method: "PUT",
body: SkipRevertGuideline,
secure: true,
type: ContentType.Json,
...params,
}),
};
this.integrationDesigntimeArtifactSaveAsVersion = {
/**
* @description You can use the following request to update an artifact with new specified version.<br> In API sandbox, only read