Using templates with the REST interface?

Discussion in 'Developers' Forum' started by Richard Foley, Sep 6, 2019.

  1. Richard Foley

    Richard Foley Member

    I'm looking at using the REST API to create a client, using specific templates, and see this helpful example posted here.
    Code:
    POST /remote/json.php?client_add HTTP/1.1
    Host: myserver:8080
    Content-Type: application/json
    Content-Length: 1823
    {
      "session_id": "............",
      "reseller_id": 0,
      "params": {
        "company_name": "awesomecompany",
        "contact_name": "name",
        "customer_no": "1",
        "vat_id": "1",
        "street": "fleetstreet",
        "zip": "21337",
        "city": "london",
        "state": "bavaria",
        "country": "GB",
        "telephone": "123456789",
        "mobile": "987654321",
        "fax": "546718293",
        "email": "[email protected]",
        "internet": "",
        "icq": "111111111",
        "notes": "awesome",
        "default_mailserver": 1,
        "limit_maildomain": -1,
        "limit_mailbox": -1,
        "limit_mailalias": -1,
        "limit_mailaliasdomain": -1,
        "limit_mailforward": -1,
        "limit_mailcatchall": -1,
        "limit_mailrouting": 0,
        "limit_mailfilter": -1,
        "limit_fetchmail": -1,
        "limit_mailquota": -1,
        "limit_spamfilter_wblist": 0,
        "limit_spamfilter_user": 0,
        "limit_spamfilter_policy": 1,
        "default_webserver": 1,
        "limit_web_ip": "",
        "limit_web_domain": -1,
        "limit_web_quota": -1,
        "web_php_options": "no,fast-cgi,cgi,mod,suphp",
        "limit_web_subdomain": -1,
        "limit_web_aliasdomain": -1,
        "limit_ftp_user": -1,
        "limit_shell_user": 0,
        "ssh_chroot": "no,jailkit,ssh-chroot",
        "limit_webdav_user": 0,
        "default_dnsserver": 1,
        "limit_dns_zone": -1,
        "limit_dns_slave_zone": -1,
        "limit_dns_record": -1,
        "default_dbserver": 1,
        "limit_database": -1,
        "limit_cron": 0,
        "limit_cron_type": "url",
        "limit_cron_frequency": 5,
        "limit_traffic_quota": -1,
        "limit_client": 0,
        "parent_client_id": 0,
        "username": "guy3",
        "password": "brush",
        "language": "en",
        "usertheme": "default",
        "template_master": 0,
        "template_additional": "",
        "created_at": 0
      }
    }
    That's an AWFUL lot of limit_* to have to set. I see the 2 template_* parameters, and wonder if it's possible to leave out the majority of the limit_* parameters when using a suitable existing "template_master": n parameter?

    The lack of documentation doesn't make this any easier to clarify in advance of guess-and-poke, which I'm loath to do... :)

    Helpful advice greatly appreciated.
     
    Last edited: Sep 6, 2019
  2. Richard Foley

    Richard Foley Member

    Ah, it may be I can answer my own question here. According to this post, all parameters are required.
     

Share This Page