cURL
curl -X PATCH "$EXSITED_BASE_URL/api/v4/settings/general_settings/portal" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"general_settings": {
"portal": {
"enableCustomerPortal": "true"
}
}
}'from exsited import build_client
client = build_client()
response = client.settings.update_settings_general_settings_portal(
{"general_settings": {"portal": {"enableCustomerPortal": "true"}}}
)
print(response.data)
import {buildClient} from 'exsited';
const client = await buildClient();
const response = await client.settings.updateSettingsGeneralSettingsPortal({
general_settings: {portal: {enableCustomerPortal: 'true'}},
});
console.log(response.data);
use Exsited\Client\ClientRegistry;
$client = ClientRegistry::buildClient();
$response = $client->settings->updateSettingsGeneralSettingsPortal([
'general_settings' => ['portal' => ['enableCustomerPortal' => 'true']],
]);
print_r($response->data);
import com.exsited.client.ApiResponse;
import com.exsited.client.ClientRegistry;
import com.exsited.client.ExsitedClient;
import com.exsited.resources.settings.settings_dto.SettingsDto.SettingsGeneralSettings;
import java.util.Map;
ExsitedClient client = ClientRegistry.buildClient();
ApiResponse<SettingsGeneralSettings> response = client.settings().updateSettingsGeneralSettingsPortal(
Map.of("general_settings", Map.of("portal", Map.of("enableCustomerPortal", "true"))));
System.out.println(response.getMap());
using Exsited.Client;
await using var client = ExsitedClient.BuildClient();
var response = await client.Settings.UpdateSettingsGeneralSettingsPortalAsync(new Dictionary<string, object?>
{
["general_settings"] = new Dictionary<string, object?>
{
["portal"] = new Dictionary<string, object?>
{
["enableCustomerPortal"] = "true",
},
},
});
Console.WriteLine(response.Json);
import 'package:exsited/exsited.dart';
final client = buildClient();
final response = await client.settings.updateSettingsGeneralSettingsPortal({
'general_settings': {
'portal': {'enableCustomerPortal': 'true'},
},
});
print(response.map);
import (
"context"
"fmt"
"log"
exsited "github.com/exsited/exsited-sdk-go/v4"
)
client, err := exsited.BuildClient(nil)
if err != nil {
log.Fatal(err)
}
defer client.Close()
response, err := client.Settings().UpdateSettingsGeneralSettingsPortal(context.Background(), map[string]any{
"general_settings": map[string]any{
"portal": map[string]any{"enableCustomerPortal": "true"},
},
}, nil)
if err != nil {
log.Fatal(err)
}
fmt.Println(response.Map)
{
"general_settings": {
"account": {
"account_grouping": {
"default_group": "<unknown>",
"enabled": "<string>"
},
"account_management": {
"default_manager": "<unknown>",
"enabled": "<string>"
},
"additional_contact_1": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_additional_contact_1": "<string>",
"type": "<string>"
},
"additional_contact_2": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_additional_contact_2": "<string>",
"type": "<string>"
},
"additional_contact_3": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_additional_contact_3": "<string>",
"type": "<string>"
},
"billing_contact": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_billing_contact": "<string>",
"type": "<string>"
},
"creation_of_subsidiary_account": {
"default_group": "<unknown>",
"enabled": "<string>"
},
"enable_workflow_approval_for_account": "<string>",
"referral_tracking_at_account_level": {
"default_referral_tracking": "<unknown>",
"enabled": "<string>"
},
"require_email_address_for_account": "<string>",
"require_name_to_be_unique": "<string>",
"sales_rep_tracking_at_account_level": {
"default_sales_rep_tracking": "<unknown>",
"enabled": "<string>"
},
"send_communication_as_groups": "<string>",
"shipping_contact": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_shipping_contact": "<string>",
"type": "<string>"
},
"unique_email_address_for_account": "<string>",
"unique_email_address_for_contacts": "<string>"
},
"dashboard": {
"accounting": "<string>",
"defaultDashboard": "<unknown>",
"executive": "<string>",
"finance": "<string>",
"production": "<string>",
"purchase": "<string>",
"sales": "<string>"
},
"date_and_time": {
"date_format": "<string>",
"first_day_of_week": "<unknown>",
"time_format": "<string>",
"time_zone": "<string>"
},
"display": {},
"general": {},
"item": {
"available_charge_types": {
"metered": "<string>",
"one_off": "<string>",
"recurring": "<string>"
},
"available_pricing_methods": {
"discount_based": "<string>",
"markup_based": "<string>",
"standard": "<string>"
},
"charging_period_can_vary_from_billing_period": "<string>",
"charging_start_date_can_vary_from_billing_start_date": "<string>",
"enable_back_order": "<string>",
"enable_batch_tracking": "<string>",
"enable_bundle_item": "<string>",
"enable_direct_cost_item": "<string>",
"enable_family_cost_item": "<string>",
"enable_fixed_asset_item": "<string>",
"enable_gift_certificate_based_item": "<string>",
"enable_inventory_costing": "<string>",
"enable_inventory_management": "<string>",
"enable_pricing_profile": "<string>",
"enable_purchase": "<string>",
"enable_sales": "<string>",
"enable_serialization": "<string>",
"enable_supplier_management": "<string>",
"enable_variation": "<string>",
"enable_variation_based_item": "<string>",
"enable_warehouse_management": "<string>",
"enable_workflow_approval_for_item": "<string>",
"inventory_adjustment_rules": {
"quantity_available_for_sale": "<string>",
"quantity_available_for_sale_determination": "<string>"
},
"item_grouping": {
"default_group": "<unknown>",
"enabled": "<string>"
},
"item_management": {
"default_manager": "<unknown>",
"enabled": "<string>"
},
"pre_order": {
"enabled": "<string>",
"number_of_period": "<string>",
"period": "<string>"
},
"pricing_period_can_vary_from_charging_period": {
"default_pricing_period": "<unknown>",
"enabled": "<string>"
},
"purchase_price_entered_is_inclusive_of_tax": {
"enabled": "<string>",
"tax": {
"uuid": "<string>"
}
},
"require_name_to_be_unique": "<string>",
"sale_price_entered_is_inclusive_of_tax": {
"enabled": "<string>",
"tax": "<unknown>",
"tax_included_in_sales_price_is_based_on": "<string>"
},
"use_on_sale_price": "<string>",
"use_pricing_level": "<string>",
"use_scheduling_of_future_pricing": "<string>",
"use_shipping_profile": "<string>",
"use_volume_pricing": {
"all_units_fixed_pricing": "<string>",
"all_units_per_unit_pricing": "<string>",
"enabled": "<string>",
"incremental_fixed_pricing": "<string>",
"incremental_per_unit_pricing": "<string>"
}
},
"labour": {
"require_email_address_for_labour": "<string>",
"unique_email_address": "<string>",
"unique_labour_name": "<string>"
},
"order": {
"allow_name_to_be_changed_in_order": "<string>",
"allow_unit_price_to_be_changed_in_order": "<string>",
"default_fulfillment_status": "<string>",
"default_shipping_profile": "<unknown>",
"displayed_price_is_inclusive_of_tax": "<string>",
"enable_booking": "<string>",
"enable_last_sale_price_look_up_for_an_account": "<string>",
"enable_order_backdating": "<string>",
"enable_quote": "<string>",
"order_management": {
"default_manager": "<unknown>",
"enabled": "<string>"
},
"referral_tracking_at_order_level": {
"default_referral_tracking": "<unknown>",
"enabled": "<string>"
},
"sales_rep_tracking_at_order_level": {
"default_sales_rep_tracking": "<unknown>",
"enabled": "<string>"
},
"use_global_warehouse": "<string>"
},
"portal": {
"contacts": {},
"enableCustomerPortal": "<string>",
"enableInviteToActivePortalForContact": "<string>",
"enableSpecifyPortalPasswordForContact": "<string>",
"settings": {}
},
"product": {
"allow_item_sell_multi_quantity": "<string>",
"allow_plan_sell_multi_quantity": "<string>",
"allow_product_sell_multi_quantity": "<string>",
"allow_rate_sell_multi_quantity": "<string>",
"item_quantity_use": "<string>",
"plan_quantity_use": "<string>",
"product_quantity_use": "<string>",
"rate_quantity_use": "<string>"
},
"purchase": {
"allow_modification_of_following_purchase_credit_note_fields": {
"refundable": "<string>"
},
"allow_modification_of_following_purchase_invoice_fields": {
"due_date": "<string>",
"issue_date": "<string>"
},
"allow_modification_of_following_purchase_payment_fields": {
"payment_date": "<string>",
"payment_processor": "<string>",
"payment_reference": "<string>"
},
"allow_modification_of_following_purchase_refund_fields": {
"refund_date": "<string>",
"refund_reference": "<string>"
},
"enable_last_purchase_price_look_up": "<string>",
"enable_purchase_quote": "<string>",
"enable_workflow_approval_for_purchase_credit_note": "<string>",
"enable_workflow_approval_for_purchase_invoice": "<string>",
"enable_workflow_approval_for_purchase_order": "<string>",
"enable_workflow_approval_for_purchase_payment": "<string>",
"enable_workflow_approval_for_purchase_refund": "<string>",
"inventory_is_adjusted_when": "<string>",
"supplier_invoice_id_should_be_unique": "<string>",
"use_global_warehouse": "<string>"
},
"security": {
"enable_force_session_expire": "<string>",
"enable_two_factor_authentication": "<string>",
"implementerLogin": "<string>",
"session_expire_limit_hour": "<string>"
},
"transaction": {
"accounting_method": "<unknown>",
"allow_modification_of_following_credit_note_fields": {
"credit_note_date": "<string>",
"refundable": "<string>"
},
"allow_modification_of_following_invoice_fields": {
"billing_period": "<string>",
"charge_period": "<string>",
"due_date": "<string>",
"issue_date": "<string>"
},
"allow_modification_of_following_payment_fields": {
"payment_date": "<string>",
"payment_processor": "<string>",
"payment_reference": "<string>"
},
"allow_modification_of_following_refund_fields": {
"refund_date": "<string>",
"refund_reference": "<string>"
},
"available_mediums_for_communication_preference": {
"email": {
"default": "<string>",
"enabled": "<string>"
},
"postal_mail": {
"default": "<string>",
"enabled": "<string>"
},
"text_message": {
"default": "<string>",
"enabled": "<string>"
},
"voice_mail": {
"default": "<string>",
"enabled": "<string>"
}
},
"create_negative_charge_to_accommodate_adjustment_required_for_order_cancel_or_change": "<string>",
"default_accounting_codes": {
"account_payable": "<string>",
"account_receivable": "<string>",
"cash_and_cash_equivalent": "<string>",
"cost_of_goods_sold": "<string>",
"credit_note_payable": "<string>",
"deduction": "<string>",
"event_charge": "<string>",
"inventory": "<string>",
"payment_surcharge": "<string>",
"rounding": "<string>",
"sales_revenue": "<string>",
"tax": "<string>"
},
"default_shipping_profile": "<unknown>",
"disable_notification_for_invoice_with_charges_of_zero_amount": "<string>",
"displayed_price_is_inclusive_of_tax": "<string>",
"enable_creation_of_automatic_payment_surcharge": "<string>",
"enable_discount_profile": "<string>",
"update_current_invoice_to_include_charge_adjustments": "<string>",
"update_invoice_to_include_current_payment_surcharge": "<string>"
}
}
}Instance settings
Update portal general settings
Changes settings in the portal group of general settings and returns the group under general_settings.
PATCH
/
settings
/
general_settings
/
portal
cURL
curl -X PATCH "$EXSITED_BASE_URL/api/v4/settings/general_settings/portal" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"general_settings": {
"portal": {
"enableCustomerPortal": "true"
}
}
}'from exsited import build_client
client = build_client()
response = client.settings.update_settings_general_settings_portal(
{"general_settings": {"portal": {"enableCustomerPortal": "true"}}}
)
print(response.data)
import {buildClient} from 'exsited';
const client = await buildClient();
const response = await client.settings.updateSettingsGeneralSettingsPortal({
general_settings: {portal: {enableCustomerPortal: 'true'}},
});
console.log(response.data);
use Exsited\Client\ClientRegistry;
$client = ClientRegistry::buildClient();
$response = $client->settings->updateSettingsGeneralSettingsPortal([
'general_settings' => ['portal' => ['enableCustomerPortal' => 'true']],
]);
print_r($response->data);
import com.exsited.client.ApiResponse;
import com.exsited.client.ClientRegistry;
import com.exsited.client.ExsitedClient;
import com.exsited.resources.settings.settings_dto.SettingsDto.SettingsGeneralSettings;
import java.util.Map;
ExsitedClient client = ClientRegistry.buildClient();
ApiResponse<SettingsGeneralSettings> response = client.settings().updateSettingsGeneralSettingsPortal(
Map.of("general_settings", Map.of("portal", Map.of("enableCustomerPortal", "true"))));
System.out.println(response.getMap());
using Exsited.Client;
await using var client = ExsitedClient.BuildClient();
var response = await client.Settings.UpdateSettingsGeneralSettingsPortalAsync(new Dictionary<string, object?>
{
["general_settings"] = new Dictionary<string, object?>
{
["portal"] = new Dictionary<string, object?>
{
["enableCustomerPortal"] = "true",
},
},
});
Console.WriteLine(response.Json);
import 'package:exsited/exsited.dart';
final client = buildClient();
final response = await client.settings.updateSettingsGeneralSettingsPortal({
'general_settings': {
'portal': {'enableCustomerPortal': 'true'},
},
});
print(response.map);
import (
"context"
"fmt"
"log"
exsited "github.com/exsited/exsited-sdk-go/v4"
)
client, err := exsited.BuildClient(nil)
if err != nil {
log.Fatal(err)
}
defer client.Close()
response, err := client.Settings().UpdateSettingsGeneralSettingsPortal(context.Background(), map[string]any{
"general_settings": map[string]any{
"portal": map[string]any{"enableCustomerPortal": "true"},
},
}, nil)
if err != nil {
log.Fatal(err)
}
fmt.Println(response.Map)
{
"general_settings": {
"account": {
"account_grouping": {
"default_group": "<unknown>",
"enabled": "<string>"
},
"account_management": {
"default_manager": "<unknown>",
"enabled": "<string>"
},
"additional_contact_1": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_additional_contact_1": "<string>",
"type": "<string>"
},
"additional_contact_2": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_additional_contact_2": "<string>",
"type": "<string>"
},
"additional_contact_3": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_additional_contact_3": "<string>",
"type": "<string>"
},
"billing_contact": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_billing_contact": "<string>",
"type": "<string>"
},
"creation_of_subsidiary_account": {
"default_group": "<unknown>",
"enabled": "<string>"
},
"enable_workflow_approval_for_account": "<string>",
"referral_tracking_at_account_level": {
"default_referral_tracking": "<unknown>",
"enabled": "<string>"
},
"require_email_address_for_account": "<string>",
"require_name_to_be_unique": "<string>",
"sales_rep_tracking_at_account_level": {
"default_sales_rep_tracking": "<unknown>",
"enabled": "<string>"
},
"send_communication_as_groups": "<string>",
"shipping_contact": {
"display_name": "<string>",
"enabled": "<string>",
"require_email_address_for_shipping_contact": "<string>",
"type": "<string>"
},
"unique_email_address_for_account": "<string>",
"unique_email_address_for_contacts": "<string>"
},
"dashboard": {
"accounting": "<string>",
"defaultDashboard": "<unknown>",
"executive": "<string>",
"finance": "<string>",
"production": "<string>",
"purchase": "<string>",
"sales": "<string>"
},
"date_and_time": {
"date_format": "<string>",
"first_day_of_week": "<unknown>",
"time_format": "<string>",
"time_zone": "<string>"
},
"display": {},
"general": {},
"item": {
"available_charge_types": {
"metered": "<string>",
"one_off": "<string>",
"recurring": "<string>"
},
"available_pricing_methods": {
"discount_based": "<string>",
"markup_based": "<string>",
"standard": "<string>"
},
"charging_period_can_vary_from_billing_period": "<string>",
"charging_start_date_can_vary_from_billing_start_date": "<string>",
"enable_back_order": "<string>",
"enable_batch_tracking": "<string>",
"enable_bundle_item": "<string>",
"enable_direct_cost_item": "<string>",
"enable_family_cost_item": "<string>",
"enable_fixed_asset_item": "<string>",
"enable_gift_certificate_based_item": "<string>",
"enable_inventory_costing": "<string>",
"enable_inventory_management": "<string>",
"enable_pricing_profile": "<string>",
"enable_purchase": "<string>",
"enable_sales": "<string>",
"enable_serialization": "<string>",
"enable_supplier_management": "<string>",
"enable_variation": "<string>",
"enable_variation_based_item": "<string>",
"enable_warehouse_management": "<string>",
"enable_workflow_approval_for_item": "<string>",
"inventory_adjustment_rules": {
"quantity_available_for_sale": "<string>",
"quantity_available_for_sale_determination": "<string>"
},
"item_grouping": {
"default_group": "<unknown>",
"enabled": "<string>"
},
"item_management": {
"default_manager": "<unknown>",
"enabled": "<string>"
},
"pre_order": {
"enabled": "<string>",
"number_of_period": "<string>",
"period": "<string>"
},
"pricing_period_can_vary_from_charging_period": {
"default_pricing_period": "<unknown>",
"enabled": "<string>"
},
"purchase_price_entered_is_inclusive_of_tax": {
"enabled": "<string>",
"tax": {
"uuid": "<string>"
}
},
"require_name_to_be_unique": "<string>",
"sale_price_entered_is_inclusive_of_tax": {
"enabled": "<string>",
"tax": "<unknown>",
"tax_included_in_sales_price_is_based_on": "<string>"
},
"use_on_sale_price": "<string>",
"use_pricing_level": "<string>",
"use_scheduling_of_future_pricing": "<string>",
"use_shipping_profile": "<string>",
"use_volume_pricing": {
"all_units_fixed_pricing": "<string>",
"all_units_per_unit_pricing": "<string>",
"enabled": "<string>",
"incremental_fixed_pricing": "<string>",
"incremental_per_unit_pricing": "<string>"
}
},
"labour": {
"require_email_address_for_labour": "<string>",
"unique_email_address": "<string>",
"unique_labour_name": "<string>"
},
"order": {
"allow_name_to_be_changed_in_order": "<string>",
"allow_unit_price_to_be_changed_in_order": "<string>",
"default_fulfillment_status": "<string>",
"default_shipping_profile": "<unknown>",
"displayed_price_is_inclusive_of_tax": "<string>",
"enable_booking": "<string>",
"enable_last_sale_price_look_up_for_an_account": "<string>",
"enable_order_backdating": "<string>",
"enable_quote": "<string>",
"order_management": {
"default_manager": "<unknown>",
"enabled": "<string>"
},
"referral_tracking_at_order_level": {
"default_referral_tracking": "<unknown>",
"enabled": "<string>"
},
"sales_rep_tracking_at_order_level": {
"default_sales_rep_tracking": "<unknown>",
"enabled": "<string>"
},
"use_global_warehouse": "<string>"
},
"portal": {
"contacts": {},
"enableCustomerPortal": "<string>",
"enableInviteToActivePortalForContact": "<string>",
"enableSpecifyPortalPasswordForContact": "<string>",
"settings": {}
},
"product": {
"allow_item_sell_multi_quantity": "<string>",
"allow_plan_sell_multi_quantity": "<string>",
"allow_product_sell_multi_quantity": "<string>",
"allow_rate_sell_multi_quantity": "<string>",
"item_quantity_use": "<string>",
"plan_quantity_use": "<string>",
"product_quantity_use": "<string>",
"rate_quantity_use": "<string>"
},
"purchase": {
"allow_modification_of_following_purchase_credit_note_fields": {
"refundable": "<string>"
},
"allow_modification_of_following_purchase_invoice_fields": {
"due_date": "<string>",
"issue_date": "<string>"
},
"allow_modification_of_following_purchase_payment_fields": {
"payment_date": "<string>",
"payment_processor": "<string>",
"payment_reference": "<string>"
},
"allow_modification_of_following_purchase_refund_fields": {
"refund_date": "<string>",
"refund_reference": "<string>"
},
"enable_last_purchase_price_look_up": "<string>",
"enable_purchase_quote": "<string>",
"enable_workflow_approval_for_purchase_credit_note": "<string>",
"enable_workflow_approval_for_purchase_invoice": "<string>",
"enable_workflow_approval_for_purchase_order": "<string>",
"enable_workflow_approval_for_purchase_payment": "<string>",
"enable_workflow_approval_for_purchase_refund": "<string>",
"inventory_is_adjusted_when": "<string>",
"supplier_invoice_id_should_be_unique": "<string>",
"use_global_warehouse": "<string>"
},
"security": {
"enable_force_session_expire": "<string>",
"enable_two_factor_authentication": "<string>",
"implementerLogin": "<string>",
"session_expire_limit_hour": "<string>"
},
"transaction": {
"accounting_method": "<unknown>",
"allow_modification_of_following_credit_note_fields": {
"credit_note_date": "<string>",
"refundable": "<string>"
},
"allow_modification_of_following_invoice_fields": {
"billing_period": "<string>",
"charge_period": "<string>",
"due_date": "<string>",
"issue_date": "<string>"
},
"allow_modification_of_following_payment_fields": {
"payment_date": "<string>",
"payment_processor": "<string>",
"payment_reference": "<string>"
},
"allow_modification_of_following_refund_fields": {
"refund_date": "<string>",
"refund_reference": "<string>"
},
"available_mediums_for_communication_preference": {
"email": {
"default": "<string>",
"enabled": "<string>"
},
"postal_mail": {
"default": "<string>",
"enabled": "<string>"
},
"text_message": {
"default": "<string>",
"enabled": "<string>"
},
"voice_mail": {
"default": "<string>",
"enabled": "<string>"
}
},
"create_negative_charge_to_accommodate_adjustment_required_for_order_cancel_or_change": "<string>",
"default_accounting_codes": {
"account_payable": "<string>",
"account_receivable": "<string>",
"cash_and_cash_equivalent": "<string>",
"cost_of_goods_sold": "<string>",
"credit_note_payable": "<string>",
"deduction": "<string>",
"event_charge": "<string>",
"inventory": "<string>",
"payment_surcharge": "<string>",
"rounding": "<string>",
"sales_revenue": "<string>",
"tax": "<string>"
},
"default_shipping_profile": "<unknown>",
"disable_notification_for_invoice_with_charges_of_zero_amount": "<string>",
"displayed_price_is_inclusive_of_tax": "<string>",
"enable_creation_of_automatic_payment_surcharge": "<string>",
"enable_discount_profile": "<string>",
"update_current_invoice_to_include_charge_adjustments": "<string>",
"update_invoice_to_include_current_payment_surcharge": "<string>"
}
}
}Send the settings to change under
general_settings.portal. While enableCustomerPortal is off, any write to this group also turns every portal login off. This changes the setting for every user of the instance.
The SDK samples get their client from credentials your app registers once when it starts, as shown in Authentication. To try the call here, click Try it, set
host to your Exsited API host name and paste an access token from Get an access token. To send a raw JSON body instead of filling in fields, copy the cURL sample and edit its -d payload.Authorizations
An access token from POST /api/v4/oauth2/token. The SDKs get and renew it for you.
Body
application/json
Show child attributes
Show child attributes
Response
200 - application/json
The portal group as a read returns it, under general_settings.
Show child attributes
Show child attributes