1. Overview

The Integration Service Meta API provides RESTful endpoints to create, read, update, and remove integration objects. For more information, see Integration Object Modeling

1.1. Version information

Version : 1.0.0

1.2. URI scheme

Host : localhost:9002
BasePath : /odata2webservices/IntegrationService
Schemes : HTTPS

1.3. Tags

  • Inbound Channel Configurations : Requests for information about Inbound Channel Configurations that exist in the system.

  • Integration Objects : Requests for information about Integration Objects that exist in the system.

  • Metadata : Requests for EDMX documents. The metadata is an Entity Data Model XML (EDMX) document that describes the entity types and their properties.

1.4. Consumes

  • application/json

1.5. Produces

  • application/json

1.6. External Docs

2. Paths

2.1. View the EDMX document for IntegrationService Integration Objects

GET /$metadata

2.1.1. Description

Requests for EDMX documents. The metadata is an Entity Data Model XML (EDMX) document that describes the entity types and their properties.

2.1.2. Responses

HTTP Code Description Schema

200

A valid EDMX schema.

No Content

400

The schema cannot be generated because one or more Integration Objects have been misconfigured.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for POST operations.

2.1.3. Produces

  • application/xml

2.1.4. Tags

  • Metadata

2.2. Create/Update InboundChannelConfigurations.

POST /InboundChannelConfigurations

2.2.1. Description

Creates a new InboundChannelConfiguration or updates an existing InboundChannelConfiguration if a corresponding one is found. For more information about the post behavior see Integration Post API

2.2.2. Parameters

Type Name Description Schema

Header

Post-Persist-Hook
optional

The execute method for the PostPersistHook invokes right after the item persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

Pre-Persist-Hook
optional

The execute method for the PrePersistHook invokes right before the Integration Object sent in the POST or PATCH request persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

integrationMessageId
optional

The integrationMessageId header allows the user to trace any InboundRequest back to the original POST, PATCH or DELETE request.

string

Body

body
required

2.2.3. Responses

HTTP Code Description Schema

201

Indicates the Inbound Channel Configuration has been successfully created/updated.

400

Error responses that may occur due to misconfigured metadata or an error occurring during an attempt to create a new Item.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for POST operations.

415

Provided Media-Type is not supported

2.2.4. Consumes

  • application/json

2.2.5. Produces

  • application/json

2.2.6. Tags

  • Inbound Channel Configurations

2.2.7. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}
Response 415
{
  "error" : {
    "code" : "null",
    "message" : {
      "lang" : "en",
      "value" : "Media type [application/x-www-form-urlencoded] is not supported."
    }
  }
}

2.3. View InboundChannelConfigurations.

GET /InboundChannelConfigurations

2.3.1. Description

View details about InboundChannelConfigurations.

2.3.2. Parameters

Type Name Description Schema

Query

$expand
optional

Specifies navigation properties for associated entries that will be inlined in the response body. By default, these navigation properties are represented as deferred links pointing to the item resource. See $expand

string

Query

$filter
optional

A predicate expression for selecting a subset of the items identified by the resource path. See $filter

string

Query

$inlinecount
optional

Specifies if the total number of items should be included in the response. See $inlinecount

enum (allpages, none)

Query

$skip
optional

The number of matching items to skip over before returning the result set. If skip is larger than the number of matching items then no items will be returned. See $skip

integer (int32)

Query

$top
optional

The maximum number of items to return. If it’s greater than or equal to the number of matching items existing in the platform, then all items will be returned. If it’s less than the number of matching items in the platform, a subset containing top number of items will be returned. See $top

integer (int32)

2.3.3. Responses

HTTP Code Description Schema

200

A collection of 0 or more InboundChannelConfigurations.

400

Error responses that may occur due to an exception related to the filter query parameter or misconfigured metadata.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for GET operations.

2.3.4. Produces

  • application/json

2.3.5. Tags

  • Inbound Channel Configurations

2.3.6. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}

2.4. View an individual InboundChannelConfiguration.

GET /InboundChannelConfigurations('{integrationKey}')

2.4.1. Description

Retrieves an InboundChannelConfiguration by its integrationKey.

2.4.2. Parameters

Type Name Description Schema

Path

integrationKey
required

key: integrationKey

string

Query

$expand
optional

Specifies navigation properties for associated entries that will be inlined in the response body. By default, these navigation properties are represented as deferred links pointing to the item resource. See $expand

string

2.4.3. Responses

HTTP Code Description Schema

200

Success response with the retrieved InboundChannelConfiguration.

400

An error occurred due to an invalid integrationKey found in the url or because the schema cannot be generated because one or more Integration Objects have been misconfigured.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for GET operations.

2.4.4. Produces

  • application/json

2.4.5. Tags

  • Inbound Channel Configurations

2.4.6. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}

2.5. Delete an InboundChannelConfiguration.

DELETE /InboundChannelConfigurations('{integrationKey}')

2.5.1. Description

Deletes the InboundChannelConfiguration with the corresponding integrationKey.

2.5.2. Parameters

Type Name Description Schema

Header

integrationMessageId
optional

The integrationMessageId header allows the user to trace any InboundRequest back to the original POST, PATCH or DELETE request.

string

Path

integrationKey
required

key: integrationKey

string

2.5.3. Responses

HTTP Code Description Schema

200

Indicates that the InboundChannelConfiguration was successfully deleted.

No Content

400

Error responses that may occur when a DELETE request is made in an attempt to delete an item.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for PATCH and DELETE operations.

2.5.4. Produces

  • application/json

2.5.5. Tags

  • Inbound Channel Configurations

2.5.6. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key",
    "message" : {
      "lang" : "en",
      "value" : "The integration key [0215Cssss%7C] is invalid. Please consult the IntegrationKey definition of [IntegrationObject] for configuration details."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}

2.6. Update an existing InboundChannelConfiguration.

PATCH /InboundChannelConfigurations('{integrationKey}')

2.6.1. Description

Updates the InboundChannelConfiguration with the corresponding integrationKey. For more information about the patch behavior see The Integration Patch API

2.6.2. Parameters

Type Name Description Schema

Header

Post-Persist-Hook
optional

The execute method for the PostPersistHook invokes right after the item persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

Pre-Persist-Hook
optional

The execute method for the PrePersistHook invokes right before the Integration Object sent in the POST or PATCH request persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

integrationMessageId
optional

The integrationMessageId header allows the user to trace any InboundRequest back to the original POST, PATCH or DELETE request.

string

Path

integrationKey
required

key: integrationKey

string

Body

body
required

2.6.3. Responses

HTTP Code Description Schema

200

Indicates the Inbound Channel Configuration has been successfully updated.

400

Error responses that may occur due to misconfigured metadata or an error occurring during an attempt to update an existing Item.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for PATCH and DELETE operations.

415

Provided Media-Type is not supported

2.6.4. Consumes

  • application/json

2.6.5. Produces

  • application/json

2.6.6. Tags

  • Inbound Channel Configurations

2.6.7. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}
Response 415
{
  "error" : {
    "code" : "null",
    "message" : {
      "lang" : "en",
      "value" : "Media type [application/x-www-form-urlencoded] is not supported."
    }
  }
}

2.7. View the total count of all InboundChannelConfigurations.

GET /InboundChannelConfigurations/$count

2.7.1. Description

Displays the total count of all InboundChannelConfigurations.

2.7.2. Responses

HTTP Code Description Schema

200

A success response displaying the total count of InboundChannelConfigurations.

string

2.7.3. Produces

  • text/plain

2.7.4. Tags

  • Inbound Channel Configurations

2.8. Create/Update IntegrationObjects.

POST /IntegrationObjects

2.8.1. Description

Creates a new Integration Object or updates an existing IntegrationObject if a corresponding one is found. For more information about the post behavior see The Integration Post API

2.8.2. Parameters

Type Name Description Schema

Header

Post-Persist-Hook
optional

The execute method for the PostPersistHook invokes right after the item persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

Pre-Persist-Hook
optional

The execute method for the PrePersistHook invokes right before the Integration Object sent in the POST or PATCH request persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

integrationMessageId
optional

The integrationMessageId header allows the user to trace any InboundRequest back to the original POST, PATCH or DELETE request.

string

Body

body
required

2.8.3. Responses

HTTP Code Description Schema

201

Indicates the Integration Object has been successfully created/updated.

400

Error responses that may occur due to misconfigured metadata or an error occurring during an attempt to create a new Item.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for POST operations.

415

Provided Media-Type is not supported

2.8.4. Consumes

  • application/json

2.8.5. Produces

  • application/json

2.8.6. Tags

  • Integration Objects

2.8.7. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}
Response 415
{
  "error" : {
    "code" : "null",
    "message" : {
      "lang" : "en",
      "value" : "Media type [application/x-www-form-urlencoded] is not supported."
    }
  }
}

2.9. View IntegrationObjects.

GET /IntegrationObjects

2.9.1. Description

View details about IntegrationObjects.

2.9.2. Parameters

Type Name Description Schema

Query

$expand
optional

Specifies navigation properties for associated entries that will be inlined in the response body. By default, these navigation properties are represented as deferred links pointing to the item resource. See $expand

string

Query

$filter
optional

A predicate expression for selecting a subset of the items identified by the resource path. See $filter

string

Query

$inlinecount
optional

Specifies if the total number of items should be included in the response. See $inlinecount

enum (allpages, none)

Query

$skip
optional

The number of matching items to skip over before returning the result set. If skip is larger than the number of matching items then no items will be returned. See $skip

integer (int32)

Query

$top
optional

The maximum number of items to return. If it’s greater than or equal to the number of matching items existing in the platform, then all items will be returned. If it’s less than the number of matching items in the platform, a subset containing top number of items will be returned. See $top

integer (int32)

2.9.3. Responses

HTTP Code Description Schema

200

A collection of 0 or more IntegrationObjects.

400

Error responses that may occur due to an exception related to the filter query parameter or misconfigured metadata.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for GET operations.

2.9.4. Produces

  • application/json

2.9.5. Tags

  • Integration Objects

2.9.6. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}

2.10. View an individual IntegrationObject.

GET /IntegrationObjects('{integrationKey}')

2.10.1. Description

Retrieves an IntegrationObject by its integrationKey.

2.10.2. Parameters

Type Name Description Schema

Path

integrationKey
required

key: integrationKey

string

Query

$expand
optional

Specifies navigation properties for associated entries that will be inlined in the response body. By default, these navigation properties are represented as deferred links pointing to the item resource. See $expand

string

2.10.3. Responses

HTTP Code Description Schema

200

Success response with the retrieved IntegrationObject.

400

An error occurred due to an invalid integrationKey found in the url or because the schema cannot be generated because one or more Integration Objects have been misconfigured.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for GET operations.

2.10.4. Produces

  • application/json

2.10.5. Tags

  • Integration Objects

2.10.6. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}

2.11. Delete an IntegrationObject.

DELETE /IntegrationObjects('{integrationKey}')

2.11.1. Description

Deletes the IntegrationObject with the corresponding integrationKey.

2.11.2. Parameters

Type Name Description Schema

Header

integrationMessageId
optional

The integrationMessageId header allows the user to trace any InboundRequest back to the original POST, PATCH or DELETE request.

string

Path

integrationKey
required

key: integrationKey

string

2.11.3. Responses

HTTP Code Description Schema

200

Indicates that the IntegrationObject was successfully deleted.

No Content

400

Error responses that may occur when a DELETE request is made in an attempt to delete an item.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for PATCH and DELETE operations.

2.11.4. Produces

  • application/json

2.11.5. Tags

  • Integration Objects

2.11.6. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key",
    "message" : {
      "lang" : "en",
      "value" : "The integration key [0215Cssss%7C] is invalid. Please consult the IntegrationKey definition of [IntegrationObject] for configuration details."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}

2.12. Update an existing IntegrationObject.

PATCH /IntegrationObjects('{integrationKey}')

2.12.1. Description

Updates the IntegrationObject with the corresponding integrationKey. For more information about the patch behavior see The Integration Patch API

2.12.2. Parameters

Type Name Description Schema

Header

Post-Persist-Hook
optional

The execute method for the PostPersistHook invokes right after the item persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

Pre-Persist-Hook
optional

The execute method for the PrePersistHook invokes right before the Integration Object sent in the POST or PATCH request persists in the SAP Commerce platform. For more details see Persistence Hooks

string

Header

integrationMessageId
optional

The integrationMessageId header allows the user to trace any InboundRequest back to the original POST, PATCH or DELETE request.

string

Path

integrationKey
required

key: integrationKey

string

Body

body
required

2.12.3. Responses

HTTP Code Description Schema

200

Indicates the Integration Object has been successfully updated.

400

Error responses that may occur due to misconfigured metadata or an error occurring during an attempt to update an existing Item.

401

Unauthorized exception responses

403

Forbidden exception responses

404

Not Found exception responses for PATCH and DELETE operations.

415

Provided Media-Type is not supported

2.12.4. Consumes

  • application/json

2.12.5. Produces

  • application/json

2.12.6. Tags

  • Integration Objects

2.12.7. Example HTTP response

Response 400
{
  "error" : {
    "code" : "invalid_key_definition",
    "message" : {
      "lang" : "en",
      "value" : "There is no valid integration key defined for the current entityType [IntegrationObject]."
    }
  }
}
Response 401
{
  "error" : {
    "code" : "unauthorized",
    "message" : {
      "lang" : "en",
      "value" : "user must be authenticated"
    }
  }
}
Response 403
{
  "error" : {
    "code" : "forbidden",
    "message" : {
      "lang" : "en",
      "value" : "user is not authorized for the operation"
    }
  }
}
Response 404
{
  "error" : {
    "code" : "not_found",
    "message" : {
      "lang" : "en",
      "value" : "requested resource does not exist"
    }
  }
}
Response 415
{
  "error" : {
    "code" : "null",
    "message" : {
      "lang" : "en",
      "value" : "Media type [application/x-www-form-urlencoded] is not supported."
    }
  }
}

2.13. View the total count of all IntegrationObjects.

GET /IntegrationObjects/$count

2.13.1. Description

Displays the total count of all IntegrationObjects.

2.13.2. Responses

HTTP Code Description Schema

200

A success response displaying the total count of IntegrationObjects.

string

2.13.3. Produces

  • text/plain

2.13.4. Tags

  • Integration Objects

3. Definitions

3.1. $inlinecount

Type : enum (allpages, none)

3.2. AttributeDescriptor

Name Schema

enclosedType
required

qualifier
required

string

3.3. AuthenticationType

Name Description Schema

code
required

The code for authentication type. Specifies type of authentication for an integration object in an Inbound request, which can be of a type defined in the AuthenticationType Enum. Values can be BASIC or OAUTH.
Example : "BASIC"

string

3.4. ClassAttributeAssignment

Name Schema

classificationAttribute
required

classificationClass
required

3.5. ClassificationAttribute

Name Schema

code
required

string

systemVersion
optional

3.6. ClassificationClass

Name Schema

catalogVersion
required

code
required

string

3.7. ClassificationSystem

Name Schema

id
required

string

3.8. ClassificationSystemVersion

Name Schema

catalog
required

version
required

string

3.9. CollectionofInboundChannelConfigurations

Name Schema

results
optional

3.10. CollectionofIntegrationObjects

Name Schema

results
optional

< IntegrationObject > array

3.11. ComposedType

Name Schema

code
required

string

3.12. Error

Name Schema

code
required

string

innererror
optional

string

message
required

3.13. InboundChannelConfiguration

Name Schema

authenticationType
required

integrationObject
required

3.14. IntegrationObject

Name Schema

code
required

string

items
optional

3.15. IntegrationObjectItem

Name Schema

attributes
optional

classificationAttributes
optional

code
required

string

integrationObject
required

root
required

boolean

type
required

virtualAttributes
optional

3.16. IntegrationObjectItemAttribute

Name Schema

attributeDescriptor
required

attributeName
required

string

autoCreate
optional

boolean

integrationObjectItem
required

returnIntegrationObjectItem
optional

unique
optional

boolean

3.17. IntegrationObjectItemClassificationAttribute

Name Schema

attributeName
required

string

classAttributeAssignment
required

integrationObjectItem
required

returnIntegrationObjectItem
optional

3.18. IntegrationObjectItemVirtualAttribute

Name Schema

attributeName
required

string

integrationObjectItem
required

retrievalDescriptor
required

3.19. IntegrationObjectVirtualAttributeDescriptor

Name Schema

code
required

string

logicLocation
required

string

type
optional

3.20. Message

Name Schema

lang
optional

string

value
optional

string

3.21. Type

Name Schema

code
required

string

3.22. Wrapper

Name Schema

d
optional

3.23. Wrapper1

Name Schema

d
optional

3.24. Wrapper4

Name Schema

d
optional

3.25. Wrapper5

Name Schema

d
optional

3.26. errorResponseObj

Name Schema

error
optional

4. Security

4.1. auth

Type : basic