EditWizardManager

APS Edit Wizard data manager

GraphViz

Schema

The considered APS type (download) extends the Resource APS type(s) and looks as follows:

{
  "name": "EditWizardManager",
  "id": "http://odin.com/edit-wizard/edit-wizard-management/1.4",
  "apsVersion": "2.0",
  "implements": [
    "http://aps-standard.org/types/core/resource/1.0"
  ],
  "operations": {
    "parseVendorConfiguration": {
      "path": "/parseVendorConfiguration/{appId}",
      "verb": "POST",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "appId": {
          "kind": "path",
          "type": "string"
        }
      }
    },
    "applyWizardData": {
      "path": "/applyWizardData/{appId}",
      "verb": "POST",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "appId": {
          "kind": "path",
          "type": "string"
        }
      }
    },
    "checkWizardData": {
      "path": "/checkWizardData",
      "verb": "POST",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      }
    },
    "getWizardData": {
      "path": "/getWizardData/{appId}",
      "verb": "GET",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "appId": {
          "kind": "path",
          "type": "string"
        }
      }
    },
    "getServicePlans": {
      "path": "/getServicePlans",
      "verb": "GET",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "serviceTemplates": {
          "kind": "query",
          "type": "string"
        }
      }
    },
    "getDetailedServicePlans": {
      "path": "/getDetailedServicePlans",
      "verb": "GET",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "servicePlans": {
          "kind": "query",
          "type": "string"
        }
      }
    },
    "getServicePlansList": {
      "path": "/getServicePlansList",
      "verb": "GET",
      "response": {
        "type": "array",
        "items": {
          "type": "GetServicePlanBasic"
        }
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "serviceTemplates": {
          "kind": "query",
          "type": "string"
        }
      }
    },
    "getResourceRates": {
      "path": "/getResourceRates",
      "verb": "GET",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "servicePlan": {
          "kind": "query",
          "type": "string"
        }
      }
    },
    "getBillingData": {
      "path": "/getBillingData",
      "verb": "GET",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      },
      "parameters": {
        "resellers": {
          "kind": "query",
          "type": "string"
        },
        "serviceTemplateIds": {
          "kind": "query",
          "type": "string"
        }
      }
    },
    "getServerConfiguration": {
      "path": "/getServerConfiguration",
      "verb": "GET",
      "response": {
        "type": "object"
      },
      "errorResponse": {
        "type": "object"
      }
    }
  },
  "structures": {
    "GetPlanCategory": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        }
      }
    },
    "GetServicePlanBasic": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "originalEnName": {
          "type": "string"
        },
        "name": {
          "type": "object"
        },
        "planCategory": {
          "type": "GetPlanCategory"
        },
        "vendorId": {
          "type": "integer"
        },
        "serviceTemplateId": {
          "type": "integer"
        },
        "isAvailableForSale": {
          "type": "boolean"
        },
        "billingPeriodType": {
          "type": "integer"
        },
        "billingPeriod": {
          "type": "integer"
        },
        "pricePeriodType": {
          "type": "integer"
        },
        "isEnableVolumePricingModel": {
          "type": "boolean"
        }
      }
    },
    "SalesCategory": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "externalId": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "inCCP": {
          "type": "boolean"
        },
        "expand": {
          "type": "boolean"
        },
        "sortOrder": {
          "type": "integer"
        },
        "parentSalesCategory": {
          "type": "SalesCategory"
        }
      }
    },
    "ServiceTerms": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "GetNotificationSchedule": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        }
      }
    },
    "GetTermsConditions": {
      "type": "object",
      "properties": {
        "id": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "acceptance": {
          "type": "string"
        }
      }
    },
    "GetServicePlan": {
      "type": "object",
      "properties": {
        "shortDescription": {
          "type": "object"
        },
        "longDescription": {
          "type": "object"
        },
        "serviceTemplateName": {
          "type": "string"
        },
        "planBillingPeriod": {
          "type": "integer"
        },
        "planBillingPeriodType": {
          "type": "integer"
        },
        "renewOrderInterval": {
          "type": "integer"
        },
        "renewPointDays": {
          "type": "integer"
        },
        "billingModel": {
          "type": "string"
        },
        "storeCategories": {
          "type": "array",
          "items": {
            "type": "SalesCategory"
          }
        },
        "serviceTerms": {
          "type": "ServiceTerms"
        },
        "subscriptionNotificationTemplate": {
          "type": "string"
        },
        "notificationSchedule": {
          "type": "GetNotificationSchedule"
        },
        "termsConditions": {
          "type": "array",
          "items": {
            "type": "GetTermsConditions"
          }
        },
        "delegatedServicePlans": {
          "type": "array",
          "items": {
            "type": "GetServicePlan"
          }
        }
      }
    }
  }
}

Custom Operations

OPERATION

VERB

PATH

RETURNS

Description

parseVendorConfiguration

POST

/parseVendorConfiguration/{appId}

“parseVendorConfiguration” custom operation (POST)

applyWizardData

POST

/applyWizardData/{appId}

“applyWizardData” custom operation (POST)

checkWizardData

POST

/checkWizardData

“checkWizardData” custom operation (GET) Though HTTP method used is POST (to send a payload), the method just validates ConfSync mappings indeed.

getWizardData

GET

/getWizardData/{appId}

Response.

“getWizardData” custom operation (GET) return AIW WD

getServicePlans

GET

/getServicePlans

Service plans list

Return service plans for given service templates

getDetailedServicePlans

GET

/getDetailedServicePlans

Service plans list

Return detailed service plan info for given ids

getServicePlansList

GET

/getServicePlansList

Service plans list

Return service plans for given service templates

getResourceRates

GET

/getResourceRates

Resource rates for given service plans

Return resource rates for given service plans

getBillingData

GET

/getBillingData

Billing specific data

Return billing specific data

getServerConfiguration

GET

/getServerConfiguration

Server configuration

Return server configuration

parseVendorConfiguration

HTTP Request

POST /aps/2/resources/{aps-id}/parseVendorConfiguration/{appId}

Description

“parseVendorConfiguration” custom operation (POST)

Parameters

PARAMETER

TYPE

DESCRIPTION

appId

String

Returns

applyWizardData

HTTP Request

POST /aps/2/resources/{aps-id}/applyWizardData/{appId}

Description

“applyWizardData” custom operation (POST)

Parameters

PARAMETER

TYPE

DESCRIPTION

appId

String

Returns

checkWizardData

HTTP Request

POST /aps/2/resources/{aps-id}/checkWizardData

Description

“checkWizardData” custom operation (GET) Though HTTP method used is POST (to send a payload), the method just validates ConfSync mappings indeed.

Returns

getWizardData

HTTP Request

GET /aps/2/resources/{aps-id}/getWizardData/{appId}

Description

“getWizardData” custom operation (GET) return AIW WD

Parameters

PARAMETER

TYPE

DESCRIPTION

appId

String

Returns

Response.

getServicePlans

HTTP Request

GET /aps/2/resources/{aps-id}/getServicePlans

Description

Return service plans for given service templates

Parameters

PARAMETER

TYPE

DESCRIPTION

serviceTemplates

String

List of service templates ids

Returns

Service plans list

getDetailedServicePlans

HTTP Request

GET /aps/2/resources/{aps-id}/getDetailedServicePlans

Description

Return detailed service plan info for given ids

Parameters

PARAMETER

TYPE

DESCRIPTION

servicePlans

String

Returns

Service plans list

getServicePlansList

HTTP Request

GET /aps/2/resources/{aps-id}/getServicePlansList

Description

Return service plans for given service templates

Parameters

PARAMETER

TYPE

DESCRIPTION

serviceTemplates

String

List of service templates ids

Returns

Service plans list

getResourceRates

HTTP Request

GET /aps/2/resources/{aps-id}/getResourceRates

Description

Return resource rates for given service plans

Parameters

PARAMETER

TYPE

DESCRIPTION

servicePlan

String

Returns

Resource rates for given service plans

getBillingData

HTTP Request

GET /aps/2/resources/{aps-id}/getBillingData

Description

Return billing specific data

Parameters

PARAMETER

TYPE

DESCRIPTION

resellers

String

List of resellers ids

serviceTemplateIds

String

Returns

Billing specific data

getServerConfiguration

HTTP Request

GET /aps/2/resources/{aps-id}/getServerConfiguration

Description

Return server configuration

Returns

Server configuration

Structures

GetPlanCategory

Every service plan must be bound to a plan category.

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

id

Integer

Not Required

Plan category ID in the platform.

name

String

Not Required

Name..

description

String

Not Required

Description..

GetServicePlanBasic

Service plans are the main products used to sell application services.

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

id

Integer

Not Required

A digital ID unique in scope of the wizard data. For the sake of reliability, assign a negative digit to avoid confusion with an ID of a service plan existing in the platform. The platform will assign a unique ID when creating the required service plan.

originalEnName

String

Not Required

name

Object

Not Required

Name..

planCategory

GetPlanCategory

Not Required

vendorId

Integer

Not Required

Service plan vendor internal ID.

serviceTemplateId

Integer

Not Required

The ID of the service template the service plan is based on.

isAvailableForSale

Boolean

Not Required

billingPeriodType

Integer

Not Required

billingPeriod

Integer

Not Required

pricePeriodType

Integer

Not Required

isEnableVolumePricingModel

Boolean

Not Required

SalesCategory

To make a service plan available for sale, it must be added to a sales category.

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

id

Integer

Not Required

A unique ID of the sales category. For the sake of reliability, assign a negative digit to avoid confusion with an ID of a category existing in the platform. The platform will assign a unique ID to the new category.

externalId

Integer

Not Required

name

String

Not Required

Name..

description

String

Not Required

Description..

inCCP

Boolean

Not Required

Specifies if the sales category along with its service plans is available in the customer control panel (CCP).

expand

Boolean

Not Required

If true, the sales category will be opened to show all its service plans. Otherwise, the user must click it to see the included service plans.

sortOrder

Integer

Not Required

parentSalesCategory

SalesCategory

Not Required

ServiceTerms

Service terms for a plan

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

id

Integer

Not Required

name

String

Not Required

GetNotificationSchedule

Existing notification schedule

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

id

Integer

Not Required

name

String

Not Required

GetTermsConditions

Terms and conditions to accept when subscribing to a service plan (or before starting a particular resource usage).

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

id

Integer

Not Required

name

String

Not Required

acceptance

String

Not Required

GetServicePlan

Service plans are the main products used to sell application services.

NAME

TYPE

ATTRIBUTES

DEFAULT

DESCRIPTION

shortDescription

Object

Not Required

Short description.

longDescription

Object

Not Required

Long description.

serviceTemplateName

String

Not Required

The name of the service template the service plan is based on.

planBillingPeriod

Integer

Not Required

Defines the number of period types in the billing period of the service plan.

planBillingPeriodType

Integer

Not Required

Defines the period type of the billing period of the service plan.

renewOrderInterval

Integer

Not Required

Defines a digital code of the renewal order interval, either 0 (auto-renewal is disabled), 5 (the renewal order is generated on the last statement day), or 15 (the renewal order is generated before the subscription expiration date).

renewPointDays

Integer

Not Required

Specifies a number of days before the subscription expiration date when a renewal order must be generated. This is valid when {@link #renewOrderInterval} is 15.

billingModel

String

Not Required

Billing model.

storeCategories

Array of SalesCategory

Not Required

Sales category internal IDs.

serviceTerms

ServiceTerms

Not Required

subscriptionNotificationTemplate

String

Not Required

notificationSchedule

GetNotificationSchedule

Not Required

termsConditions

Array of GetTermsConditions

Not Required

delegatedServicePlans

Array of GetServicePlan

Not Required

Examples

Since the considered APS type contains custom operations, refer to Custom Operations for the general explanation of their structure and examples of operation calls.