chore: sync submodule state (parent ref update)
Made-with: Cursor
This commit is contained in:
132
docs/settlement/as4/API_REFERENCE.md
Normal file
132
docs/settlement/as4/API_REFERENCE.md
Normal file
@@ -0,0 +1,132 @@
|
||||
# AS4 Settlement API Reference
|
||||
|
||||
**Date**: 2026-01-19
|
||||
**Version**: 1.0.0
|
||||
|
||||
---
|
||||
|
||||
## Base URL
|
||||
|
||||
```
|
||||
http://localhost:3000/api/v1/as4
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Authentication
|
||||
|
||||
All endpoints (except metrics) require authentication:
|
||||
|
||||
```
|
||||
Authorization: Bearer <token>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Endpoints
|
||||
|
||||
### AS4 Gateway
|
||||
|
||||
#### POST /gateway/messages
|
||||
Receive AS4 message
|
||||
|
||||
**Request**:
|
||||
```json
|
||||
{
|
||||
"messageId": "MSG-001",
|
||||
"fromMemberId": "MEMBER-001",
|
||||
"toMemberId": "DBIS",
|
||||
"businessType": "DBIS.SI.202",
|
||||
"payload": "...",
|
||||
"tlsCertFingerprint": "...",
|
||||
"properties": {}
|
||||
}
|
||||
```
|
||||
|
||||
**Response**: `202 Accepted`
|
||||
|
||||
---
|
||||
|
||||
### Member Directory
|
||||
|
||||
#### GET /directory/members/:memberId
|
||||
Get member by ID
|
||||
|
||||
**Response**: `200 OK` with member record
|
||||
|
||||
#### GET /directory/members
|
||||
Search members
|
||||
|
||||
**Query Parameters**:
|
||||
- `status` - Filter by status
|
||||
- `capacityTier` - Filter by tier
|
||||
- `routingGroup` - Filter by routing group
|
||||
|
||||
#### POST /directory/members
|
||||
Register new member
|
||||
|
||||
**Request**:
|
||||
```json
|
||||
{
|
||||
"memberId": "MEMBER-001",
|
||||
"organizationName": "Test Bank",
|
||||
"as4EndpointUrl": "https://...",
|
||||
"tlsCertFingerprint": "...",
|
||||
"allowedMessageTypes": ["DBIS.SI.202"],
|
||||
"routingGroups": ["DEFAULT"]
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /directory/members/:memberId/certificates
|
||||
Get member certificates
|
||||
|
||||
#### POST /directory/members/:memberId/certificates
|
||||
Add certificate
|
||||
|
||||
---
|
||||
|
||||
### Settlement
|
||||
|
||||
#### POST /settlement/instructions
|
||||
Submit settlement instruction
|
||||
|
||||
**Request**:
|
||||
```json
|
||||
{
|
||||
"fromMemberId": "MEMBER-001",
|
||||
"payloadHash": "...",
|
||||
"message": { ... }
|
||||
}
|
||||
```
|
||||
|
||||
#### GET /settlement/instructions/:instructionId
|
||||
Get instruction status
|
||||
|
||||
#### GET /settlement/postings/:postingId
|
||||
Get posting status
|
||||
|
||||
#### GET /settlement/statements
|
||||
Generate statement
|
||||
|
||||
**Query Parameters**:
|
||||
- `memberId` - Member ID
|
||||
- `accountId` - Account ID
|
||||
- `startDate` - Start date
|
||||
- `endDate` - End date
|
||||
|
||||
#### GET /settlement/audit/:instructionId
|
||||
Export audit trail
|
||||
|
||||
---
|
||||
|
||||
### Metrics
|
||||
|
||||
#### GET /metrics
|
||||
Prometheus metrics (public endpoint)
|
||||
|
||||
#### GET /metrics/health
|
||||
Health check with metrics summary
|
||||
|
||||
---
|
||||
|
||||
**For detailed API documentation, see Swagger UI**: `/api-docs`
|
||||
Reference in New Issue
Block a user