Remote API: sites_web_domain_update does not persist directive_snippets_id

Discussion in 'General' started by Bay Internet, May 29, 2026.

  1. Bay Internet

    Bay Internet New Member

    ISPConfig 3.3.1p1 — NGINX — Debian 13 Stable

    Hello,

    I'm encountering an issue whereby I'm unable to change the "Web server config" Directive Snippet from the API

    If I do it manually in the Control Panel, then ('directive_snippets_id' => '0') changes to ('directive_snippets_id' => '1') when I query the API.

    When I try to set it using the API I get the following:

    ==================== REQUEST: sites_web_domain_update ====================
    URL:
    https://127.0.0.1:8000/remote/json.php?sites_web_domain_update

    Payload:
    {
    "session_id": "REDACTED",
    "client_id": 1,
    "primary_id": 1,
    "params": {
    "directive_snippets_id": 1
    }
    }

    ==================== DECODED RESPONSE: sites_web_domain_update ====================
    array (
    'code' => 'ok',
    'message' => '',
    'response' => 0,
    )


    It does not change, I tested with all Functions permissions enabled for the API/Remote user.

    Any ideas?

    Thanks!
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    Try to set all parameters. The update functions in the API always require you to send all parameters and not just one that you want to change. Get the full record using the get function, change the parameter, and pass the full record back.
     
  3. Bay Internet

    Bay Internet New Member

    Those were just the relevant snippets, here's the full transaction for your review (I had to trim it up a bit, because I kept getting the "Please enter a message with no more than 20000 characters." forum error when I posted the full thing). Please see second post after this one for the missing part.

    Code:
    ============================================================
    SCRIPT START
    ============================================================
    Target client_id: 1
    Target domain_id: 1
    Target directive_snippets_id: 1
    
    ============================================================
    REQUEST: login
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?login
    
    PAYLOAD SENT:
    {"username":"**REDACTED**","password":"**REDACTED**"}
    
    ============================================================
    RESPONSE: login
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Fri, 29 May 2026 17:03:24 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":"**REDACTED**"}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' => '**REDACTED**',
    )
    
    ============================================================
    REQUEST: sites_web_domain_get
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?sites_web_domain_get
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**","primary_id":1}
    
    ============================================================
    RESPONSE: sites_web_domain_get
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Fri, 29 May 2026 17:03:24 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"\/var\/www\/clients\/client1\/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"1","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http:\/\/example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"##subroot public ##\r\n\r\nlocation \/ {\r\n    try_files $uri $uri\/ \/index.php?$query_string;\r\n}","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"\/var\/www\/clients\/client1\/web1\/web:\/var\/www\/clients\/client1\/web1\/private:\/var\/www\/clients\/client1\/web1\/tmp:\/var\/www\/vvveb.test\/web:\/srv\/www\/vvveb.test\/web:\/usr\/share\/php5:\/usr\/share\/php:\/tmp:\/usr\/share\/phpmyadmin:\/etc\/phpmyadmin:\/var\/lib\/phpmyadmin:\/dev\/random:\/dev\/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https:\/\/example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"0","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-05-29","last_jailkit_hash":null,"disable_symlinknotowner":"n"}}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' =>
      array (
        'domain_id' => '1',
        'sys_userid' => '2',
        'sys_groupid' => '2',
        'sys_perm_user' => 'riud',
        'sys_perm_group' => 'ru',
        'sys_perm_other' => '',
        'server_id' => '1',
        'ip_address' => '*',
        'ipv6_address' => '',
        'domain' => 'vvveb.test',
        'type' => 'vhost',
        'parent_domain_id' => '0',
        'vhost_type' => 'name',
        'document_root' => '/var/www/clients/client1/web1',
        'web_folder' => '',
        'system_user' => 'web1',
        'system_group' => 'client1',
        'hd_quota' => '-1',
        'traffic_quota' => '-1',
        'cgi' => 'n',
        'ssi' => 'n',
        'suexec' => 'y',
        'errordocs' => '1',
        'is_subdomainwww' => '1',
        'subdomain' => 'www',
        'php' => 'php-fpm',
        'ruby' => 'n',
        'python' => 'n',
        'perl' => 'n',
        'redirect_type' => 'redirect',
        'redirect_path' => 'http://example.com',
        'seo_redirect' => '',
        'rewrite_to_https' => 'n',
        'ssl' => 'n',
        'ssl_letsencrypt' => 'n',
        'ssl_letsencrypt_exclude' => 'n',
        'ssl_state' => '',
        'ssl_locality' => '',
        'ssl_organisation' => '',
        'ssl_organisation_unit' => '',
        'ssl_country' => 'AF',
        'ssl_domain' => 'vvveb.test',
        'ssl_request' => '',
        'ssl_cert' => '',
        'ssl_bundle' => '',
        'ssl_key' => '',
        'ssl_action' => '',
        'stats_password' => NULL,
        'stats_type' => 'awstats',
        'allow_override' => 'All',
        'apache_directives' => '',
        'nginx_directives' => '##subroot public ##
    
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }',
        'php_fpm_use_socket' => 'y',
        'php_fpm_chroot' => 'n',
        'pm' => 'ondemand',
        'pm_max_children' => '10',
        'pm_start_servers' => '2',
        'pm_min_spare_servers' => '1',
        'pm_max_spare_servers' => '5',
        'pm_process_idle_timeout' => '10',
        'pm_max_requests' => '0',
        'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom',
        'custom_php_ini' => '',
        'backup_interval' => 'none',
        'backup_copies' => '1',
        'backup_format_web' => 'default',
        'backup_format_db' => 'gzip',
        'backup_encrypt' => 'n',
        'backup_password' => '',
        'backup_excludes' => '',
        'active' => 'y',
        'traffic_quota_lock' => 'n',
        'proxy_directives' => '',
        'last_quota_notification' => NULL,
        'rewrite_rules' => 'return 302 https://example.com;',
        'added_date' => '2026-05-21',
        'added_by' => '**REDACTED**',
        'directive_snippets_id' => '0',
        'enable_pagespeed' => 'n',
        'http_port' => '80',
        'https_port' => '443',
        'folder_directive_snippets' => NULL,
        'log_retention' => '30',
        'proxy_protocol' => 'n',
        'server_php_id' => '12',
        'jailkit_chroot_app_sections' => '',
        'jailkit_chroot_app_programs' => '',
        'delete_unused_jailkit' => 'n',
        'last_jailkit_update' => '2026-05-29',
        'last_jailkit_hash' => NULL,
        'disable_symlinknotowner' => 'n',
      ),
    )
    
    ============================================================
    REQUEST: sites_web_domain_update
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?sites_web_domain_update
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**","client_id":1,"primary_id":1,"params":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"/var/www/clients/client1/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"1","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http://example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"##subroot public ##\r\n\r\nlocation / {\r\n    try_files $uri $uri/ /index.php?$query_string;\r\n}","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https://example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":1,"enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-05-29","last_jailkit_hash":null,"disable_symlinknotowner":"n"}}
    
    ============================================================
    RESPONSE: sites_web_domain_update
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Fri, 29 May 2026 17:03:24 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":0}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' => 0,
    )
    
    ============================================================
    REQUEST: sites_web_domain_get
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?sites_web_domain_get
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**","primary_id":1}
    
    ============================================================
    RESPONSE: sites_web_domain_get
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Fri, 29 May 2026 17:03:24 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"\/var\/www\/clients\/client1\/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"1","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http:\/\/example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"##subroot public ##\r\n\r\nlocation \/ {\r\n    try_files $uri $uri\/ \/index.php?$query_string;\r\n}","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"\/var\/www\/clients\/client1\/web1\/web:\/var\/www\/clients\/client1\/web1\/private:\/var\/www\/clients\/client1\/web1\/tmp:\/var\/www\/vvveb.test\/web:\/srv\/www\/vvveb.test\/web:\/usr\/share\/php5:\/usr\/share\/php:\/tmp:\/usr\/share\/phpmyadmin:\/etc\/phpmyadmin:\/var\/lib\/phpmyadmin:\/dev\/random:\/dev\/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https:\/\/example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"0","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-05-29","last_jailkit_hash":null,"disable_symlinknotowner":"n"}}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' =>
      array (
        'domain_id' => '1',
        'sys_userid' => '2',
        'sys_groupid' => '2',
        'sys_perm_user' => 'riud',
        'sys_perm_group' => 'ru',
        'sys_perm_other' => '',
        'server_id' => '1',
        'ip_address' => '*',
        'ipv6_address' => '',
        'domain' => 'vvveb.test',
        'type' => 'vhost',
        'parent_domain_id' => '0',
        'vhost_type' => 'name',
        'document_root' => '/var/www/clients/client1/web1',
        'web_folder' => '',
        'system_user' => 'web1',
        'system_group' => 'client1',
        'hd_quota' => '-1',
        'traffic_quota' => '-1',
        'cgi' => 'n',
        'ssi' => 'n',
        'suexec' => 'y',
        'errordocs' => '1',
        'is_subdomainwww' => '1',
        'subdomain' => 'www',
        'php' => 'php-fpm',
        'ruby' => 'n',
        'python' => 'n',
        'perl' => 'n',
        'redirect_type' => 'redirect',
        'redirect_path' => 'http://example.com',
        'seo_redirect' => '',
        'rewrite_to_https' => 'n',
        'ssl' => 'n',
        'ssl_letsencrypt' => 'n',
        'ssl_letsencrypt_exclude' => 'n',
        'ssl_state' => '',
        'ssl_locality' => '',
        'ssl_organisation' => '',
        'ssl_organisation_unit' => '',
        'ssl_country' => 'AF',
        'ssl_domain' => 'vvveb.test',
        'ssl_request' => '',
        'ssl_cert' => '',
        'ssl_bundle' => '',
        'ssl_key' => '',
        'ssl_action' => '',
        'stats_password' => NULL,
        'stats_type' => 'awstats',
        'allow_override' => 'All',
        'apache_directives' => '',
        'nginx_directives' => '##subroot public ##
    
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }',
        'php_fpm_use_socket' => 'y',
        'php_fpm_chroot' => 'n',
        'pm' => 'ondemand',
        'pm_max_children' => '10',
        'pm_start_servers' => '2',
        'pm_min_spare_servers' => '1',
        'pm_max_spare_servers' => '5',
        'pm_process_idle_timeout' => '10',
        'pm_max_requests' => '0',
        'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom',
        'custom_php_ini' => '',
        'backup_interval' => 'none',
        'backup_copies' => '1',
        'backup_format_web' => 'default',
        'backup_format_db' => 'gzip',
        'backup_encrypt' => 'n',
        'backup_password' => '',
        'backup_excludes' => '',
        'active' => 'y',
        'traffic_quota_lock' => 'n',
        'proxy_directives' => '',
        'last_quota_notification' => NULL,
        'rewrite_rules' => 'return 302 https://example.com;',
        'added_date' => '2026-05-21',
        'added_by' => '**REDACTED**',
        'directive_snippets_id' => '0',
        'enable_pagespeed' => 'n',
        'http_port' => '80',
        'https_port' => '443',
        'folder_directive_snippets' => NULL,
        'log_retention' => '30',
        'proxy_protocol' => 'n',
        'server_php_id' => '12',
        'jailkit_chroot_app_sections' => '',
        'jailkit_chroot_app_programs' => '',
        'delete_unused_jailkit' => 'n',
        'last_jailkit_update' => '2026-05-29',
        'last_jailkit_hash' => NULL,
        'disable_symlinknotowner' => 'n',
      ),
    )
    
    ============================================================
    REQUEST: logout
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?logout
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**"}
    
    ============================================================
    RESPONSE: logout
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Fri, 29 May 2026 17:03:24 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":true}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' => true,
    )
    
    ============================================================
    FINAL SUMMARY
    ============================================================
    domain_id: 1
    client_id: 1
    old directive_snippets_id:
    '0'
    requested directive_snippets_id:
    1
    after directive_snippets_id:
    '0'
    update response:
    0
    
    Besides ISPConfig 3.3.1p1, I also tested on a separate install of 3.1.15p3 that did not have any Nginx Directives set, and got the same results.
     
    Last edited: Jun 6, 2026 at 1:47 AM
  4. Bay Internet

    Bay Internet New Member

    Here's the part that was omitted due to the Forum character limitations:

    Code:
    ============================================================
    FULL RECORD BEING SENT BACK TO sites_web_domain_update
    ============================================================
    array (
      'domain_id' => '1',
      'sys_userid' => '2',
      'sys_groupid' => '2',
      'sys_perm_user' => 'riud',
      'sys_perm_group' => 'ru',
      'sys_perm_other' => '',
      'server_id' => '1',
      'ip_address' => '*',
      'ipv6_address' => '',
      'domain' => 'vvveb.test',
      'type' => 'vhost',
      'parent_domain_id' => '0',
      'vhost_type' => 'name',
      'document_root' => '/var/www/clients/client1/web1',
      'web_folder' => '',
      'system_user' => 'web1',
      'system_group' => 'client1',
      'hd_quota' => '-1',
      'traffic_quota' => '-1',
      'cgi' => 'n',
      'ssi' => 'n',
      'suexec' => 'y',
      'errordocs' => '1',
      'is_subdomainwww' => '1',
      'subdomain' => 'www',
      'php' => 'php-fpm',
      'ruby' => 'n',
      'python' => 'n',
      'perl' => 'n',
      'redirect_type' => 'redirect',
      'redirect_path' => 'http://example.com',
      'seo_redirect' => '',
      'rewrite_to_https' => 'n',
      'ssl' => 'n',
      'ssl_letsencrypt' => 'n',
      'ssl_letsencrypt_exclude' => 'n',
      'ssl_state' => '',
      'ssl_locality' => '',
      'ssl_organisation' => '',
      'ssl_organisation_unit' => '',
      'ssl_country' => 'AF',
      'ssl_domain' => 'vvveb.test',
      'ssl_request' => '',
      'ssl_cert' => '',
      'ssl_bundle' => '',
      'ssl_key' => '',
      'ssl_action' => '',
      'stats_password' => NULL,
      'stats_type' => 'awstats',
      'allow_override' => 'All',
      'apache_directives' => '',
      'nginx_directives' => '##subroot public ##
    
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }',
      'php_fpm_use_socket' => 'y',
      'php_fpm_chroot' => 'n',
      'pm' => 'ondemand',
      'pm_max_children' => '10',
      'pm_start_servers' => '2',
      'pm_min_spare_servers' => '1',
      'pm_max_spare_servers' => '5',
      'pm_process_idle_timeout' => '10',
      'pm_max_requests' => '0',
      'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom',
      'custom_php_ini' => '',
      'backup_interval' => 'none',
      'backup_copies' => '1',
      'backup_format_web' => 'default',
      'backup_format_db' => 'gzip',
      'backup_encrypt' => 'n',
      'backup_password' => '',
      'backup_excludes' => '',
      'active' => 'y',
      'traffic_quota_lock' => 'n',
      'proxy_directives' => '',
      'last_quota_notification' => NULL,
      'rewrite_rules' => 'return 302 https://example.com;',
      'added_date' => '2026-05-21',
      'added_by' => '**REDACTED**',
      'directive_snippets_id' => 1,
      'enable_pagespeed' => 'n',
      'http_port' => '80',
      'https_port' => '443',
      'folder_directive_snippets' => NULL,
      'log_retention' => '30',
      'proxy_protocol' => 'n',
      'server_php_id' => '12',
      'jailkit_chroot_app_sections' => '',
      'jailkit_chroot_app_programs' => '',
      'delete_unused_jailkit' => 'n',
      'last_jailkit_update' => '2026-05-29',
      'last_jailkit_hash' => NULL,
      'disable_symlinknotowner' => 'n',
    )
    
     
  5. till

    till Super Moderator Staff Member ISPConfig Developer

    I can see that you have nginx_directives set. You can either use snippets or nginx_directives, but not both together. This is not about the API; you can also not use nginx_directives and snippets together in the GUI.

    Instead, add the custom Nginx directives that you want to set in nginx_directives field. Or create a snippet that contains all and leave nginx_directives empty.
     
  6. Bay Internet

    Bay Internet New Member

    I removed the NGINX Directive, and tried again. Still did not update. Please see below (I omitted the raw response from "sites_web_domain_get" that was issued after the update to stay within the 20K forum character limit)

    Code:
    ============================================================
    SCRIPT START
    ============================================================
    Target client_id: 1
    Target domain_id: 1
    Target directive_snippets_id: 1
    
    ============================================================
    REQUEST: login
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?login
    
    PAYLOAD SENT:
    {"username":"**REDACTED**","password":"**REDACTED**"}
    
    ============================================================
    RESPONSE: login
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Sat, 06 Jun 2026 06:30:20 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":"**REDACTED**"}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' => '**REDACTED**',
    )
    
    ============================================================
    REQUEST: sites_web_domain_get
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?sites_web_domain_get
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**","primary_id":1}
    
    ============================================================
    RESPONSE: sites_web_domain_get
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Sat, 06 Jun 2026 06:30:20 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"\/var\/www\/clients\/client1\/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"0","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http:\/\/example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"\/var\/www\/clients\/client1\/web1\/web:\/var\/www\/clients\/client1\/web1\/private:\/var\/www\/clients\/client1\/web1\/tmp:\/var\/www\/vvveb.test\/web:\/srv\/www\/vvveb.test\/web:\/usr\/share\/php5:\/usr\/share\/php:\/tmp:\/usr\/share\/phpmyadmin:\/etc\/phpmyadmin:\/var\/lib\/phpmyadmin:\/dev\/random:\/dev\/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https:\/\/example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"0","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-06-05","last_jailkit_hash":"force_update1780629302","disable_symlinknotowner":"n"}}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' =>
      array (
        'domain_id' => '1',
        'sys_userid' => '2',
        'sys_groupid' => '2',
        'sys_perm_user' => 'riud',
        'sys_perm_group' => 'ru',
        'sys_perm_other' => '',
        'server_id' => '1',
        'ip_address' => '*',
        'ipv6_address' => '',
        'domain' => 'vvveb.test',
        'type' => 'vhost',
        'parent_domain_id' => '0',
        'vhost_type' => 'name',
        'document_root' => '/var/www/clients/client1/web1',
        'web_folder' => '',
        'system_user' => 'web1',
        'system_group' => 'client1',
        'hd_quota' => '-1',
        'traffic_quota' => '-1',
        'cgi' => 'n',
        'ssi' => 'n',
        'suexec' => 'y',
        'errordocs' => '0',
        'is_subdomainwww' => '1',
        'subdomain' => 'www',
        'php' => 'php-fpm',
        'ruby' => 'n',
        'python' => 'n',
        'perl' => 'n',
        'redirect_type' => 'redirect',
        'redirect_path' => 'http://example.com',
        'seo_redirect' => '',
        'rewrite_to_https' => 'n',
        'ssl' => 'n',
        'ssl_letsencrypt' => 'n',
        'ssl_letsencrypt_exclude' => 'n',
        'ssl_state' => '',
        'ssl_locality' => '',
        'ssl_organisation' => '',
        'ssl_organisation_unit' => '',
        'ssl_country' => 'AF',
        'ssl_domain' => 'vvveb.test',
        'ssl_request' => '',
        'ssl_cert' => '',
        'ssl_bundle' => '',
        'ssl_key' => '',
        'ssl_action' => '',
        'stats_password' => NULL,
        'stats_type' => 'awstats',
        'allow_override' => 'All',
        'apache_directives' => '',
        'nginx_directives' => '',
        'php_fpm_use_socket' => 'y',
        'php_fpm_chroot' => 'n',
        'pm' => 'ondemand',
        'pm_max_children' => '10',
        'pm_start_servers' => '2',
        'pm_min_spare_servers' => '1',
        'pm_max_spare_servers' => '5',
        'pm_process_idle_timeout' => '10',
        'pm_max_requests' => '0',
        'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom',
        'custom_php_ini' => '',
        'backup_interval' => 'none',
        'backup_copies' => '1',
        'backup_format_web' => 'default',
        'backup_format_db' => 'gzip',
        'backup_encrypt' => 'n',
        'backup_password' => '',
        'backup_excludes' => '',
        'active' => 'y',
        'traffic_quota_lock' => 'n',
        'proxy_directives' => '',
        'last_quota_notification' => NULL,
        'rewrite_rules' => 'return 302 https://example.com;',
        'added_date' => '2026-05-21',
        'added_by' => '**REDACTED**',
        'directive_snippets_id' => '0',
        'enable_pagespeed' => 'n',
        'http_port' => '80',
        'https_port' => '443',
        'folder_directive_snippets' => NULL,
        'log_retention' => '30',
        'proxy_protocol' => 'n',
        'server_php_id' => '12',
        'jailkit_chroot_app_sections' => '',
        'jailkit_chroot_app_programs' => '',
        'delete_unused_jailkit' => 'n',
        'last_jailkit_update' => '2026-06-05',
        'last_jailkit_hash' => 'force_update1780629302',
        'disable_symlinknotowner' => 'n',
      ),
    )
    
    ============================================================
    FULL RECORD BEING SENT BACK TO sites_web_domain_update
    ============================================================
    array (
      'domain_id' => '1',
      'sys_userid' => '2',
      'sys_groupid' => '2',
      'sys_perm_user' => 'riud',
      'sys_perm_group' => 'ru',
      'sys_perm_other' => '',
      'server_id' => '1',
      'ip_address' => '*',
      'ipv6_address' => '',
      'domain' => 'vvveb.test',
      'type' => 'vhost',
      'parent_domain_id' => '0',
      'vhost_type' => 'name',
      'document_root' => '/var/www/clients/client1/web1',
      'web_folder' => '',
      'system_user' => 'web1',
      'system_group' => 'client1',
      'hd_quota' => '-1',
      'traffic_quota' => '-1',
      'cgi' => 'n',
      'ssi' => 'n',
      'suexec' => 'y',
      'errordocs' => '0',
      'is_subdomainwww' => '1',
      'subdomain' => 'www',
      'php' => 'php-fpm',
      'ruby' => 'n',
      'python' => 'n',
      'perl' => 'n',
      'redirect_type' => 'redirect',
      'redirect_path' => 'http://example.com',
      'seo_redirect' => '',
      'rewrite_to_https' => 'n',
      'ssl' => 'n',
      'ssl_letsencrypt' => 'n',
      'ssl_letsencrypt_exclude' => 'n',
      'ssl_state' => '',
      'ssl_locality' => '',
      'ssl_organisation' => '',
      'ssl_organisation_unit' => '',
      'ssl_country' => 'AF',
      'ssl_domain' => 'vvveb.test',
      'ssl_request' => '',
      'ssl_cert' => '',
      'ssl_bundle' => '',
      'ssl_key' => '',
      'ssl_action' => '',
      'stats_password' => NULL,
      'stats_type' => 'awstats',
      'allow_override' => 'All',
      'apache_directives' => '',
      'nginx_directives' => '',
      'php_fpm_use_socket' => 'y',
      'php_fpm_chroot' => 'n',
      'pm' => 'ondemand',
      'pm_max_children' => '10',
      'pm_start_servers' => '2',
      'pm_min_spare_servers' => '1',
      'pm_max_spare_servers' => '5',
      'pm_process_idle_timeout' => '10',
      'pm_max_requests' => '0',
      'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom',
      'custom_php_ini' => '',
      'backup_interval' => 'none',
      'backup_copies' => '1',
      'backup_format_web' => 'default',
      'backup_format_db' => 'gzip',
      'backup_encrypt' => 'n',
      'backup_password' => '',
      'backup_excludes' => '',
      'active' => 'y',
      'traffic_quota_lock' => 'n',
      'proxy_directives' => '',
      'last_quota_notification' => NULL,
      'rewrite_rules' => 'return 302 https://example.com;',
      'added_date' => '2026-05-21',
      'added_by' => '**REDACTED**',
      'directive_snippets_id' => '1',
      'enable_pagespeed' => 'n',
      'http_port' => '80',
      'https_port' => '443',
      'folder_directive_snippets' => NULL,
      'log_retention' => '30',
      'proxy_protocol' => 'n',
      'server_php_id' => '12',
      'jailkit_chroot_app_sections' => '',
      'jailkit_chroot_app_programs' => '',
      'delete_unused_jailkit' => 'n',
      'last_jailkit_update' => '2026-06-05',
      'last_jailkit_hash' => 'force_update1780629302',
      'disable_symlinknotowner' => 'n',
    )
    
    ============================================================
    REQUEST: sites_web_domain_update
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?sites_web_domain_update
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**","client_id":1,"primary_id":1,"params":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"/var/www/clients/client1/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"0","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http://example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https://example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"1","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-06-05","last_jailkit_hash":"force_update1780629302","disable_symlinknotowner":"n"}}
    
    ============================================================
    RESPONSE: sites_web_domain_update
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Sat, 06 Jun 2026 06:30:20 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":0}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' => 0,
    )
    
    ============================================================
    REQUEST: sites_web_domain_get
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?sites_web_domain_get
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**","primary_id":1}
    
    ============================================================
    RESPONSE: sites_web_domain_get
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Sat, 06 Jun 2026 06:30:20 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' =>
      array (
        'domain_id' => '1',
        'sys_userid' => '2',
        'sys_groupid' => '2',
        'sys_perm_user' => 'riud',
        'sys_perm_group' => 'ru',
        'sys_perm_other' => '',
        'server_id' => '1',
        'ip_address' => '*',
        'ipv6_address' => '',
        'domain' => 'vvveb.test',
        'type' => 'vhost',
        'parent_domain_id' => '0',
        'vhost_type' => 'name',
        'document_root' => '/var/www/clients/client1/web1',
        'web_folder' => '',
        'system_user' => 'web1',
        'system_group' => 'client1',
        'hd_quota' => '-1',
        'traffic_quota' => '-1',
        'cgi' => 'n',
        'ssi' => 'n',
        'suexec' => 'y',
        'errordocs' => '0',
        'is_subdomainwww' => '1',
        'subdomain' => 'www',
        'php' => 'php-fpm',
        'ruby' => 'n',
        'python' => 'n',
        'perl' => 'n',
        'redirect_type' => 'redirect',
        'redirect_path' => 'http://example.com',
        'seo_redirect' => '',
        'rewrite_to_https' => 'n',
        'ssl' => 'n',
        'ssl_letsencrypt' => 'n',
        'ssl_letsencrypt_exclude' => 'n',
        'ssl_state' => '',
        'ssl_locality' => '',
        'ssl_organisation' => '',
        'ssl_organisation_unit' => '',
        'ssl_country' => 'AF',
        'ssl_domain' => 'vvveb.test',
        'ssl_request' => '',
        'ssl_cert' => '',
        'ssl_bundle' => '',
        'ssl_key' => '',
        'ssl_action' => '',
        'stats_password' => NULL,
        'stats_type' => 'awstats',
        'allow_override' => 'All',
        'apache_directives' => '',
        'nginx_directives' => '',
        'php_fpm_use_socket' => 'y',
        'php_fpm_chroot' => 'n',
        'pm' => 'ondemand',
        'pm_max_children' => '10',
        'pm_start_servers' => '2',
        'pm_min_spare_servers' => '1',
        'pm_max_spare_servers' => '5',
        'pm_process_idle_timeout' => '10',
        'pm_max_requests' => '0',
        'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom',
        'custom_php_ini' => '',
        'backup_interval' => 'none',
        'backup_copies' => '1',
        'backup_format_web' => 'default',
        'backup_format_db' => 'gzip',
        'backup_encrypt' => 'n',
        'backup_password' => '',
        'backup_excludes' => '',
        'active' => 'y',
        'traffic_quota_lock' => 'n',
        'proxy_directives' => '',
        'last_quota_notification' => NULL,
        'rewrite_rules' => 'return 302 https://example.com;',
        'added_date' => '2026-05-21',
        'added_by' => '**REDACTED**',
        'directive_snippets_id' => '0',
        'enable_pagespeed' => 'n',
        'http_port' => '80',
        'https_port' => '443',
        'folder_directive_snippets' => NULL,
        'log_retention' => '30',
        'proxy_protocol' => 'n',
        'server_php_id' => '12',
        'jailkit_chroot_app_sections' => '',
        'jailkit_chroot_app_programs' => '',
        'delete_unused_jailkit' => 'n',
        'last_jailkit_update' => '2026-06-05',
        'last_jailkit_hash' => 'force_update1780629302',
        'disable_symlinknotowner' => 'n',
      ),
    )
    
    ============================================================
    REQUEST: logout
    ============================================================
    URL:
    https://127.0.0.1:8000/remote/json.php?logout
    
    PAYLOAD SENT:
    {"session_id":"**REDACTED**"}
    
    ============================================================
    RESPONSE: logout
    ============================================================
    HTTP CODE:
    200
    
    RAW HEADERS:
    HTTP/2 200
    server: nginx
    date: Sat, 06 Jun 2026 06:30:20 GMT
    content-type: application/json; charset="utf-8"
    pragma: no-cache
    cache-control: no-store, no-cache, max-age=0, must-revalidate
    vary: Accept-Encoding
    
    
    RAW BODY:
    {"code":"ok","message":"","response":true}
    
    DECODED RESPONSE:
    array (
      'code' => 'ok',
      'message' => '',
      'response' => true,
    )
    
    ============================================================
    FINAL SUMMARY
    ============================================================
    domain_id: 1
    client_id: 1
    old directive_snippets_id:
    '0'
    requested directive_snippets_id:
    '1'
    after directive_snippets_id:
    '0'
    update response:
    0
    
     
    Last edited: Jun 6, 2026 at 9:10 AM

Share This Page