The Adobe Console Client communicates with the Adobe Application Server with SOAP calls only. As the SOAP protocol relies on HTTP/HTTPS, we’re able to intercept requests & responses via Fiddler.

πŸ”πŸ’»πŸ’‘

Installation

  • Get Fiddler from https://www.telerik.com/download/fiddler
  • Say your instance URL is https://mkt-stage1.campaign.adobe.com
  • Create a new Connection named Fiddler with the instance URL set to https://myinstance
  • Open Fiddler, got to Rule > Customize Rules, it will open the Fiddler Script Editor
  • Look for static function OnBeforeRequest(oSession: Session){
  • Add the following code, just after the opening curly bracket {:
    static function OnBeforeRequest(oSession: Session){
    if (oSession.HostnameIs("MYINSTANCE")) {
      oSession.host = "mkt-stage1.campaign.adobe.com:443"; // use 80 for HTTP, 443 for HTTPS or 8080 for Tomcat
    }
    // rest of the code
    
  • Enable HTTPS in Fiddler in Tools > Fiddler Options > HTTPS > Decrypt HTTPS

Usage

Browse to different folders, workflows or schemas from your console, and check Fiddler:

New instance creation

  • GET /r/config
  • POST /nl/jsp/soaprouter.jsp, SOAPAction: xtk:session#Logon, strLogin:internal, strPassword:internal, Response: ```xml
- POST /nl/jsp/soaprouter.jsp, xtk:persist#GetEntityIfMoreRecent, `<strPk>xtk:navtree|xtk:merged</strPk>`, Response:
```xml
<pdomDoc xsi:type="ns:Element" SOAP-ENV:encodingStyle="http://xml.apache.org/xml-soap/literalxml" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:wpp:default"></pdomDoc>
  • POST /nl/jsp/soaprouter.jsp, xtk:persist#GetEntityIfMoreRecent, <strPk>xtk:form|xtk:createdb</strPk>
  • POST /nl/jsp/soaprouter.jsp, xtk:persist#GetEntityIfMoreRecent, <strPk>xtk:schema|xtk:builder</strPk>
  • POST /nl/jsp/soaprouter.jsp, xtk:persist#GetEntityIfMoreRecent, <strPk>xtk:schema|xtk:common</strPk>
  • POST /nl/jsp/soaprouter.jsp, xtk:persist#GetEntityIfMoreRecent, <strPk>xtk:schema|xtk:serverConf</strPk>
  • POST /nl/jsp/soaprouter.jsp, xtk:builder#GetDbParams

<FILL IN FORM, THEN HIT START>

  • POST /nl/jsp/soaprouter.jsp, xtk:jobInterface|xtk:builder#SubmitSoapCall, Request: ```xml

<builder doNotPersist=true xtkschema=xtk:builder>

<createdbParameters changeAdminPassword=true createNewAccount=true dbName=neolane nlAdminPassword=admin tableSpaceIndex= tableSpaceTemp= tableSpaceUser= tableSpaceWork= tableSpaceWorkIndex= timezone=America/Los_Angeles unicodeData=true utc=true> <package enabled=true hidden=false img=nms:packages/delivery.png label=Delivery locked=true name=core namespace=nms order=10> </package> </createdbParameters> </builder>


Installation job output:
```console
Submitting job to the server
16:50:50 - Creating new database 'neolane'
16:50:51 - Creating new user account 'neolane'
16:50:51 - Granting rights on database 'neolane' to user 'neolane'
16:50:51 - Enumerating the file entities...
16:50:53 - Generating schemas...
16:50:53 - Starting 1 connection(s) on pool 'default instance1' (PostgreSQL, server='localhost', login='neolane:neolane')
16:50:54 - Executing SQL script 'xtk:postgresql-functions.sql'...
16:50:54 - Creating DDL procedures
16:50:54 - Creating standard date and time functions
16:50:54 - Creating standard string functions
16:50:54 - Creating standard bitwise functions
16:50:54 - Executing SQL script 'xtk:postgresql-nldb.sql'...
16:50:54 - Creating Id generator
16:50:54 - Creating specific Id generator for xtkworkflowlogs
16:50:54 - Creating specific Id generator for xtkworkflowtask
16:50:54 - Creating specific Id generator for xtkworkflowevent
16:50:54 - Creating specific Id generator for NmsGroup
16:50:54 - Creating specific Id generator for XtkWorkflowJob
16:50:54 - Creating specific Id generator for NmsCostLine
16:50:54 - Creating specific Id generator for NmsExpenseLine
16:50:54 - Creating table 'XtkAudit'
16:50:54 - Creating table 'XtkConflict'
16:50:54 - Creating table 'XtkCounter'
16:50:54 - Creating table 'XtkDashboard'
16:50:54 - Creating table 'XtkJob'
16:50:54 - Creating table 'XtkEntity'
16:50:54 - Creating table 'XtkReject'
16:50:54 - Creating table 'XtkDictionaryString'
16:50:54 - Creating table 'XtkEnum'
16:50:54 - Creating table 'XtkEnumAlias'
16:50:54 - Creating table 'XtkEnumValue'
16:50:54 - Creating table 'XtkFileRes'
16:50:54 - Creating table 'XtkFileResData'
16:50:54 - Creating table 'XtkFileResHistory'
16:50:54 - Creating table 'XtkFolder'
16:50:54 - Creating table 'XtkFormRendering'
16:50:54 - Creating table 'XtkOperator'
16:50:54 - Creating table 'XtkJobLog'
16:50:54 - Creating table 'XtkOlapAggregate'
16:50:54 - Creating table 'XtkOlapCube'
16:50:54 - Creating table 'XtkOlapDimension'
16:50:54 - Creating table 'XtkOlapMeasure'
16:50:54 - Creating table 'XtkOperatorGroup'
16:50:54 - Creating table 'XtkOption'
16:50:54 - Creating table 'XtkPackageInstall'
16:50:54 - Creating table 'XtkPkgInstRel'
16:50:54 - Creating table 'XtkQueryFilter'
16:50:54 - Creating table 'XtkReport'
16:50:55 - Creating table 'XtkReportHistory'
16:50:55 - Creating table 'XtkReportRights'
16:50:55 - Creating table 'XtkRights'
16:50:55 - Creating table 'XtkSessionInfo'
16:50:55 - Creating table 'XtkWorkflow'
16:50:55 - Creating table 'XtkWorkflowEvent'
16:50:55 - Creating table 'XtkWorkflowJob'
16:50:55 - Creating table 'XtkWorkflowLog'
16:50:55 - Creating table 'XtkWorkflowLogin'
16:50:55 - Creating table 'XtkWorkflowTask'
16:50:55 - Creating table 'NmsCountry'
16:50:55 - Creating table 'NmsState'
16:50:55 - Creating table 'NmsActiveContact'
16:50:55 - Creating table 'NmsActiveContactReport'
16:50:55 - Creating table 'NmsActiveContactReportDetail'
16:50:55 - Creating table 'NmsAddress'
16:50:55 - Creating table 'NmsBilling'
16:50:55 - Creating table 'NmsBroadLogRcp'
16:50:55 - Creating table 'NmsBroadLogVisitor'
16:50:55 - Creating table 'NmsExcludeLogRcp'
16:50:55 - Creating table 'NmsBroadLogOp'
16:50:55 - Creating table 'NmsBroadLogMsg'
16:50:55 - Creating table 'NmsProviderMsgId'
16:50:55 - Creating table 'NmsTypology'
16:50:55 - Creating table 'NmsTypologyRule'
16:50:55 - Creating table 'NmsTypologyRuleRel'
16:50:55 - Creating table 'NmsDelivery'
16:50:55 - Creating table 'NmsAttachments'
16:50:55 - Creating table 'NmsSeedMember'
16:50:55 - Creating table 'NmsDeliveryMapping'
16:50:55 - Creating table 'NmsDeliveryPart'
16:50:55 - Creating table 'NmsDeliveryStat'
16:50:55 - Creating table 'NmsDeliveryLogStats'
16:50:55 - Creating table 'NmsDlvExclusion'
16:50:55 - Creating table 'NmsDomain'
16:50:55 - Creating table 'NmsExtAccount'
16:50:55 - Creating table 'NmsGroup'
16:50:55 - Creating table 'NmsIncludeView'
16:50:55 - Creating table 'NmsMirrorPageInfo'
16:50:55 - Creating table 'NmsMirrorPageSearch'
16:50:55 - Creating table 'NmsRcpGrpRel'
16:50:55 - Creating table 'NmsRecipient'
16:50:55 - Creating table 'NmsVisitor'
16:50:55 - Creating table 'NmsRuleSet'
16:50:55 - Creating table 'NmsService'
16:50:55 - Creating table 'NmsSubHisto'
16:50:55 - Creating table 'NmsSubscription'
16:50:55 - Creating table 'NmsTrackingLogRcp'
16:50:55 - Creating table 'NmsTrackingLogVisitor'
16:50:55 - Creating table 'NmsTrackingStats'
16:50:55 - Creating table 'NmsTrackingUrl'
16:50:55 - Creating table 'NmsTrackingUrlInfo'
16:50:55 - Creating table 'NmsUserAgent'
16:50:55 - Creating table 'NmsUserAgentReject'
16:50:55 - Creating table 'NmsUserAgentStats'
16:50:55 - Creating table 'NmsWebApp'
16:50:55 - Creating table 'NmsWebForm'
16:50:55 - Creating table 'NmsWebTrackingLog'
16:50:55 - Creating table 'NmsWebAppLogRcp'
16:50:55 - Creating table 'NmsEmailError'
16:50:55 - Creating table 'NmsEmailErrorStat'
16:50:55 - Creating table 'NmsMxDomain'
16:50:55 - Creating table 'NmsMxOwner'
16:50:55 - Creating table 'NmsLocalOrgUnit'
16:50:55 - Creating table 'NmsPipelineOffset'
16:50:55 - Creating table 'NmsPipelineDiscard'
16:50:55 - Creating table 'NmsSuppressionAddress'
16:50:55 - Creating table 'NmsSuppressionDomain'
16:50:55 - Creating table 'NmsReplicationStrategy'
16:50:55 - Creating table 'NmsOfferSpace'
16:50:55 - Creating table 'NmsOffer'
16:50:55 - Creating table 'NmsPropositionRcp'
16:50:55 - Creating table 'NmsPropositionVisitor'
16:50:55 - Creating table 'NmsOfferView'
16:50:55 - Generating identifier for database 'uFE80000000000000650F0DF7EAD7C45100730D20'...
16:50:55 - Executing SQL script 'nms:postgresql-nms.sql'...
16:50:56 - Creating specific Id generator for broadLogs
16:50:56 - Creating specific Id generator for trackingLogs
16:50:56 - Creating specific Id generator for Propositions
16:50:56 - Creating specific Id generator for nmsaddress
16:50:56 - Creating specific Id generator for nmstrackingstats
16:50:56 - Creating specific Id generator for NmsBroadLogMsg
16:50:56 - Creating specific Id generator for NmsTrackingUrl
16:50:56 - Creating specific Id generator for NmsRecipient
16:50:56 - Creating specific Id generator for NmsReplicationStrategy
16:50:56 - Creating specific Id generator for NmsSubHisto
16:50:56 - Executing SQL script 'nms:postgresql-functions.sql'...
16:50:56 - Executing SQL script 'nms:postgresql-geomktg.sql'...
16:50:56 - Executing SQL script 'nms:postgresql-interaction.sql'...
16:50:56 - Writing schemas in the database...
16:50:57 - Writing entities in the database...
16:50:57 - Updating documents of type 'xtk:srcSchema'
16:50:57 - Updating documents of type 'xtk:form'
16:50:58 - Updating documents of type 'xtk:image'
16:51:04 - Updating documents of type 'xtk:xslt'
16:51:04 - Updating documents of type 'xtk:sql'
16:51:05 - Updating documents of type 'xtk:javascript'
16:51:07 - Updating documents of type 'xtk:jssp'
16:51:08 - Updating documents of type 'xtk:navtree'
16:51:08 - Updating documents of type 'xtk:funcList'
16:51:08 - Updating documents of type 'xtk:resourceMenu'
16:51:08 - Updating documents of type 'xtk:strings'
16:51:08 - Saving data related to packages...
16:51:08 - Generating the navigation tree...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:folder'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:fileResData'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:group'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:operator'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:queryFilter'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:formRendering'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:report'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:enum'...
16:51:08 - Package 'Initialization package': Saving entities of type 'xtk:option'...
16:51:08 - Package 'Default folders': Saving entities of type 'xtk:folder'...
16:51:08 - Package 'systemStrings': Saving entities of type 'xtk:dictionaryString'...
16:51:09 - Package 'Delivery error-qualification rules': Saving entities of type 'nms:ruleSet'...
16:51:09 - Package 'Delivery error-qualification rules': Saving entities of type 'xtk:option'...
16:51:09 - Package 'Delivery error-qualification rules': Saving entities of type 'nms:broadLogMsg'...
16:51:10 - Package 'Delivery error-qualification rules': Saving entities of type 'xtk:option'...
16:51:10 - Package 'List of countries and states': Saving entities of type 'nms:country'...
16:51:10 - Package 'List of countries and states': Saving entities of type 'nms:state'...
16:51:10 - Package 'List of countries and states': Saving entities of type 'xtk:queryFilter'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:enum'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapCube'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapMeasure'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapDimension'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapCube'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapDimension'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapMeasure'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapCube'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapDimension'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:olapMeasure'...
16:51:10 - Package 'Standard reports': Saving entities of type 'xtk:report'...
16:51:11 - Package 'HeatMap visualization for instance monitoring': Saving entities of type 'xtk:option'...
16:51:11 - Package 'HeatMap visualization for instance monitoring': Saving entities of type 'xtk:workflow'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:group'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:group'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:rights'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:operator'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:option'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:trackingUrl'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:userAgent'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:dataTransfer'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:queryFilter'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:formRendering'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:webApp'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:includeView'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:typologyRule'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:folder'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:typologyRuleRel'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:extAccount'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:seedMember'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:deliveryMapping'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:11 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:workflow'...
16:51:11 - Package 'Delivery': Saving entities of type 'xtk:workflow'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:option'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:extAccount'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:workflow'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:enum'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:folder'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:rights'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:folder'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:service'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:olapCube'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:olapDimension'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:olapMeasure'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:workflow'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:option'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:option'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:folder'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:offerEnv'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:folder'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:offerCategory'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:operator'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:rights'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:formRendering'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:includeView'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:offer'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:offerSpace'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:webApp'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:report'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:workflow'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:folder'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:includeView'...
16:51:12 - Package 'Delivery': Saving entities of type 'nms:delivery'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:option'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:option'...
16:51:12 - Package 'Delivery': Saving entities of type 'xtk:option'...
16:51:12 - Executing the installation script for the 'nms:report' package...
16:51:19 - Publication successful.
16:51:19 - Executing the installation script for the 'nms:core' package...
16:51:20 - Installation of packages successful.
16:51:20 - Changing administrator password...
16:51:20 - Creation of database successfully completed.

Then, first login:

  • POST /nl/jsp/soaprouter.jsp, xtk:session#Logon, Response: ```xml
<userInfo datakitInDatabase=true homeDir= instanceLocale=en-US locale=en-US login=admin loginCS=Administrator (admin) loginId=1059 noConsoleCnx=false orgUnitId=0 theme= timezone=America/Los_Angeles> </userInfo>

```

Reference

  • https://helpx.adobe.com/uk/campaign/kb/soap-traffic-fiddler.html