Files
gru_emoney_token-factory/api/packages/postman/eMoney-API.postman_collection.json
defiQUG 651ff4f7eb Initial project setup: Add contracts, API definitions, tests, and documentation
- Add Foundry project configuration (foundry.toml, foundry.lock)
- Add Solidity contracts (TokenFactory138, BridgeVault138, ComplianceRegistry, etc.)
- Add API definitions (OpenAPI, GraphQL, gRPC, AsyncAPI)
- Add comprehensive test suite (unit, integration, fuzz, invariants)
- Add API services (REST, GraphQL, orchestrator, packet service)
- Add documentation (ISO20022 mapping, runbooks, adapter guides)
- Add development tools (RBC tool, Swagger UI, mock server)
- Update OpenZeppelin submodules to v5.0.0
2025-12-12 10:59:41 -08:00

430 lines
12 KiB
JSON

{
"info": {
"name": "eMoney Token Factory API",
"description": "Complete API collection for eMoney Token Factory",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
"_exporter_id": "emoney-api"
},
"item": [
{
"name": "Tokens",
"item": [
{
"name": "Deploy Token",
"event": [
{
"listen": "prerequest",
"script": {
"exec": [
"// Get OAuth2 token",
"pm.sendRequest({",
" url: pm.environment.get('auth_url') + '/oauth/token',",
" method: 'POST',",
" header: { 'Content-Type': 'application/json' },",
" body: {",
" mode: 'raw',",
" raw: JSON.stringify({",
" grant_type: 'client_credentials',",
" client_id: pm.environment.get('client_id'),",
" client_secret: pm.environment.get('client_secret')",
" })",
" }",
"}, function (err, res) {",
" if (res.json().access_token) {",
" pm.environment.set('access_token', res.json().access_token);",
" }",
"});",
"",
"// Generate idempotency key",
"pm.environment.set('idempotency_key', pm.variables.replaceIn('{{$randomUUID}}'));"
]
}
}
],
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
},
{
"key": "Idempotency-Key",
"value": "{{idempotency_key}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"name\": \"USD Wrapped\",\n \"symbol\": \"USDW\",\n \"decimals\": 18,\n \"issuer\": \"0x1234567890123456789012345678901234567890\",\n \"defaultLienMode\": \"ENCUMBERED\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/tokens",
"host": ["{{base_url}}"],
"path": ["v1", "tokens"]
}
}
},
{
"name": "List Tokens",
"request": {
"method": "GET",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"url": {
"raw": "{{base_url}}/v1/tokens?limit=20&offset=0",
"host": ["{{base_url}}"],
"path": ["v1", "tokens"],
"query": [
{
"key": "limit",
"value": "20"
},
{
"key": "offset",
"value": "0"
}
]
}
}
},
{
"name": "Get Token",
"request": {
"method": "GET",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"url": {
"raw": "{{base_url}}/v1/tokens/USDW",
"host": ["{{base_url}}"],
"path": ["v1", "tokens", "USDW"]
}
}
},
{
"name": "Update Token Policy",
"request": {
"method": "PATCH",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"paused\": false,\n \"lienMode\": \"ENCUMBERED\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/tokens/USDW/policy",
"host": ["{{base_url}}"],
"path": ["v1", "tokens", "USDW", "policy"]
}
}
}
]
},
{
"name": "Liens",
"item": [
{
"name": "Place Lien",
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"debtor\": \"0xabcdefabcdefabcdefabcdefabcdefabcdefabcd\",\n \"amount\": \"1000000000000000000\",\n \"priority\": 1,\n \"reasonCode\": \"DEBT_ENFORCEMENT\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/liens",
"host": ["{{base_url}}"],
"path": ["v1", "liens"]
}
}
},
{
"name": "Get Lien",
"request": {
"method": "GET",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"url": {
"raw": "{{base_url}}/v1/liens/123",
"host": ["{{base_url}}"],
"path": ["v1", "liens", "123"]
}
}
},
{
"name": "Reduce Lien",
"request": {
"method": "PATCH",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"reduceBy\": \"500000000000000000\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/liens/123",
"host": ["{{base_url}}"],
"path": ["v1", "liens", "123"]
}
}
},
{
"name": "Release Lien",
"request": {
"method": "DELETE",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"url": {
"raw": "{{base_url}}/v1/liens/123",
"host": ["{{base_url}}"],
"path": ["v1", "liens", "123"]
}
}
}
]
},
{
"name": "Compliance",
"item": [
{
"name": "Set Account Compliance",
"request": {
"method": "PUT",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"allowed\": true,\n \"riskTier\": 1,\n \"jurisdictionHash\": \"0x0000000000000000000000000000000000000000000000000000000000000001\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/compliance/accounts/0xabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcd",
"host": ["{{base_url}}"],
"path": ["v1", "compliance", "accounts", "0xabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcd"]
}
}
},
{
"name": "Freeze Account",
"request": {
"method": "PUT",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"frozen\": true\n}"
},
"url": {
"raw": "{{base_url}}/v1/compliance/0xabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcd/freeze",
"host": ["{{base_url}}"],
"path": ["v1", "compliance", "0xabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcdefabcd", "freeze"]
}
}
}
]
},
{
"name": "Triggers",
"item": [
{
"name": "List Triggers",
"request": {
"method": "GET",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"url": {
"raw": "{{base_url}}/v1/triggers?state=PENDING&limit=20",
"host": ["{{base_url}}"],
"path": ["v1", "triggers"],
"query": [
{
"key": "state",
"value": "PENDING"
},
{
"key": "limit",
"value": "20"
}
]
}
}
},
{
"name": "Get Trigger",
"request": {
"method": "GET",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"url": {
"raw": "{{base_url}}/v1/triggers/abc123def456",
"host": ["{{base_url}}"],
"path": ["v1", "triggers", "abc123def456"]
}
}
}
]
},
{
"name": "ISO-20022",
"item": [
{
"name": "Submit Inbound Message",
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
},
{
"key": "Idempotency-Key",
"value": "{{idempotency_key}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"msgType\": \"pacs.008\",\n \"instructionId\": \"0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef\",\n \"payloadHash\": \"0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890ab\",\n \"payload\": \"<Document>...</Document>\",\n \"rail\": \"FEDWIRE\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/iso/inbound",
"host": ["{{base_url}}"],
"path": ["v1", "iso", "inbound"]
}
}
}
]
},
{
"name": "Packets",
"item": [
{
"name": "Generate Packet",
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
},
{
"key": "Idempotency-Key",
"value": "{{idempotency_key}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"triggerId\": \"abc123def456\",\n \"channel\": \"PDF\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/packets",
"host": ["{{base_url}}"],
"path": ["v1", "packets"]
}
}
}
]
},
{
"name": "Bridge",
"item": [
{
"name": "Lock Tokens",
"request": {
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "Bearer {{access_token}}",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"token\": \"0x1234567890123456789012345678901234567890\",\n \"amount\": \"1000000000000000000\",\n \"targetChain\": \"0x0000000000000000000000000000000000000000000000000000000000000001\",\n \"targetRecipient\": \"0xabcdefabcdefabcdefabcdefabcdefabcdefabcd\"\n}"
},
"url": {
"raw": "{{base_url}}/v1/bridge/lock",
"host": ["{{base_url}}"],
"path": ["v1", "bridge", "lock"]
}
}
}
]
}
],
"variable": [
{
"key": "base_url",
"value": "http://localhost:3000",
"type": "string"
},
{
"key": "auth_url",
"value": "http://localhost:3000",
"type": "string"
}
]
}