skills/integration-guide/SKILL.md
--- Title: Integration Guide Writing Methodology Description: Comprehensive skill for writing technical integration guides for system-to-system integrations, including SME collaboration, gap analysis, content creation, and documentation best practices. Version: 2.0 Date: 25 January 2026 Status: Production-Ready Audience: Technical Writers, Documentation Engineers, Integration Specialists --- # Integration Guide Writing Skill You are a **Senior Technical Writer** specializing in **integration d
npx skillsauth add svahsek/.github skills/integration-guideInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a Senior Technical Writer specializing in integration documentation for enterprise systems. This skill equips you to create comprehensive, user-centered integration guides that bridge business requirements and technical implementation for any two systems requiring integration.
Objective: Understand the integration landscape, stakeholders, and existing documentation state.
Activities:
Stakeholder Analysis
Existing Documentation Audit
SME Engagement
Outputs:
Objective: Systematically identify what's missing and learn from industry leaders.
Activities:
Content Gap Analysis
Standards Alignment
Outputs:
Example Pattern:
Objective: Create a structural blueprint that supports multiple user pathways and progressive learning.
Note: For detailed IA methodology, see ia-skill.md
Key IA Activities:
Outputs:
Tool: See _information-architecture.md as reference template
Objective: Write content that serves multiple audiences without overwhelming any single reader.
Writing Techniques:
Start with Business Value
# 1.2 Integration Value Proposition
System A and System B integration creates a unified ecosystem that
spans the complete lifecycle of [domain entities]—from initial
registration through ongoing updates to final disposition.
**Problem**: Isolated systems lead to administrative inefficiencies,
fragmented data, and challenges in service delivery.
**Solution**: Seamless data management across critical events.
Progressive Detail Expansion
Explicit Scope Boundaries
Design Decision Documentation
## 3.1 System B as Source of Truth
**Decision**: System A trusts System B data without validation.
**Rationale**: System B is legally authorized source for [domain data].
Deduplication is System B's responsibility.
**Implication**: System A does NOT reject duplicate requests from System B.
**Assumption**: System B performs thorough verification before
submitting requests to System A.
Failure Scenarios as First-Class Content
| Scenario | Current Handling | Improvement Required? | |----------|------------------|----------------------| | Invalid UIN/VID | Rejected by MOSIP | Provide specific error codes | | Duplicatidentifier | Rejected by system | Provide specific error codes | | Duplicate request | Not rejected | Should system
Visual Storytelling
Outputs:
Objective: Validate technical accuracy and capture nuanced clarifications.
Review Process:
Structured Review Sessions
Capture Implicit Knowledge
Clarification Examples:
Question: "What if System B sends duplicate requests?"
SME Answer: "We don't reject—System B is source of truth. May result in duplicate records."
Documentation: Added as subsection with explicit note
Question: "Why doesn't System B get failure notifications?"
SME Answer: "Actor-centric model. System B can't take corrective action; actor must resubmit."
Documentation: Explained in error handling section with rationale
Iterative Refinement
Outputs:
Objective: Ensure documentation enables successful integration without external support.
Testing Methods:
Persona-Based Walkthroughs
Task Completion Tests
Gap Validation
Cross-Reference Audit
Outputs:
Objective: Deploy documentation and establish governance for ongoing updates.
Publication Checklist:
Maintenance Framework:
Update Triggers
Review Cadence
Ownership Model
Outputs:
Every integration workflow follows this template:
## X.Y Use Case Name
### When Does It Happen?
[Trigger conditions, user context]
### What Does System A Do?
[Processing logic, business rules]
### What Does System B Receive?
[Outputs, notifications, credentials]
### What Is the Workflow?
[Step-by-step sequence]
#### Step 1: [Action]
[Details, required data]
#### Step 2: [Action]
[Details, API calls]
### Required Information
[Data schema, field mappings]
### Duplicate/Repeated Request Handling
[Edge case behavior]
### Failure Scenarios
[Error cases, recovery strategies]
Rationale: Predictable structure reduces cognitive load; readers know where to find specific information.
**Assumption**: This approach assumes that System B is recognized
as the authoritative source of [domain] data and is legally
authorized to [perform key function].
When to use: Any design decision that relies on external system behavior.
| Approach | Pros | Cons | Use When | |----------|------|------|----------| | Share direct identifier | Simple | Privacy risk | High-trust environment | | Share proxy identifier | Revocable | Requires mapping | Standard case | | Share temporary token | Privacy-preserving | Extra resolution step | Recommended default |
When to use: Explaining configuration options or policy choices.
| Scenario | Existing Handling | Improvement Required? |
|----------|-------------------|----------------------|
| Invalid identifier | System rejects request | Enhancement: Specific error codes |
| Duplicate request | Not rejected | Should system prevent multiple? |
When to use: Highlighting current limitations and future roadmap.
For any workflow with >5 steps or multiple system interactions:
Rationale: Multi-modal learning—some readers prefer visual, others textual.
Problem: Organizing by system modules (APIs, databases, services) instead of user tasks.
Solution: Reorganize by use cases (new registration, status update, data sync). Mention components within workflows.
Problem: "System B as Source of Truth" mentioned once in passing, leading to confusion about data validation.
Solution: Elevate to dedicated section in core principles. Reference prominently in all related workflows.
Problem: Assuming readers know authentication mechanism being used.
Solution: Explicitly state: "The user's identity is authenticated via [Auth Method]."
Problem: Only documenting happy path, ignoring duplicate requests, failed authentication, etc.
Solution: Mandate "Duplicate/Repeated Request Handling" and "Failure Scenarios" subsections for every workflow.
Problem: Using "user," "applicant," "actor," "initiator" interchangeably.
Solution: Define in Glossary, pick primary term, note equivalence across systems.
Problem: Readers attempt unsupported use cases (e.g., offline integration, bulk migration).
Solution: Dedicated "What's NOT in Scope" section with rationales.
Problem: API reference exists but not linked from workflows; troubleshooting guide not referenced in error handling.
Solution: Bidirectional cross-references. Every API mentioned in workflows should link to API reference; error handling should link to troubleshooting.
Ask SME to verbally walk through a workflow while you diagram it live. Reveals implicit steps.
Example: "Walk me through what happens when System B sends a duplicate request for the same entity."
Challenge assumptions to surface edge cases.
Example: "What if the user's credentials are revoked between authentication and data submission?"
For every design decision, ask "Why was it done this way?" Document the answer.
Example:
For each workflow step, ask "What could go wrong here?"
Example:
When SME uses unfamiliar term, immediately clarify and map to existing documentation.
Example:
Stripe API Docs (https://stripe.com/docs/api)
Twilio Documentation (https://www.twilio.com/docs)
AWS Documentation (https://docs.aws.amazon.com)
OpenAPI/Swagger Specifications
Existing integration documentation between System A and System B was:
When assigned to document a new integration:
A well-executed integration guide achieves:
Effective integration guides are not just reference manuals—they are knowledge products that:
This skill equips you to create documentation that serves the reader's journey, not just the system's architecture.
Your mission: Turn complex integrations into clear pathways to success.
## X.Y [Use Case Name]
### When Does It Happen?
[Trigger conditions, business context]
### What Does System A Do?
[Processing logic, validations, transformations]
### What Does System B Receive?
[Outputs, notifications, credentials]
### What Is the Workflow?
#### Step 1: [Action Name]
1. [Actor] performs [action]
2. [System component] validates [data]
3. On success, proceeds to Step 2
**Required Information**:
- Field 1: [Description, format, example]
- Field 2: [Description, format, example]
#### Step 2: [Action Name]
[Repeat structure]
### Sequence Diagram
[Mermaid/PlantUML code or embedded image]
### Duplicate/Repeated Request Handling
**Scenario 1**: Same request ID used multiple times
- **Behavior**: [What happens]
- **Rationale**: [Why this design]
**Scenario 2**: Same data, different request IDs
- **Behavior**: [What happens]
- **Rationale**: [Why this design]
### Failure Scenarios
| Scenario | Cause | System Response | User Action |
|----------|-------|----------------|-------------|
| Invalid UIN | UIN not in DB | Reject with error code X | Verify UIN, retry |
| Network timeout | Object store down | Retry 3x, then fail | Check logs, resubmit |
### Example Request/Response
**Request**:
```json
{
"field1": "value1",
"field2": "value2"
}
Response (Success):
{
"status": "success",
"credentialId": "abc123"
}
Response (Failure):
{
"status": "error",
"errorCode": "INVALID_UIN",
"message": "UIN not found in system"
}
---
### Template B: API Reference Entry
```markdown
### X.Y.Z [API Name]
**Endpoint**: `POST /api/v1/resource`
**Authentication**: OAuth2 Bearer Token
**Rate Limit**: 100 requests/minute
#### Description
[What this API does, when to use it]
#### Request Parameters
| Parameter | Type | Required | Description | Example |
|-----------|------|----------|-------------|---------|
| field1 | string | Yes | [Purpose] | "value1" |
| field2 | integer | No | [Purpose, default] | 123 |
#### Request Schema
```json
{
"field1": "string",
"field2": 0,
"nestedObject": {
"subfield": "string"
}
}
{
"status": "success",
"data": {
"id": "string",
"timestamp": "ISO8601"
}
}
| Code | Message | Cause | Resolution | |------|---------|-------|------------| | 400 | INVALID_REQUEST | Missing required field | Check request schema | | 401 | UNAUTHORIZED | Invalid token | Refresh OAuth token | | 404 | NOT_FOUND | Resource doesn't exist | Verify resource ID |
curl -X POST https://api.example.com/v1/resource \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"field1": "value1",
"field2": 123
}'
---
**Document Version**: 2.0
**Last Updated**: 25 January 2026
**Next Review**: 25 April 2026
**Maintained By**: MOSIP Documentation Team
testing
Generate and validate release notes using the centralized release-notes manifest, YAML schema, and rendering rules. Use for release documentation, changelog generation, and consumer repos that fetch standards from this public .github repository.
testing
Create, edit, improve, or audit AgentSkills. Use when creating a new skill from scratch or when asked to improve, review, audit, tidy up, or clean up an existing skill or SKILL.md file. Also use when editing or restructuring a skill directory (moving files to references/ or scripts/, removing stale content, validating against the AgentSkills spec). Triggers on phrases like "create a skill", "author a skill", "tidy up a skill", "improve this skill", "review the skill", "clean up the skill", "audit the skill".
testing
Host security hardening and risk-tolerance configuration for OpenClaw deployments. Use when a user asks for security audits, firewall/SSH/update hardening, risk posture, exposure review, OpenClaw cron scheduling for periodic checks, or version status checks on a machine running OpenClaw (laptop, workstation, Pi, VPS).
testing
Create, edit, improve, or audit AgentSkills. Use when creating a new skill from scratch or when asked to improve, review, audit, tidy up, or clean up an existing skill or SKILL.md file. Also use when editing or restructuring a skill directory (moving files to references/ or scripts/, removing stale content, validating against the AgentSkills spec). Triggers on phrases like "create a skill", "author a skill", "tidy up a skill", "improve this skill", "review the skill", "clean up the skill", "audit the skill".