UDMG Server Web Services


Introduction

The UDMG Server REST API is provided by the udmg-server daemon and provides all the operations that can be performed with the UDMG Client or with the UDMG Client.

Authentication

Only Local User Account authentication is supported for the REST API.

SSO and LDAP authentication is only used for the Graphical User Interface.


Authentication of REST requests is done using basic HTTP authentication.

This authentication scheme is done using the HTTP Authorization header. To authenticate, the client must:

  1. Obtain user login and password

  2. Build the user ID by concatenating the login, a colon (“:”) character and the password

  3. Encode the obtained identifier in Base64

  4. Prefix the encoded identifier with a declaration of the basic authentication scheme (“Basic”)

For example, if the user enters the name "Aladdin" and the password "open sesame", then the client must send the following header:

Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==

If the authentication of a request fails, the server will respond with an HTTP code .401 - Unauthorized

By default, the UDMG Server has only one "admin" user (password: "admin_password") with all rights, in order to allow the initial configuration of the gateway to be set up. For security reasons, it is strongly recommended when installing the gateway to create new users with more restricted rights, then to delete this "admin" user.

Common Operations

Refer to the original version of the waarp-gatewayd v0.7.1 server documentation for the common operations:

  • Service Status
  • User Management
  • Transfer Management
  • History Management
  • Local Servers Management
  • Remote Partners Management
  • Rules Management
  • Configuration Override

UDMG Specific Operations

In addition to what is supported by the original version of the waarp-gatewayd v0.7.1 server, the following commands have been added for UDMG:

PGP Key Management

PGP key records can be stored in the UDMG database and retrieved with the CLI or the REST API to be used by scripts or by Universal Controller tasks without having to keep them in a local keyring.

Both private and public PGP keys can be stored in the database with AES encryption.

Add Key


Description

URI

http://host_name:port/api/sb_pgp

HTTP Method

POST

Description

Adds a new PGP key

Example URI

http://localhost:18080/api/sb_pgp

Authentication

HTTP Basic

Consume Content-Typeapplication/json

Response Header

Location – The path to the newly created key

Example

See Add Key: JSON Example.

Properties

See Add Key: JSON Properties.

Add Key: JSON Example 

To create a public PGP key, the syntax is as follows:

ExampleJSON
Example Request
 JSON
{
  "name": "test1",
  "owner_type": "users",
  "pgp_name": "test1",
  "pgp_email": "test1@example.com",
  "pgp_algorithm": "4096R",
  "public_key": "-----BEGIN PGP PUBLIC KEY BLOCK-----\nVersion: GnuPG v2.0.22 (GNU/Linux)\n\n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\n7VMDO1XPOgqd\n=hElb\n-----END PGP PUBLIC KEY BLOCK-----\n",
  "comment": "first test"
}
Example Response
 Headers
Location: /api/sb_pgp/test1

Add Key: Properties

Property

UI Field Name

Description

nameNameThe name of the key, must be unique.
pgp-namePGP NameThe key user name.
pgp-emailEmailThe associated email.
pgp-algoPGP AlgorithmThe algorithm that was used for creating the key (free text, for reference).
valid-fromStart DateThe valid from date
valid-toEnd DateThe expiration date
private-keyPrivate KeyThe private key. It must be in ascii armored format.
public-keyPublic KeyThe public key. It must be in ascii armored format.
passphrasePassphraseThe passphrase of the private key.
commentCommentAn additional comment to describe the PGP key.

List keys


Description

URI

http://host_name:port/api/sb_pgp

HTTP Method

GET

Description

Displays a list of all keys matching with the criteria below. The private key value is not returned.

Example URI

http://localhost:18080/api/sb_pgp

Authentication

HTTP Basic

Produce Content-Typeapplication/json

URI Parameters

See List Keys: URI Parameters.

Example

See List Keys: JSON Example.

List Keys: JSON Example 

ExampleJSON
Example Response
 JSON
{
    "pgp": [
        {
            "name": "test1.key",
            "owner_type": "users",
            "pgp_name": "test1.key",
            "pgp_email": "test1@example.com",
            "pgp_algorithm": "rsa2048",
            "comment": "first test"
        },
        {
            "name": "test1.pub",
            "owner_type": "users",
            "pgp_name": "test1",
            "pgp_email": "test1@example.com",
            "pgp_algorithm": "rsa2048",
            "public_key": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQENBGKd5IMBCACz6jW8UpCGd5mVhqFVwNklZem7OAaOCG3LoIZK/EsI3b+ex0n4\nbQmXmKjZeCydqtVbeJl6INip9vlj0Tiz1k+eNqRsPbo5RtQk/ObPQz0uwmmK0Xuo\nAmG6ECsv+g1jG6B6Sz2Gq3HuUO7DA77ltVWqx7uQycMDGrJlgR9Gyplnc9Nuir+G\nsx1BYgcr5wpGOk/YdH94sGtIaYYhV7JMhVHhLFonhzEIwCpOx26ISd8XGoiAdW7V\n2X3DsmOuZJVBK8v2MGDu1TIa5/W/wF77RCZmYxULv7Xt8b/o91vz2a6dJcB1LDO6\nYNoqZAev4ynXxX6tC/tVrV1RoqmsFvQvCG8RABEBAAG0GXRlc3QxIDx0ZXN0MUBl\neGFtcGxlLmNvbT6JAVQEEwEIAD4WIQTZR01OCmqYzlvbtAulzqxSXGHdlAUCYp3k\ngwIbAwUJA8JnAAULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRClzqxSXGHdlFNA\nB/0cNN5/ZfEdU31OBc806WR0/Z6tYCYot0a0XBGL3v8gVCgf9PAibVg3WxDH0YwB\nTy0pphu1YThZcBG//WZjWC2006nZUVgCBwb/phVozs1k5N8bHyO6jwywPz2nctX7\n5f2gTksNfJKbIm+3mt6SxmDC4cfmVzXDfEkr/d/6AZ/VX4gm5mApPyxiPW5U8M1Y\nDXwspo4h3cn1r37w8SZB0GBMQXVk1rCaIqXnw+kDNgjXFDsxJKQL/uEqPK12UP3P\nZPhz0pKKq8f8r0H9ctmee0J25lG/gPDt+Om8tGvbcIhrXHEE44dIMsE5tdcSM7zn\nCnpDA44AOzr9wxI8MA0IkicZuQENBGKd5IMBCAC5ToCtudbiZblXfgHhLS4bpG/M\nnClOalq4Zo5+vWJnXkavNUdvUz0v+2nChSCVg7XpQLelov4EyEbPFsZsCvisRSmW\nn2ECWKmIssT72/N1ml2elYopU9CFnSrpy8/49G5GvBjKlHS/OFtZNM8rbvPal5PQ\nUO5dZsFeZjGxFt99zFlt1BM5tWwd9cbD4FMSo2Dw6isE5ICqKVsnWnobr4USTuuT\n8Zi2O+Ze7leGSlM/dGdVwM39o4b8vO7nDly98ztRhfobjOQIG/n1pIvQmTAspgGL\nYkDnosF4gF5oa0LIG43FaK1OxCVHoGhnHvsPV4N0rcAHW0C+cblRO0+SjrqlABEB\nAAGJATwEGAEIACYWIQTZR01OCmqYzlvbtAulzqxSXGHdlAUCYp3kgwIbDAUJA8Jn\nAAAKCRClzqxSXGHdlGw7B/0XULMy9mDzQi9PN2i+QzQxKjAofSUJHYcl9tpsG+8D\nmQV2sNdGwrdTynKqGBIMcjY+ryY6Jjigqjwa2eg5d3AjGHCDdxJdBABJjyfHQxwE\nFqmAyipEW5z9HpKZS+mPva+6sINBXSvSoHgOkM1vwAIHRJc0tSD0i4TiUnbPlW2s\noJAMZbc9WcQmr4X+kUgnG8C6LJw3x3kpU2AOGfQmF9uIM0bgIc0FclxtCc8OTq6A\nSReh9/IGRgoXDY9TKoU1h6fzAdH+xQv0WCmr0vyrI0akB0WFaPkLw6Xn5YBrqgPa\nyiaWoy3mBR5JDkBZXs72Eg3eibSuwVbCzNI4p73BpivL\n=rp6q\n-----END PGP PUBLIC KEY BLOCK-----",
            "comment": "first test"
        }
    ]
}

List Keys: URI Parameters


Description

SpecificationsRequiredMutually Exclusive With
limitThe maximum number of keys allowed in the response. Set to 20 by default.String; URI parameterN
offsetIndex of the first returned entry (default: 0).String; URI parameterN
sort

The setting and order in which keys will be displayed.

String; URI parameter

Valid values:

  • ascending by key name: name+ 

  • Descending by key name: name- 

N

Get a key


Description

URI

http://host_name:port/api/sb_pgp/key_name

HTTP Method

GET

Description

Retrieves a PGP key details

Example URI

http://localhost:18080/api/sb_pgp/test1.pub

Authentication

HTTP Basic

Produce Content-Typeapplication/json

Example

See Get a Key: JSON Example.

Get a Key: JSON Example 

ExampleJSON
Example Response for a privatekey
 JSON
{
    "name": "test1.key",
    "owner_type": "users",
    "pgp_name": "test1.key",
    "pgp_email": "test1@example.com",
    "pgp_algorithm": "rsa2048",
    "private_key": "-----BEGIN PGP PRIVATE KEY BLOCK-----\n\n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\n=7m6a\n-----END PGP PRIVATE KEY BLOCK-----",
    "passphrase": "hello",
    "comment": "first test"
}
Example Response for a public key
 JSON
{
    "name": "test1.pub",
    "owner_type": "users",
    "pgp_name": "test1",
    "pgp_email": "test1@example.com",
    "pgp_algorithm": "rsa2048",
    "public_key": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQENBGKd5IMBCACz6jW8UpCGd5mVhqFVwNklZem7OAaOCG3LoIZK/EsI3b+ex0n4\nbQmXmKjZeCydqtVbeJl6INip9vlj0Tiz1k+eNqRsPbo5RtQk/ObPQz0uwmmK0Xuo\nAmG6ECsv+g1jG6B6Sz2Gq3HuUO7DA77ltVWqx7uQycMDGrJlgR9Gyplnc9Nuir+G\nsx1BYgcr5wpGOk/YdH94sGtIaYYhV7JMhVHhLFonhzEIwCpOx26ISd8XGoiAdW7V\n2X3DsmOuZJVBK8v2MGDu1TIa5/W/wF77RCZmYxULv7Xt8b/o91vz2a6dJcB1LDO6\nYNoqZAev4ynXxX6tC/tVrV1RoqmsFvQvCG8RABEBAAG0GXRlc3QxIDx0ZXN0MUBl\neGFtcGxlLmNvbT6JAVQEEwEIAD4WIQTZR01OCmqYzlvbtAulzqxSXGHdlAUCYp3k\ngwIbAwUJA8JnAAULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRClzqxSXGHdlFNA\nB/0cNN5/ZfEdU31OBc806WR0/Z6tYCYot0a0XBGL3v8gVCgf9PAibVg3WxDH0YwB\nTy0pphu1YThZcBG//WZjWC2006nZUVgCBwb/phVozs1k5N8bHyO6jwywPz2nctX7\n5f2gTksNfJKbIm+3mt6SxmDC4cfmVzXDfEkr/d/6AZ/VX4gm5mApPyxiPW5U8M1Y\nDXwspo4h3cn1r37w8SZB0GBMQXVk1rCaIqXnw+kDNgjXFDsxJKQL/uEqPK12UP3P\nZPhz0pKKq8f8r0H9ctmee0J25lG/gPDt+Om8tGvbcIhrXHEE44dIMsE5tdcSM7zn\nCnpDA44AOzr9wxI8MA0IkicZuQENBGKd5IMBCAC5ToCtudbiZblXfgHhLS4bpG/M\nnClOalq4Zo5+vWJnXkavNUdvUz0v+2nChSCVg7XpQLelov4EyEbPFsZsCvisRSmW\nn2ECWKmIssT72/N1ml2elYopU9CFnSrpy8/49G5GvBjKlHS/OFtZNM8rbvPal5PQ\nUO5dZsFeZjGxFt99zFlt1BM5tWwd9cbD4FMSo2Dw6isE5ICqKVsnWnobr4USTuuT\n8Zi2O+Ze7leGSlM/dGdVwM39o4b8vO7nDly98ztRhfobjOQIG/n1pIvQmTAspgGL\nYkDnosF4gF5oa0LIG43FaK1OxCVHoGhnHvsPV4N0rcAHW0C+cblRO0+SjrqlABEB\nAAGJATwEGAEIACYWIQTZR01OCmqYzlvbtAulzqxSXGHdlAUCYp3kgwIbDAUJA8Jn\nAAAKCRClzqxSXGHdlGw7B/0XULMy9mDzQi9PN2i+QzQxKjAofSUJHYcl9tpsG+8D\nmQV2sNdGwrdTynKqGBIMcjY+ryY6Jjigqjwa2eg5d3AjGHCDdxJdBABJjyfHQxwE\nFqmAyipEW5z9HpKZS+mPva+6sINBXSvSoHgOkM1vwAIHRJc0tSD0i4TiUnbPlW2s\noJAMZbc9WcQmr4X+kUgnG8C6LJw3x3kpU2AOGfQmF9uIM0bgIc0FclxtCc8OTq6A\nSReh9/IGRgoXDY9TKoU1h6fzAdH+xQv0WCmr0vyrI0akB0WFaPkLw6Xn5YBrqgPa\nyiaWoy3mBR5JDkBZXs72Eg3eibSuwVbCzNI4p73BpivL\n=rp6q\n-----END PGP PUBLIC KEY BLOCK-----",
    "comment": "first test"
}

Delete a key


Description

URI

http://host_name:port/api/sb_pgp/key_name

HTTP Method

DELETE

Description

Deletes the given key.

Example URI

http://localhost:18080/api/sb_pgp/test1.pub

Authentication

HTTP Basic


Audit Management

Audit records are automatically stored in the UDMG database after updates pertaining to configuration item: user, server, partner, rule and accounts.

List audit records

GET /api/sb_audit

  • Displays a list of all audit records meeting the criteria below.

long option

description

limit=The maximum number of records allowed in the response. Set to 20 by default.
offset=Index of the first returned entry (default: 0).
sort=[id+|id-]

The setting and order in which records will be displayed. The possible choices are:

  • by record id (id+&id-)

Example

GET /api/sb_pgp?sort=id-&limit=2
{
    "audit": [
        {
            "id": 87,
            "action": "DELETE",
            "table_name": "users",
            "table_key": 4,
            "before": "{\"ID\":4,\"Owner\":\"waarp-gateway\",\"Username\":\"toto\",\"PasswordHash\":\"$2a$12$J94lRBsky2Eud/D/U5Fk7urldJY.le3YwFbMmIk5iZTDpKabt/Loi\",\"Permissions\":0}",
            "after": "",
            "status": "SUCCESS",
            "info": "",
            "user": 1,
            "date": "2022-06-20T07:54:10.009859Z",
            "parent_id": ""
        },
        {
            "id": 86,
            "action": "CREATE",
            "table_name": "users",
            "table_key": 4,
            "before": "",
            "after": "{\"ID\":4,\"Owner\":\"waarp-gateway\",\"Username\":\"toto\",\"PasswordHash\":\"$2a$12$J94lRBsky2Eud/D/U5Fk7urldJY.le3YwFbMmIk5iZTDpKabt/Loi\",\"Permissions\":0}",
            "status": "SUCCESS",
            "info": "",
            "user": 1,
            "date": "2022-06-20T07:54:04.376231Z",
            "parent_id": ""
        }
    ]
}

Get an audit record

GET /api/sb_audit/<id>

  • Retrieves an audit record details. 

Example

GET /api/sb_audit/1969
{
    "id": 1969,
    "action": "START",
    "table_name": "local_agents",
    "table_key": 86,
    "before": "{\"ID\":86,\"Owner\":\"mft-gw-0\",\"Name\":\"clibs_serv_ftp_server\",\"Address\":\"0.0.0.0:4060\",\"Protocol\":\"ftp\",\"Enabled\":true,\"RootDir\":\"clibs_ftp_dir\",\"ReceiveDir\":\"in\",\"SendDir\":\"out\",\"TmpReceiveDir\":\"tmp\",\"ProtoConfig\":{}}",
    "after": "",
    "status": "SUCCESS",
    "info": "",
    "user": 1,
    "date": "2023-05-02T14:56:55.70779Z",
    "parent_id": ""
}