PageSourceSearch

https://docs-pactflow-preview.netlify.app/assets/js/0988694b.ed16776a.js

js docs-pactflow-preview.netlify.app collected 2026-10-03 10:40:17 UTC 9,149 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkpartners=self.webpackChunkpartners||[]).push([[5979],{15680:(e,t,n)=>{n.d(t,{xA:()=>p,yg:()=>y});var r=n(96540);function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach((function(t){a(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function o(e,t){if(null==e)return{};var n,r,a=function(e,t){if(null==e)return{};var n,r,a={},s=Object.keys(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||(a[n]=e[n]);return a}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a}var l=r.createContext({}),c=function(e){var t=r.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):i(i({},t),e)),n},p=function(e){var t=c(e.components);return r.createElement(l.Provider,{value:t},e.children)},d="mdxType",u={inlineCode:"code",wrapper:function(e){var t=e.children;return r.createElement(r.Fragment,{},t)}},f=r.forwardRef((function(e,t){var n=e.components,a=e.mdxType,s=e.originalType,l=e.parentName,p=o(e,["components","mdxType","originalType","parentName"]),d=c(n),f=a,y=d["".concat(l,".").concat(f)]||d[f]||u[f]||s;return n?r.createElement(y,i(i({ref:t},p),{},{components:n})):r.createElement(y,i({ref:t},p))}));function y(e,t){var n=arguments,a=t&&t.mdxType;if("string"==typeof e||a){var s=n.length,i=new Array(s);i[0]=f;var o={};for(var l in t)hasOwnProperty.call(t,l)&&(o[l]=t[l]);o.originalType=e,o[d]="string"==typeof e?e:a,i[1]=o;for(var c=2;c<s;c++)i[c]=n[c];return r.createElement.apply(null,i)}return r.createElement.apply(null,n)}f.displayName="MDXCreateElement"},15818:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>u,frontMatter:()=>s,metadata:()=>o,toc:()=>c});var r=n(58168),a=(n(96540),n(15680));const s={title:"Preferences"},i=void 0,o={unversionedId:"docs/user-interface/settings/preferences",id:"docs/user-interface/settings/preferences",title:"Preferences",description:"In this screen, you can see which settings you can modify in PactFlow Preferences panels. There are two types of preferences:",source:"@site/docs/docs/user-interface/settings/preferences.md",sourceDirName:"docs/user-interface/settings",slug:"/docs/user-interface/settings/preferences",permalink:"/docs/user-interface/settings/preferences",draft:!1,editUrl:"https://github.com/pactflow/docs.pactflow.io/edit/master/website/docs/docs/user-interface/settings/preferences.md",tags:[],version:"current",lastUpdatedBy:"Matt Fellows",lastUpdatedAt:1760596414,formattedLastUpdatedAt:"Oct 16, 2025",frontMatter:{title:"Preferences"},sidebar:"docs",previous:{title:"API Tokens",permalink:"/docs/user-interface/settings/api-tokens"},next:{title:"Webhooks",permalink:"/docs/user-interface/settings/webhooks"}},l={},c=[{value:"Personal preferences",id:"personal-preferences",level:2},{value:"Show an alert when my tokens are about to expire",id:"show-an-alert-when-my-tokens-are-about-to-expire",level:4},{value:"System preferences",id:"system-preferences",level:2},{value:"API Token expiration",id:"api-token-expiration",level:4},{value:"Display an announcement banner on login",id:"display-an-announcement-banner-on-login",level:4},{value:"Default Role",id:"default-role",level:4},{value:"Default Team",id:"default-team",level:4},{value:"Operational Notification Contacts",id:"operational-notification-contacts",level:4},{value:"Consolidate User Logins by Email",id:"consolidate-user-logins-by-email",level:4}],p={toc:c},d="wrapper";
1function u(e){let{components:t,...s}=e;return(0,a.yg)(d,(0,r.A)({},p,s,{components:t,mdxType:"MDXLayout"}),(0,a.yg)("p",null,"In this screen, you can see which settings you can modify in PactFlow Preferences panels. There are two types of preferences:"),(0,a.yg)("h2",{id:"personal-preferences"},"Personal preferences"),(0,a.yg)("p",null,(0,a.yg)("img",{alt:"Preferences Screen",src:n(9148).A,width:"3000",height:"1936"})),(0,a.yg)("p",null,"These are the settings that affect individual users."),(0,a.yg)("h4",{id:"show-an-alert-when-my-tokens-are-about-to-expire"},"Show an alert when my tokens are about to expire"),(0,a.yg)("p",null,"This setting determines if the user sees the token expiry alert on the main dashboard for any API tokens that are either expired or expiring within seven days. An administrator must enable token expiration in the System preferences for this to happen."),(0,a.yg)("h2",{id:"system-preferences"},"System preferences"),(0,a.yg)("p",null,(0,a.yg)("img",{alt:"System Preferences Screen",src:n(34728).A,width:"3000",height:"1936"})),(0,a.yg)("p",null,"These are global system settings and can only be changed by an administrator."),(0,a.yg)("h4",{id:"api-token-expiration"},"API Token expiration"),(0,a.yg)("p",null,"By default, user and system account tokens don't expire, but can be re-generated at any time to invalidate the old tokens and create new ones. This setting enables tokens to automatically expire after a fixed period of time, which can be specified in units of hours, days, weeks or months."),(0,a.yg)("p",null,"After a token expires, the users can generate a new one from the ",(0,a.yg)("a",{parentName:"p",href:"./api-tokens"},"API Tokens setting page"),", while users with the appropriate ",(0,a.yg)("inlineCode",{parentName:"p"},"system_account:manage")," permission can regenerate system account tokens from the ",(0,a.yg)("a",{parentName:"p",href:"./users#system-accounts"},"user\nmanagement screen"),"."),(0,a.yg)("h4",{id:"display-an-announcement-banner-on-login"},"Display an announcement banner on login"),(0,a.yg)("p",null,"This setting allows for an announcement banner to appear when users log in, with ",(0,a.yg)("a",{parentName:"p",href:"https://commonmark.org/help/"},"Markdown\nformatted text")," (which also supports HTML markup). Note that text will be santized in the UI, so you can not add any Javascript to the banner."),(0,a.yg)("h4",{id:"default-role"},"Default Role"),(0,a.yg)("p",null,"This preference determines the default role assigned to new users, based on their seat type."),(0,a.yg)("ul",null,(0,a.yg)("li",{parentName:"ul"},"If not set, new users with the ",(0,a.yg)("strong",{parentName:"li"},"Editor")," seat type are assigned the ",(0,a.yg)("a",{parentName:"li",href:"/docs/permissions/predefined-roles#user"},"User")," role."),(0,a.yg)("li",{parentName:"ul"},"If not set, new users with the ",(0,a.yg)("strong",{parentName:"li"},"Viewer")," seat type are assigned the ",(0,a.yg)("a",{parentName:"li",href:"/docs/permissions/predefined-roles#viewer"},"Viewer")," role.")),(0,a.yg)("h4",{id:"default-team"},"Default Team"),(0,a.yg)("p",null,'This preference sets the default team for new team members. If it is not set, new users will be added to the "',(0,a.yg)("a",{parentName:"p",href:"/docs/user-interface/settings/teams#the-default-team"},"Default team"),'" if it exists.'),(0,a.yg)("h4",{id:"operational-notification-contacts"},"Operational Notification Contacts"),(0,a.yg)("p",null,"This field specifies the email addresses that will receive notifications about platform maintenance, operations, and security issues. "),(0,a.yg)("p",null,"For existing accounts, the email addresses of users with the Administrator role have been initialized as the default. For new accounts, the default will be the email address of the account creator. "),(0,a.yg)("p",null,"Note: Any email address can be added to this field. The owner of the email address does not need to have a PactFlow account."),(0,a.yg)("h4",{id:"consolidate-user-logins-by-email"},"Consolidate User Logins by Email"),(0,a.yg)("p",null,"Allow users to be linked to different identity providers via their email address. When enabled, logins from different identity providers will be considered the same user if they have the same email address."),(0,a.yg)("p",null,"This setting does not affect existing users that have previously logged in and have a stored identity. To fix this, see the troubleshooting article on ",(0,a.yg)("a",{parentName:"p",href:"/docs/authentication/legacy#4-ive-added-an-identity-provider-and-see-duplicate-users"},"duplicate users"),"."),(0,a.yg)("admonition",{type:"warning"},(0,a.yg)("p",{parentName:"admonition"},"Do not enable this setting unless you can guarantee the identity providers you use validate the user's email address.")))}u.isMDXComponent=!0}
1,34728:(e,t,n)=>{n.d(t,{A:()=>r});const r=n.p+"assets/images/settings-preferences-system-4b78938644cf547957a2f9d6c30fe883.png"},9148:(e,t,n)=>{n.d(t,{A:()=>r});const r=n.p+"assets/images/settings-preferences-863fce83fc1d46904c43cae6d2c91495.png"}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.