# sourceCodeManagement ## Perforce scmInstances - [PUT /scmInstances/Perforce](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/updateperforcescminstance.md): Updates an instance of Perforce SCM. ## Perforce scmInstances - [POST /scmInstances/Perforce](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/createperforcescminstance.md): Create a new instance of Perforce SCM. url - URL in the format: <protocol>:<host>:<port>/<depot>,or else configured P4PORT will be taken a default url. userName/password - userName/password or else configured P4USER/P4PASSWD will be taken a default. branchSpec - branchSpec(<Depot>/<ProjectPath>) changeListNum/label - changeListNum/label Or leave blank to sync to the head revision. ## Git scmInstances - [PUT /scmInstances/Git](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/updategitscminstance.md): Updates an instance of Git SCM. url* - Enter one repository URL and branch/ tag/ commit ID in individual fields or one or more repository URLs separated by comma. You can include a branch, tag, or commit ID notation as part of the URL. userName/password - userName/password for authenticated access to the repository. Leave blank for anonymous or SSH access. branch/commitId/tag - branch, tag or commit ID. Specify one of these values. Or leave blank to sync to the master branch. These three fields will be considered only when single URL is provided without branch/ tag/ commit ID properties in the URL. expansionLevel - (Optional, Integer, default: 1, values: 1/2/3) Control archive extraction depth: 1=None (no extraction), 2=Top-level archives only, 3=Recursive (nested archives). deleteArchiveAfterExpand - (Optional, Boolean, default: false) Delete archive files after extraction to save disk space. Note: This field is only applicable when expansionLevel is 2 or 3. archiveDirSuffix - (Optional, String, max: 20 chars) Suffix to be added to the expanded folder. Value cannot be more than 20 characters and cannot contain the following special characters: \ / : * ? " | \0 (Example: _Expanded). Note: This field is only applicable when expansionLevel is 2 or 3. ## Git scmInstances - [POST /scmInstances/Git](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/creategitscminstance.md): Create a new instance of Git SCM. url* - Enter one repository URL and branch/ tag/ commit ID in individual fields or one or more repository URLs separated by comma. You can include a branch, tag, or commit ID notation as part of the URL. userName/password - userName/password for authenticated access to the repository. Leave blank for anonymous or SSH access. branch/commitId/tag - branch, tag or commit ID. Specify one of these values. Or leave blank to sync to the master branch. These three fields will be considered only when single URL is provided without branch/ tag/ commit ID properties in the URL. expansionLevel - (Optional, Integer, default: 1, values: 1/2/3) Control archive extraction depth: 1=None (no extraction), 2=Top-level archives only, 3=Recursive (nested archives). deleteArchiveAfterExpand - (Optional, Boolean, default: false) Delete archive files after extraction to save disk space. Note: This field is only applicable when expansionLevel is 2 or 3. archiveDirSuffix - (Optional, String, max: 20 chars) Suffix to be added to the expanded folder. Value cannot be more than 20 characters and cannot contain the following special characters: \ / : * ? " | \0 (Example: _Expanded). Note: This field is only applicable when expansionLevel is 2 or 3. ## scmInstances - [GET /scmInstances](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/getscminstance.md): Fetch details of scm instances of a project. ## scmInstances - [POST /scmInstances](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/testscminstanceconnection.md): Test connection api for scm instances ## scmInstances - [DELETE /scmInstances](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/deletescminstance.md): Deletes an instance of a particular SCMType. ## Subversion scmInstances - [PUT /scmInstances/Subversion](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/updatesvnscminstance.md): Updates an instance of Subversion SCM. ## Subversion scmInstances - [POST /scmInstances/Subversion](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/createsvnscminstance.md): Create a new instance of Subversion SCM. url* - URL in the format: <protocol>://<host>/<svnroot>/<repository> userName/password - userName/password or leave blank for anonymous connection revisionNumber - revision for which you want to create workspace and run scan on the same. ## TFS scmInstances - [PUT /scmInstances/TFS](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/updatetfsscminstance.md): Updates an instance of TFS SCM. ## TFS scmInstances - [POST /scmInstances/TFS](https://codeinsightapi.redocly.app/swagger/sourcecodemanagement/createtfsscminstance.md): Create a new instance of TFS SCM. url* - URL in the below format: <protocol>:<host>:<port>/<tfsroot>/<collection>/<project> URL format for TFS 2016 and above: <protocol>:<host>:<port>/<collection>/<project> userName/password* - userName/password for authentication changeSet - changeset you wish to sync.If Changeset is not provided, latest revision will be synced unless Label is specified. label - Label you wish to sync. If Label is not provided, latest revision will be synced unless changeset is specified.