--- id: account-create-customizer title: Account Create pagination_label: Account Create sidebar_label: Account Create keywords: ['connectivity', 'connectors', 'Account Create'] description: Intercept the account create command. slug: /connectivity/saas-connectivity/customizers/commands/account-create tags: ['Connectivity', 'Connector Command'] --- ## Overview Use these commands to intercept the [account-create](../../commands/account-create) command. | Input/Output | Data Type | | :----------- | :--------------------: | | Input | StdAccountCreateInput | | Output | StdAccountCreateOutput | ### Example StdAccountCreateInput ```javascript { "attributes": { "id": "john.doe", "email": "example@gmail.com", "department": "external", "displayName": "John Doe", "password": "test", "entitlements": [ "user", "administrator" ] } } ``` ### Example StdAccountCreateOutput ```javascript { "identity": "john.doe", "key": { "simple": { "id": "john.doe" } }, "disabled": false, "locked": false, "attributes": { "id": "john.doe", "displayName": "John Doe", "email": "example@sailpoint.com", "entitlements": [ "administrator", "sailpoint" ] } } ``` ## Implementation ### Before account-create command Use this logic to implement the command: ```javascript .beforeStdAccountCreate(async (context: Context, input: StdAccountCreateInput) => { logger.info(`Running before account, for account ${input.identity}`) return input }) ``` The `input` object can be mutated and returned, but the same data type must still be returned. ### After account-create command Use this logic to implement the command: ```javascript .afterStdAccountCreate(async (context: Context, output: StdAccountCreateOutput) => { logger.info(`Running after account create for account ${output.identity}`) return output }) ``` The `output` object can be mutated and returned, but the same data type must still be returned.