API - Interactive Channel

Description
These APIs are used to perform CRUD operations on Interactive Channel.
Get All
GET /Campaign/api/interact/rest/v2/channels?page=0&size=10
Request Parameters
Parameters Description Default Values
page

number, nth page to retrieve records.

0
size number of records per page. 10
Output
Table 1. Response Codes
Success 200 Ok
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example response: Content-Type: application/json
{
	"content": [ 
		{ "createBy": 0, 
		  "createDate": 0, 
		  "description": "string", 
		  "id": 0, 
		  "lastDeploymentTime": 0, 
		  "longestWaitTime": "string", 
		  "longestWaitTimeAvailable": true, 
		  "name": "string", 
		  "offerThreshold": 0, 
		  "policyId": 0, 
		  "productionServerGroup": "string", 
		  "serverGroups": [ 
			"string" 
			],
		  "updateBy": 0, 
		  "updateDate": 0, 
		  "waitingForDeployment": 0
		}
	],
	"page": { 
		"hasNext": true, 
		"hasPrev": true, 
		"pageNumber": 0, 
		"size": 0, 
		"totalElements": 0, 
		"totalPages": 0 
	}
}
Get
GET /Campaign/api/interact/rest/v2/channels/{icIdOrName}
Output
Table 2. Response Codes
Success 200 Ok
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example response: Content-Type: application/json

{
  "createBy": 0,
  "createDate": 0,
  "description": "string",
  "id": 0,
  "lastDeploymentTime": 0,
  "longestWaitTime": "string",
  "longestWaitTimeAvailable": true,
  "name": "string",
  "offerThreshold": 0,
  "policyId": 0,
  "productionServerGroup": "string",
  "serverGroups": [
    "string"
  ],
  "updateBy": 0,
  "updateDate": 0,
  "waitingForDeployment": 0
}
Create
POST /Campaign/api/interact/rest/v2/channels
Input
Body Parameter – Content-Type: application/json
{
  "channels": [
    {
      "createBy": 0,
      "createDate": 0,
      "description": "string",
      "id": 0,
      "lastDeploymentTime": 0,
      "longestWaitTime": "string",
      "longestWaitTimeAvailable": true,
      "name": "string",
      "offerThreshold": 0,
      "policyId": 0,
      "productionServerGroup": "string",
      "serverGroups": [
        "string"
      ],
      "updateBy": 0,
      "updateDate": 0,
      "waitingForDeployment": 0
    }
  ]
}

Output
Table 3. Response Codes
Success 201 Created
Miscellaneous 207 Status code of batch request
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example: Content-Type: application/json

[
    {
        "headers": {},
        "body": <entity>/<error-msg>,
        "status": 201/400/500
    }
]
Update
PUT /Campaign/api/interact/rest/v2/channels/{icIdOrName}
Input
Body Parameter – Content-Type: application/json
{
  "createBy": 0,
  "createDate": 0,
  "description": "string",
  "id": 0,
  "lastDeploymentTime": 0,
  "longestWaitTime": "string",
  "longestWaitTimeAvailable": true,
  "name": "string",
  "offerThreshold": 0,
  "policyId": 0,
  "productionServerGroup": "string",
  "serverGroups": [
    "string"
  ],
  "updateBy": 0,
  "updateDate": 0,
  "waitingForDeployment": 0
}
Output
Table 4. Response Codes
Success 202 Accepted
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example response: Content-Type: application/json
{
  "createBy": 0,
  "createDate": 0,
  "description": "string",
  "id": 0,
  "lastDeploymentTime": 0,
  "longestWaitTime": "string",
  "longestWaitTimeAvailable": true,
  "name": "string",
  "offerThreshold": 0,
  "policyId": 0,
  "productionServerGroup": "string",
  "serverGroups": ["string"],
  "updateBy": 0,
  "updateDate": 0,
  "waitingForDeployment": 0
}
Delete
DELETE /Campaign/api/interact/rest/v2/channels/{icIdOrName}
Output
Table 5. Response Codes
Success 200 Ok
Error 400 Bad Request
Server Error 500 Internal/Server Error
Get All Audience levels
GET /Campaign/api/interact/rest/v2/channels/{icIdOrName}/audiencelevels
Output
Table 6. Response Codes
Success 200 Ok
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example response: Content-Type: application/json
"audienceLevels": [ 
"Account", 
"Customer"
]
}
Map profile tables to Interactive Channel
POST /Campaign/api/interact/rest/v2/channels/{icIdOrName}/profiletables
Input
Body Parameter – Content-Type: application/json
{
  "audienceLevel": "string",
  "baseKeys": [
    "string"
  ],
  "baseTable": true,
  "dimKeys": [
    "string"
  ],
  "joinTable": "string",
  "joinType": 0,
  "preLoad": true,
  "tableName": "string",
  "unmap": true
}
Output
Table 7. Response Codes
Success 201 Created
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example response: Content-Type: application/json
Map Base Table
{
  "audienceLevel": "Customer",
  "baseTable": true,
  "tableName": "Customer_Audience"
}
Map Dimension Table
{
  "audienceLevel": "Customer",
  "baseKeys": [
    "CID"
  ],
  "baseTable": false,
  "dimKeys": [
    "CID"
  ],
  "joinTable": "Customer_Audience",
  "joinType": 1,
  "preLoad": false,
  "tableName": "Credit_Details"
}
Un-map Table
{
  "audienceLevel": "Customer",
  "tableName": "Credit_Details",
  "unmap": true
}
Get All Audience Levels
GET /Campaign/api/interact/rest/v2/channels/{icIdOrName}/audiencelevels
Output
Table 8. Response Codes
Success 200 Ok
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example: Content-Type: application/json
    "audienceLevels": [
        "Account",
        "Customer"
    ]
}
Get profile attributes for an audience level
GET /Campaign/api/interact/rest/v2/channels/{icIdOrName}/profileattributes?audienceLevel=Customer
Table 9. Request Parameters
Parameters Description
audienceLevel Name of audience level
Output
Table 10. Response Codes
Success 200 Ok
Error 400 Bad Request
Server Error 500 Internal/Server Error
Example: Content-Type: application/json
[
    {
        "Real-time attributes": [
            {
                "attributes": [
                    {
                        "dataType": 0,
                        "name": "string"
                    }
                ]
            }
        ]
    },
    {
        "Customer": [
            {
                "attributes": [
                    {
                        "dataType": 0,
                        "name": "string"
                    }
                ],
                "tableName": "string"
            }
        ]
    }
]