Description

The addPullFile operation handles configuration related to PullFile model. 

HTTP request

POST /api/fdm/v6/action/pullfile

Data Parameters

Parameter Required Type Description
scheduleType False string A mandatory enum value that specifies the type of job schedule. Only allowed value is:

IMMEDIATE - the job will be posted when the request is received.

Note that the job will be posted in the queue when it is received, but the actual execution can be delayed if other jobs were scheduled for execution at the same time or are being currently processed. After a system restart the job will not be recovered.

user False string System provided ID of the user who scheduled the job.
Field level constraints: must match pattern ^((?!;).)*$. (Note: Additional constraints might exist)
forceOperation False boolean For Internal use.
jobHistoryUuid False string The ID of the job status object created by this schedule object. Use this ID in the corresponding job API to check the job status.
Field level constraints: must match pattern ^((?!;).)*$. (Note: Additional constraints might exist)
ipAddress False string IP address of actor who initiated a job execution
Field level constraints: must match pattern ^((?!;).)*$. (Note: Additional constraints might exist)
downloadUrl True string The URL of the file that is to be downloaded. The supported protocols are http://, https://
Field level constraints: cannot be blank or empty, must be a valid URL, must match pattern ^((?!;).)*$. (Note: Additional constraints might exist)
checksumAlgorithm True string The algorithm used to calculate checksum. An enum with values NONE,MD5,SHA512. NONE is the default which means no checksum verification would be done on the downloaded file
Field level constraints: cannot be null. (Note: Additional constraints might exist)
checksum False string The checksum value that will be used to validate the downloaded file using the method specified in the checksumAlgorithm attribute. Not a mandatory field if checksumAlgorithm is NONE
Field level constraints: must match pattern ^((?!;).)*$. (Note: Additional constraints might exist)
timeout True integer The maximum time in seconds allowed to finish the job. If it exceeds the given time, then the job is terminated. The timeout range can be from 1 to 3600 seconds. The default is 60 seconds.
Field level constraints: cannot be null, must be between 1 and 3600 (inclusive). (Note: Additional constraints might exist)
fileType True string An enum value that specifies the type of file. The enum values are : ANYCONNECTPACKAGEFILE, ANYCONNECTCLIENTPROFILE, HOSTSCANPACKAGEFILE, CONFIGIMPORTFILE
Field level constraints: cannot be null. (Note: Additional constraints might exist)
jobName False string See derived class.
type True string A UTF8 string, all letters lower-case, that represents the class-type. This corresponds to the class name.

Example

curl -X POST \
    --header "Accept: application/json" \
    --header "Authorization: Bearer ${ACCESS_TOKEN}" \
    --header "Content-Type: application/json" \
    -d '{
        "checksum": "string",
        "checksumAlgorithm": "NONE",
        "downloadUrl": "string",
        "fileType": "ANYCONNECTPACKAGEFILE",
        "forceOperation": true,
        "id": "string",
        "ipAddress": "string",
        "jobHistoryUuid": "string",
        "jobName": "string",
        "scheduleType": "NONE",
        "timeout": 0,
        "type": "pullfile",
        "user": "string",
        "version": "string"
    }' \
    "https://${HOST}:${PORT}/api/fdm/v6/action/pullfile"
from bravado.requests_client import RequestsClient
from bravado.client import SwaggerClient


def get_client(host, token):
    http_client = RequestsClient()
    http_client.ssl_verify = False
    http_client.set_api_key(
        host,
        "Bearer {}".format(token),
        param_name="Authorization",
        param_in="header"
    )
    return SwaggerClient.from_url(
        "https://{}/apispec/ngfw.json".format(host),
        http_client=http_client,
        config={
            "validate_responses": False,
            "validate_swagger_spec": False
        }
    )


def add_pull_file(client, body):
    return client.PullFile.addPullFile(
        body=body
    ).response().result


if __name__ == "__main__":
    host = "ftd.example.com"
    token = "access_token"
    client = get_client(host, token)

    body = {'checksum': 'string',
 'checksumAlgorithm': 'NONE',
 'downloadUrl': 'string',
 'fileType': 'ANYCONNECTPACKAGEFILE',
 'forceOperation': True,
 'ipAddress': 'string',
 'jobHistoryUuid': 'string',
 'jobName': 'string',
 'scheduleType': 'NONE',
 'timeout': 0,
 'type': 'pullfile',
 'user': 'string'}

    add_pull_file(client, body)