Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧼 SOAPify

A beautiful, fast, and user-friendly SOAP client web application for sending SOAP envelopes and receiving/parsing responses.

SOAPify Node.js

SOAPify Dashboard

✨ Features

  • Beautiful UI - Modern, responsive design with dark/light theme support
  • Fast & Lightweight - Minimal dependencies, instant responses
  • XML Formatting - Auto-format and syntax highlight XML
  • Multiple Views - Pretty, Raw, and Tree view for responses
  • Request History - Automatically saves your requests locally
  • Custom Headers - Add any custom HTTP headers to your requests
  • Copy & Download - Easily copy or download responses
  • Keyboard Shortcuts - Press Ctrl/Cmd + Enter to send requests
  • File Logging - All SOAP transactions logged to logs/soap-transactions.log

πŸš€ Quick Start

Prerequisites

  • Node.js 16.0.0 or higher
  • npm or yarn

Installation

  1. Clone or navigate to the project directory:
cd /Users/slouissaint/tools/SOAPify
  1. Install dependencies:
npm install
  1. Start the server:
npm start
  1. Open your browser and navigate to:
http://localhost:3000

πŸ“– Usage

Sending a SOAP Request

  1. Enter the Endpoint URL - The SOAP service endpoint
  2. Add SOAPAction Header (optional) - If required by the service
  3. Enter your SOAP Envelope - The XML envelope to send
  4. Click Send or press Ctrl/Cmd + Enter

Response Views

  • Pretty - Formatted and syntax-highlighted XML
  • Raw - Unformatted raw XML response
  • Tree - Interactive hierarchical tree view

Custom Headers

Click "Custom Headers" to expand and add any additional HTTP headers your SOAP service requires.

History

All requests are automatically saved and can be accessed from the History tab. Click any history item to reload it.

🎨 Themes

Toggle between dark and light themes using the theme button in the header.

⌨️ Keyboard Shortcuts

Shortcut Action
Ctrl/Cmd + Enter Send Request

πŸ“ Logging

All SOAP transactions are automatically logged to logs/soap-transactions.log.

Log Contents

Each log entry includes:

  • Transaction ID - Unique identifier for tracking
  • Timestamp - When the request was made
  • Duration - How long the request took
  • Request Details - URL, SOAPAction, headers, and full SOAP envelope
  • Response Details - Status, headers, and full response body

Log File Location

SOAPify/logs/soap-transactions.log

Sample Log Entry

════════════════════════════════════════════════════════════════════════════════
  SOAP TRANSACTION LOG
════════════════════════════════════════════════════════════════════════════════

πŸ“‹ Transaction ID: TXN-M5X8K2-ABC123
πŸ• Timestamp: 2025-01-06T15:30:45.123Z
⏱️  Duration: 234ms

────────────────────────────────────────────────────────────────────────────────
  REQUEST
────────────────────────────────────────────────────────────────────────────────

🌐 Endpoint URL:
  https://example.com/soap/service

πŸ“Œ SOAPAction:
  urn:example:GetData

πŸ“€ Request Headers:
  Content-Type: text/xml; charset=utf-8
  SOAPAction: urn:example:GetData

πŸ“ Request Body (SOAP Envelope):
  <?xml version="1.0"?>
  <soap:Envelope>...</soap:Envelope>

────────────────────────────────────────────────────────────────────────────────
  RESPONSE
────────────────────────────────────────────────────────────────────────────────

βœ… Status: 200 OK

πŸ“₯ Response Headers:
  content-type: text/xml

πŸ“„ Response Body:
  <?xml version="1.0"?>
  <soap:Envelope>...</soap:Envelope>

πŸ› οΈ API Endpoints

The server exposes these API endpoints:

POST /api/soap

Send a SOAP request

Body:

{
  "url": "https://example.com/soap",
  "soapAction": "urn:example:Action",
  "envelope": "<?xml version='1.0'?>...",
  "headers": { "Custom-Header": "value" }
}

GET /api/logs

Retrieve all logged transactions

DELETE /api/logs

Clear the log file

POST /api/parse-xml

Parse XML string to JSON

POST /api/format-xml

Format/prettify XML string

πŸ“ Project Structure

SOAPify/
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ index.html    # Main HTML file
β”‚   β”œβ”€β”€ styles.css    # Styles
β”‚   └── app.js        # Frontend JavaScript
β”œβ”€β”€ logs/
β”‚   └── soap-transactions.log  # Transaction logs (auto-created)
β”œβ”€β”€ server.js         # Express server
β”œβ”€β”€ package.json      # Dependencies
└── README.md         # Documentation

πŸ”§ Configuration

The server runs on port 3000 by default. To change it:

PORT=8080 npm start

πŸ“ License

MIT License - feel free to use and modify!


Made with ❀️ for developers who need to work with SOAP services

About

A beautiful, fast, and user-friendly SOAP client web application for sending SOAP envelopes and receiving/parsing responses.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages