Modifier une règle

PUT /v2/rules/{id}

Si elle existe, remplace les informations de la règle demandée par celles données dans la requête. Les nouvelles informations seront renvoyées dans la réponse, ainsi que leur URI d’accès.

Example request:

PUT /v2/rules/{id} HTTP/1.1
Host: example.com
Content-Type: application/json

{
    "name": "example",
    "hostIds": [
        "server1",
        "server2"
    ],
    "modeTrans": "send",
    "recvPath": "in/",
    "sendPath": "out/",
    "archivePath": "arch/",
    "workPath": "work/",
    "rPreTasks": [
        {
            "type": "ZIP",
            "arguments": "file.txt work/",
            "delay": 1
        }
    ],
    "rPostTask": [
        {
            "type": "MOVERENAME",
            "arguments": "arch/file.bak"
        }
    ],
    "rErrorTasks": [
        {
            "type": "RESCHEDULE",
            "arguments": "-delay 3600000 -case ConnectionImpossible,ServerOverloaded,Shutdown"
        }
    ],
    "sPreTasks": [],
    "sPostTasks": [
        {
            "type": "ZIP",
            "arguments": "file.zip work/",
            "delay": 0
        }
    ],
    "sErrorTasks": [
        {
            "type": "DELETE"
        }
    ]
}
Status Codes:
  • 201 Created

    La règle de transfert a été mise à jour avec succès.

    Example response:

    HTTP/1.1 201 Created
    Content-Type: application/json
    
    {
        "name": "example",
        "hostIds": [
            "server1",
            "server2"
        ],
        "modeTrans": "send",
        "recvPath": "in/",
        "sendPath": "out/",
        "archivePath": "arch/",
        "workPath": "work/",
        "rPreTasks": [
            {
                "type": "ZIP",
                "arguments": "file.txt work/",
                "delay": 1
            }
        ],
        "rPostTask": [
            {
                "type": "MOVERENAME",
                "arguments": "arch/file.bak"
            }
        ],
        "rErrorTasks": [
            {
                "type": "RESCHEDULE",
                "arguments": "-delay 3600000 -case ConnectionImpossible,ServerOverloaded,Shutdown"
            }
        ],
        "sPreTasks": [],
        "sPostTasks": [
            {
                "type": "ZIP",
                "arguments": "file.zip work/",
                "delay": 0
            }
        ],
        "sErrorTasks": [
            {
                "type": "DELETE"
            }
        ]
    }
    

  • 400 Bad Request

    La requête est invalide, soit à cause de paramètres de requête erronés, soit à cause d’un corps de requête invalide.

    Les causes de l’échec de la requête sont données dans le corps de la réponse sour forme d’un tableau JSON.

    Example response:

    HTTP/1.1 400 Bad Request
    Content-Type: application/json
    
    {
        "errors": [
            {
                "message": "Query parameter 'startTrans' : illegal value 'not_a_date'.",
                "errorCode": 4
            },
            {
                "message": "Query parameter 'status' : illegal value 'not_a_status'.",
                "errorCode": 4
            }
        ]
    }
    

  • 404 Not Found – Dans le cas d’une requête sur une collection, cela signifie que l’identifiant donné n’existe pas dans la base de données.

En-têtes de réponse:
  • ruleURI – Le chemin d’accès de la règle modifiée. Si le nom de la règle n’a pas été changé, cet URI sera identique à celui ayant été utilisé pour la requête.