Interface Definition Document

Summary

Interface Definition Documents (IDD) are artefacts that are commonly attached to an Integration Specification document. The IDD details the technical interface component.

Interface Catalogue

NameA friendly name to identify the interface.
ReferenceA unique identifier of the interface
OwnerA person, group or department that will manage and own the interface.
DescriptionThe description of the integration and the various design components used.
VersionDocument version.
Revision DateThe date the catalogue item was created.
AuthorAuthor of the catalogue item.
ReferenceA unique reference number, e.g. INT-0019
Operational NotesDetails outlining logging, auditing, security and other important detail to assist operational and maintenance support.
Error HandlingDetails on what to do if an error occurred at any stage of the integration.
Integration TypeInterface or Migration
Frequency of TransferReal-time, Batch, Nightly, Weekly etc.

Source System

NameName of the Source System or Application.
PurposeDetails of the application and intended purpose.
VersionThe current version of the system the integration has been designed for.
VendorName of the Vendor or Developer.
OwnerThe responsible party that looks after the system.
DepartmentThe business unit that manages the system.
Resource LocationDetails of the resource location and how to access the system.
Source TechnologyDetails of Source system technology.
Authentication detailsDetails to access resources once authenticated to the endpoint.
Authorisation detailsDetails to access resources once authenticated to the endpoint.

Source Endpoint

NameDetails of the Source API Endpoint. Some legacy systems do not have an API endpoint. These systems may expose the datastore directly for consumption.
PurposeThe purpose of the API endpoint, some systems have native API endpoints. Other systems need an external API endpoint built to consume data.
VersionA version number of the current Source API Endpoint.
ProtocolProtocol used to access the API Endpoint; HTTP, AMQP, TCP.
Applied Pattern/sEnterprise Integration design patterns used.
Trigger detailsDetails of any Event Handlers that invoked the API Endpoint.
Resource LocationDetails of the location of the API Endpoint.
Authentication detailsDetails to authenticate and access the endpoint resource.
Authorisation detailsDetails to access resources once authenticated to the endpoint.
Endpoint TechnologyDetails of the API Endpoint technology, e.g. Node.js, Web API, Azure Functions.

Message Construction

Message TypeFormat of the message, e.g. JSON, XML
PurposeThe intended purpose of the message, e.g. Transfer Customer Payment details.
Versiona version number of the current design.
Schema DefinitionDetails of the message schema; Header, Parameters and Body.
Applied Pattern/sIntegration patterns applied.
Schema RegistryDetails of the schema registry.
Event Trigger DetailsDetails of any Event Handlers that invoked the Message Construction.
Construction TechnologyDetails of the technology used to create the Message, e.g. Microsoft .NET and Azure Functions.

Message Transformation

Message FormatFormat of the message, e.g. JSON, XML.
PurposeThe purpose of the transformation, e.g. serialise, deserialise, and convert to other file formats.
VersionA version number of the current design.
Schema DefinitionDetails of the schema after transformation.
Applied Pattern/sIntegration patterns that have been applied during the Message Transformation phase.
Schema RegistryDetails of the schema registry.
Transformation TechnologyDetails of the technology used to Transform the message, e.g. Azure Data Factory when using the Content Enricher design pattern.

Message Channel

Channel TypeDetails of Channel, e.g. Point-to-point, ESB.
PurposeThe intended purpose of the message channel.
VersionMessage Channel version or build number.
DirectionUnidirectional, Bidirectional, Simplex, Duplex.
Protocol/sProtocol used in the message channel; HTTP, FTP, AMQP etc.
Channel TriggersBased on Push/Pull model
Applied Pattern/sIntegration patterns that have been applied during the Message Transformation phase.
Messaging TechnologyMessage Technology, e.g. RabbitMQ, ActiveMQ, Azure Service Bus.

Message Routing

Message Routing DetailsDetails of the Message Router, e.g. Publisher & Subscriber, Queues.
PurposeThe intended purpose of the message routing
VersionMessage Routing version or build number.
Applied Pattern/sIntegration patterns that have been applied during the Message Routing phase.

Target Endpoint

NameDetails of the Target API Endpoint. Some legacy systems do not have an API endpoint. These systems may expose the datastore directly for consumption.
PurposeThe purpose of the API endpoint, some systems have native API endpoints. Other systems need an external API endpoint built to consume data.
VersionA version number of the current Target API Endpoint.
ProtocolProtocol used to access the API Endpoint; HTTP, AMQP, TCP.
Applied Pattern/sEnterprise Integration design patterns used.
Trigger detailsDetails of any Event Handlers that invoked the API Endpoint.
Resource LocationDetails of the location of the API Endpoint.
Authentication detailsDetails to authenticate and access the endpoint resource.
Authorisation detailsDetails to access resources once authenticated to the endpoint.
Endpoint TechnologyDetails of the API Endpoint technology, e.g. Node.js, Web API, Azure Functions.

Target System

NameName of the Target System or Application.
PurposeDetails of the application and intended purpose.
VersionThe current version of the system the integration has been designed for.
VendorName of the Vendor or Developer.
OwnerThe responsible party that looks after the system.
DepartmentThe business unit that manages the system.
Resource LocationDetails of the resource location and how to access the system.
Target TechnologyDetails of Target system technology.
Authentication detailsDetails to access resources once authenticated to the endpoint.
Authorisation detailsDetails to access resources once authenticated to the endpoint.