Restful API Aid
Restful API Aid
Restful API Aid
` 433513 – POOA
Document Attributes
Attribute Value
Application ID / MOTS ID: 34172 Pre-Ordering and Order Automation (POOA)
Application Name MOTS ID: 23440 Locations Master Catalog (LMC)
Other Attribute
Other Attribute
Revision History
The project ID and, if applicable, CR associated with changes to this interface must be identified.
If this AID supports multiple projects, in the body of the document, make clear which current project is
associated with each change.
Table of Contents
Introduction.....................................................................................................................4
Description.............................................................................................................................................. 4
Definitions........................................................................................................................4
Interfacing Application Roles...........................................................................................5
Interface Type..................................................................................................................6
Action Needed.................................................................................................................6
Interface Overview...........................................................................................................7
Stimulus.................................................................................................................................................. 7
Assumptions............................................................................................................................................ 8
Dependencies.......................................................................................................................................... 8
Interface Design Rationale...................................................................................................................... 8
Flow Diagram.......................................................................................................................................... 9
Interface Specification...................................................................................................10
Implementation Specification........................................................................................12
Batch Interface Specification................................................................................................................. 12
Object Oriented Interface Specification................................................................................................. 12
Tag-Based Interface Specification......................................................................................................... 12
SOAP Web Services Interface Specification...........................................................................................12
RESTful Web Services Interface Specification........................................................................................ 12
Publish-Subscribe Messaging/DMaaP Interface Specification.................................................................31
Database Interface Specification........................................................................................................... 31
Other Interface Specifications............................................................................................................... 31
JMS Considerations................................................................................................................................ 31
AFT Discovery Service Considerations................................................................................................... 32
AFT Discovery Service Client Specification............................................................................................ 32
AFT Discovery Entry Specification......................................................................................................... 32
Interface Processing Rules.............................................................................................32
Availability and Performance.........................................................................................32
On-Demand Interface Availability and Performance..............................................................................33
Batch Interface Availability and Performance........................................................................................ 34
Provider Application Scheduled Hours of Operation..............................................................................34
Outage and Error Handling............................................................................................35
Outage Handling................................................................................................................................... 35
Error Handling....................................................................................................................................... 35
Security..........................................................................................................................35
Authentication....................................................................................................................................... 35
Authorization......................................................................................................................................... 35
Encryption............................................................................................................................................. 36
Firewalls................................................................................................................................................ 36
Disaster Recovery..........................................................................................................36
Testing Considerations..................................................................................................36
Related Documents.......................................................................................................36
Compliance Interface Agreement..................................................................................37
Parties of Agreement............................................................................................................................. 37
Description of Interface......................................................................................................................... 37
Statement of ASPR compliance responsibilities.....................................................................................37
Identification of sensitive data.............................................................................................................. 37
Acceptance & Approvals................................................................................................38
Template AT&T Proprietary (Internal Use Only) Page 2 of 40
Version 8.0 4/26/2019
Not for use or disclosure outside the AT&T companies except under written agreement
Application Interface Design
` 433513 – POOA
Overview............................................................................................................................................... 38
Approvers.............................................................................................................................................. 38
Introduction
Description
The Application Interface Design (AID) communicates the selected interface design to stakeholders and to
the design and development team. An Application Interface Design identifies and describes the interface
and the rationale for selecting that approach. Assurance should be given that the capabilities of the
interface will meet the Requirements/Epics/User Stories (Functional and Nonfunctional Requirements) and
architectural concept for this project.
The AID describes an interface between a single Provider application and one or more Consumer
applications. The design specifies what data elements are to be shared between applications and how (i.e.,
by what means) the data is shared.
The AID is produced by the Provider application with contributions from the Consumer application(s). If the
Provider application is outside of Technology Development and the Provider application elects not to
create an AID, a Technology Development project resource must produce the AID. If the Provider
application is covered by a Supplier Management Plan (SMP) where the AID is not required to be delivered,
a Technology Development project resource must produce the AID. The AID includes all transactions in an
interface interaction. For On-Demand interfaces this includes all operations in the Interface Transaction.
(See Definitions).
Application interface design element identifiers are to be used for traceability (e.g. AID-XXX).
As a client POOA will send address-based requests to the LMC tool to autocreate CLLI codes via a Restful
Web Service application programming interface (API). LMC will generate a CLLI code for each successful
request. LMC will assign and return a reference number and a message response in JSON format. POOA
will consume the LMC SOAP web service API to retrieve a response for each completed request.
Mechanically completed requests will return a reference number, assigned CLLI, related Location data,
message code and a message response in JSON format. If the request returns a real time error (i.e. street
name not populated) no reference number will be assigned and LMC will return an error response in JSON
format. This interface will be scalable with the option to add additional clients as well as the ability to add
other request types over time.
Definitions
Tag-Based: An application-to-application interface that uses text based messages where the fields
are delimited with tags (e.g., XML, FCIF). Web Services interfaces are not considered Tag-Based
interfaces.
Template AT&T Proprietary (Internal Use Only) Page 4 of 40
Version 8.0 4/26/2019
Not for use or disclosure outside the AT&T companies except under written agreement
Application Interface Design
` 433513 – POOA
SOAP Web Services: An On-Demand interface where the design uses SOAP Web Services
Description Language (WSDL) described SOAP.
RESTful Web Services: An On-Demand interface where the design uses RESTful Web Services
architectural principles.
Callback API: APIs where there is a primary API and a separate callback API. An API that uses the
callback pattern consists of what appears to be two separate APIs (1) the primary API implemented
by the API provider and (2) the callback API implemented by the API consumer. These are not two
separate APIs, however. This is one API because the callback API is fundamentally part of the
primary API and it cannot be used independent of the primary API.
Consumer: A role played by an application in an interface. The following describes the application
that plays the Consumer role:
Batch - The application that receives the group of transactions.
On-Demand - The application that receives an Event Notification or initiates an Interface
Transaction. The Consumer role remains constant throughout the Interface Transaction.
Provider: A role played by an application in an interface. The following describes the application
that plays the Provider role:
Batch - The application that constructs and sends the group of transactions.
On-Demand - The application that offers operations to initiate an Interface Transaction. An
exception is Event Notification interfaces. In Event Notification interfaces, the application that
sends the Event Notification is the Provider. The Provider role remains constant throughout
the Interface Transaction.
Interface Type
For On-Demand, list the Repository URLs to the relevant Implementations and MicroServices (mS)
(if the interface is deployed as a MicroService):
Enter the Coordinated Repository link to the SOAP Service, RESTful Web Service, XML Service,
or Other Service.
Enter the mS Catalog link to the MicroService associated with the SOAP Service, RESTful Web
Service, XML Service, or Other Service.
If the interface does not conform to the TSS policy and practices below, list the approved TSS
Exception(s) and API Variance(s).
o API Platform Standard Practice
o SOAP Web Services Standards Practice
o RESTful Web Services Standards Practice
o Messaging & JMS Practice
o XML Standards Practice
(Use Technology Development AID Template instructions)
Interface Overview
Stimulus
REST API:
Assumptions
Dependencies
LMC must enhance “existing” SOAP Web Service to return the ALC (Accounting Location Code) in the
response to describeLocation2 (cust_lmc_loc_clli_hdr.acct_loc_cd1)
LMC must enhance “existing” REST Web Service to return the ALC (Accounting Location Code) in the
response to requestClli if not already. (cust_lmc_loc_clli_hdr.acct_loc_cd1)
Flow Diagrams
Submit address-based
request via REST API
POOA LMC
Response in
JSON format
Interface Specification
https://{serverBaseURL}:PORT/LMCRESTREQ/requestClli/v1/locations
201 Created The request has been fulfilled and resulted in a new
resource being created.
202 Accepted The request has been accepted for processing, but the
processing has not been completed.
204 No Content The server has fulfilled the request but does not need
to return an entity-body, and might want to return
updated meta information.
206 Partial Content The server has fulfilled the partial GET request for the
resource.
Define the interface specifications or reference existing interface document that includes, but is not
limited to, the following:
Data content and format (data elements, data types, and lengths)
Data usage specifications (optional, required, or conditional and the associated conditions)
Operation names, parameters and synchronicity (request, response or one-way)
Enumerate data sets, where known.
Error conditions and associated codes, categories, criticality and messages
Describe the API Interfaces that this microService will expose to clients.
Depending on the technology, this section will have different information.
REST JSON based APIs use resources and methods like POST, GET, PUT, DELETE.
SOAP based web services operations are like manage, inquire, validate, etc.
Hierarchy of Resources
//host:port/LMCRESTREQ
/requestClli/{version}
locations
Operations on Resources
Resource
Base URL: https://
{serverBaseURL}:PORT/LMCRESTREQ/request HTTP
# API Clli/v1/locations Verb
A. Resource Name: locations Description: The location that is being created
1. locations Location POST
https://{serverBaseURL}:PORT/LMCRESTREQ/requestClli/v1/locations
Implementation Specification
Describe the interface implementation specifications applicable to this interface design. Mark sections that
do not apply N/A.
For On-Demand interfaces where the Provider application is not an API One Platform MOTS Application
(see TSS API Platform Standards), reference an approved API Variance against the TSS API Platform
Standards in the Action Needed TSS Exception / API Variance box above. For example, an API Variance is
required when modifying an existing AT&T Resident API to add new operations (new messages) or add
new client(s)/consumer(s). See the TSS API Platform Standards for a complete list.
N/A
N/A
N/A
N/A
Put any relevant XML Schema Definition (XSD) in the Coordinated Repository (ACR) using the
Coordinated Repository Job Aid; do not embed in the AID.
RESTful Web Services interfaces must adhere to the RESTful Web Services Standards and, if the
requests or responses are in XML format, the XML Standards:
Specify resource model of the service, per the RESTful Web Services Standards.
For each resource specify:
o Resource URI/URI Template
o HTTP Verbs.
o Request/Response headers and message body structures.
o Provide examples for all relevant use cases and for all relevant data formats (e.g., XML,
JSON).
o Errors and conditions under which they are raised.
o HTTP Status codes returned.
POST-locations
Card
Data inali
Location Type / ty
(local Length (eg M Description, Conditional
path, URL, or 0:10 O Rules / Additional
Parameter Header) Object ) C Requirements Valid Values
content-length Header Integer Standard HTTP header
Object: locations
Description: A location is a request for an add from the POOA Team.
Key = Authentication
Value = Basic “Base64 encoded mechID and PWD” (I will give example.)
Key = Content-Type
Value = application/json
HTTP/1.1
Host: uat2-nhyodaapi.az.3pc.att.com:8301
Authorization: Basic Y3BzOmNwczEyMw==
X-MessageId: <messageid_generated>
X-TimeToLive: 600
Content-Type: application/json
Accept: application/json
Request Example for requestclli JSON (Nxx CLLI codes, CUST-NET entity Location type)
POST https://
uat2-nhyodaapi.az.3pc.att.com:8301/LMCRESTREQ/requestClli/v1/locations/
HTTP/1.1
Host: ultv0070.madc.att.com:20030
Authorization: Basic Y3BzOmNwczEyMw==
X-MessageId: <messageid_generated>
X-TimeToLive: 600
Content-Type: application/json
Accept: application/json
{
"requestId": "",
"createClliInd": "",
"userId" : "",
"userName": "",
"source": "",
"systemType": "",
"statusDesc": "",
"useLocateIt": "",
"preCheckInd": "",
"buildingClli": "",
"requestedBy": "POOA",
"contactNum": "9999999999",
"typeIdentifier": "",
"acceptDateTime": "",
"statusDescription": "",
"iac": "",
"networkSiteClli": "",
"alc": "",
"alcType": "",
"workgroupId": "POA",
"xpoiID" : "",
"queryId": "",
"asrNumber": "",
"clo": "",
"geoCode": "",
"descriptionText": "TEST",
"entityLocationType": "CUST-NET",
"fmlClli": "",
"centrex": "",
"locationId": "",
"div": "",
"dist": "",
"hostClli": "",
"buildClearGroup": "",
"emailAddr": "",
"cmnSmartRing": "",
"tirks": "",
"servWireCntr": "",
"swcSysCode": "",
"swcDiv": "",
"swcDist": "",
"buildingName": "",
"taxCode": "",
"vertex": " ",
"workLocationInd": "N",
"fmlRequiredInd": "N",
"alcRequiredInd": "",
"vertical": "",
"horizontal": "",
"elevation": "",
"longHemisphere": "",
"longDegree": "",
"longSecondAngle": "",
"longMinuteAngle": "",
"longFractionAngle": "",
"latHemisphere": "",
"latDegree": "",
"latSecondAngle": "",
"latMinuteAngle": "",
"latFractionAngle": "",
"latDecimal": "",
"longDecimal": "",
"customerMCN": "",
"customerName": "WALMART",
"customerStatus": "",
"typeOfService": "",
"room": "",
"floor": "",
"entitySwitch": "",
"description": "",
"addressType": "P",
"addressCity": "NEWARK",
"addressCounty": "N/A",
"addressState": "NJ",
"addressCountry": "USA",
"addressZipCode": "07103",
"addressZipCodePlus4": "",
"addressPostalCode": "",
"nonSegmentedAddr": "",
"sequenceNum": "",
"useNonSegAddr": "N",
"streetNum": "325",
"directionalPrefix": "",
"streetName": "NORFOLK",
"streetType": "ST",
"directionalSuffix": "",
"intersectionOp": "",
"polDivId": "",
"country": "",
"postalCode": "",
"sequenceNum2": "",
"streetNum2": "",
"directionalPrefix2": "",
"streetName2": "",
"streetType2": "",
"directionalSuffix2": "",
"polDivId2": "",
"country2": "",
"postalCode2": ""
}
Request Schema
XML is not a supported format, thus no XML schema is provided. Add JSON Schema when JSON Schema
formally adopted
Card
Data inali
Location Type / ty
(local Length (eg M Description, Conditional
path, URL, or 0:10 O Rules / Additional
Parameter Header) Object ) C Requirements Valid Values
content-length Header Integer Standard HTTP header
Requests completed mechanically with a clli code in real time will return the data below via
the initial response from LMC. At this point, you only need the requestID for tracking. CUST-
NET (Nxx) example. Hxx codes sent from SCOPE will have an ALC returned in
describeLocation2 call.
HTTP(S)/1.1 200 OK
X-MessageId: <message_id_generated_by_hub>
{
"clliCode" : "NWRKNJHDN01",
"requestId" : "POA5608972",
"clonesVerifyDate" : "",
"currentValidityInd" : "A",
"standardInd" : "",
"action" : "",
"lastUpdatedDate" : "",
"mpc" : "JL86H",
"entityLocationType" : "CUST-NET",
"typeId" : "E",
"description" : "WALMART",
"recordCreator" : "ATX",
"acctLocCd1" : "",
"alc" : "",
"fml" : "",
"fmlLt" : "",
"servWireCntr" : "",
"clliExists" : "",
"addressType" : "",
"addressCity" : "",
"addressCounty" : "",
"addressCountry" : "",
"addressPostalCode" : "",
"sequenceNum" : "",
"streetNum" : "",
"directionalPrefix" : "",
"streetName" : "",
"streetType" : "",
"directionalSuffix" : "",
"streetName2" : "",
"sequenceNum2" : "1",
"nonSegmentedAddress" : "",
"polDivId" : "NJ",
"polDivName" : "NEW JERSEY",
"polDivTyp" : "U",
"polSubdName" : "NEWARK",
"localExchangeCompany" : "",
"timeZone" : "",
"lataCode" : "224",
"daylightSavingsInd" : "N",
"vertex" : "0131013166000",
"fmlRequiredInd" : "",
"vertical" : "5016.6094",
"horizontal" : "1431.7751",
"elevation" : "0",
"longHem" : "W",
"longDegree" : "74",
"longMinuteAngle" : "11",
"longSecondAngle" : "13",
"longFractionAngle" : "0",
"latHem" : "N",
"latDegree" : "40",
"latMinuteAngle" : "44",
"latSecondAngle" : "18",
"latFractionAngle" : "0",
"latDecimal" : "40.738342",
"longDecimal" : "-74.186871",
"locDescription" : "TEST",
"renamedToClli" : "",
"renamedFromClli" : "",
"sharedSwitchToClli" : "",
"sharedSwitchFromClli" : "",
"requestUserId" : "8285",
"requestUserName" : "auto",
"requestSource" : "C",
"requestSystemType" : "T",
"requestRequestedBy" : "POOA",
"requestContactNum" : "9999999999",
"requestAlc" : "",
"requestWorkGroupId" : "POA",
"requestDescriptionText" : "WALMART",
"requestEntityLocationType" : "CUST-NET",
"requestServWireCntr" : "",
"requestWorkLocationInd" : "",
"requestFmlRequiredInd" : "N",
"requestAddressType" : "P",
"requestAddressCity" : "NEWARK",
"requestAddressCounty" : "N/A",
"requestAddressCountry" : "USA",
"requestAddressPostalCode" : "",
"requestStreetNum" : "325",
"requestDirectionalPrefix" : "",
"requestStreetName" : "NORFOLK",
"requestStreetType" : "ST",
"requestDirectionalSuffix" : "",
"requestUseNonSegmentedAddr" : "Y",
"requestNonSegmentedAddress" : "",
"returnCode" : "0",
"returnMessage" : "TRANSACTIONID=O13490146053920L. WS COMPLETED SUCCESSFULLY :
SOURCE - C",
"statusCode" : "200"
}
Requests not completed mechanically in real time (Sent to LMC Worklist for completion) will
return the data below via in the initial response from LMC. At this point, you only need the
requestID for tracking.
HTTP(S)/1.1 200 OK
X-MessageId: <message_id_generated_by_hub>
{
"clliCode" : "",
"requestId" : "POA5608973",
"clonesVerifyDate" : "",
"currentValidityInd" : "",
"standardInd" : "",
"action" : "",
"lastUpdatedDate" : "",
"mpc" : "",
"entityLocationType" : "",
"typeId" : "",
"description" : null,
"recordCreator" : null,
"acctLocCd1" : null,
"alc" : null,
"fml" : null,
"fmlLt" : null,
"servWireCntr" : null,
"clliExists" : null,
"addressType" : null,
"addressCity" : null,
"addressCounty" : null,
"addressCountry" : null,
"addressPostalCode" : null,
"sequenceNum" : null,
"streetNum" : null,
"directionalPrefix" : null,
"streetName" : null,
"streetType" : null,
"directionalSuffix" : null,
"streetName2" : null,
"sequenceNum2" : null,
"nonSegmentedAddress" : null,
"polDivId" : null,
"polDivName" : null,
"polDivTyp" : null,
"polSubdName" : null,
"localExchangeCompany" : null,
"timeZone" : null,
"lataCode" : null,
"daylightSavingsInd" : null,
"vertex" : null,
"fmlRequiredInd" : null,
"vertical" : null,
"horizontal" : null,
"elevation" : null,
Template AT&T Proprietary (Internal Use Only) Page 26 of 40
Version 8.0 4/26/2019
Not for use or disclosure outside the AT&T companies except under written agreement
Application Interface Design
` 433513 – POOA
"longHem" : null,
"longDegree" : null,
"longMinuteAngle" : null,
"longSecondAngle" : null,
"longFractionAngle" : null,
"latHem" : null,
"latDegree" : null,
"latMinuteAngle" : null,
"latSecondAngle" : null,
"latFractionAngle" : null,
"latDecimal" : null,
"longDecimal" : null,
"locDescription" : null,
"renamedToClli" : null,
"renamedFromClli" : null,
"sharedSwitchToClli" : null,
"sharedSwitchFromClli" : null,
"requestUserId" : null,
"requestUserName" : null,
"requestSource" : null,
"requestSystemType" : null,
"requestRequestedBy" : null,
"requestContactNum" : null,
"requestAlc" : null,
"requestWorkGroupId" : null,
"requestDescriptionText" : null,
"requestEntityLocationType" : null,
"requestServWireCntr" : null,
"requestWorkLocationInd" : null,
"requestFmlRequiredInd" : null,
"requestAddressType" : null,
"requestAddressCity" : null,
"requestAddressCounty" : null,
"requestAddressCountry" : null,
"requestAddressPostalCode" : null,
"requestStreetNum" : null,
"requestDirectionalPrefix" : null,
"requestStreetName" : null,
"requestStreetType" : null,
"requestDirectionalSuffix" : null,
"requestUseNonSegmentedAddr" : null,
"requestNonSegmentedAddress" : null,
"returnCode" : "1",
"returnMessage" : "TransactionID=M16202905080365F. ERROR - CLONES ENTITY WITHOUT
SPECIFIED INPUT BUILDING CREATION CLONES found multiple CLLI-8, BUT NOT AN EXACT MATCH,
PLEASE CHECK",
"statusCode" : "200"
Requests completed mechanically with a clli code in real time will return the data below via
the the LMC SOAP API (describeLocation2) consumed by POOA.
<S:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<ns0:WSResponseHeader xsi:nil="true" xmlns:ns0="http://cio.att.com/commonheader/v3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</S:Header>
<S:Body>
<ns0:lmcDescribeLocation2Response xmlns:ns0="http://lmc.att.com/describelocationservice"
xmlns:ns2="http://lmc.att.com/create/locationclli"
xmlns:ns1="http://lmc.att.com/create/commonclli">
<ns0:LmcDescribeResponse2Type>
<ns0:requestStructure>
<ns2:status>S</ns2:status>
<ns2:clli>NWRKNJHDN01</ns2:clli>
<ns2:alc></ns2:alc>
</ns0:requestStructure>
</ns0:LmcDescribeResponse2Type>
<ns0:resultStatus>
<ns1:ResultCode>0</ns1:ResultCode>
<ns1:ResultMsg>SUCCESS TRANSACTION ID = Q12271297810567Q</ns1:ResultMsg>
</ns0:resultStatus>
</ns0:lmcDescribeLocation2Response>
</S:Body>
</S:Envelope>
Requests encountering an up front error will return a real time error message via the initial
response from LMC. No requestId is returned in this case.
{
"clliCode" : "",
"requestId" : "",
"clonesVerifyDate" : "",
"currentValidityInd" : "",
"standardInd" : "",
"action" : "",
"lastUpdatedDate" : "",
"mpc" : "",
"entityLocationType" : "",
"typeId" : "",
"description" : null,
"recordCreator" : null,
"acctLocCd1" : null,
"alc" : null,
"fml" : null,
"fmlLt" : null,
"servWireCntr" : null,
"clliExists" : null,
"addressType" : null,
"addressCity" : null,
"addressCounty" : null,
"addressCountry" : null,
"addressPostalCode" : null,
"sequenceNum" : null,
"streetNum" : null,
"directionalPrefix" : null,
"streetName" : null,
"streetType" : null,
"directionalSuffix" : null,
"streetName2" : null,
"sequenceNum2" : null,
"nonSegmentedAddress" : null,
"polDivId" : null,
"polDivName" : null,
"polDivTyp" : null,
"polSubdName" : null,
"localExchangeCompany" : null,
"timeZone" : null,
"lataCode" : null,
"daylightSavingsInd" : null,
"vertex" : null,
"fmlRequiredInd" : null,
"vertical" : null,
"horizontal" : null,
"elevation" : null,
"longHem" : null,
"longDegree" : null,
"longMinuteAngle" : null,
"longSecondAngle" : null,
"longFractionAngle" : null,
"latHem" : null,
"latDegree" : null,
"latMinuteAngle" : null,
"latSecondAngle" : null,
"latFractionAngle" : null,
"latDecimal" : null,
"longDecimal" : null,
"locDescription" : null,
"renamedToClli" : null,
"renamedFromClli" : null,
"sharedSwitchToClli" : null,
"sharedSwitchFromClli" : null,
"requestUserId" : null,
"requestUserName" : null,
"requestSource" : null,
"requestSystemType" : null,
"requestRequestedBy" : null,
"requestContactNum" : null,
"requestAlc" : null,
"requestWorkGroupId" : null,
"requestDescriptionText" : null,
"requestEntityLocationType" : null,
"requestServWireCntr" : null,
"requestWorkLocationInd" : null,
"requestFmlRequiredInd" : null,
"requestAddressType" : null,
"requestAddressCity" : null,
"requestAddressCounty" : null,
Template AT&T Proprietary (Internal Use Only) Page 29 of 40
Version 8.0 4/26/2019
Not for use or disclosure outside the AT&T companies except under written agreement
Application Interface Design
` 433513 – POOA
"requestAddressCountry" : null,
"requestAddressPostalCode" : null,
"requestStreetNum" : null,
"requestDirectionalPrefix" : null,
"requestStreetName" : null,
"requestStreetType" : null,
"requestDirectionalSuffix" : null,
"requestUseNonSegmentedAddr" : null,
"requestNonSegmentedAddress" : null,
"returnCode" : "1",
"returnMessage" : "TransactionID=R10549366676727Z. Cannot find \"2900 S DIABLOPPPP
WAY ,TEMPE ,AZ, 07103\" as an address. - return code -0",
"statusCode" : "200"
}
Requests not completed mechanically but completed from the LMC worklist with a CLLI code
will return the data below via the LMC SOAP API (describeLocation2) consumed by POOA upon
completion.
<S:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Header>
<ns0:WSResponseHeader xsi:nil="true" xmlns:ns0="http://cio.att.com/commonheader/v3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</S:Header>
<S:Body>
<ns0:lmcDescribeLocation2Response xmlns:ns0="http://lmc.att.com/describelocationservice"
xmlns:ns2="http://lmc.att.com/create/locationclli"
xmlns:ns1="http://lmc.att.com/create/commonclli">
<ns0:LmcDescribeResponse2Type>
<ns0:requestStructure>
<ns2:status>S</ns2:status>
<ns2:clli>NWRKNJHDN01</ns2:clli>
<ns2:alc></ns2:alc>
</ns0:requestStructure>
</ns0:LmcDescribeResponse2Type>
<ns0:resultStatus>
<ns1:ResultCode>0</ns1:ResultCode>
<ns1:ResultMsg>SUCCESS TRANSACTION ID = Q12271297810567Q</ns1:ResultMsg>
</ns0:resultStatus>
</ns0:lmcDescribeLocation2Response>
</S:Body>
</S:Envelope>
Response Schema
XML is not a supported format, thus no XML schema is provided. Add JSON Schema when JSON Schema
formally adopted
Error/Status Codes:
List the error codes a consumer of the mS can expect. Below are some of the common status and error codes. Consider the success
scenario, clients providing errorouneous input, and internal mS server errors that will apply to this mS API. Refer the mS policy for
additional information about status and error codes. The mS url is: http://tss.att.com/tssr/practiceIndex.cfm
o N/A
N/A
N/A
JMS Considerations
o N/A
EMBus
o N/A
N/A
AFT Discovery Service Client Specification
N/A
N/A
Describe the appropriate processing rules and/or procedures for the Provider and each Consumer
application involved in the interface. Create separate sub-sections for multiple Consumers where needed.
a) For On-Demand interfaces include transaction rules related to:
Processing constraints
Timeout and retry handling rules
Message priority rules
Maximum message size
Maximum concurrent transactions
Use of wild-cards in parameter values
Persistent, Non-Persistent messages
b) For Batch interfaces include file, record and transaction rules related to:
Grouping
Template AT&T Proprietary (Internal Use Only) Page 33 of 40
Version 8.0 4/26/2019
Not for use or disclosure outside the AT&T companies except under written agreement
Application Interface Design
` 433513 – POOA
Sorting/filtering
Sequencing
File retention requirements
Data and the control levels
File transfer time
Timeout and retry handling rules
Processing constraints
Data Quality
This section is in support of improving Data Quality, it is recommended that Data Quality controls be
defined for all interfaces. Refer to the Data Quality Job Aid, and in this section document the Data Quality
controls that should be implemented for this interface. Where applicable, applications should also include
any current data quality processes and controls not captured in the job aid.
Create a table for each Consumer application (as shown in the two example tables below) or reference
an external document containing this information. For each interface operation enter availability and
performance requirements in the rows as demonstrated by the red example content).
Operation Name(s) = name of Operation(s). Include multiple operation names in a single
table if the availability and performance requirements of the operations are identical.
Operation Hours Days needed = Hours and Days during which the operation is to be in
service
Load type = threshold states for the consumer: Baseline, Normal, Peak & Spike where:
o Baseline - low transactional volume during the business day
o Normal - average transactional volume during the business day
o Peak - high transactional volume hour or a high 15 minute period during the
business day
o Spike - extremely high transactional volume 5 minute or 15 minute period during
the business day
Hours when occurs = scheduled hours when the consumer application expects to be at the
specified Load type.
Latency = the amount of time consumed by one application component waiting for another
application component to respond. Latency is measured as the total time the originating
application (typically the Consumer) component waits. Include the latency for each Load
type.
Transactions/hr = number of expected transactions per hour for each specified Load type
Enter requirements for each Consumer application in the table below for each interface file. File
naming convention should include date and time for when the data is extracted from the source.
Database Availability
Specify connection details for databases, data router, etc. For database connections include windows
during which data can be evaluated.
Define, or reference documents that describe outage and error handling associated with this interface.
Outage Handling
Describe and rationalize how each Consumer will respond to planned and unplanned outage situations
(i.e., retry, failover and transaction queuing for later processing), include contact information
(distribution list).
Error Handling
Describe and rationalize how each Consumer will respond to each error condition and associated
codes, categories, criticality and messages as described in the Interface Specification section above.
Security
Identify firewalls and define or reference documents that specify Authentication, Authorization and
Encryption security requirements and their implementation as defined by the AT&T Security Policy &
Requirements (ASPR)
Authentication
Authorization
All Providers, even those on the AT&T internal network, must implement authorization.
Requirements
Identify the Consumers that may call each Operation offered by the Provider.
Implementation
Encryption
Requirements
Implementation
Specify the Certificate Authority if transport encryption (e.g. HTTPS, IIOPS) is used.
Firewalls
N/A
Disaster Recovery
http://ebiz.sbc.com/mots/detail.cfm?id=23440
ARM (Application Recovery Manual) is located in MOTS under the IT Application Disaster Recovery and AIA
section:
http://ebiz.sbc.com/mots/detail.cfm?id=23440
Testing Considerations
Describe unique, non-obvious considerations that the testing teams should include when developing test
plans and test sets (i.e., unit, assembly, integrated systems tests) for this interface. Do not describe
normal test sets that are expected to be included during the creation of the test plans and test sets.
Related Documents
Reference other supporting documentation (e.g., user guides, industry standard documentation, vendor
documentation).
Provide links to other plans at your discretion.
N/A
Parties of Agreement
Description of Interface
Provide a description of the interface as related to the business reporting requirements this interface
supports, the source and target applications, technology utilized and a summary of the type of data
contained in the interface.
The Application Contacts of the source and target applications of this interface and the Project Manager
are responsible for the implementation of the interface agreement to and confirm that the following has
been completed in accordance to ASPR Policy:
All parties involved in the movement of data between systems/applications understand the content of the
data being processed and stored
All parties have identified specific fields that are considered sensitive data, which may include SPI,
SCD, PCI, PII and RPI.
A written documented plan and / or procedure has been approved by the source and destination system
representatives; where the interface includes sensitive data from the source system.
The source application of the interface has retained documented evidence of approvals from each party.
This evidence should be retained in accordance to Records & Information Management.
The target application of the interface agrees to accept responsibility for monitoring and enforcement of
all relevant aspects of ASPR Policy regarding the movement and storage of data derived from the
source application.
Add additional Sensitive Data Types, if needed. If a Sensitive Data Type does not apply to the
interface, Mark “last verification date” as NA and exists in Interface as “N”.
If any of the sensitive date is marked “Y,” provide a link to the approved Sensitive Business Case.
This will be an accumulative list that will grow as new interfaces are introduced.
Note: Ensure the Sensitive Business Case is stored in an approved repository and the link is available
to anyone who needs to review the document.
Overview
This section is included as a option for capturing approvals. To understand what is required, refer to
tProcess Activity “Design, Commit, Build and Test.”
Approvers
At a minimum, the Application Contact (source), Application Contact (target) and Application PM (source)
must sign off if there is sensitive data. It is recommended to additionally add the Application PM (target),
Project Security Analyst and Business Tower Owner as approvers. Add additional approvers, as needed.