Codacy API v3.1.0 NAV Navigation

    Codacy API v3.1.0

    Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

    Codacy API v3 reference.

    Import the OpenAPI 3.0.1 definition into your development tools to help bootstrap your integration with Codacy. For more information see Using the Codacy API.

    Base URLs:

    Email: Codacy Team Web: Codacy Team License: Codacy. All rights reserved

    Authentication

    version

    getVersion

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/version \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/version HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/version',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/version',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/version',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/version', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/version");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/version", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /version

    Return the version of the Codacy installation

    Example responses

    200 Response

    {
      "data": "string"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation Version
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    analysis

    listOrganizationRepositoriesWithAnalysis

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories

    List organization repositories with analysis information for the authenticated user

    For Bitbucket, you must URL encode the cursor before using it in subsequent API calls, as the pagination comes directly from the Git provider.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string
    repositories query string false Deprecated: Use searchOrganizationRepositoriesWithAnalysis instead.
    segments query string false Filter by a comma-separated list of segment identifiers

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "lastAnalysedCommit": {
            "sha": "string",
            "id": 1,
            "commitTimestamp": "2019-05-07T14:29:13.43Z",
            "authorName": "string",
            "authorEmail": "string",
            "message": "string",
            "startedAnalysis": "2022-01-07T14:29:13.43Z",
            "endedAnalysis": "2022-01-07T14:29:13.43Z",
            "isMergeCommit": false,
            "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "parents": [
              "string"
            ]
          },
          "grade": 74,
          "gradeLetter": "A",
          "issuesPercentage": 1,
          "issuesCount": 1,
          "loc": 1,
          "complexFilesPercentage": 1,
          "complexFilesCount": 1,
          "duplicationPercentage": 1,
          "repository": {
            "repositoryId": 45738,
            "provider": "gh",
            "owner": "codacy",
            "name": "codacy-eslint",
            "fullPath": "codacy/codacy-eslint",
            "visibility": "Private",
            "remoteIdentifier": "3",
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "permission": "admin",
            "problems": [
              {
                "message": "We can't analyze this repository because none of the committers are part of the organization.",
                "actions": [
                  {
                    "name": "Check our documentation",
                    "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
                  }
                ],
                "code": "failed_to_clone",
                "severity": "all_analysis"
              }
            ],
            "languages": [
              "Java",
              "Scala",
              "CSS"
            ],
            "defaultBranch": {
              "id": 1,
              "name": "master",
              "isDefault": true,
              "isEnabled": true,
              "lastUpdated": "2019-05-07T14:29:13.43Z",
              "branchType": "Branch",
              "lastCommit": "string"
            },
            "badges": {
              "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
              "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
            },
            "codingStandardId": 0,
            "codingStandardName": "string",
            "standards": [
              {
                "id": 0,
                "name": "string"
              }
            ],
            "addedState": "Added",
            "gatePolicyId": 0,
            "gatePolicyName": "string"
          },
          "branch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "selectedBranch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "coverage": {
            "filesUncovered": 1,
            "filesWithLowCoverage": 1,
            "coveragePercentage": 1,
            "coveragePercentageWithDecimals": 15.25,
            "numberTotalFiles": 1,
            "numberCoveredLines": 1,
            "numberCoverableLines": 1
          },
          "goals": {
            "maxIssuePercentage": 1,
            "maxDuplicatedFilesPercentage": 1,
            "minCoveragePercentage": 1,
            "maxComplexFilesPercentage": 1,
            "fileDuplicationBlockThreshold": 1,
            "fileComplexityValueThreshold": 1
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryWithAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    searchOrganizationRepositoriesWithAnalysis

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "names": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "names": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /search/analysis/organizations/{provider}/{remoteOrganizationName}/repositories

    Search organization repositories with analysis information for the authenticated user

    For Bitbucket, you must URL encode the cursor before using it in subsequent API calls, as the pagination comes directly from the Git provider.

    Body parameter

    {
      "names": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchOrganizationRepositoriesWithAnalysis true Search query body

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "lastAnalysedCommit": {
            "sha": "string",
            "id": 1,
            "commitTimestamp": "2019-05-07T14:29:13.43Z",
            "authorName": "string",
            "authorEmail": "string",
            "message": "string",
            "startedAnalysis": "2022-01-07T14:29:13.43Z",
            "endedAnalysis": "2022-01-07T14:29:13.43Z",
            "isMergeCommit": false,
            "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "parents": [
              "string"
            ]
          },
          "grade": 74,
          "gradeLetter": "A",
          "issuesPercentage": 1,
          "issuesCount": 1,
          "loc": 1,
          "complexFilesPercentage": 1,
          "complexFilesCount": 1,
          "duplicationPercentage": 1,
          "repository": {
            "repositoryId": 45738,
            "provider": "gh",
            "owner": "codacy",
            "name": "codacy-eslint",
            "fullPath": "codacy/codacy-eslint",
            "visibility": "Private",
            "remoteIdentifier": "3",
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "permission": "admin",
            "problems": [
              {
                "message": "We can't analyze this repository because none of the committers are part of the organization.",
                "actions": [
                  {
                    "name": "Check our documentation",
                    "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
                  }
                ],
                "code": "failed_to_clone",
                "severity": "all_analysis"
              }
            ],
            "languages": [
              "Java",
              "Scala",
              "CSS"
            ],
            "defaultBranch": {
              "id": 1,
              "name": "master",
              "isDefault": true,
              "isEnabled": true,
              "lastUpdated": "2019-05-07T14:29:13.43Z",
              "branchType": "Branch",
              "lastCommit": "string"
            },
            "badges": {
              "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
              "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
            },
            "codingStandardId": 0,
            "codingStandardName": "string",
            "standards": [
              {
                "id": 0,
                "name": "string"
              }
            ],
            "addedState": "Added",
            "gatePolicyId": 0,
            "gatePolicyName": "string"
          },
          "branch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "selectedBranch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "coverage": {
            "filesUncovered": 1,
            "filesWithLowCoverage": 1,
            "coveragePercentage": 1,
            "coveragePercentageWithDecimals": 15.25,
            "numberTotalFiles": 1,
            "numberCoveredLines": 1,
            "numberCoverableLines": 1
          },
          "goals": {
            "maxIssuePercentage": 1,
            "maxDuplicatedFilesPercentage": 1,
            "minCoveragePercentage": 1,
            "maxComplexFilesPercentage": 1,
            "fileDuplicationBlockThreshold": 1,
            "fileComplexityValueThreshold": 1
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryWithAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    getRepositoryWithAnalysis

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}

    Get a repository with analysis information for the authenticated user

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "data": {
        "lastAnalysedCommit": {
          "sha": "string",
          "id": 1,
          "commitTimestamp": "2019-05-07T14:29:13.43Z",
          "authorName": "string",
          "authorEmail": "string",
          "message": "string",
          "startedAnalysis": "2022-01-07T14:29:13.43Z",
          "endedAnalysis": "2022-01-07T14:29:13.43Z",
          "isMergeCommit": false,
          "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
          "parents": [
            "string"
          ]
        },
        "grade": 74,
        "gradeLetter": "A",
        "issuesPercentage": 1,
        "issuesCount": 1,
        "loc": 1,
        "complexFilesPercentage": 1,
        "complexFilesCount": 1,
        "duplicationPercentage": 1,
        "repository": {
          "repositoryId": 45738,
          "provider": "gh",
          "owner": "codacy",
          "name": "codacy-eslint",
          "fullPath": "codacy/codacy-eslint",
          "visibility": "Private",
          "remoteIdentifier": "3",
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "permission": "admin",
          "problems": [
            {
              "message": "We can't analyze this repository because none of the committers are part of the organization.",
              "actions": [
                {
                  "name": "Check our documentation",
                  "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
                }
              ],
              "code": "failed_to_clone",
              "severity": "all_analysis"
            }
          ],
          "languages": [
            "Java",
            "Scala",
            "CSS"
          ],
          "defaultBranch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "badges": {
            "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
            "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
          },
          "codingStandardId": 0,
          "codingStandardName": "string",
          "standards": [
            {
              "id": 0,
              "name": "string"
            }
          ],
          "addedState": "Added",
          "gatePolicyId": 0,
          "gatePolicyName": "string"
        },
        "branch": {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        },
        "selectedBranch": {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        },
        "coverage": {
          "filesUncovered": 1,
          "filesWithLowCoverage": 1,
          "coveragePercentage": 1,
          "coveragePercentageWithDecimals": 15.25,
          "numberTotalFiles": 1,
          "numberCoveredLines": 1,
          "numberCoverableLines": 1
        },
        "goals": {
          "maxIssuePercentage": 1,
          "maxDuplicatedFilesPercentage": 1,
          "minCoveragePercentage": 1,
          "maxComplexFilesPercentage": 1,
          "fileDuplicationBlockThreshold": 1,
          "fileComplexityValueThreshold": 1
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryWithAnalysisResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listRepositoryTools

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools

    Get analysis tools settings of a repository

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": [
        {
          "uuid": "string",
          "name": "string",
          "isClientSide": true,
          "settings": {
            "name": "string",
            "isEnabled": true,
            "followsStandard": true,
            "isCustom": true,
            "hasConfigurationFile": true,
            "usesConfigurationFile": true,
            "enabledBy": [
              {
                "id": 0,
                "name": "string"
              }
            ]
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AnalysisToolsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listRepositoryToolConflicts

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/conflicts

    Get tools with conflicts in a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": [
        "847feb32-9ff2-11ea-bb37-0242ac130002"
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryConflictsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    configureTool

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid} \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid} HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "enabled": true,
      "useConfigurationFile": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "enabled": true,
      "useConfigurationFile": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}

    *Configure an analysis tool by enabling and disabling its patterns for a repository. This endpoint will apply the changes without verifying if the repository belongs to a coding standard. *

    Body parameter

    {
      "enabled": true,
      "useConfigurationFile": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    toolUuid path string true Unique identifier (UUID) for the tool
    body body ConfigureToolBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listRepositoryToolPatterns

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns

    *Patterns configuration for (repository, tool). Uses standard if applied, repository settings otherwise. *

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    toolUuid path string true Unique identifier (UUID) for the tool
    languages query string false Comma-separated list of programming languages to filter results by
    categories query string false Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.
    severityLevels query string false Filter by a comma-separated list of code pattern severity levels. Valid values are Error, High, Warning, and Info.
    tags query string false Filter by a comma-separated list of pattern tags
    search query string false Filter results by searching for this string
    enabled query boolean false Filter by pattern status. Set to true to return only enabled patterns, or false to return only disabled patterns
    recommended query boolean false Filter by recommended status. Set to true to return only recommended patterns, or false to return only non-recommended patterns
    sort query string false Field used to sort the tool's code patterns. Valid values are category, recommended, and severity.
    direction query string false Sort direction. Possible values are 'asc' (ascending) or 'desc' (descending).
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Detailed descriptions

    categories: Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.

    Example responses

    200 Response

    {
      "data": [
        {
          "patternDefinition": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error",
            "description": "Enforce getter and setter pairs in objects and classes",
            "explanation": "Accessor pairs description",
            "enabled": true,
            "languages": [
              "JavaScript"
            ],
            "timeToFix": 5,
            "parameters": [
              {
                "name": "getWithoutSet",
                "description": "getWithoutSet",
                "default": "true"
              }
            ],
            "rationale": "string",
            "solution": "string",
            "goodExamples": [
              "string"
            ],
            "badExamples": [
              "string"
            ],
            "tags": [
              "string"
            ]
          },
          "enabled": true,
          "isCustom": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ],
          "enabledBy": [
            {
              "id": 0,
              "name": "string"
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "meta": {
        "totalEnabled": 35
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ConfiguredPatternsListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateRepositoryToolPatterns

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "enabled": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "enabled": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns

    *Bulk updates the code patterns of a tool in a repository. Use filters to specify the code patterns to update, or omit the filters to update all code patterns. *

    Body parameter

    {
      "enabled": true
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    toolUuid path string true Unique identifier (UUID) for the tool
    languages query string false Comma-separated list of programming languages to filter results by
    categories query string false Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.
    severityLevels query string false Filter by a comma-separated list of code pattern severity levels. Valid values are Error, High, Warning, and Info.
    tags query string false Filter by a comma-separated list of pattern tags
    search query string false Filter results by searching for this string
    recommended query boolean false Filter by recommended status. Set to true to return only recommended patterns, or false to return only non-recommended patterns
    body body UpdatePatternsBody true none

    Detailed descriptions

    categories: Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getRepositoryToolPattern

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/{patternId}

    *Patterns configuration for (repository, tool, pattern). Uses standard if applied, repository settings otherwise. *

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    toolUuid path string true Unique identifier (UUID) for the tool
    patternId path string true Pattern identifier

    Example responses

    200 Response

    {
      "data": {
        "patternDefinition": {
          "id": "accessor-pairs",
          "title": "string",
          "category": "Security",
          "subCategory": "XSS",
          "level": "Error",
          "severityLevel": "Error",
          "description": "Enforce getter and setter pairs in objects and classes",
          "explanation": "Accessor pairs description",
          "enabled": true,
          "languages": [
            "JavaScript"
          ],
          "timeToFix": 5,
          "parameters": [
            {
              "name": "getWithoutSet",
              "description": "getWithoutSet",
              "default": "true"
            }
          ],
          "rationale": "string",
          "solution": "string",
          "goodExamples": [
            "string"
          ],
          "badExamples": [
            "string"
          ],
          "tags": [
            "string"
          ]
        },
        "enabled": true,
        "isCustom": true,
        "parameters": [
          {
            "name": "getWithoutSet",
            "value": "true"
          }
        ],
        "enabledBy": [
          {
            "id": 0,
            "name": "string"
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ConfiguredPatternResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    toolPatternsOverview

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/patterns/overview

    *Patterns overview for tool. Uses standard if applied, repository settings otherwise. *

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    toolUuid path string true Unique identifier (UUID) for the tool
    languages query string false Comma-separated list of programming languages to filter results by
    categories query string false Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.
    severityLevels query string false Filter by a comma-separated list of code pattern severity levels. Valid values are Error, High, Warning, and Info.
    tags query string false Filter by a comma-separated list of pattern tags
    search query string false Filter results by searching for this string
    enabled query boolean false Filter by pattern status. Set to true to return only enabled patterns, or false to return only disabled patterns
    recommended query boolean false Filter by recommended status. Set to true to return only recommended patterns, or false to return only non-recommended patterns

    Detailed descriptions

    categories: Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.

    Example responses

    200 Response

    {
      "data": {
        "counts": {
          "languages": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "categories": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "severities": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "tags": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "totalRecommended": 0,
          "totalEnabled": 0
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ToolPatternsOverviewResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listRepositoryToolPatternConflicts

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tools/{toolUuid}/conflicts

    *Patterns with Coding Standards conflicts for tool. *

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    toolUuid path string true Unique identifier (UUID) for the tool

    Example responses

    200 Response

    {
      "data": [
        {
          "patternId": "ESLint_@typescript-eslint_no-shadow",
          "conflicts": [
            {
              "standard": {
                "id": 0,
                "name": "string"
              },
              "parameters": [
                {
                  "name": "getWithoutSet",
                  "value": "true"
                }
              ]
            }
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryToolConflictsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getFirstAnalysisOverview

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/analysis-progress

    Get the analysis progress of a repository

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "data": [
        {
          "action": "clone",
          "complete": false
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation FirstAnalysisOverviewResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listRepositoryPullRequests

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests

    List pull requests from a repository that the user has access to

    You can search this endpoint for either last-updated (default), impact or merged

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    limit query integer(int32) false Maximum number of items to return
    cursor query string false Cursor to specify a batch of results to request
    search query string false Filter results by searching for this string
    includeNotAnalyzed query boolean false If true, also return pull requests that weren't analyzed

    Example responses

    200 Response

    {
      "data": [
        {
          "isUpToStandards": true,
          "isAnalysing": false,
          "pullRequest": {
            "id": 1,
            "number": 1,
            "updated": "2019-05-07T14:29:13.43Z",
            "status": "open",
            "repository": "awesome-repository",
            "title": "Amazing pull request",
            "owner": {
              "name": "Foo",
              "avatarUrl": "https://example.com/foo",
              "username": "foo.bar",
              "email": "foobar@example.com"
            },
            "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
            "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
            "originBranch": "feat-branch",
            "targetBranch": "master",
            "gitHref": "https://github.com/..."
          },
          "newIssues": 1,
          "fixedIssues": 1,
          "deltaComplexity": 1,
          "deltaClonesCount": 1,
          "deltaCoverageWithDecimals": 71,
          "deltaCoverage": 1,
          "diffCoverage": 71,
          "coverage": {
            "deltaCoverage": 71,
            "diffCoverage": {
              "value": 71,
              "coveredLines": 11,
              "coverableLines": 21,
              "cause": "NoCoverableLines"
            },
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "quality": {
            "newIssues": 1,
            "fixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "meta": {
            "analyzable": true,
            "reason": "string"
          }
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PullRequestWithAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getRepositoryPullRequest

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}

    Get pull request from a repository

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "isUpToStandards": true,
      "isAnalysing": false,
      "pullRequest": {
        "id": 1,
        "number": 1,
        "updated": "2019-05-07T14:29:13.43Z",
        "status": "open",
        "repository": "awesome-repository",
        "title": "Amazing pull request",
        "owner": {
          "name": "Foo",
          "avatarUrl": "https://example.com/foo",
          "username": "foo.bar",
          "email": "foobar@example.com"
        },
        "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
        "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
        "originBranch": "feat-branch",
        "targetBranch": "master",
        "gitHref": "https://github.com/..."
      },
      "newIssues": 1,
      "fixedIssues": 1,
      "deltaComplexity": 1,
      "deltaClonesCount": 1,
      "deltaCoverageWithDecimals": 71,
      "deltaCoverage": 1,
      "diffCoverage": 71,
      "coverage": {
        "deltaCoverage": 71,
        "diffCoverage": {
          "value": 71,
          "coveredLines": 11,
          "coverableLines": 21,
          "cause": "NoCoverableLines"
        },
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "quality": {
        "newIssues": 1,
        "fixedIssues": 1,
        "deltaComplexity": 1,
        "deltaClonesCount": 1,
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "meta": {
        "analyzable": true,
        "reason": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PullRequestWithAnalysis
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getPullRequestCommits

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/commits

    Return analysis results for the commits in a pull request

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number
    limit query integer(int32) false Maximum number of items to return
    cursor query string false Cursor to specify a batch of results to request

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "commit": {
            "sha": "string",
            "id": 1,
            "commitTimestamp": "2019-05-07T14:29:13.43Z",
            "authorName": "string",
            "authorEmail": "string",
            "message": "string",
            "startedAnalysis": "2022-01-07T14:29:13.43Z",
            "endedAnalysis": "2022-01-07T14:29:13.43Z",
            "isMergeCommit": false,
            "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "parents": [
              "string"
            ]
          },
          "coverage": {
            "totalCoveragePercentage": 93.23,
            "deltaCoveragePercentage": 15.25,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "quality": {
            "newIssues": 1,
            "fixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "meta": {
            "analyzable": true,
            "reason": "string"
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CommitWithAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    bypassPullRequestAnalysis

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/bypass

    Bypass analysis status in a pull request

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    triggerPullRequestAiReview

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/ai-reviewer/trigger

    Triggers an AI review for a pull request

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getPullRequestCoverageReports

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/coverage/status

    List all coverage reports uploaded for the common ancestor commit and head commit of a pull request branch

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "data": {
        "headCommit": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        },
        "commonAncestorCommit": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        },
        "origin": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        },
        "target": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CoveragePullRequestResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listPullRequestIssues

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues

    List issues found in a pull request

    Use the status parameter to filter by new or fixed issues

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number
    status query string false Filter issues by status. Valid values are all, new, or fixed.
    onlyPotential query boolean false Set to true to return only potential issues
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Enumerated Values

    Parameter Value
    status all
    status new
    status fixed

    Example responses

    200 Response

    {
      "analyzed": true,
      "data": [
        {
          "commitIssue": {
            "issueId": "string",
            "resultDataId": 0,
            "filePath": "string",
            "fileId": 0,
            "patternInfo": {
              "id": "accessor-pairs",
              "title": "string",
              "category": "Security",
              "subCategory": "XSS",
              "level": "Error",
              "severityLevel": "Error"
            },
            "toolInfo": {
              "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
              "name": "ESLint"
            },
            "lineNumber": 0,
            "message": "string",
            "suggestion": "string",
            "language": "string",
            "lineText": "string",
            "commitInfo": {
              "sha": "string",
              "commiter": "string",
              "commiterName": "string",
              "timestamp": "2019-05-07T14:29:13.43Z"
            },
            "falsePositiveProbability": 0,
            "falsePositiveReason": "string",
            "falsePositiveThreshold": 0
          },
          "deltaType": "Added"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PullRequestIssuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listPullRequestClones

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/clones

    List duplicate code blocks found in a pull request

    Use the status parameter to filter by new or removed duplicates

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number
    status query string false Filter issues by status. Valid values are all, new, or fixed.
    onlyPotential query boolean false Set to true to return only potential issues
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Enumerated Values

    Parameter Value
    status all
    status new
    status fixed

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 0,
          "status": "Added",
          "clones": [
            {
              "path": "string",
              "fileId": 0,
              "fileDataId": 0,
              "fromLine": 0,
              "toLine": 0
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ClonesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCommitClones

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/clones

    List duplicate code blocks found in a commit

    Use the status parameter to filter by new or removed duplicates

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA identifier of the source commit
    status query string false Filter issues by status. Valid values are all, new, or fixed.
    onlyPotential query boolean false Set to true to return only potential issues
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Enumerated Values

    Parameter Value
    status all
    status new
    status fixed

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 0,
          "status": "Added",
          "clones": [
            {
              "path": "string",
              "fileId": 0,
              "fileDataId": 0,
              "fromLine": 0,
              "toLine": 0
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ClonesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listPullRequestLogs

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/logs

    Get analysis logs for a pull request

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "data": {
        "headCommitSha": "string",
        "commonAncestorCommitSha": "string",
        "start": "2019-08-24T14:15:22Z",
        "end": "2019-08-24T14:15:22Z",
        "totalAnalysisTime": 0,
        "steps": [
          {
            "title": "string",
            "start": "2019-08-24T14:15:22Z",
            "end": "2019-08-24T14:15:22Z",
            "activeExecutionTime": 0,
            "totalExecutionTime": 0,
            "stackTrace": "string",
            "status": "success"
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation LogsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCommitLogs

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/logs

    Get analysis logs for a commit

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA identifier of the source commit

    Example responses

    200 Response

    {
      "data": {
        "headCommitSha": "string",
        "commonAncestorCommitSha": "string",
        "start": "2019-08-24T14:15:22Z",
        "end": "2019-08-24T14:15:22Z",
        "totalAnalysisTime": 0,
        "steps": [
          {
            "title": "string",
            "start": "2019-08-24T14:15:22Z",
            "end": "2019-08-24T14:15:22Z",
            "activeExecutionTime": 0,
            "totalExecutionTime": 0,
            "stackTrace": "string",
            "status": "success"
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation LogsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getRepositoryQualitySettings

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/quality-settings

    Get quality settings for the specific repository

    Deprecated: Use getQualitySettingsForRepository instead.

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "issueThreshold": 1,
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "complexityThreshold": 1,
        "fileDuplicationThreshold": 1,
        "fileComplexityThreshold": 1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DeprecatedRepositoryQualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCommitFiles

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/files

    List files of a commit with analysis results

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA string that identifies the commit
    branch query string false Name of a repository branch enabled on Codacy,
    filter query string false Optional field to filter the results. The possible values are empty (default, return files changed in the commit or with coverage changes) or withCoverageChanges (return files with coverage changes)
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter files that include this string anywhere in their relative path
    sortColumn query string false Field used to sort the results. The possible values are deltaCoverage (to sort by the coverage variation value of the files), totalCoverage (to sort by the total coverage value of the files) or filename (default - to sort by the name of the files)
    columnOrder query string false Sort direction. The possible values are asc (ascending - default) or desc (descending).

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    filter: Optional field to filter the results. The possible values are empty (default, return files changed in the commit or with coverage changes) or withCoverageChanges (return files with coverage changes)

    sortColumn: Field used to sort the results. The possible values are deltaCoverage (to sort by the coverage variation value of the files), totalCoverage (to sort by the total coverage value of the files) or filename (default - to sort by the name of the files)

    Enumerated Values

    Parameter Value
    filter withCoverageChanges
    sortColumn totalCoverage
    sortColumn deltaCoverage
    sortColumn filename
    columnOrder asc
    columnOrder desc

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "file": {
            "branchId": 1,
            "commitId": 1,
            "commitSha": "string",
            "fileId": 1,
            "fileDataId": 1,
            "path": "/src/test.go",
            "language": "Go",
            "gitProviderUrl": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "ignored": false
          },
          "coverage": {
            "deltaCoverage": -2.35,
            "totalCoverage": -2.35
          },
          "quality": {
            "deltaNewIssues": 1,
            "deltaFixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1
          },
          "comparedWithCommit": {
            "commitId": 1,
            "coverage": {
              "totalCoverage": 82.35
            }
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation FileAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listPullRequestFiles

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files

    List files of a pull request with analysis results

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    sortColumn query string false Field used to sort the results. The possible values are deltaCoverage (to sort by the coverage variation value of the files), totalCoverage (to sort by the total coverage value of the files) or filename (default - to sort by the name of the files)
    columnOrder query string false Sort direction. The possible values are asc (ascending - default) or desc (descending).

    Detailed descriptions

    sortColumn: Field used to sort the results. The possible values are deltaCoverage (to sort by the coverage variation value of the files), totalCoverage (to sort by the total coverage value of the files) or filename (default - to sort by the name of the files)

    Enumerated Values

    Parameter Value
    sortColumn totalCoverage
    sortColumn deltaCoverage
    sortColumn filename
    columnOrder asc
    columnOrder desc

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "file": {
            "branchId": 1,
            "commitId": 1,
            "commitSha": "string",
            "fileId": 1,
            "fileDataId": 1,
            "path": "/src/test.go",
            "language": "Go",
            "gitProviderUrl": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "ignored": false
          },
          "coverage": {
            "deltaCoverage": -2.35,
            "totalCoverage": -2.35
          },
          "quality": {
            "deltaNewIssues": 1,
            "deltaFixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1
          },
          "comparedWithCommit": {
            "commitId": 1,
            "coverage": {
              "totalCoverage": 82.35
            }
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation FileAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listOrganizationPullRequests

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/pull-requests

    List organization pull requests from repositories that the user has access to

    You can sort by last-updated (default), impact, or merged

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string
    repositories query string false Deprecated: Use searchOrganizationRepositoriesWithAnalysis instead.

    Example responses

    200 Response

    {
      "data": [
        {
          "isUpToStandards": true,
          "isAnalysing": false,
          "pullRequest": {
            "id": 1,
            "number": 1,
            "updated": "2019-05-07T14:29:13.43Z",
            "status": "open",
            "repository": "awesome-repository",
            "title": "Amazing pull request",
            "owner": {
              "name": "Foo",
              "avatarUrl": "https://example.com/foo",
              "username": "foo.bar",
              "email": "foobar@example.com"
            },
            "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
            "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
            "originBranch": "feat-branch",
            "targetBranch": "master",
            "gitHref": "https://github.com/..."
          },
          "newIssues": 1,
          "fixedIssues": 1,
          "deltaComplexity": 1,
          "deltaClonesCount": 1,
          "deltaCoverageWithDecimals": 71,
          "deltaCoverage": 1,
          "diffCoverage": 71,
          "coverage": {
            "deltaCoverage": 71,
            "diffCoverage": {
              "value": 71,
              "coveredLines": 11,
              "coverableLines": 21,
              "cause": "NoCoverableLines"
            },
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "quality": {
            "newIssues": 1,
            "fixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "meta": {
            "analyzable": true,
            "reason": "string"
          }
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PullRequestWithAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCommitAnalysisStats

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commit-statistics

    List commit analysis statistics for the last n days that have analysis data

    Returns the last n days with available data. This means that the returned days may not match the last n calendar days.

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,
    days query integer(int32) false Number of days of data to return (1-365, defaults to 31)

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryId": 1,
          "commitId": 1,
          "numberIssues": 1,
          "numberLoc": 1,
          "issuesPerCategory": [
            {
              "categoryId": 1,
              "categoryType": "string",
              "categoryName": "string",
              "numberOfIssues": 100
            }
          ],
          "issuePercentage": 1,
          "totalComplexity": 1,
          "numberComplexFiles": 1,
          "complexFilesPercentage": 1,
          "filesChangedToIncreaseComplexity": 1,
          "numberDuplicatedLines": 1,
          "duplicationPercentage": 1,
          "coveragePercentage": 1,
          "coveragePercentageWithDecimals": 15.25,
          "numberFilesUncovered": 1,
          "techDebt": 1,
          "totalFilesAdded": 1,
          "totalFilesRemoved": 1,
          "totalFilesChanged": 1,
          "commitTimestamp": "2019-05-07T14:29:13.43Z",
          "commitAuthorName": "Mike The Developer",
          "commitShortUUID": "00d3079ed"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CommitAnalysisStatsListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCategoryOverviews

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/category-overviews

    List analysis category overviews for a repository that the user has access to

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "data": [
        {
          "commitId": 1,
          "category": {
            "categoryType": "string",
            "name": "string",
            "description": "string"
          },
          "percentage": 1.6,
          "totalResults": 1
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CategoryOverviewListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    searchRepositoryIssues

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/search

    List issues in a repository

    Returns information about the issues that Codacy found in a repository as available on the Issues page. Use SearchRepositoryIssuesBody to filter the returned issues.

    Body parameter

    {
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchRepositoryIssuesBody false Only return issues matching these filters

    Example responses

    200 Response

    {
      "data": [
        {
          "issueId": "string",
          "resultDataId": 0,
          "filePath": "string",
          "fileId": 0,
          "patternInfo": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error"
          },
          "toolInfo": {
            "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
            "name": "ESLint"
          },
          "lineNumber": 0,
          "message": "string",
          "suggestion": "string",
          "language": "string",
          "lineText": "string",
          "commitInfo": {
            "sha": "string",
            "commiter": "string",
            "commiterName": "string",
            "timestamp": "2019-05-07T14:29:13.43Z"
          },
          "falsePositiveProbability": 0,
          "falsePositiveReason": "string",
          "falsePositiveThreshold": 0
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of issues in the repository SearchRepositoryIssuesListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    bulkIgnoreIssues

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "issueIds": [
        "string"
      ],
      "reason": "string",
      "comment": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "issueIds": [
        "string"
      ],
      "reason": "string",
      "comment": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/bulk-ignore

    Bulk ignore issues in a repository

    Receives a list of issue ids and ignores them in the specified repository. Limited to 50 issues at once

    Body parameter

    {
      "issueIds": [
        "string"
      ],
      "reason": "string",
      "comment": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body BulkIgnoreIssuesBody true List of issue ids to ignore

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    issuesOverview

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/overview

    Get an overview of the issues in a repository

    Returns information about the number of issues that Codacy found in a repository as available on the Issues page. Use SearchRepositoryIssuesBody to filter the returned issues.

    Body parameter

    {
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body SearchRepositoryIssuesBody false Only return issues matching these filters

    Example responses

    200 Response

    {
      "data": {
        "counts": {
          "categories": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "languages": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "levels": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "tags": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "patterns": [
            {
              "id": "string",
              "title": "string",
              "total": 0
            }
          ],
          "authors": [
            {
              "name": "string",
              "total": 0
            }
          ]
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Overview of the issues in the repository IssuesOverviewResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getIssue

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}

    Get information about an open issue in a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    issueId path integer(int64) true Identifier of an open issue

    Example responses

    200 Response

    {
      "data": {
        "issueId": "string",
        "resultDataId": 0,
        "filePath": "string",
        "fileId": 0,
        "patternInfo": {
          "id": "accessor-pairs",
          "title": "string",
          "category": "Security",
          "subCategory": "XSS",
          "level": "Error",
          "severityLevel": "Error"
        },
        "toolInfo": {
          "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
          "name": "ESLint"
        },
        "lineNumber": 0,
        "message": "string",
        "suggestion": "string",
        "language": "string",
        "lineText": "string",
        "commitInfo": {
          "sha": "string",
          "commiter": "string",
          "commiterName": "string",
          "timestamp": "2019-05-07T14:29:13.43Z"
        },
        "falsePositiveProbability": 0,
        "falsePositiveReason": "string",
        "falsePositiveThreshold": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK An issue found in a repository. GetIssueResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateIssueState

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId} \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId} HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "ignored": true,
      "reason": "FalsePositive",
      "comment": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "ignored": true,
      "reason": "FalsePositive",
      "comment": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}

    Ignore or unignore an issue

    Body parameter

    {
      "ignored": true,
      "reason": "FalsePositive",
      "comment": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    issueId path string true Issue identifier
    body body IssueStateBody true New ignored status of the issue

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    ignoreFalsePositive

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore',
    {
      method: 'PATCH',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore',
    {
      method: 'PATCH',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/{issueId}/false-positive/ignore

    Ignore the false positive result in an issue

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    issueId path string true Issue identifier

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    searchRepositoryIgnoredIssues

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignoredIssues/search

    List ignored issues in a repository

    Ignored issues are issues that Codacy found but were marked as ignored on the Codacy UI. Use SearchRepositoryIssuesBody to filter results.

    Body parameter

    {
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchRepositoryIssuesBody false Only return issues matching these filters

    Example responses

    200 Response

    {
      "data": [
        {
          "issueId": "string",
          "reason": "FalsePositive",
          "comment": "string",
          "ignoredByName": "string",
          "ignoredTimestamp": "2019-05-07T14:29:13.43Z",
          "filePath": "string",
          "fileId": 0,
          "patternInfo": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error"
          },
          "toolInfo": {
            "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
            "name": "ESLint"
          },
          "lineNumber": 0,
          "message": "string",
          "language": "string",
          "lineText": "string",
          "commitInfo": {
            "sha": "string",
            "commiter": "string",
            "commiterName": "string",
            "timestamp": "2019-05-07T14:29:13.43Z"
          },
          "falsePositiveProbability": 0,
          "falsePositiveReason": "string",
          "falsePositiveThreshold": 0
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of ignored issues in the repository IgnoredIssuesListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listRepositoryCommits

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits

    Return analysis results for the commits in a branch

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "commit": {
            "sha": "string",
            "id": 1,
            "commitTimestamp": "2019-05-07T14:29:13.43Z",
            "authorName": "string",
            "authorEmail": "string",
            "message": "string",
            "startedAnalysis": "2022-01-07T14:29:13.43Z",
            "endedAnalysis": "2022-01-07T14:29:13.43Z",
            "isMergeCommit": false,
            "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "parents": [
              "string"
            ]
          },
          "coverage": {
            "totalCoveragePercentage": 93.23,
            "deltaCoveragePercentage": 15.25,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "quality": {
            "newIssues": 1,
            "fixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "meta": {
            "analyzable": true,
            "reason": "string"
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of commits with analysis results CommitWithAnalysisListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCommit

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}

    Get analysis results for a commit

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA string that identifies the commit

    Example responses

    200 Response

    {
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ]
      },
      "coverage": {
        "totalCoveragePercentage": 93.23,
        "deltaCoveragePercentage": 15.25,
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "quality": {
        "newIssues": 1,
        "fixedIssues": 1,
        "deltaComplexity": 1,
        "deltaClonesCount": 1,
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "meta": {
        "analyzable": true,
        "reason": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CommitWithAnalysis
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCommitDeltaStatistics

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/deltaStatistics

    Get analysis statistics of a commit

    Returns the quality metric deltas introduced by a commit. The values of the metrics are 0 or null if Codacy didn't analyze the commit yet. To obtain the full analysis statistics for the repository use the endpoint getRepositoryWithAnalysis.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA string that identifies the commit

    Example responses

    200 Response

    {
      "commitUuid": "string",
      "newIssues": 0,
      "fixedIssues": 0,
      "deltaComplexity": 0,
      "deltaCoverage": 0,
      "deltaCoverageWithDecimals": 71,
      "deltaClonesCount": 0,
      "analyzed": true
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CommitDeltaStatistics
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCommitDeltaIssues

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{srcCommitUuid}/deltaIssues

    List the issues introduced or fixed by a commit

    Returns a list of issues introduced or fixed given a source commit SHA. By default, Codacy will calculate the issues by creating a delta between the source commit and its parent commit. As an alternative, you can also provide a destination commit to calculate the deltas. To list all issues in the repository, use searchRepositoryIssues.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    srcCommitUuid path string true UUID or SHA string that identifies the source commit
    targetCommitUuid query string false UUID or SHA string that identifies the target commit
    status query string false Filter issues by status. Valid values are all, new, or fixed.
    onlyPotential query boolean false Set to true to return only potential issues
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Enumerated Values

    Parameter Value
    status all
    status new
    status fixed

    Example responses

    200 Response

    {
      "analyzed": true,
      "data": [
        {
          "commitIssue": {
            "issueId": "string",
            "resultDataId": 0,
            "filePath": "string",
            "fileId": 0,
            "patternInfo": {
              "id": "accessor-pairs",
              "title": "string",
              "category": "Security",
              "subCategory": "XSS",
              "level": "Error",
              "severityLevel": "Error"
            },
            "toolInfo": {
              "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
              "name": "ESLint"
            },
            "lineNumber": 0,
            "message": "string",
            "suggestion": "string",
            "language": "string",
            "lineText": "string",
            "commitInfo": {
              "sha": "string",
              "commiter": "string",
              "commiterName": "string",
              "timestamp": "2019-05-07T14:29:13.43Z"
            },
            "falsePositiveProbability": 0,
            "falsePositiveReason": "string",
            "falsePositiveThreshold": 0
          },
          "deltaType": "Added"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CommitDeltaIssuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCommitDetails

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/commit/{commitId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/commit/{commitId}

    Get information about a commit

    Use /commits/{commitId} instead.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    commitId path integer(int64) true Identifier of the commit

    Example responses

    200 Response

    {
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ]
      },
      "repository": {
        "repositoryId": 0,
        "name": "codacy-eslint"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Details about the commit. CommitDetails
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCommitDetailsByCommitId

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/commits/{commitId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/commits/{commitId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/commits/{commitId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/commits/{commitId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/commits/{commitId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/commits/{commitId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/commits/{commitId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/commits/{commitId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /commits/{commitId}

    Get information about a commit

    Parameters

    Name In Type Required Description
    commitId path integer(int64) true Identifier of the commit

    Example responses

    200 Response

    {
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ]
      },
      "repository": {
        "repositoryId": 0,
        "name": "codacy-eslint",
        "provider": "gh",
        "organizationName": "codacy"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Details about the commit. CommitDetailsV2
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    hasQuickfixSuggestions

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/hasSuggestions

    Check if the repository has quick fix suggestions for a branch

    If branch is not provided, the default branch is used.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "hasSuggestions": true
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation HasQuickfixSuggestionsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Not backward compatible. Can be deleted in future. Use at your own risk.

    getQuickfixesPatch

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/issues/patch

    Get quickfixes for issues in patch format

    If branch is not provided, the default branch is used.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "data": {
        "patch": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QuickfixPatchResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Not backward compatible. Can be deleted in future. Use at your own risk.

    getPullRequestQuickfixesPatch

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /analysis/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/issues/patch

    Get quickfixes for pull request issues in patch format

    If branch is not provided, the default branch is used.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "data": {
        "patch": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QuickfixPatchResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Not backward compatible. Can be deleted in future. Use at your own risk.

    repository

    followAddedRepository

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow

    Follow a repository that was already added to Codacy

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": "Added"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AddedStateResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    unfollowRepository

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/follow

    Unfollow a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getQualitySettingsForRepository

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository

    Get quality settings for the specific repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "maxIssuePercentage": 1,
        "maxDuplicatedFilesPercentage": 1,
        "minCoveragePercentage": 1,
        "maxComplexFilesPercentage": 1,
        "fileDuplicationBlockThreshold": 1,
        "fileComplexityValueThreshold": 1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryQualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateRepositoryQualitySettings

    Code samples

    # You can also use wget
    curl -X PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "maxIssuePercentage": 1,
      "maxDuplicatedFilesPercentage": 1,
      "minCoveragePercentage": 1,
      "maxComplexFilesPercentage": 1,
      "fileDuplicationBlockThreshold": 1,
      "fileComplexityValueThreshold": 1
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "maxIssuePercentage": 1,
      "maxDuplicatedFilesPercentage": 1,
      "minCoveragePercentage": 1,
      "maxComplexFilesPercentage": 1,
      "fileDuplicationBlockThreshold": 1,
      "fileComplexityValueThreshold": 1
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository',
    {
      method: 'PUT',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.put 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.put('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PUT", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PUT /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository

    Update quality goals settings for the specific repository

    Body parameter

    {
      "maxIssuePercentage": 1,
      "maxDuplicatedFilesPercentage": 1,
      "minCoveragePercentage": 1,
      "maxComplexFilesPercentage": 1,
      "fileDuplicationBlockThreshold": 1,
      "fileComplexityValueThreshold": 1
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body RepositoryQualitySettings true The new value for the quality goals of the repository

    Example responses

    200 Response

    {
      "data": {
        "maxIssuePercentage": 1,
        "maxDuplicatedFilesPercentage": 1,
        "minCoveragePercentage": 1,
        "maxComplexFilesPercentage": 1,
        "fileDuplicationBlockThreshold": 1,
        "fileComplexityValueThreshold": 1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryQualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    regenerateUserSshKey

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-user-key

    Regenerate the user SSH key that Codacy uses to clone the repository

    Codacy automatically adds the new public user SSH key to the user account on the Git provider. Using a user SSH key is recommended if your repository includes submodules.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "publicSshKey": "string"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SshKeySettingResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    regenerateRepositorySshKey

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/ssh-repository-key

    Regenerate the SSH key that Codacy uses to clone the repository

    Codacy automatically adds the new public SSH key to the repository on the Git provider.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "publicSshKey": "string"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SshKeySettingResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getRepositoryPublicSshKey

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/stored-ssh-key

    Get the public SSH key for the repository

    The returned key is the most recently generated and can be either a user or repository SSH key.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "publicSshKey": "string"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SshKeySettingResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    syncRepositoryWithProvider

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/sync

    Synchronize repository name and visibility with Git provider

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "name": "codacy-eslint",
      "visibility": "Private"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SyncProviderSettingResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getBuildServerAnalysisSetting

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis

    Get the status of the repository setting Run analysis on your build server

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "buildServerAnalysisSetting": true
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation BuildServerAnalysisSettingResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    405 Method Not Allowed Method Not Allowed MethodNotAllowed
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateBuildServerAnalysisSetting

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "buildServerAnalysisSetting": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "buildServerAnalysisSetting": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/analysis

    Update the status of the repository setting Run analysis on your build server

    Body parameter

    {
      "buildServerAnalysisSetting": true
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body BuildServerAnalysisSettingRequest true New value for the repository setting Run analysis on your build server

    Example responses

    200 Response

    {
      "buildServerAnalysisSetting": true
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation BuildServerAnalysisSettingResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    405 Method Not Allowed Method Not Allowed MethodNotAllowed
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCommitQualitySettings

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits

    Get quality settings for the commits of a repository

    diffCoverageThreshold is never returned because this threshold isn't currently supported for commits.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "qualityGate": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "repositoryGatePolicyInfo": {
          "id": 0,
          "name": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateCommitQualitySettings

    Code samples

    # You can also use wget
    curl -X PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "issueThreshold": {
        "threshold": 1,
        "minimumSeverity": "Error"
      },
      "securityIssueThreshold": 1,
      "securityIssueMinimumSeverity": "Error",
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "coverageThresholdWithDecimals": -0.02,
      "diffCoverageThreshold": 70,
      "complexityThreshold": 1
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "issueThreshold": {
        "threshold": 1,
        "minimumSeverity": "Error"
      },
      "securityIssueThreshold": 1,
      "securityIssueMinimumSeverity": "Error",
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "coverageThresholdWithDecimals": -0.02,
      "diffCoverageThreshold": 70,
      "complexityThreshold": 1
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits',
    {
      method: 'PUT',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.put 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.put('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PUT", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PUT /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits

    Update quality settings for the commits of a repository

    Body parameter

    {
      "issueThreshold": {
        "threshold": 1,
        "minimumSeverity": "Error"
      },
      "securityIssueThreshold": 1,
      "securityIssueMinimumSeverity": "Error",
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "coverageThresholdWithDecimals": -0.02,
      "diffCoverageThreshold": 70,
      "complexityThreshold": 1
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body QualityGate true The new value for the quality settings of commits in a repository

    Example responses

    200 Response

    {
      "data": {
        "qualityGate": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "repositoryGatePolicyInfo": {
          "id": 0,
          "name": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    resetCommitsQualitySettings

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/commits/reset

    Reset quality settings for the commits of a repository to Codacy’s default values

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "qualityGate": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "repositoryGatePolicyInfo": {
          "id": 0,
          "name": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    resetPullRequestsQualitySettings

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests/reset

    Reset quality settings for the pull requests of a repository to Codacy’s default values

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "qualityGate": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "repositoryGatePolicyInfo": {
          "id": 0,
          "name": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    resetRepositoryQualitySettings

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/repository/reset

    Reset quality settings for the repository to Codacy’s default values

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "maxIssuePercentage": 1,
        "maxDuplicatedFilesPercentage": 1,
        "minCoveragePercentage": 1,
        "maxComplexFilesPercentage": 1,
        "fileDuplicationBlockThreshold": 1,
        "fileComplexityValueThreshold": 1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryQualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getPullRequestQualitySettings

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests

    Get quality settings for the pull requests of a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "qualityGate": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "repositoryGatePolicyInfo": {
          "id": 0,
          "name": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updatePullRequestQualitySettings

    Code samples

    # You can also use wget
    curl -X PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "issueThreshold": {
        "threshold": 1,
        "minimumSeverity": "Error"
      },
      "securityIssueThreshold": 1,
      "securityIssueMinimumSeverity": "Error",
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "coverageThresholdWithDecimals": -0.02,
      "diffCoverageThreshold": 70,
      "complexityThreshold": 1
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "issueThreshold": {
        "threshold": 1,
        "minimumSeverity": "Error"
      },
      "securityIssueThreshold": 1,
      "securityIssueMinimumSeverity": "Error",
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "coverageThresholdWithDecimals": -0.02,
      "diffCoverageThreshold": 70,
      "complexityThreshold": 1
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests',
    {
      method: 'PUT',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.put 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.put('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PUT", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PUT /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/quality/pull-requests

    Update quality settings for the pull requests of a repository

    Body parameter

    {
      "issueThreshold": {
        "threshold": 1,
        "minimumSeverity": "Error"
      },
      "securityIssueThreshold": 1,
      "securityIssueMinimumSeverity": "Error",
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "coverageThresholdWithDecimals": -0.02,
      "diffCoverageThreshold": 70,
      "complexityThreshold": 1
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body QualityGate true The new value for the quality settings of pull requests in the repository

    Example responses

    200 Response

    {
      "data": {
        "qualityGate": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "repositoryGatePolicyInfo": {
          "id": 0,
          "name": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation QualitySettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getRepositoryIntegrationsSettings

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings

    Get Git provider integration settings for a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "settings": {
        "commitStatus": true,
        "pullRequestComment": true,
        "pullRequestSummary": true,
        "coverageSummary": true,
        "suggestions": true,
        "aiEnhancedComments": true,
        "aiPullRequestReviewer": true,
        "aiPullRequestReviewerAutomatic": true,
        "pullRequestUnifiedSummary": true,
        "availableSettings": [
          "GitHubCoverageSummary"
        ]
      },
      "integratedBy": "example@codacy.com"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryIntegrationSettings
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    updateRepositoryIntegrationsSettings

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/providerSettings

    Update Git provider integration settings for a repository

    Body parameter

    {
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body ProviderIntegrationSettingsPatchBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    Response Schema

    createPostCommitHook

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/postCommitHook

    Create a post-commit hook for a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error An unexpected error occurred while creating the post-commit hook InternalServerError

    Response Schema

    refreshProviderRepositoryIntegration

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/refreshProvider

    Refresh the Git provider integration for a repository (GitLab and Bitbucket only)

    Codacy will use the authenticated user to create comments on new pull requests

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error An unexpected error occurred while refreshing the repository Git provider integration InternalServerError

    Response Schema

    reanalyzeCommitById

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "commitUuid": "string",
      "cleanCache": false
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "commitUuid": "string",
      "cleanCache": false
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/reanalyzeCommit

    Reanalyze a specific commit in a repository

    Body parameter

    {
      "commitUuid": "string",
      "cleanCache": false
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body CommitUuidRequest true UUID or SHA string that identifies the commit

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getRepository

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}

    Fetch the specified repository

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "data": {
        "repositoryId": 45738,
        "provider": "gh",
        "owner": "codacy",
        "name": "codacy-eslint",
        "fullPath": "codacy/codacy-eslint",
        "visibility": "Private",
        "remoteIdentifier": "3",
        "lastUpdated": "2019-05-07T14:29:13.43Z",
        "permission": "admin",
        "problems": [
          {
            "message": "We can't analyze this repository because none of the committers are part of the organization.",
            "actions": [
              {
                "name": "Check our documentation",
                "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
              }
            ],
            "code": "failed_to_clone",
            "severity": "all_analysis"
          }
        ],
        "languages": [
          "Java",
          "Scala",
          "CSS"
        ],
        "defaultBranch": {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        },
        "badges": {
          "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
          "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
        },
        "codingStandardId": 0,
        "codingStandardName": "string",
        "standards": [
          {
            "id": 0,
            "name": "string"
          }
        ],
        "addedState": "Added",
        "gatePolicyId": 0,
        "gatePolicyName": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    deleteRepository

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}

    Delete the specified repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listRepositoryBranches

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches

    List repository branches

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    enabled query boolean false Filter by branch status. Set to true to return only enabled branches, or false to return only disabled branches
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string
    sort query string false Field used to sort the list of branches. The allowed values are 'name' and 'last-updated'.
    direction query string false Sort direction. Possible values are 'asc' (ascending) or 'desc' (descending).

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation BranchListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateRepositoryBranchConfiguration

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName} \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName} HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "isEnabled": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "isEnabled": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}

    Update the settings for a repository branch

    Toggle analysis for a branch.

    Body parameter

    {
      "isEnabled": true
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branchName path string true Repository branch name
    body body UpdateRepositoryBranchConfigurationBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    setRepositoryBranchAsDefault

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/setDefault

    Set branch as default

    Sets the default branch for a repository. The new default branch must already be enabled on Codacy.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branchName path string true Repository branch name

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getBranchRequiredChecks

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/branches/{branchName}/required-checks

    Get branch required status checks

    Get branch required status checks

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branchName path string true Repository branch name

    Example responses

    200 Response

    {
      "data": {
        "quality": true,
        "diffCoverage": true,
        "coverageVariation": true
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation BranchRequiredChecksResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    createBadgePullRequest

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/gh/{remoteOrganizationName}/repositories/{repositoryName}/badge

    Create a pull request adding the Codacy analysis badge to the repository

    Creates a pull request adding the Codacy static code analysis badge to the README of the GitHub repository if the repository is public and doesn't already have a badge.

    Note: The pull request is created asynchronously and may fail even if this endpoint responds successfully.

    Parameters

    Name In Type Required Description
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    addRepository

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/repositories \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'caller: string' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/repositories HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    caller: string
    
    
    const inputBody = '{
      "repositoryFullPath": "codacy/codacy-analysis-cli",
      "provider": "gh"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'caller':'string',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/repositories',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "repositoryFullPath": "codacy/codacy-analysis-cli",
      "provider": "gh"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'caller':'string',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/repositories',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'caller' => 'string',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'caller': 'string',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "caller": []string{"string"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /repositories

    Add a repository to Codacy

    Add a new repository to an existing organization on Codacy

    Body parameter

    {
      "repositoryFullPath": "codacy/codacy-analysis-cli",
      "provider": "gh"
    }
    

    Parameters

    Name In Type Required Description
    caller header string false Optional identifier for the calling application or service.
    body body AddRepositoryBody true Information of repository to add

    Example responses

    200 Response

    {
      "repositoryId": 45738,
      "provider": "gh",
      "owner": "codacy",
      "name": "codacy-eslint",
      "fullPath": "codacy/codacy-eslint",
      "visibility": "Private",
      "remoteIdentifier": "3",
      "lastUpdated": "2019-05-07T14:29:13.43Z",
      "permission": "admin",
      "problems": [
        {
          "message": "We can't analyze this repository because none of the committers are part of the organization.",
          "actions": [
            {
              "name": "Check our documentation",
              "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
            }
          ],
          "code": "failed_to_clone",
          "severity": "all_analysis"
        }
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS"
      ],
      "defaultBranch": {
        "id": 1,
        "name": "master",
        "isDefault": true,
        "isEnabled": true,
        "lastUpdated": "2019-05-07T14:29:13.43Z",
        "branchType": "Branch",
        "lastCommit": "string"
      },
      "badges": {
        "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
        "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
      },
      "codingStandardId": 0,
      "codingStandardName": "string",
      "standards": [
        {
          "id": 0,
          "name": "string"
        }
      ],
      "addedState": "Added",
      "gatePolicyId": 0,
      "gatePolicyName": "string"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation Repository
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    402 Payment Required PaymentRequired PaymentRequired
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listFiles

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files

    List files in a repository

    Returns the most recent analysis information for the files in a repository as available on the Files page. Files that are ignored on Codacy aren't returned.

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,
    search query string false Filter files that include this string anywhere in their relative path
    sort query string false Field used to sort the list of files. Valid values are filename, issues, grade, duplication, complexity, and coverage.
    direction query string false Sort direction. Possible values are 'asc' (ascending) or 'desc' (descending).
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "data": [
        {
          "fileId": 2,
          "branchId": 3,
          "path": "/src/test.go",
          "totalIssues": 42,
          "complexity": 3,
          "grade": 74,
          "gradeLetter": "A",
          "coverage": 71,
          "coverageWithDecimals": 71,
          "duplication": 7,
          "linesOfCode": 123,
          "sourceLinesOfCode": 90,
          "numberOfMethods": 12,
          "numberOfClones": 5
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of files in the repository FileListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listIgnoredFiles

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/ignored-files

    List ignored files in a repository

    Returns the most recent ignored files information.

    Note: When the repository has a Codacy configuration file 'hasCodacyConfigurationFile', this list of files are read-only, as they were ignored during the most recent analysis based on the configuration file

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    branch query string false Name of a repository branch enabled on Codacy,
    search query string false Filter files that include this string anywhere in their relative path
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Detailed descriptions

    branch: Name of a repository branch enabled on Codacy, as returned by the endpoint listRepositoryBranches. By default, uses the main branch defined on the Codacy repository settings.

    Example responses

    200 Response

    {
      "hasCodacyConfigurationFile": true,
      "data": [
        {
          "filepath": "string"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of ignored files in the repository IgnoredFileListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getFileWithAnalysis

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}

    Get analysis information and coverage metrics for a file in a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    fileId path integer(int64) true Identifier of a file in a specific commit

    Example responses

    200 Response

    {
      "file": {
        "branchId": 1,
        "commitId": 1,
        "commitSha": "string",
        "fileId": 1,
        "fileDataId": 1,
        "path": "/src/test.go",
        "language": "Go",
        "gitProviderUrl": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "ignored": false
      },
      "coverage": {
        "coverage": 71,
        "coverableLines": 2,
        "coveredLines": 1
      },
      "quality": {
        "totalIssues": 42,
        "complexity": 3,
        "grade": 74,
        "gradeLetter": "A",
        "duplication": 7,
        "duplicatedLinesOfCode": 45
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK File with analysis FileInformationWithAnalysis
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getFileClones

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/duplication

    Get the list of duplicated code blocks for a file in a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    fileId path integer(int64) true Identifier of a file in a specific commit
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 0,
          "occurrences": [
            {
              "path": "string",
              "fileId": 0,
              "fileDataId": 0,
              "fromLine": 0,
              "toLine": 0
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK File clones FileClonesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getFileIssues

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/issues

    Get the issue list for a file in a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    fileId path integer(int64) true Identifier of a file in a specific commit
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "issueId": "string",
          "resultDataId": 0,
          "filePath": "string",
          "fileId": 0,
          "patternInfo": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error"
          },
          "toolInfo": {
            "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
            "name": "ESLint"
          },
          "lineNumber": 0,
          "message": "string",
          "suggestion": "string",
          "language": "string",
          "lineText": "string",
          "commitInfo": {
            "sha": "string",
            "commiter": "string",
            "commiterName": "string",
            "timestamp": "2019-05-07T14:29:13.43Z"
          },
          "falsePositiveProbability": 0,
          "falsePositiveReason": "string",
          "falsePositiveThreshold": 0
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK File issues SearchRepositoryIssuesListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listRepositoryApiTokens

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens

    List the repository API tokens

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "token": "string",
          "expiresAt": "2019-05-07T14:29:13.43Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ApiTokenListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    createRepositoryApiToken

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens

    Create a new repository API token

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    201 Response

    {
      "data": {
        "id": 0,
        "token": "string",
        "expiresAt": "2019-05-07T14:29:13.43Z"
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successful operation ApiTokenResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    deleteRepositoryApiToken

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/tokens/{tokenId}

    Delete a repository API token by ID

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    tokenId path integer(int64) true Unique identifier for the API token

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listCoverageReports

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/coverage/status

    List the most recent coverage reports and their status

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": {
        "hasCoverageOverview": true,
        "lastReports": [
          {
            "targetCommitSha": "string",
            "commit": {
              "sha": "string",
              "id": 1,
              "commitTimestamp": "2019-05-07T14:29:13.43Z",
              "authorName": "string",
              "authorEmail": "string",
              "message": "string",
              "startedAnalysis": "2022-01-07T14:29:13.43Z",
              "endedAnalysis": "2022-01-07T14:29:13.43Z",
              "isMergeCommit": false,
              "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
              "parents": [
                "string"
              ],
              "branches": [
                {
                  "id": 1,
                  "name": "master",
                  "isDefault": true,
                  "isEnabled": true,
                  "lastUpdated": "2019-05-07T14:29:13.43Z",
                  "branchType": "Branch",
                  "lastCommit": "string"
                }
              ]
            },
            "language": "string",
            "createdAt": "2019-08-24T14:15:22Z",
            "status": "Pending"
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CoverageReportResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCommitCoverageReports

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports

    List coverage reports for a commit

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA string that identifies the commit
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryId": 0,
          "commitSha": "string",
          "reportId": "string",
          "language": "string",
          "isFinal": true,
          "processed": true,
          "createdAt": "2019-08-24T14:15:22Z"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CoverageReportEntryResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCoverageReport

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/coverage/reports/{reportUuid}

    Get a coverage report with its contents

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA string that identifies the commit
    reportUuid path string true UUID string that identifies the coverage report

    Example responses

    200 Response

    {
      "data": {
        "repositoryId": 0,
        "commitSha": "string",
        "reportId": "string",
        "language": "string",
        "isFinal": true,
        "processed": true,
        "createdAt": "2019-08-24T14:15:22Z",
        "content": [
          {
            "fileName": "string",
            "coverage": {
              "1": 2,
              "12": 1,
              "23": 0
            }
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CoverageReportContentResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getFileCoverage

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{fileId}/coverage

    Get coverage information for a file in the head commit of a repository branch.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    fileId path integer(int64) true Identifier of a file in a specific commit

    Example responses

    200 Response

    {
      "data": [
        {
          "line": 2,
          "hits": 3
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK File Coverage GetFileCoverageResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateFileState

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "ignored": true,
      "filepath": "src/main/scala/main/Main.scala"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "ignored": true,
      "filepath": "src/main/scala/main/Main.scala"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/file

    Ignore or unignore a file

    Body parameter

    {
      "ignored": true,
      "filepath": "src/main/scala/main/Main.scala"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body FileStateBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getPullRequestDiff

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff

    Get the human-readable Git diff of a pull request

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "diff": "diff --git a/example.md b/example.md\nindex 9eeb703..777b981 100644\n--- a/example.md\n+++ b/example.md\n@@ -1 +1 @@\n-Edited line\n+Edited line (edit)\n"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DiffResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCommitDiff

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/commits/{commitUuid}/diff

    Get the human-readable Git diff of a commit

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    commitUuid path string true UUID or SHA string that identifies the commit

    Example responses

    200 Response

    {
      "diff": "diff --git a/example.md b/example.md\nindex 9eeb703..777b981 100644\n--- a/example.md\n+++ b/example.md\n@@ -1 +1 @@\n-Edited line\n+Edited line (edit)\n"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DiffResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getDiffBetweenCommits

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/base/{baseCommitUuid}/head/{headCommitUuid}/diff

    Get the human-readable Git diff between a head commit and a base commit

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    baseCommitUuid path string true UUID or SHA string that identifies the base commit for a comparison
    headCommitUuid path string true UUID or SHA string that identifies the head commit for a comparison

    Example responses

    200 Response

    {
      "diff": "diff --git a/example.md b/example.md\nindex 9eeb703..777b981 100644\n--- a/example.md\n+++ b/example.md\n@@ -1 +1 @@\n-Edited line\n+Edited line (edit)\n"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DiffResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    account

    getUser

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user

    Get the authenticated user

    Example responses

    200 Response

    {
      "data": {
        "id": 0,
        "name": "Foo",
        "mainEmail": "main@codacy.com",
        "otherEmails": [
          "foo@bar.com"
        ],
        "isAdmin": false,
        "isActive": true,
        "created": "2019-05-07T14:29:13.43Z",
        "intercomHash": "userhash",
        "zendeskHash": "userzendeskhash",
        "pylonHash": "userpylonhash",
        "shouldDoClientQualification": false
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation UserResponse
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    deleteUser

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/user \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/user HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/user',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/user', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/user", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /user

    Delete the authenticated user

    Example responses

    401 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "Unauthorized",
      "code": "Unauthorized"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    patchUser

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/user \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/user HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "name": "Foo",
      "shouldDoClientQualification": false
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "name": "Foo",
      "shouldDoClientQualification": false
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/user',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/user', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/user", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /user

    Update the authenticated user

    Body parameter

    {
      "name": "Foo",
      "shouldDoClientQualification": false
    }
    

    Parameters

    Name In Type Required Description
    body body UserBody true none

    Example responses

    200 Response

    {
      "data": {
        "id": 0,
        "name": "Foo",
        "mainEmail": "main@codacy.com",
        "otherEmails": [
          "foo@bar.com"
        ],
        "isAdmin": false,
        "isActive": true,
        "created": "2019-05-07T14:29:13.43Z",
        "intercomHash": "userhash",
        "zendeskHash": "userzendeskhash",
        "pylonHash": "userpylonhash",
        "shouldDoClientQualification": false
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation UserResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listUserOrganizations

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/organizations \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/organizations HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/organizations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/organizations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/organizations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/organizations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/organizations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/organizations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/organizations

    List organizations for the authenticated user

    List organizations for the authenticated user

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "identifier": 0,
          "remoteIdentifier": "string",
          "name": "FooOrganization",
          "avatar": "someRandomLink.com",
          "created": "2019-05-07T14:29:13.43Z",
          "provider": "gh",
          "joinMode": "auto",
          "type": "Organization",
          "joinStatus": "member",
          "singleProviderLogin": true,
          "hasDastAccess": true,
          "hasScaEnabled": true,
          "imageSbomEnabled": true,
          "hasAiInventoryEnabled": true
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OrganizationListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listOrganizations

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/organizations/{provider} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/organizations/{provider} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/organizations/{provider}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/organizations/{provider}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/organizations/{provider}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/organizations/{provider}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/organizations/{provider}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/organizations/{provider}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/organizations/{provider}

    List organizations for the authenticated user

    List organizations for the authenticated user

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "identifier": 0,
          "remoteIdentifier": "string",
          "name": "FooOrganization",
          "avatar": "someRandomLink.com",
          "created": "2019-05-07T14:29:13.43Z",
          "provider": "gh",
          "joinMode": "auto",
          "type": "Organization",
          "joinStatus": "member",
          "singleProviderLogin": true,
          "hasDastAccess": true,
          "hasScaEnabled": true,
          "imageSbomEnabled": true,
          "hasAiInventoryEnabled": true
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OrganizationListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getUserOrganization

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/organizations/{provider}/{remoteOrganizationName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/organizations/{provider}/{remoteOrganizationName}

    Get organization for the authenticated user

    Get organization for the authenticated user

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "identifier": 0,
        "remoteIdentifier": "string",
        "name": "FooOrganization",
        "avatar": "someRandomLink.com",
        "created": "2019-05-07T14:29:13.43Z",
        "provider": "gh",
        "joinMode": "auto",
        "type": "Organization",
        "joinStatus": "member",
        "singleProviderLogin": true,
        "hasDastAccess": true,
        "hasScaEnabled": true,
        "imageSbomEnabled": true,
        "hasAiInventoryEnabled": true
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OrganizationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listUserEmails

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/emails \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/emails HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/emails',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/emails', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/emails");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/emails", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/emails

    List emails for the authenticated user

    Example responses

    200 Response

    {
      "data": {
        "mainEmail": {
          "email": "string",
          "isPrivate": true
        },
        "otherEmails": [
          {
            "email": "string",
            "isPrivate": true
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation UserEmailsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    removeUserEmail

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/user/emails/remove \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/user/emails/remove HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = 'string';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/remove',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = string;
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/remove',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/user/emails/remove',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/user/emails/remove', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/emails/remove");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/user/emails/remove", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /user/emails/remove

    Remove an email from user account

    Removes the specified email address from the authenticated user's account. The primary/default email cannot be removed. A user must always have at least one email address associated with their account.

    Body parameter

    "string"
    

    Parameters

    Name In Type Required Description
    body body string true Email

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getEmailSettings

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/emails/settings \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/emails/settings HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/settings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/settings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/emails/settings',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/emails/settings', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/emails/settings");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/emails/settings", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/emails/settings

    Retrieve email notification settings

    Returns the current email notification preferences, including per-commit notifications, pull request notifications, and activity.

    Example responses

    200 Response

    {
      "data": {
        "perCommit": false,
        "perPullRequest": true,
        "onlyMyActivity": true
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation EmailNotificationSettingsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateEmailSettings

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/user/emails/settings \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/user/emails/settings HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "perCommit": false,
      "perPullRequest": true,
      "onlyMyActivity": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/settings',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "perCommit": false,
      "perPullRequest": true,
      "onlyMyActivity": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/settings',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/user/emails/settings',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/user/emails/settings', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/emails/settings");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/user/emails/settings", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /user/emails/settings

    Update email notification preferences

    Modifies the user's email notification settings. Settings can be updated individually without affecting other settings. This endpoint allows users to control which events trigger email notifications.

    Body parameter

    {
      "perCommit": false,
      "perPullRequest": true,
      "onlyMyActivity": true
    }
    

    Parameters

    Name In Type Required Description
    body body EmailNotificationSettingsOptional true Email notification preferences to update

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    setDefaultEmail

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/user/emails/set-default \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/user/emails/set-default HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = 'string';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/set-default',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = string;
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/emails/set-default',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/user/emails/set-default',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/user/emails/set-default', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/emails/set-default");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/user/emails/set-default", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /user/emails/set-default

    Set an email as default

    Designates the specified email as the default email for the authenticated user. This operation will automatically remove the default status from any previously default email. Only one email can be default at any time.

    Body parameter

    "string"
    

    Parameters

    Name In Type Required Description
    body body string true Email

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listUserIntegrations

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/integrations \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/integrations HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/integrations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/integrations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/integrations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/integrations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/integrations

    List integrations for the authenticated user

    List integrations for the authenticated user

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "provider": "gh",
          "host": "gsh.dev.codacy.org",
          "lastAuthenticated": "2019-05-07T14:29:13.43Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation IntegrationListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    deleteIntegration

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/user/integrations/{provider} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/user/integrations/{provider} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/integrations/{provider}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/integrations/{provider}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/user/integrations/{provider}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/user/integrations/{provider}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/integrations/{provider}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/user/integrations/{provider}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /user/integrations/{provider}

    Delete an integration for the authenticated user

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getOrganizationByInstallationId

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/installation/{installationId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/installation/{installationId}

    Get organization by provider installation id

    Note Currently supports only gh as the provider parameter.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    installationId path integer(int64) true Identifier of the Codacy installation

    Example responses

    200 Response

    {
      "data": {
        "identifier": 0,
        "remoteIdentifier": "string",
        "name": "FooOrganization",
        "avatar": "someRandomLink.com",
        "created": "2019-05-07T14:29:13.43Z",
        "provider": "gh",
        "joinMode": "auto",
        "type": "Organization",
        "joinStatus": "member",
        "singleProviderLogin": true,
        "hasDastAccess": true,
        "hasScaEnabled": true,
        "imageSbomEnabled": true,
        "hasAiInventoryEnabled": true
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OrganizationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getUserApiTokens

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/tokens \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/tokens HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/tokens',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/tokens',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/tokens',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/tokens', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/tokens");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/tokens", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/tokens

    List the account API tokens of the authenticated user

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "token": "string",
          "expiresAt": "2019-05-07T14:29:13.43Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ApiTokenListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    createUserApiToken

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/user/tokens \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/user/tokens HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "expiresAt": "2019-05-07T14:29:13.43Z"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/tokens',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "expiresAt": "2019-05-07T14:29:13.43Z"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/tokens',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/user/tokens',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/user/tokens', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/tokens");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/user/tokens", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /user/tokens

    Create a new account API token for the authenticated user

    Body parameter

    {
      "expiresAt": "2019-05-07T14:29:13.43Z"
    }
    

    Parameters

    Name In Type Required Description
    body body ApiTokenCreateRequest false Optional token expiration timestamp

    Example responses

    200 Response

    {
      "id": 0,
      "token": "string",
      "expiresAt": "2019-05-07T14:29:13.43Z"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ApiToken
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    deleteUserApiToken

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/user/tokens/{tokenId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/user/tokens/{tokenId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/tokens/{tokenId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/tokens/{tokenId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/user/tokens/{tokenId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/user/tokens/{tokenId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/tokens/{tokenId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/user/tokens/{tokenId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /user/tokens/{tokenId}

    Delete an account API token for the authenticated user by ID

    Parameters

    Name In Type Required Description
    tokenId path integer(int64) true Unique identifier for the API token

    Example responses

    401 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "Unauthorized",
      "code": "Unauthorized"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    organization

    getOrganization

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}

    Get organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "organization": {
          "identifier": 0,
          "remoteIdentifier": "string",
          "name": "FooOrganization",
          "avatar": "someRandomLink.com",
          "created": "2019-05-07T14:29:13.43Z",
          "provider": "gh",
          "joinMode": "auto",
          "type": "Organization",
          "joinStatus": "member",
          "singleProviderLogin": true,
          "hasDastAccess": true,
          "hasScaEnabled": true,
          "imageSbomEnabled": true,
          "hasAiInventoryEnabled": true
        },
        "membership": {
          "userRole": "admin"
        },
        "billing": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true
        },
        "paywall": {
          "organizationDashboard": true,
          "securityDashboard": true
        },
        "organizationPayWall": {
          "organizationDashboard": true
        },
        "analysisConfigurationMinimumPermission": "admin",
        "subscriptions": [
          {
            "product": "coverage",
            "plan": {
              "isPremium": true,
              "code": "string"
            },
            "paywall": {
              "securityDashboard": true
            }
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OrganizationWithMetaResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    deleteOrganization

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName} \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName} HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "joinReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      },
      "cancelReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}',
    {
      method: 'DELETE',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "joinReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      },
      "cancelReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}',
    {
      method: 'DELETE',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}

    Delete organization

    Delete organization

    Body parameter

    {
      "joinReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      },
      "cancelReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body ChurnFeedback false Reasons

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    organizationDetailedBilling

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/billing

    Get detailed information about organization billing

    Get detailed information about organization billing

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "numberOfSeats": 42,
        "numberOfPurchasedSeats": 100,
        "paymentPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true
        },
        "plan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "paymentGateway": "stripe",
        "priceInCents": 12020,
        "pricePerSeatInCents": 1405,
        "nextPaymentDate": "2019-05-07T14:29:13.43Z",
        "invoiceDetails": {
          "firstName": "string",
          "lastName": "string",
          "email": "codacy@codacy.com",
          "country": "PT",
          "vat": "PT999999999",
          "address": "Av. João Crisóstomo, nº31 - 6º, 1050-125 Lisboa",
          "zip": "1050-125",
          "state": "Lisbon"
        },
        "taxes": [
          {
            "name": "string",
            "rate": 0.1
          }
        ],
        "subscriptions": [
          {
            "product": "coverage",
            "plan": {
              "isPremium": true,
              "model": "Auto",
              "code": "trial",
              "monthly": true,
              "price": 1000,
              "pricedPerUser": true
            }
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OrganizationBillingInformationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateOrganizationDetailedBilling

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "firstName": "string",
      "lastName": "string",
      "billingEmail": "string",
      "country": "string",
      "vat": "string",
      "address": "string",
      "zip": "string",
      "state": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "firstName": "string",
      "lastName": "string",
      "billingEmail": "string",
      "country": "string",
      "vat": "string",
      "address": "string",
      "zip": "string",
      "state": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/billing

    Update the information about organization billing

    Update the information about organization billing

    Body parameter

    {
      "firstName": "string",
      "lastName": "string",
      "billingEmail": "string",
      "country": "string",
      "vat": "string",
      "address": "string",
      "zip": "string",
      "state": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body BillingDetailsUpdate true New billing information

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    organizationBillingCard

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/billing/card

    Get card information about organization billing

    Get card information about organization billing

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "maskedNumber": "string",
        "last4": "string",
        "expiryMonth": 0,
        "expiryYear": 0,
        "holderName": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    organizationBillingAddCard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "cardToken": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "cardToken": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/card", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/billing/card

    Add a card to the organization

    Add a card to the organization relying on the token provided by Stripe /v1/tokens

    Body parameter

    {
      "cardToken": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body CardCreation true Request to add a card to the organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    organizationBillingEstimation

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation?paymentPlanCode=standard-team \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation?paymentPlanCode=standard-team HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation?paymentPlanCode=standard-team',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation?paymentPlanCode=standard-team',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation',
      params: {
      'paymentPlanCode' => 'string'
    }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation', params={
      'paymentPlanCode': 'standard-team'
    }, headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation?paymentPlanCode=standard-team");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/estimation", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/billing/estimation

    Get a billing estimation

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    paymentPlanCode query string true Payment plan code (available codes can be retrieved using listPaymentPlans)
    promoCode query string false Optional promotional code to apply to the billing estimation.

    Example responses

    200 Response

    {
      "data": {
        "perSeatCents": 0,
        "seats": 0,
        "taxes": [
          {
            "name": "string",
            "rate": 0.1,
            "valueDollars": 0.1
          }
        ],
        "discountCents": 0,
        "subTotalCents": 0,
        "totalCents": 0,
        "nextBilling": "2019-08-24T14:15:22Z",
        "isMonthly": true
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation BillingEstimationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    changeOrganizationPlan

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "code": "string",
      "promoCode": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "code": "string",
      "promoCode": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/change-plan", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/billing/change-plan

    Change the plan of an organization

    Available plan codes can be retrieved using listPaymentPlans

    Body parameter

    {
      "code": "string",
      "promoCode": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body ChangePlan true Request to change the payment plan of an organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    syncMarketplaceBilling

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/billing/sync", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/billing/sync

    Sync the information about organization billing

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    applyProviderSettings

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings/apply

    Apply default settings to all repositories

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    Response Schema

    getProviderSettings

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings

    Get Git provider settings

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true,
      "availableSettings": [
        "GitHubCoverageSummary"
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ProviderIntegrationSettingsBody
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    updateProviderSettings

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/integrations/providerSettings

    Create or update Git provider settings

    Body parameter

    {
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body ProviderIntegrationSettingsPatchBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    Response Schema

    listOrganizationRepositories

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories

    List organization repositories for the authenticated user

    For Bitbucket you must URL encode the cursor before using it in subsequent API calls, as the pagination comes directly from the Git provider. This endpoint may return more results than those specified in the limit parameter. If this endpoint doesn't return your repositories after you've made recent changes to the permissions on your Git provider, use the endpoint cleanCache to force refreshing the list of repositories for the authenticated user.

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string
    filter query RepositoryFilter false Filter for which repositories to return. Use Synced for repositories the user has access to, NotSynced for repositories fetched from the provider, or AllSynced for all organization repositories (requires admin access)
    languages query string false Comma-separated list of programming languages to filter results by
    segments query string false Filter by a comma-separated list of segment identifiers

    Enumerated Values

    Parameter Value
    filter Synced
    filter NotSynced
    filter AllSynced

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "repositoryId": 45738,
          "provider": "gh",
          "owner": "codacy",
          "name": "codacy-eslint",
          "fullPath": "codacy/codacy-eslint",
          "visibility": "Private",
          "remoteIdentifier": "3",
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "permission": "admin",
          "problems": [
            {
              "message": "We can't analyze this repository because none of the committers are part of the organization.",
              "actions": [
                {
                  "name": "Check our documentation",
                  "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
                }
              ],
              "code": "failed_to_clone",
              "severity": "all_analysis"
            }
          ],
          "languages": [
            "Java",
            "Scala",
            "CSS"
          ],
          "defaultBranch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "badges": {
            "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
            "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
          },
          "codingStandardId": 0,
          "codingStandardName": "string",
          "standards": [
            {
              "id": 0,
              "name": "string"
            }
          ],
          "addedState": "Added",
          "gatePolicyId": 0,
          "gatePolicyName": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    retrieveOrganizationOnboardingProgress

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/onboarding/organizations/{provider}/{remoteOrganizationName}/progress", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /onboarding/organizations/{provider}/{remoteOrganizationName}/progress

    Retrieve the onboarding progress of an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": [
        {
          "step": "addRepositories | enableStatusChecks",
          "isCompleted": true
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OrganizationOnboardingProgressResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    patchOrganizationSettings

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "permission": "RepoAdmin"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "permission": "RepoAdmin"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/analysisConfigurationMinimumPermission

    Configure what your organization members can do across the Codacy platform

    Define the lowest permission level that can configure patterns, configure which file extensions and branches are analyzed, and ignore issues and files

    Body parameter

    {
      "permission": "RepoAdmin"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body MembershipPrivilegesBody true New permission level

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    updateJoinMode

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "joinMode": "auto"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "joinMode": "auto"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/joinMode", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/joinMode

    Update the join mode of an organization

    Body parameter

    {
      "joinMode": "auto"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body JoinModeRequest true New join mode of the organization

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    checkIfUserCanLeave

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/leave/check", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/people/leave/check

    Check if the user can leave the organization

    Check if the user can leave the organization or returns the reasons why they can not.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "canLeave": true,
      "message": "Since you are the last organization admin of $orgName, to leave this organization you need to delete it. Please contact us through support.",
      "reason": {
        "actions": [
          {
            "name": "Check our documentation",
            "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
          }
        ],
        "code": "last_admin_credit"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation LeaveOrgCheckResult
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listOrganizationJoinRequests

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/join

    List requests to join an organization

    Endpoint to list requests to join an organization by provider and organization name

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "email": "mail@mail.com",
          "name": "a display name",
          "numberOfCommits": 0,
          "numberOfRepositories": 0,
          "lastActivity": "2020-01-06T14:29:13.43Z",
          "creationDate": "2020-01-06T14:29:13.43Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ListRequestsToJoinResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    joinOrganization

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/join

    Join an organization

    Endpoint to join an organization by provider and name

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "organizationIdentifier": 0,
      "joinStatus": "member"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation JoinResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    402 Payment Required PaymentRequired PaymentRequired
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    declineRequestsToJoinOrganization

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '[
      "string"
    ]';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
    {
      method: 'DELETE',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = [
      "string"
    ];
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
    {
      method: 'DELETE',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/join

    Decline requests to join an organization

    Decline requests to join an organization by specifying the provider, organization name, and the user emails to be rejected.

    Body parameter

    [
      "string"
    ]
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body array[string] true List of emails

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    deleteOrganizationJoinRequest

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/join/{accountIdentifier}

    Delete a request to join an organization

    Delete a request to join an organization by provider, name, and user ID

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    accountIdentifier path integer(int64) true Unique identifier for the account

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    cleanCache

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/cache/clean", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/cache/clean

    Clean organization cache for the authenticated user

    Clean cached information regarding the authenticated user on the specified organization, such as the list of repositories in the organization.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    addOrganization

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "provider": "gh",
      "remoteIdentifier": "string",
      "name": "FooOrganization",
      "type": "Organization",
      "products": [
        "coverage"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "provider": "gh",
      "remoteIdentifier": "string",
      "name": "FooOrganization",
      "type": "Organization",
      "products": [
        "coverage"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations

    Add an organization to Codacy

    Add an organization from a Git provider to Codacy

    Body parameter

    {
      "provider": "gh",
      "remoteIdentifier": "string",
      "name": "FooOrganization",
      "type": "Organization",
      "products": [
        "coverage"
      ]
    }
    

    Parameters

    Name In Type Required Description
    body body AddOrganizationBody true Information of the organization to add

    Example responses

    200 Response

    {
      "organization": {
        "identifier": 0,
        "remoteIdentifier": "string",
        "name": "FooOrganization",
        "avatar": "someRandomLink.com",
        "created": "2019-05-07T14:29:13.43Z",
        "provider": "gh",
        "joinMode": "auto",
        "type": "Organization",
        "joinStatus": "member",
        "singleProviderLogin": true,
        "hasDastAccess": true,
        "hasScaEnabled": true,
        "imageSbomEnabled": true,
        "hasAiInventoryEnabled": true
      },
      "warnings": [
        "string"
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AddOrganizationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    405 Method Not Allowed Method Not Allowed MethodNotAllowed
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    syncOrganizationName

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/sync", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/settings/sync

    Synchronize Codacy organization name with the Git provider

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "name": "troubleshoot-codacy"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SyncProviderSettingOrganizationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    checkSubmodules

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/settings/submodules/check", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/settings/submodules/check

    Check if the submodules option is enabled for the organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": true
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CheckSubmodulesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getJiraIntegration

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/integrations/jira

    Get the Jira integration of the organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "organization_id": 867842577,
        "instance_id": "1324a887-45db-1bf4-1e99-ef0ff456d421",
        "instance_name": "codacy",
        "created_at": "2020-11-09T09:10:00Z",
        "updated_at": "2020-11-09T09:10:00Z"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation JiraIntegrationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    createOrUpdateJiraIntegration

    Code samples

    # You can also use wget
    curl -X PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira?oauthCode=6nGtF5eij1YuEqQXr7L9OxA0RLHZ21tEQNZq1DZJzuY \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira?oauthCode=6nGtF5eij1YuEqQXr7L9OxA0RLHZ21tEQNZq1DZJzuY HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira?oauthCode=6nGtF5eij1YuEqQXr7L9OxA0RLHZ21tEQNZq1DZJzuY',
    {
      method: 'PUT',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira?oauthCode=6nGtF5eij1YuEqQXr7L9OxA0RLHZ21tEQNZq1DZJzuY',
    {
      method: 'PUT',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.put 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira',
      params: {
      'oauthCode' => 'string'
    }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.put('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira', params={
      'oauthCode': '6nGtF5eij1YuEqQXr7L9OxA0RLHZ21tEQNZq1DZJzuY'
    }, headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira?oauthCode=6nGtF5eij1YuEqQXr7L9OxA0RLHZ21tEQNZq1DZJzuY");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PUT", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PUT /organizations/{provider}/{remoteOrganizationName}/integrations/jira

    Create or update the Jira integration of the organization

    Parameters

    Name In Type Required Description
    oauthCode query string true The OAuth code to allow authentication as the user installing the Jira App.
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "organization_id": 867842577,
        "instance_id": "1324a887-45db-1bf4-1e99-ef0ff456d421",
        "instance_name": "codacy",
        "created_at": "2020-11-09T09:10:00Z",
        "updated_at": "2020-11-09T09:10:00Z"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation JiraIntegrationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    deleteJiraIntegration

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/integrations/jira

    Delete the Jira integration of the organization and associated resources

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    Response Schema

    getSlackIntegration

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/integrations/slack

    Get the Slack integration of the organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "organization_id": 867842577,
        "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
        "created_at": "2020-11-09T09:10:00Z",
        "updated_at": "2020-11-09T09:10:00Z"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SlackIntegrationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    createOrUpdateSlackIntegration

    Code samples

    # You can also use wget
    curl -X PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
    {
      method: 'PUT',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.put 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.put('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PUT", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PUT /organizations/{provider}/{remoteOrganizationName}/integrations/slack

    Create or update the Slack integration of the organization

    Body parameter

    {
      "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SlackIntegrationRequest true none

    Example responses

    200 Response

    {
      "data": {
        "organization_id": 867842577,
        "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
        "created_at": "2020-11-09T09:10:00Z",
        "updated_at": "2020-11-09T09:10:00Z"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SlackIntegrationResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    deleteSlackIntegration

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/slack", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/integrations/slack

    Delete the Slack integration of the organization and associated resources

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    Response Schema

    listAuditLogsForOrganization

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/audit", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/audit

    Retrieve the audit logs for the organization

    Only available on Business plan. Requires organization admin or organization manager role.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    from query integer(int64) false Starting timestamp of audit logs in unix epoch milliseconds. Defaults to the earliest available time if not provided.
    to query integer(int64) false Ending timestamp of audit logs in unix epoch milliseconds. Defaults to the current time if not provided.

    Example responses

    200 Response

    [
      {
        "actor": {
          "email": "example@email.com",
          "role": "repositoryAdmin"
        },
        "action": "organizations.gatepolicies.repositories.apply",
        "result": "succeed",
        "timestamp": "2024-06-28T14:29:13.43Z",
        "source": "UI",
        "repositoryName": "",
        "description": "Apply gate policy",
        "details": "{\"link\":[\"repo-one\"],\"unlink\":[]}",
        "entityId": "123456"
      }
    ]
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation Inline
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    Status Code 200

    Name Type Required Restrictions Description
    anonymous [AuditLog] false none [Audit log of an event performed by a Codacy user who is part of an organization.]
    » actor AuditActor true none Actor of the audit event.
    »» email string true none Email of the audit actor.
    »» role AuditActorRole false none Role of the audit actor.
    » action string true none Action performed in the event.
    » result AuditResultType true none Result of the audit action.
    » timestamp string(date-time) true none Timestamp when the event occurred.
    » source string false none Source of the event. Possible values are 'UI' (Codacy app) or 'API' (Codacy API).
    » repositoryName string false none Name of the repository, if the scope of the event action is a repository
    » description string false none Description of the event.
    » details object false none Details specific to the performed event action. Includes the JSON-format body of the performed request, and any additional information related to that action.
    » entityId string false none Identifier of the entity involved in the event. For example, the identifier of the updated gate policy in an event with the action organizations.gatepolicies.update.

    Enumerated Values

    Property Value
    role repositoryRead
    role repositoryWrite
    role repositoryAdmin
    role organizationMember
    role organizationManager
    role organizationAdmin
    result succeed
    result failed
    result rejected

    people

    listPeopleFromOrganization

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/people

    List people of an organization

    List people of an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string
    onlyMembers query boolean false If true, returns only Codacy users. If false, returns also commit authors that are not Codacy users.

    Example responses

    200 Response

    {
      "data": [
        {
          "name": "John Smith",
          "email": "johnsmith@emailprovider.com",
          "emails": [
            "johnsmith@emailprovider.com"
          ],
          "userId": 1234,
          "committerId": 1234,
          "lastLogin": "2020-11-05T15:39:13.43Z",
          "lastAnalysis": "2020-11-05T15:39:13.43Z",
          "isActive": true,
          "canBeRemoved": true,
          "lastCommitId": 2335557754,
          "providerId": "string",
          "providerLogin": "string",
          "isProviderRegistered": true
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ListPeopleResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    addPeopleToOrganization

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '[
      "string"
    ]';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = [
      "string"
    ];
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/people

    Add people to organization

    Add people to organization as members or committers (depending if they have a pending request already)

    Body parameter

    [
      "string"
    ]
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body array[string] true List of emails

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listPeopleFromOrganizationCsv

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/peopleCsv", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/peopleCsv

    Generate a CSV file listing the people of an organization

    Generate a CSV file containing the name, email, lastLogin, and lastAnalysis of each person of the organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    "string"
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation string
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    removePeopleFromOrganization

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "emails": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "emails": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/remove", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/people/remove

    Remove people from an organization

    Remove people from an organization

    Body parameter

    {
      "emails": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body RemovePeopleBody true List of committers/members to remove

    Example responses

    200 Response

    {
      "success": [
        {
          "email": "string",
          "error": "string"
        }
      ],
      "failed": [
        {
          "email": "string",
          "error": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Remove people response RemovePeopleResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    peopleSuggestionsForOrganization

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/people/suggestions", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/people/suggestions

    List people suggestions for an organization

    List people suggestions for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "commitEmail": "string",
          "totalProjects": 0,
          "totalCommits": 0,
          "lastCommit": "2019-08-24T14:15:22Z",
          "projectCommitStats": [
            {
              "projectId": 0,
              "firstCommit": "2019-08-24T14:15:22Z",
              "lastCommit": "2019-08-24T14:15:22Z",
              "numberOfCommits": 0
            }
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List people suggestions response SuggestedAuthorsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    peopleSuggestionsForRepository

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/people/suggestions

    List people suggestions for a repository

    List people suggestions for a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "commitEmail": "string",
          "projectCommitStat": {
            "projectId": 0,
            "firstCommit": "2019-08-24T14:15:22Z",
            "lastCommit": "2019-08-24T14:15:22Z",
            "numberOfCommits": 0
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List people suggestions response RepositorySuggestedAuthorsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    billing

    deleteSubscription

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "joinReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      },
      "cancelReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription',
    {
      method: 'DELETE',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "joinReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      },
      "cancelReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription',
    {
      method: 'DELETE',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/billing/{provider}/{remoteOrganizationName}/subscription", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /billing/{provider}/{remoteOrganizationName}/subscription

    Delete billing subscription for organization

    Delete billing subscription for organization

    Body parameter

    {
      "joinReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      },
      "cancelReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body ChurnFeedback false Reasons

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listPaymentPlans

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/plans \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/plans HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/plans',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/plans',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/plans',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/plans', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/plans");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/plans", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /plans

    List available plans in Codacy

    Example responses

    200 Response

    {
      "data": {
        "defaultYearlyPaidCode": "string",
        "defaultMonthlyPaidCode": "string",
        "trialCode": "string",
        "openSourceCode": "string",
        "defaultYearlyPaidPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "defaultMonthlyPaidPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "trialPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "openSourcePlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "plans": [
          {
            "isPremium": true,
            "model": "Auto",
            "code": "trial",
            "monthly": true,
            "price": 1000,
            "pricedPerUser": true,
            "alternatePeriodCode": "team-yearly"
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PaymentPlansResponse
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    integrations

    listConfiguredLoginIntegrations

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/login/integrations \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/login/integrations HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/login/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/login/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/login/integrations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/login/integrations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/login/integrations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/login/integrations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /login/integrations

    List configured login providers on Codacy's platform

    List configured login providers on Codacy's platform

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "provider": "gh",
          "loginUrl": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ConfiguredLoginIntegrationListResponse
    400 Bad Request Bad Request BadRequest
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listProviderIntegrations

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/provider/integrations \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/provider/integrations HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/provider/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/provider/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/provider/integrations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/provider/integrations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/provider/integrations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/provider/integrations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /provider/integrations

    List provider integrations existing on Codacy's platform

    List provider integrations existing on Codacy's platform

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "provider": "gh",
          "redirectUrl": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ProviderIntegrationListResponse
    400 Bad Request Bad Request BadRequest
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    configuration

    getConfigurationStatus

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/configuration/status \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/configuration/status HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/configuration/status',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/configuration/status',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/configuration/status',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/configuration/status', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/configuration/status");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/configuration/status", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /configuration/status

    Get configuration status

    Get configuration status

    Example responses

    200 Response

    {
      "statuses": [
        "string"
      ],
      "metadata": {
        "firstSignupDone": true
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ConfigurationStatusResponse
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    health

    health

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/health \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/health HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/health',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/health',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/health',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/health', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/health");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/health", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /health

    Health check endpoint

    Health check endpoint

    Example responses

    200 Response

    {
      "data": {
        "message": "Hello, it's me"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation HealthCheckResponse
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    languages

    listLanguagesWithTools

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/languages/tools \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/languages/tools HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/languages/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/languages/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/languages/tools',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/languages/tools', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/languages/tools");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/languages/tools", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /languages/tools

    Retrieve the list of languages supported by available tools

    Example responses

    200 Response

    {
      "data": [
        {
          "name": "Java",
          "fileExtensions": [
            ".java"
          ],
          "files": [
            "requirements.txt"
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation LanguageListResponse
    400 Bad Request Bad Request BadRequest
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    tools

    listTools

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/tools \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/tools HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/tools',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/tools', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/tools");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/tools", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /tools

    Retrieve the list of tools

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
          "name": "ESLint",
          "version": "6.8.0",
          "shortName": "eslint",
          "documentationUrl": "http://eslint.org/docs/rules/",
          "sourceCodeUrl": "https://github.com/codacy/codacy-eslint",
          "prefix": "ESLint_",
          "needsCompilation": false,
          "configurationFilenames": [
            ".eslintrc.js",
            ".eslintrc.yaml"
          ],
          "description": "ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code. In many ways, it is similar to JSLint and JSHint with a few exceptions",
          "dockerImage": "codacy/codacy-eslint:2.20.19",
          "languages": [
            "JavaScript"
          ],
          "clientSide": true,
          "standalone": true,
          "enabledByDefault": true,
          "configurable": true
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ToolListResponse
    400 Bad Request Bad Request BadRequest
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listPatterns

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/tools/{toolUuid}/patterns \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/tools/{toolUuid}/patterns HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/tools/{toolUuid}/patterns',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/tools/{toolUuid}/patterns");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/tools/{toolUuid}/patterns", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /tools/{toolUuid}/patterns

    Retrieve the list of tool patterns

    Parameters

    Name In Type Required Description
    toolUuid path string true Unique identifier (UUID) for the tool
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    enabled query boolean false Filter by enabled status. Set to true to return only enabled patterns, or false to return only disabled patterns.

    Example responses

    200 Response

    {
      "data": [
        {
          "id": "accessor-pairs",
          "title": "string",
          "category": "Security",
          "subCategory": "XSS",
          "level": "Error",
          "severityLevel": "Error",
          "description": "Enforce getter and setter pairs in objects and classes",
          "explanation": "Accessor pairs description",
          "enabled": true,
          "languages": [
            "JavaScript"
          ],
          "timeToFix": 5,
          "parameters": [
            {
              "name": "getWithoutSet",
              "description": "getWithoutSet",
              "default": "true"
            }
          ],
          "rationale": "string",
          "solution": "string",
          "goodExamples": [
            "string"
          ],
          "badExamples": [
            "string"
          ],
          "tags": [
            "string"
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operations PatternListResponse
    400 Bad Request Bad Request BadRequest
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    addPatternFeedback

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json'
    
    
    POST https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "reactionFeedback": true,
      "feedback": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "reactionFeedback": true,
      "feedback": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /tools/{toolUuid}/patterns/{patternId}/organizations/{provider}/{remoteOrganizationName}/feedback

    Add feedback relating to the tool pattern

    Add feedback relating to the tool pattern.

    Body parameter

    {
      "reactionFeedback": true,
      "feedback": "string"
    }
    

    Parameters

    Name In Type Required Description
    toolUuid path string true Unique identifier (UUID) for the tool
    patternId path string true Pattern identifier
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body AddEnrichedPatternFeedbackBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getPattern

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId} \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/tools/{toolUuid}/patterns/{patternId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /tools/{toolUuid}/patterns/{patternId}

    Retrieve a tool pattern

    Get the definition of a specific pattern

    Parameters

    Name In Type Required Description
    toolUuid path string true Unique identifier (UUID) for the tool
    patternId path string true Pattern identifier

    Example responses

    200 Response

    {
      "data": {
        "id": "accessor-pairs",
        "title": "string",
        "category": "Security",
        "subCategory": "XSS",
        "level": "Error",
        "severityLevel": "Error",
        "description": "Enforce getter and setter pairs in objects and classes",
        "explanation": "Accessor pairs description",
        "enabled": true,
        "languages": [
          "JavaScript"
        ],
        "timeToFix": 5,
        "parameters": [
          {
            "name": "getWithoutSet",
            "description": "getWithoutSet",
            "default": "true"
          }
        ],
        "rationale": "string",
        "solution": "string",
        "goodExamples": [
          "string"
        ],
        "badExamples": [
          "string"
        ],
        "tags": [
          "string"
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PatternResponse
    400 Bad Request Bad Request BadRequest
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listDuplicationTools

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/duplicationTools \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/duplicationTools HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/duplicationTools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/duplicationTools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/duplicationTools',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/duplicationTools', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/duplicationTools");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/duplicationTools", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /duplicationTools

    Retrieve the list of duplication tools

    Example responses

    200 Response

    {
      "data": [
        {
          "dockerImage": "codacy/codacy-duplication-pmdcpd:1.0.0",
          "languages": [
            "string"
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DuplicationToolListResponse
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listMetricsTools

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/metricsTools \
      -H 'Accept: application/json'
    
    
    GET https://app.codacy.com/api/v3/metricsTools HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/metricsTools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json'
    };
    
    fetch('https://app.codacy.com/api/v3/metricsTools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/metricsTools',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/metricsTools', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/metricsTools");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/metricsTools", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /metricsTools

    Retrieve the list of metrics tools

    Example responses

    200 Response

    {
      "data": [
        {
          "dockerImage": "codacy/codacy-metrics-cloc:1.0.0",
          "languages": [
            "string"
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation MetricsToolListResponse
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    metrics

    initiateMetricsForOrganization

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "metrics": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "metrics": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/start", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/metrics/start

    Start collecting metrics for an organization

    Start data collection for missing metrics. The organization must have metrics support enabled.

    Body parameter

    {
      "metrics": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body MetricsFilter false none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    readyMetricsForOrganization

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/ready", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/metrics/ready

    Retrieve metrics that are ready for an organization

    Retrieve the list of metrics that have completed data collection for an organization.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "organizationId": 0,
        "provider": "gh",
        "organizationName": "string",
        "readyMetrics": [
          "string"
        ],
        "startedAt": "2019-08-24T14:15:22Z"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Ready metrics for the Organization OrganizationReadyMetricsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveLatestMetricValue

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "entityFilter": {
        "repositories": [
          "string"
        ],
        "segmentIds": [
          0
        ]
      },
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "entityFilter": {
        "repositories": [
          "string"
        ],
        "segmentIds": [
          0
        ]
      },
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest

    Retrieve the latest value of a metric

    Retrieve the latest value for an aggregating metric (e.g., open issues).

    Note: It does not work for accumulating metrics, such as fixed issues

    Body parameter

    {
      "entityFilter": {
        "repositories": [
          "string"
        ],
        "segmentIds": [
          0
        ]
      },
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body MetricFilter true none

    Example responses

    200 Response

    {
      "data": {
        "value": 0.1,
        "latestValue": 0.1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The latest value of the requested metric MetricValueResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveLatestMetricGroupedValues

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/latest-grouped

    Retrieve the latest metric values grouped by dimension

    Retrieve an array of the latest values for an aggregating metric, based on the groupBy options. The groupBy can be organization, repository, or a valid dimension for the requested metric.

    Note:

    • It does not work for accumulating metrics, such as fixed issues

    Body parameter

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body GroupMetricFilter true none

    Example responses

    200 Response

    {
      "data": [
        {
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK A grouping of the latest values for the requested metric PeriodGroupedMetricValuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveValueForPeriod

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period

    Retrieve metric value for a specific period

    Retrieve the value for a metric for a specific period, identified by its start date.

    Notes:

    • Aggregating metrics provide the average value.
    • Accumulating metrics provide the sum, representing the total historical change.

    Body parameter

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body PeriodMetricFilterBody true none

    Example responses

    200 Response

    {
      "data": {
        "value": 0.1,
        "latestValue": 0.1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The value of the requested metric MetricValueResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveGroupedValuesForPeriod

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/period-grouped

    Retrieve metric values for a specific period grouped by dimension

    Retrieve an array of values for a metric for a specific period, identified by its start date, grouped according to the groupBy field. The groupBy can be organization, repository, or a valid dimension for the requested metric.

    Notes:

    • Aggregating metrics provide the average value.
    • Accumulating metrics provide the sum, representing the total historical change.

    Body parameter

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body PeriodGroupMetricFilterBody true none

    Example responses

    200 Response

    {
      "data": [
        {
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The value of the requested metric PeriodGroupedMetricValuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveTimerangeMetricValues

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/metrics/{metricName}/timerange

    Retrieve metric values for a time range

    Retrieve a specific metric's values for a given time range. The response includes values grouped by period date and optionally by an additional groupBy parameter. The groupBy can be organization, repository, or a valid dimension for the requested metric.

    Notes:

    • Aggregating metrics provide the average value.
    • Accumulating metrics provide the sum, representing the total historical change.
    • period can be used to control the time granularity of returned data (day, week, month). If omitted, the backend chooses a default.

    Body parameter

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body TimerangeMetricFilterBody true none

    Example responses

    200 Response

    {
      "data": [
        {
          "date": "2019-08-24T14:15:22Z",
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0.1
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The value of the requested metric TimerangeMetricValuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    readyMetricsForEnterprise

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/ready", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /enterprises/{provider}/{enterpriseName}/metrics/ready

    *Retrieve metrics that are ready for each organization in an enterprise *

    Retrieve the list of metrics that have completed data collection for each organization in the enterprise.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)

    Example responses

    200 Response

    {
      "data": [
        {
          "organizationId": 0,
          "organizationName": "string",
          "readyMetrics": [
            "string"
          ],
          "startedAt": "2019-08-24T14:15:22Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Ready metrics for the Organization ReadyMetricsForEnterpriseResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveLatestMetricValueForEnterprise

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest

    Retrieve latest metric values for all organizations in an enterprise

    Retrieve the latest value for each organization in an enterprise for an aggregating metric (e.g., open issues).

    Note: It does not work for accumulating metrics, such as fixed issues

    Body parameter

    {
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body EnterpriseMetricFilter false none

    Example responses

    200 Response

    {
      "data": {
        "value": 0.1,
        "latestValue": 0.1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The latest value of the requested metric for each organization in enterprise MetricValueResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveLatestMetricGroupedValuesForEnterprise

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /enterprises/{provider}/{enterpriseName}/metrics/{metricName}/latest-grouped

    Retrieve latest metric values grouped by dimension for all organizations in an enterprise

    Retrieve an array of the latest values for an aggregating metric for each organization in an enterprise, based on the groupBy options. The groupBy can be organization or a valid dimension for the requested metric.

    Note:

    • It does not work for accumulating metrics, such as fixed issues
    • It does not allow grouping by repository (disabled)

    Body parameter

    {
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body EnterpriseGroupMetricFilter true none

    Example responses

    200 Response

    {
      "data": [
        {
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK A grouping of the latest values for the requested metric for each organization in enterprise PeriodGroupedMetricValuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveValueForPeriodForEnterprise

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period

    Retrieve metric values for a specific period for all organizations in an enterprise

    Retrieve the value for a metric for each organization in an enterprise, for a specific period, identified by its start date.

    Notes:

    • Aggregating metrics provide the average value.
    • Accumulating metrics provide the sum, representing the total historical change.
    • It does not allow grouping by repository (disabled)

    Body parameter

    {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body EnterprisePeriodMetricFilterBody true none

    Example responses

    200 Response

    {
      "data": {
        "value": 0.1,
        "latestValue": 0.1
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The value of the requested metric for each organization in enterprise MetricValueResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveGroupedValuesForPeriodForEnterprise

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /enterprises/{provider}/{enterpriseName}/metrics/{metricName}/period-grouped

    Retrieve metric values grouped by dimension for a specific period for all organizations in an enterprise

    Retrieve an array of values for a metric for each organization in an enterprise, for a specific period, identified by its start date, grouped according to the groupBy field. The groupBy can be organization or a valid dimension for the requested metric.

    Notes:

    • Aggregating metrics provide the average value.
    • Accumulating metrics provide the sum, representing the total historical change.
    • It does not allow grouping by repository (disabled)

    Body parameter

    {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body EnterprisePeriodGroupMetricFilterBody true none

    Example responses

    200 Response

    {
      "data": [
        {
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The value of the requested metric for each organization in enterprise PeriodGroupedMetricValuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    retrieveTimerangeMetricValuesForEnterprise

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /enterprises/{provider}/{enterpriseName}/metrics/{metricName}/timerange

    Retrieve metric values for a time range for all organizations in an enterprise

    Retrieve a specific metric's values for each organization in an enterprise, for a given time range. The response includes values grouped by period date and optionally by an additional groupBy parameter. The groupBy can be organization or a valid dimension for the requested metric.

    Notes:

    • Aggregating metrics provide the average value.
    • Accumulating metrics provide the sum, representing the total historical change.
    • It does not allow grouping by repository (disabled)
    • period can be used to control the time granularity of returned data (day, week, month). If omitted, the backend chooses a default.

    Body parameter

    {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)
    metricName path string true Name of the metric to retrieve. Get all available metrics using readyMetricsForOrganization
    body body EnterpriseTimerangeMetricFilterBody true none

    Example responses

    200 Response

    {
      "data": [
        {
          "date": "2019-08-24T14:15:22Z",
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0.1
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK The value of the requested metric for each organization in enterprise TimerangeMetricValuesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    coding standards

    getAiRiskCheckList

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/ai-risk-checklist

    Get AI Risk Checklist for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": [
        {
          "key": "string",
          "check": true,
          "number": 0,
          "threshold": 0,
          "total": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of AI Risk Checklist for an organization AiRiskChecklistResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    listCodingStandards

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/coding-standards

    List the coding standards for an organization, including draft coding standards

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 0,
          "name": "string",
          "isDraft": true,
          "isDefault": true,
          "languages": [
            "string"
          ],
          "meta": {
            "enabledToolsCount": 0,
            "enabledPatternsCount": 0,
            "linkedRepositoriesCount": 0
          },
          "complianceType": "ai-risk"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of coding standards for an organization CodingStandardsListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    createCodingStandard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "name": "Security best practices",
      "languages": [
        "Java",
        "Go"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "name": "Security best practices",
      "languages": [
        "Java",
        "Go"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/coding-standards

    Create a draft coding standard for an organization

    To promote the draft coding standard to an effective coding standard, see promoteDraftCodingStandard.

    Body parameter

    {
      "name": "Security best practices",
      "languages": [
        "Java",
        "Go"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    sourceRepository query string false Name of a repository in the same organization to use as a template when creating the new coding standard
    sourceCodingStandard query integer(int64) false Identifier of an existing coding standard to use as a template when creating a new coding standard, including the enabled repositories and default coding standard status
    body body CreateCodingStandardBody true Details of the coding standard to create

    Detailed descriptions

    sourceCodingStandard: Identifier of an existing coding standard to use as a template when creating a new coding standard, including the enabled repositories and default coding standard status

    Example responses

    201 Response

    {
      "data": {
        "id": 0,
        "name": "string",
        "isDraft": true,
        "isDefault": true,
        "languages": [
          "string"
        ],
        "meta": {
          "enabledToolsCount": 0,
          "enabledPatternsCount": 0,
          "linkedRepositoriesCount": 0
        },
        "complianceType": "ai-risk"
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successfully created a coding standard CodingStandardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    createComplianceStandard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "name": "AI Usage Compliance",
      "complianceType": "ai-risk"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "name": "AI Usage Compliance",
      "complianceType": "ai-risk"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/compliance-standards", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/compliance-standards

    Create a compliance standard for an organization

    Body parameter

    {
      "name": "AI Usage Compliance",
      "complianceType": "ai-risk"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body CreateComplianceStandardBody true Details of the compliance standard to create

    Example responses

    201 Response

    {
      "data": {
        "id": 0,
        "name": "string",
        "isDraft": true,
        "isDefault": true,
        "languages": [
          "string"
        ],
        "meta": {
          "enabledToolsCount": 0,
          "enabledPatternsCount": 0,
          "linkedRepositoriesCount": 0
        },
        "complianceType": "ai-risk"
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successfully created a compliance standard CodingStandardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    createCodingStandardPreset

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "name": "Security best practices",
      "isDefault": true,
      "presets": {
        "bugRisk": 1,
        "security": 1,
        "bestPractices": 1,
        "codeStyle": 1,
        "documentation": 1
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "name": "Security best practices",
      "isDefault": true,
      "presets": {
        "bugRisk": 1,
        "security": 1,
        "bestPractices": 1,
        "codeStyle": 1,
        "documentation": 1
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/presets-standards", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/presets-standards

    Create a coding standard for an organization choosing from a series of presets.

    Body parameter

    {
      "name": "Security best practices",
      "isDefault": true,
      "presets": {
        "bugRisk": 1,
        "security": 1,
        "bestPractices": 1,
        "codeStyle": 1,
        "documentation": 1
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body CreateCodingStandardPresetBody true Details of the coding standard to create

    Example responses

    201 Response

    {
      "data": {
        "id": 0,
        "name": "string",
        "isDraft": true,
        "isDefault": true,
        "languages": [
          "string"
        ],
        "meta": {
          "enabledToolsCount": 0,
          "enabledPatternsCount": 0,
          "linkedRepositoriesCount": 0
        },
        "complianceType": "ai-risk"
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successfully created a coding standard CodingStandardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getCodingStandard

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}

    Get a coding standard

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier

    Example responses

    200 Response

    {
      "data": {
        "id": 0,
        "name": "string",
        "isDraft": true,
        "isDefault": true,
        "languages": [
          "string"
        ],
        "meta": {
          "enabledToolsCount": 0,
          "enabledPatternsCount": 0,
          "linkedRepositoriesCount": 0
        },
        "complianceType": "ai-risk"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CodingStandardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    deleteCodingStandard

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}

    Delete a coding standard

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    duplicateCodingStandard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/duplicate

    Duplicate a coding standard

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier

    Example responses

    200 Response

    {
      "data": {
        "id": 0,
        "name": "string",
        "isDraft": true,
        "isDefault": true,
        "languages": [
          "string"
        ],
        "meta": {
          "enabledToolsCount": 0,
          "enabledPatternsCount": 0,
          "linkedRepositoriesCount": 0
        },
        "complianceType": "ai-risk"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CodingStandardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listCodingStandardTools

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools

    List tools in a coding standard

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier

    Example responses

    200 Response

    {
      "data": [
        {
          "codingStandardId": 0,
          "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
          "isEnabled": true
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CodingStandardToolsListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error An unexpected error occurred while listing the tools of the coding standard InternalServerError

    setDefaultCodingStandard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "isDefault": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "isDefault": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/setDefault

    Set the default coding standard for an organization

    Body parameter

    {
      "isDefault": true
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier
    body body SetDefaultCodingStandardBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listCodingStandardPatterns

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns

    List the code patterns configured for a tool in a coding standard

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier
    toolUuid path string true Unique identifier (UUID) for the tool
    languages query string false Comma-separated list of programming languages to filter results by
    categories query string false Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.
    severityLevels query string false Filter by a comma-separated list of code pattern severity levels. Valid values are Error, High, Warning, and Info.
    tags query string false Filter by a comma-separated list of pattern tags
    search query string false Filter results by searching for this string
    enabled query boolean false Filter by pattern status. Set to true to return only enabled patterns, or false to return only disabled patterns
    recommended query boolean false Filter by recommended status. Set to true to return only recommended patterns, or false to return only non-recommended patterns
    sort query string false Field used to sort the tool's code patterns. Valid values are category, recommended, and severity.
    direction query string false Sort direction. Possible values are 'asc' (ascending) or 'desc' (descending).
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Detailed descriptions

    categories: Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.

    Example responses

    200 Response

    {
      "data": [
        {
          "patternDefinition": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error",
            "description": "Enforce getter and setter pairs in objects and classes",
            "explanation": "Accessor pairs description",
            "enabled": true,
            "languages": [
              "JavaScript"
            ],
            "timeToFix": 5,
            "parameters": [
              {
                "name": "getWithoutSet",
                "description": "getWithoutSet",
                "default": "true"
              }
            ],
            "rationale": "string",
            "solution": "string",
            "goodExamples": [
              "string"
            ],
            "badExamples": [
              "string"
            ],
            "tags": [
              "string"
            ]
          },
          "enabled": true,
          "isCustom": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ],
          "enabledBy": [
            {
              "id": 0,
              "name": "string"
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "meta": {
        "totalEnabled": 35
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ConfiguredPatternsListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    codingStandardToolPatternsOverview

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/overview

    Get patterns overview for a coding standard tool

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier
    toolUuid path string true Unique identifier (UUID) for the tool
    languages query string false Comma-separated list of programming languages to filter results by
    categories query string false Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.
    severityLevels query string false Filter by a comma-separated list of code pattern severity levels. Valid values are Error, High, Warning, and Info.
    tags query string false Filter by a comma-separated list of pattern tags
    search query string false Filter results by searching for this string
    enabled query boolean false Filter by pattern status. Set to true to return only enabled patterns, or false to return only disabled patterns
    recommended query boolean false Filter by recommended status. Set to true to return only recommended patterns, or false to return only non-recommended patterns

    Detailed descriptions

    categories: Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.

    Example responses

    200 Response

    {
      "data": {
        "counts": {
          "languages": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "categories": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "severities": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "tags": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "totalRecommended": 0,
          "totalEnabled": 0
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ToolPatternsOverviewResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateCodingStandardPatterns

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "enabled": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "enabled": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}/patterns/update

    Bulk update the code patterns of a tool in a coding standard

    Use filters to specify the code patterns to update, or omit the filters to update all code patterns.

    Body parameter

    {
      "enabled": true
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier
    toolUuid path string true Unique identifier (UUID) for the tool
    languages query string false Comma-separated list of programming languages to filter results by
    categories query string false Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.
    severityLevels query string false Filter by a comma-separated list of code pattern severity levels. Valid values are Error, High, Warning, and Info.
    tags query string false Filter by a comma-separated list of pattern tags
    search query string false Filter results by searching for this string
    recommended query boolean false Filter by recommended status. Set to true to return only recommended patterns, or false to return only non-recommended patterns
    body body UpdatePatternsBody true none

    Detailed descriptions

    categories: Filter by a comma-separated list of code pattern categories. Valid values are Security, ErrorProne, CodeStyle, Compatibility, UnusedCode, Complexity, Comprehensibility, Documentation, BestPractice, and Performance.

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    updateCodingStandardToolConfiguration

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid} \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid} HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "enabled": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "enabled": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/tools/{toolUuid}

    Configure a tool in a draft coding standard

    Toggle a tool and configure its code patterns in a draft coding standard. Only the code patterns included in the body are updated, and if there are none only the enabled status of the tool is set. You can only update draft coding standards and configure a maximum of 1000 code patterns per call.

    Body parameter

    {
      "enabled": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier
    toolUuid path string true Unique identifier (UUID) for the tool
    body body ToolConfiguration true Configuration of a tool and its code patterns

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listCodingStandardRepositories

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories

    List the repositories that are using a coding standard

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryId": 0,
          "name": "codacy-eslint"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CodingStandardRepositoriesListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    applyCodingStandardToRepositories

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/repositories

    Apply a coding standard to a list of repositories

    Link or unlink a coding standard to a list of repositories. If the coding standard is a draft, the changes will only be effective when promoting the draft coding standard.

    Body parameter

    {
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier
    body body ApplyCodingStandardToRepositoriesBody true none

    Example responses

    200 Response

    {
      "data": {
        "successful": [
          "string"
        ],
        "failed": [
          "string"
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ApplyCodingStandardToRepositoriesResultResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    promoteDraftCodingStandard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/coding-standards/{codingStandardId}/promote

    Promote a draft coding standard to an effective coding standard

    If the draft coding standard is marked as default, it becomes the new default coding standard. The response includes the result of applying the coding standard to the repositories.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    codingStandardId path integer(int64) true Coding standard identifier

    Example responses

    200 Response

    {
      "data": {
        "successful": [
          "string"
        ],
        "failed": [
          "string"
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ApplyCodingStandardToRepositoriesResultResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    file

    getFileExtensionsSettings

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions

    Get the list of supported file extensions associated with each language in a repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "languagesExtensions": [
        {
          "name": "string",
          "codacyDefaults": [
            "string"
          ],
          "extensions": [
            "string"
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation FileExtensionsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    patchFileExtensionsSettings

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "languagesExtensions": [
        {
          "name": "string",
          "extensions": [
            "string"
          ]
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "languagesExtensions": [
        {
          "name": "string",
          "extensions": [
            "string"
          ]
        }
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/file-extensions

    Update the custom file extensions for a repository

    Body parameter

    {
      "languagesExtensions": [
        {
          "name": "string",
          "extensions": [
            "string"
          ]
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body FileExtensionsBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getFileContent

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/files/{filePath}/content

    *Returns the content of the given file for a given commit reference. If the requested file is over 1MB, a 'PayloadTooLarge' error is returned. *

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    filePath path string true URL encoded path for a file from the root of the repository
    startLine query integer(int32) false Line number where the code block starts
    endLine query integer(int32) false Line number where the code block ends
    commitRef query string false A reference to a commit (branch name, tag, or commit hash). Defaults to HEAD which represents the head of the default branch.

    Example responses

    200 Response

    {
      "data": [
        {
          "number": 0,
          "content": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation CodeBlockLineListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    413 Payload Too Large Content too large PayloadTooLarge
    500 Internal Server Error Internal Server Error InternalServerError

    coverage

    getRepositoryPullRequestCoverage

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}

    Get pull request coverage information from a repository

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "data": {
        "pullRequest": {
          "id": 1,
          "number": 1,
          "updated": "2019-05-07T14:29:13.43Z",
          "status": "open",
          "repository": "awesome-repository",
          "title": "Amazing pull request",
          "owner": {
            "name": "Foo",
            "avatarUrl": "https://example.com/foo",
            "username": "foo.bar",
            "email": "foobar@example.com"
          },
          "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
          "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
          "originBranch": "feat-branch",
          "targetBranch": "master",
          "gitHref": "https://github.com/..."
        },
        "coverage": {
          "deltaCoverage": 71,
          "diffCoverage": {
            "value": 71,
            "coveredLines": 11,
            "coverableLines": 21,
            "cause": "NoCoverableLines"
          },
          "isUpToStandards": true,
          "resultReasons": [
            {
              "gate": "string",
              "expected": -1,
              "expectedThreshold": {
                "threshold": 0,
                "minimumSeverity": "Error"
              },
              "isUpToStandards": true
            }
          ]
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PullRequestWithCoverageResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getRepositoryPullRequestFilesCoverage

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/files

    Get pull request files coverage information from a repository

    Note: When applied to public repositories, this operation does not require authentication.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "data": [
        {
          "fileName": "string",
          "coverage": 0,
          "variation": 0,
          "diff": {
            "value": 71,
            "coveredLines": 11,
            "coverableLines": 21,
            "cause": "NoCoverableLines"
          },
          "diffLineHits": [
            {
              "lineNumber": "string",
              "hits": 0
            }
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation PullRequestFilesCoverageResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    reanalyzeCoverage

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/reanalyze

    Triggers the reanalysis of the latest coverage report uploaded for the pull request

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getPullRequestGitDiff

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /coverage/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/pull-requests/{pullRequestNumber}/diff

    Get the human-readable Git diff of a pull request

    Deprecated: Use getDiffBetweenCommits instead.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    pullRequestNumber path integer(int32) true Pull request number

    Example responses

    200 Response

    {
      "diff": "diff --git a/example.md b/example.md\nindex 9eeb703..777b981 100644\n--- a/example.md\n+++ b/example.md\n@@ -1 +1 @@\n-Edited line\n+Edited line (edit)\n"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DiffResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    security

    listSecurityItems

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/items

    List security and risk management items for an organization

    Deprecated: Use searchSecurityItems instead. Repository filtering is limited to 100 names.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    repositories query string false Deprecated: Use searchOrganizationRepositoriesWithAnalysis instead.
    status query array[string] false Security issue status to filter by. See SrmStatus for valid values.
    priority query array[string] false Security issue priorities to filter by. See SrmPriority for valid values.
    category query array[string] false Security categories to filter by. Use _other_ to search for issues that don't have a security category.
    scanType query array[string] false Security scan type to filter by

    Enumerated Values

    Parameter Value
    status Overdue
    status OnTrack
    status DueSoon
    status ClosedOnTime
    status ClosedLate
    status Ignored
    priority Low
    priority Medium
    priority High
    priority Critical

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
          "itemSource": "Codacy",
          "itemSourceId": "764334",
          "title": "Codacy quality - critical security issue 764334",
          "repository": "codacy-docs",
          "openedAt": "2017-07-21T17:32:28Z",
          "closedAt": "2017-08-21T17:32:28Z",
          "dueAt": "2017-07-21T17:32:28Z",
          "ignored": {
            "at": "2017-08-21T17:32:28Z",
            "authorId": 42,
            "authorName": "John Doe",
            "reason": "False positive"
          },
          "priority": "Critical",
          "status": "Overdue",
          "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
          "projectKey": "PUL",
          "securityCategory": "Cryptography",
          "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
          "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
          "cvssScore": 0.42,
          "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
          "cwe": "CWE-122",
          "cve": "CVE-1970-1234",
          "affectedVersion": "1.0.0",
          "fixedVersion": [
            "1.0.1"
          ],
          "application": "https://example.com",
          "affectedTargets": "https://example.com",
          "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
          "likelihood": "Low",
          "effortToFix": "High",
          "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
          "dastTargetUrls": "string",
          "imageName": "string",
          "imageTag": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Returns security and risk management items. SrmItemsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    ignoreSecurityItem

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "reason": "string",
      "comment": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "reason": "string",
      "comment": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/ignore

    Ignore a single item with an optional comment

    Body parameter

    {
      "reason": "string",
      "comment": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    srmItemId path string(uuid) true Identifier of the security and risk management item
    body body IgnoreSRMItemBody true Request body of ignore item information

    Example responses

    200 Response

    {
      "data": {
        "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
        "itemSource": "Codacy",
        "itemSourceId": "764334",
        "title": "Codacy quality - critical security issue 764334",
        "repository": "codacy-docs",
        "openedAt": "2017-07-21T17:32:28Z",
        "closedAt": "2017-08-21T17:32:28Z",
        "dueAt": "2017-07-21T17:32:28Z",
        "ignored": {
          "at": "2017-08-21T17:32:28Z",
          "authorId": 42,
          "authorName": "John Doe",
          "reason": "False positive"
        },
        "priority": "Critical",
        "status": "Overdue",
        "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
        "projectKey": "PUL",
        "securityCategory": "Cryptography",
        "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
        "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
        "cvssScore": 0.42,
        "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
        "cwe": "CWE-122",
        "cve": "CVE-1970-1234",
        "affectedVersion": "1.0.0",
        "fixedVersion": [
          "1.0.1"
        ],
        "application": "https://example.com",
        "affectedTargets": "https://example.com",
        "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
        "likelihood": "Low",
        "effortToFix": "High",
        "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
        "dastTargetUrls": "string",
        "imageName": "string",
        "imageTag": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Returns a security and risk management item. SrmItemResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    unignoreSecurityItem

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}/unignore

    Unignore a single item (only previously ignored items can be unignored)

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    srmItemId path string(uuid) true Identifier of the security and risk management item

    Example responses

    200 Response

    {
      "data": {
        "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
        "itemSource": "Codacy",
        "itemSourceId": "764334",
        "title": "Codacy quality - critical security issue 764334",
        "repository": "codacy-docs",
        "openedAt": "2017-07-21T17:32:28Z",
        "closedAt": "2017-08-21T17:32:28Z",
        "dueAt": "2017-07-21T17:32:28Z",
        "ignored": {
          "at": "2017-08-21T17:32:28Z",
          "authorId": 42,
          "authorName": "John Doe",
          "reason": "False positive"
        },
        "priority": "Critical",
        "status": "Overdue",
        "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
        "projectKey": "PUL",
        "securityCategory": "Cryptography",
        "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
        "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
        "cvssScore": 0.42,
        "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
        "cwe": "CWE-122",
        "cve": "CVE-1970-1234",
        "affectedVersion": "1.0.0",
        "fixedVersion": [
          "1.0.1"
        ],
        "application": "https://example.com",
        "affectedTargets": "https://example.com",
        "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
        "likelihood": "Low",
        "effortToFix": "High",
        "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
        "dastTargetUrls": "string",
        "imageName": "string",
        "imageTag": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Returns a security and risk management item. SrmItemResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getSecurityItem

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/items/{srmItemId}

    Get a single security and risk management finding

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    srmItemId path string(uuid) true Identifier of the security and risk management item

    Example responses

    200 Response

    {
      "data": {
        "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
        "itemSource": "Codacy",
        "itemSourceId": "764334",
        "title": "Codacy quality - critical security issue 764334",
        "repository": "codacy-docs",
        "openedAt": "2017-07-21T17:32:28Z",
        "closedAt": "2017-08-21T17:32:28Z",
        "dueAt": "2017-07-21T17:32:28Z",
        "ignored": {
          "at": "2017-08-21T17:32:28Z",
          "authorId": 42,
          "authorName": "John Doe",
          "reason": "False positive"
        },
        "priority": "Critical",
        "status": "Overdue",
        "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
        "projectKey": "PUL",
        "securityCategory": "Cryptography",
        "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
        "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
        "cvssScore": 0.42,
        "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
        "cwe": "CWE-122",
        "cve": "CVE-1970-1234",
        "affectedVersion": "1.0.0",
        "fixedVersion": [
          "1.0.1"
        ],
        "application": "https://example.com",
        "affectedTargets": "https://example.com",
        "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
        "likelihood": "Low",
        "effortToFix": "High",
        "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
        "dastTargetUrls": "string",
        "imageName": "string",
        "imageTag": "string"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Returns security and risk management items. SrmItemResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    searchSecurityItems

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "repositories": [
        "string"
      ],
      "priorities": [
        "string"
      ],
      "statuses": [
        "string"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "dastTargetUrls": [
        "string"
      ],
      "searchText": "string",
      "containerImage": {
        "name": "string",
        "tag": "string"
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "repositories": [
        "string"
      ],
      "priorities": [
        "string"
      ],
      "statuses": [
        "string"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "dastTargetUrls": [
        "string"
      ],
      "searchText": "string",
      "containerImage": {
        "name": "string",
        "tag": "string"
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/items/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/items/search

    List security and risk management items for an organization

    Body parameter

    {
      "repositories": [
        "string"
      ],
      "priorities": [
        "string"
      ],
      "statuses": [
        "string"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "dastTargetUrls": [
        "string"
      ],
      "searchText": "string",
      "containerImage": {
        "name": "string",
        "tag": "string"
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    sort query string false Field to sort SRM items by
    direction query string false Sort direction. Possible values are 'asc' (ascending) or 'desc' (descending).
    body body SearchSRMItems false Request body with items filters.

    Enumerated Values

    Parameter Value
    sort Status
    sort DetectedAt

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
          "itemSource": "Codacy",
          "itemSourceId": "764334",
          "title": "Codacy quality - critical security issue 764334",
          "repository": "codacy-docs",
          "openedAt": "2017-07-21T17:32:28Z",
          "closedAt": "2017-08-21T17:32:28Z",
          "dueAt": "2017-07-21T17:32:28Z",
          "ignored": {
            "at": "2017-08-21T17:32:28Z",
            "authorId": 42,
            "authorName": "John Doe",
            "reason": "False positive"
          },
          "priority": "Critical",
          "status": "Overdue",
          "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
          "projectKey": "PUL",
          "securityCategory": "Cryptography",
          "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
          "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
          "cvssScore": 0.42,
          "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
          "cwe": "CWE-122",
          "cve": "CVE-1970-1234",
          "affectedVersion": "1.0.0",
          "fixedVersion": [
            "1.0.1"
          ],
          "application": "https://example.com",
          "affectedTargets": "https://example.com",
          "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
          "likelihood": "Low",
          "effortToFix": "High",
          "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
          "dastTargetUrls": "string",
          "imageName": "string",
          "imageTag": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Returns security and risk management items. SrmItemsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getSecurityDashboard

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/dashboard

    Get metrics for the security and risk management dashboard

    Deprecated: Use searchSecurityDashboard instead. Repository filtering is limited to 100 names.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositories query string false Deprecated: Use searchOrganizationRepositoriesWithAnalysis instead.
    priority query array[string] false Security issue priorities to filter by. See SrmPriority for valid values.
    category query array[string] false Security categories to filter by. Use _other_ to search for issues that don't have a security category.
    scanType query array[string] false Security scan type to filter by

    Enumerated Values

    Parameter Value
    priority Low
    priority Medium
    priority High
    priority Critical

    Example responses

    200 Response

    {
      "data": {
        "totalOpen": 0,
        "totalNewThisWeek": 0,
        "totalClosed": 0,
        "onTrack": 0,
        "dueSoon": 0,
        "overdue": 0,
        "closedOnTime": 0,
        "closedLate": 0,
        "openCritical": 0,
        "openHigh": 0,
        "openMedium": 0,
        "openLow": 0,
        "openSAST": 0,
        "openSCA": 0,
        "openContainerSCA": 0,
        "openSecrets": 0,
        "openIaC": 0,
        "openCICD": 0,
        "openLicense": 0,
        "openPenTesting": 0,
        "openDAST": 0,
        "openCSPM": 0,
        "openScanNotAttributed": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SRMDashboardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    searchSecurityDashboard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "repositories": [
        "string"
      ],
      "priorities": [
        "Low"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "repositories": [
        "string"
      ],
      "priorities": [
        "Low"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/dashboard

    Get metrics for the security and risk management dashboard

    Body parameter

    {
      "repositories": [
        "string"
      ],
      "priorities": [
        "Low"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SearchSRMDashboard false Request body with dashboard filters.

    Example responses

    200 Response

    {
      "data": {
        "totalOpen": 0,
        "totalNewThisWeek": 0,
        "totalClosed": 0,
        "onTrack": 0,
        "dueSoon": 0,
        "overdue": 0,
        "closedOnTime": 0,
        "closedLate": 0,
        "openCritical": 0,
        "openHigh": 0,
        "openMedium": 0,
        "openLow": 0,
        "openSAST": 0,
        "openSCA": 0,
        "openContainerSCA": 0,
        "openSecrets": 0,
        "openIaC": 0,
        "openCICD": 0,
        "openLicense": 0,
        "openPenTesting": 0,
        "openDAST": 0,
        "openCSPM": 0,
        "openScanNotAttributed": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SRMDashboardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    searchSecurityDashboardRepositories

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/dashboard/repositories/search

    List repositories with security findings

    If no filter is specified, only the 10 repositories with the most findings are returned.

    Body parameter

    {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SearchSRMDashboardRepositories false Request body with filters.

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 0,
          "name": "important-repo",
          "critical": 0,
          "high": 0,
          "medium": 0,
          "low": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SRMDashboardRepositoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    searchSecurityDashboardHistory

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/dashboard/history/search

    Get the evolution of security findings over time

    Body parameter

    {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SearchSRMDashboardHistory false Request body with filters.

    Example responses

    200 Response

    {
      "data": [
        {
          "since": "2024-03-04T00:00:00Z",
          "until": "2024-03-11T00:00:00Z",
          "newCritical": 0,
          "newHigh": 0,
          "newMedium": 0,
          "newLow": 0,
          "fixedCritical": 0,
          "fixedHigh": 0,
          "fixedMedium": 0,
          "fixedLow": 0,
          "openCritical": 0,
          "openHigh": 0,
          "openMedium": 0,
          "openLow": 0,
          "ignoredCritical": 0,
          "ignoredHigh": 0,
          "ignoredMedium": 0,
          "ignoredLow": 0,
          "unignoredCritical": 0,
          "unignoredHigh": 0,
          "unignoredMedium": 0,
          "unignoredLow": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SRMDashboardHistoryResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    searchSecurityDashboardCategories

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/dashboard/categories/search

    List security categories with findings

    If no filter is specified, only the 10 categories with the most findings are returned.

    Body parameter

    {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SearchSRMDashboardCategories false Request body with filters.

    Example responses

    200 Response

    {
      "data": [
        {
          "name": "Cryptography",
          "total": 0
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SRMDashboardCategoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    uploadDASTReport

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports \
      -H 'Content-Type: multipart/form-data' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports HTTP/1.1
    Host: app.codacy.com
    Content-Type: multipart/form-data
    Accept: application/json
    
    
    const inputBody = '{
      "file": "string",
      "reportFormat": "json"
    }';
    const headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "file": "string",
      "reportFormat": "json"
    };
    const headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'multipart/form-data',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'multipart/form-data',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"multipart/form-data"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/tools/dast/{toolName}/reports

    *Upload dynamic application security testing (DAST) scan report generated by the specified tool in the specified format. For ZAP reports (see https://www.zaproxy.org/docs/desktop/addons/report-generation/report-traditional-json), please guarantee that @generated timestamps are in an English locale, using the format EEE, d MMM yyyy HH:mm:ss (which is ZAP's default), otherwise the report won't be processed. *

    Body parameter

    file: string
    reportFormat: json
    
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true none
    toolName path string true The tool used to generate the DAST results
    body body object true none
    » file body string(binary) true The file containing DAST results
    » reportFormat body string true The format the report is provided in

    Enumerated Values

    Parameter Value
    toolName ZAP
    » reportFormat json

    Example responses

    200 Response

    {
      "id": "847feb32-9ff2-11ea-bb37-0242ac130002"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Report successfully uploaded. SRMDASTReportUploadResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listDastReports

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/dast/reports", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/dast/reports

    List uploaded DAST scan reports and their state

    Results are sorted by submission date, from latest to earliest.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "id": "9a4f2183-c2a8-4f38-abe9-1041c5dc9b05",
          "organizationId": 12455,
          "createdAt": "2024-03-14T06:54:42.869673Z",
          "updatedAt": "2024-03-14T06:54:42.869673Z",
          "generatedAt": "2024-03-14T06:54:42.869673Z",
          "state": "InProgress",
          "tool": "ZAP",
          "failureReason": "Unrecognized report format."
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SRMDastReportResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listSecurityManagers

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/managers

    List organization admins and security managers

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "userId": 867842577,
          "name": "John Doe",
          "email": "example@codacy.com",
          "createdAt": "2017-07-21T17:32:28Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Returns security managers, including organization admins. SecurityManagersResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    postSecurityManager

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "userId": 867842577
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "userId": 867842577
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/security/managers

    Assign the Security Manager role to an organization member

    Body parameter

    {
      "userId": 867842577
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SecurityManagerBody true User ID of the organization member to be promoted to security manager.

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    deleteSecurityManager

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/managers/{userId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/security/managers/{userId}

    Revoke the Security Manager role from an organization member

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    userId path integer(int64) true Identifier of the organization member

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listSecurityRepositories

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/repositories

    List organization repositories that have security issues

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    segments query string false Filter by a comma-separated list of segment identifiers

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "repositoryId": 45738,
          "provider": "gh",
          "owner": "codacy",
          "name": "codacy-eslint"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation. SecurityRepositoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listSecurityCategories

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/categories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/categories

    List security subcategories that have security issues

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        "Cryptography"
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation. SecurityCategoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getSLAConfig

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/security/sla

    Get the SLA configuration for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "slaConfig": {
        "criticalSla": 0,
        "highSla": 0,
        "mediumSla": 0,
        "lowSla": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SLAConfigResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    updateSLAConfig

    Code samples

    # You can also use wget
    curl -X PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "slaConfig": {
        "criticalSla": 0,
        "highSla": 0,
        "mediumSla": 0,
        "lowSla": 0
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "slaConfig": {
        "criticalSla": 0,
        "highSla": 0,
        "mediumSla": 0,
        "lowSla": 0
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla',
    {
      method: 'PUT',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.put 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.put('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PUT", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/security/sla", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PUT /organizations/{provider}/{remoteOrganizationName}/security/sla

    Update the SLA configuration for an organization

    Body parameter

    {
      "slaConfig": {
        "criticalSla": 0,
        "highSla": 0,
        "mediumSla": 0,
        "lowSla": 0
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SLAConfigBody true SLA Configuration Values

    Example responses

    201 Response

    {
      "slaConfig": {
        "criticalSla": 0,
        "highSla": 0,
        "mediumSla": 0,
        "lowSla": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successful operation SLAConfigResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getOssfScorecard

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "url": "https://www.github.com/codacy/codacy",
      "purl": "maven:ch.qos.logback:logback-classic:1.2.3"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "url": "https://www.github.com/codacy/codacy",
      "purl": "maven:ch.qos.logback:logback-classic:1.2.3"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/security/dependencies/ossf/scorecard", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /security/dependencies/ossf/scorecard

    Get the OSSF Scorecard for a repository

    Body parameter

    {
      "url": "https://www.github.com/codacy/codacy",
      "purl": "maven:ch.qos.logback:logback-classic:1.2.3"
    }
    

    Parameters

    Name In Type Required Description
    body body OssfScorecardUrlRequest true Request body for OSSF Scorecard analysis

    Example responses

    200 Response

    {
      "data": {
        "score": 0.1,
        "date": "string",
        "checks": [
          {
            "name": "string",
            "score": 0.1,
            "reason": "string",
            "details": [
              "string"
            ],
            "documentation": {
              "url": "https://github.com/ossf/scorecard/blob/40576783fda6698350fcbbeaea760ff827433034/docs/checks.md#code-review",
              "short": "Determines if the project requires human code review before pull requests (aka merge requests) are merged."
            },
            "severity": "Critical"
          }
        ],
        "failingCheckCount": 0,
        "passingCheckCount": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation OssfScorecardResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    jira

    createJiraTicketDeprecated

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "elementType": "issue",
      "elementIds": [
        "string"
      ],
      "jiraProjectId": 0,
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "elementType": "issue",
      "elementIds": [
        "string"
      ],
      "jiraProjectId": 0,
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/integrations/jira/tickets

    Create a Jira ticket

    Deprecated: Use createJiraTicket instead.

    Body parameter

    {
      "elementType": "issue",
      "elementIds": [
        "string"
      ],
      "jiraProjectId": 0,
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body CreateJiraTicketDeprecatedBody true Create Ticket Fields

    Example responses

    201 Response

    {
      "data": {
        "id": "string",
        "key": "string",
        "summary": "string",
        "assignee": "string",
        "link": "string",
        "status": {
          "key": "string",
          "labels": [
            "string"
          ],
          "color": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successful operation CreateJiraTicketResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    getJiraTickets

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets?elementType=issue&elementId=12345678 \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets?elementType=issue&elementId=12345678 HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets?elementType=issue&elementId=12345678',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets?elementType=issue&elementId=12345678',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets',
      params: {
      'elementType' => 'string',
    'elementId' => 'string'
    }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets', params={
      'elementType': 'issue',  'elementId': '12345678'
    }, headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets?elementType=issue&elementId=12345678");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets

    Get Jira tickets for a Codacy element

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    elementType query string true Type of Codacy element to filter by
    elementId query string true Unique identifier of the Codacy element

    Enumerated Values

    Parameter Value
    elementType issue
    elementType finding
    elementType file
    elementType dependency

    Example responses

    200 Response

    {
      "data": [
        {
          "id": "string",
          "key": "string",
          "summary": "string",
          "assignee": "string",
          "link": "string",
          "status": {
            "key": "string",
            "labels": [
              "string"
            ],
            "color": "string"
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK List of Jira tickets for a specific Codacy element GetJiraTicketsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    createJiraTicket

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "elementType": "issue",
      "jiraProjectId": 0,
      "createJiraTicketElements": [
        {
          "elementId": "string",
          "repositoryName": "string"
        }
      ],
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "elementType": "issue",
      "jiraProjectId": 0,
      "createJiraTicketElements": [
        {
          "elementId": "string",
          "repositoryName": "string"
        }
      ],
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets

    Create a Jira ticket

    Body parameter

    {
      "elementType": "issue",
      "jiraProjectId": 0,
      "createJiraTicketElements": [
        {
          "elementId": "string",
          "repositoryName": "string"
        }
      ],
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body CreateJiraTicketBody true Create Ticket Fields

    Example responses

    201 Response

    {
      "data": {
        "id": "string",
        "key": "string",
        "summary": "string",
        "assignee": "string",
        "link": "string",
        "status": {
          "key": "string",
          "labels": [
            "string"
          ],
          "color": "string"
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successful operation CreateJiraTicketResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    unlinkRepositoryJiraTicket

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier} \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier} HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "elementType": "issue",
      "elementId": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier}',
    {
      method: 'DELETE',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "elementType": "issue",
      "elementId": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier}',
    {
      method: 'DELETE',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/integrations/jira/tickets/{jiraTicketIdentifier}

    Unlink a Jira ticket from a repository

    Body parameter

    {
      "elementType": "issue",
      "elementId": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    jiraTicketIdentifier path integer(int64) true Unique identifier of the Jira ticket
    body body UnlinkRepositoryJiraTicketBody true Unlink Jira Ticket Element Identification

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    Response Schema

    getAvailableJiraProjects

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects

    Get available Jira projects for the organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    search query string false Filter results by searching for this string
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 0,
          "key": "string",
          "name": "string",
          "avatarUrl": "string"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AvailableJiraProjectsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    getJiraProjectIssueTypes

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes

    Get available issue types for a Jira project

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    jiraProjectId path integer(int64) true Identifier of a Jira project
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 0,
          "name": "string",
          "isSubtask": true,
          "iconUrl": "string"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation JiraProjectIssueTypesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    getJiraProjectIssueFields

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/integrations/jira/projects/{jiraProjectId}/issueTypes/{jiraIssueTypeId}/fields

    Get available fields by issue type for a Jira project

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    jiraProjectId path integer(int64) true Identifier of a Jira project
    jiraIssueTypeId path string true Identifier of a Jira project issue type
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "fieldId": "string",
          "name": "string",
          "key": "string",
          "required": true,
          "hasDefaultValue": true
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation JiraProjectIssueFieldsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    airisk

    getAiInventoryOverview

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/overview

    Get AI inventory overview for an organization

    Returns a summary of AI provider usage across the organization, including provider counts, repository counts, and detected patterns

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "data": {
        "totalProviders": 3,
        "providers": [
          {
            "provider": "openai",
            "itemsCount": 12,
            "repositoriesCount": 3,
            "patterns": [
              {
                "patternId": "ai_dependency",
                "count": 5
              }
            ]
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryOverviewResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryResources

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternId": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternId": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/search

    List AI inventory resources for an organization

    Body parameter

    {
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternId": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchAiInventoryResources false Filters for AI inventory resources

    Example responses

    200 Response

    {
      "data": [
        {
          "marker": "gpt-4o-2024-05-13",
          "patternId": "ai_model_usage",
          "vendor": "openai",
          "repositoriesCount": 3,
          "referencesCount": 11
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryResourcesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    listAiRiskRepositories

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories

    List organization repositories that have AI inventory resources.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryId": 45738,
          "name": "my-service",
          "owner": "codacy"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiRiskRepositoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiRiskRepositories

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "segments": [
        1,
        2,
        3
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "segments": [
        1,
        2,
        3
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/repositories/search

    List organization repositories that have AI inventory resources with filters

    Body parameter

    {
      "segments": [
        1,
        2,
        3
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchAiRiskRepositories false Optional filters for listing repositories

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryId": 45738,
          "name": "my-service",
          "owner": "codacy"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiRiskRepositoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryResourceRepositories

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternIds": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternIds": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/search

    List repositories for an AI inventory resource

    Body parameter

    {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternIds": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchAiInventoryResourceRepositories true Required filters identifying the inventory resource (marker, patternId, vendor).

    Detailed descriptions

    body: Required filters identifying the inventory resource (marker, patternId, vendor). Must match a resource from the organization inventory list

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryName": "my-service",
          "filesCount": 11,
          "referencesCount": 5
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryRepositoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryResourceRepositoryFiles

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-risk/inventory/resources/repositories/{repositoryName}/files/search

    List files referencing an AI resource in a repository

    Body parameter

    {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchAiInventoryFiles false Filters for AI inventory files

    Example responses

    200 Response

    {
      "data": [
        {
          "filePath": "src/ai/client.py",
          "lineNumbers": [
            14,
            27,
            85
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryFilesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    aiinventory

    searchAiInventoryProviderSummaries

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summaries/search

    List AI inventory provider summaries for an organization

    Returns a paginated list of provider summaries for an organization. Each summary aggregates resources, references, and repositories for one AI provider, with a per-category-group repository breakdown

    Body parameter

    {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body AiInventoryFilter false Filters for AI inventory provider summaries

    Example responses

    200 Response

    {
      "data": [
        {
          "aiProvider": "Claude Code",
          "resourcesCount": 12,
          "referencesCount": 120,
          "repositoriesCount": 12,
          "categoryGroupBreakdown": [
            {
              "categoryGroup": "usage",
              "repositoriesCount": 12,
              "count": 4
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryProviderSummariesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    getAiInventoryProviderSummary

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "aiProvider": "Claude Code",
      "inventoryItemTypes": [
        "tool"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "aiProvider": "Claude Code",
      "inventoryItemTypes": [
        "tool"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-inventory/providers/summary

    Get AI inventory summary for a specific provider

    Returns the summary for a specific AI provider (resource, reference, and repository counts plus a per-category-group repository breakdown). The provider name is given in the request body since it may contain spaces or special characters (e.g. GPT Engineer)

    Body parameter

    {
      "aiProvider": "Claude Code",
      "inventoryItemTypes": [
        "tool"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body GetAiInventoryProviderSummaryBody true Required AI provider identity and optional filters scoping the summary

    Example responses

    200 Response

    {
      "data": {
        "aiProvider": "Claude Code",
        "resourcesCount": 12,
        "referencesCount": 120,
        "repositoriesCount": 12,
        "categoryGroupBreakdown": [
          {
            "categoryGroup": "usage",
            "repositoriesCount": 12,
            "count": 4
          }
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryProviderSummaryResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryMarkerSummaries

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-inventory/markers/summaries/search

    List AI inventory marker summaries for an organization

    Returns a paginated list of marker summaries for an organization. Each summary represents a distinct inventory resource — a (categoryGroup, category, marker) grouping — with reference and repository counts. Typically called after picking a provider on the provider summaries view; scope the result by passing aiProviders (and/or categoryGroups for the tab filter) in the request body

    Body parameter

    {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body AiInventoryFilter true Filters for AI inventory marker summaries

    Example responses

    200 Response

    {
      "data": [
        {
          "categoryGroup": "usage",
          "category": "code_marker",
          "marker": "Generated with [Claude Code]",
          "referencesCount": 4,
          "repositoriesCount": 3
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryMarkerSummariesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryRepositories

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/search

    List repositories that have AI inventory items

    Returns a paginated list of repositories that have AI inventory items for an organization. Used to populate the Repositories filter dropdown

    Body parameter

    {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body AiInventoryFilter true Filters to scope the returned repositories

    Example responses

    200 Response

    {
      "data": [
        {
          "name": "codacy-website",
          "owner": "codacy"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryRepositoryListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryRepositorySummaries

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-inventory/repositories/summaries/search

    List AI inventory repository summaries for an organization

    Returns a paginated list of repository summaries for an organization. Each summary aggregates resources, references, and AI provider counts for one repository, with a per-category-group reference breakdown

    Body parameter

    {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body AiInventoryFilter true Filters for AI inventory repository summaries

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryName": "my-service",
          "locationsCount": 11,
          "referencesCount": 11
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryRepositorySummariesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryLocationSummaries

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-inventory/locations/summaries/search

    List AI inventory location summaries for an organization

    Returns a paginated list of location summaries for an organization. Each summary represents a distinct location with an array of regions. Location is a URI with a couple custom protocols like repo-file and repo-sha.

    Body parameter

    {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body AiInventoryFilter true Filters for AI inventory location summaries

    Example responses

    200 Response

    {
      "data": [
        {
          "location": "repo-file:src/ai/client.py",
          "regions": [
            "line:10"
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryLocationSummariesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    searchAiInventoryCategories

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/ai-inventory/categories/search

    List AI inventory categories grouped by category group

    Returns the available inventory categories grouped by their category group. Used to populate the Categories filter drawer

    Body parameter

    {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body AiInventoryFilter true Filters to scope the returned categories

    Example responses

    200 Response

    {
      "data": [
        {
          "categoryGroup": "usage",
          "categories": [
            "code_marker",
            "commits",
            "branches"
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation AiInventoryCategoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future. Do not use it in your workflow, scripts, etc.

    language-settings

    getRepositoryLanguages

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages

    Get the list of all languages with their extensions and enabled status

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "languages": [
        {
          "name": "Scala",
          "codacyDefaults": [
            "string"
          ],
          "extensions": [
            "string"
          ],
          "defaultFiles": [
            "string"
          ],
          "enabled": true,
          "detected": true
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation RepositoryLanguageResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future.

    patchRepositoryLanguageResponseSettings

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "languages": [
        {
          "name": "Scala",
          "extensions": [
            "string"
          ],
          "enabled": true
        }
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "languages": [
        {
          "name": "Scala",
          "extensions": [
            "string"
          ],
          "enabled": true
        }
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/repositories/{repositoryName}/settings/languages

    Configure language settings for this repo

    Body parameter

    {
      "languages": [
        {
          "name": "Scala",
          "extensions": [
            "string"
          ],
          "enabled": true
        }
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization
    body body RepositoryLanguagesBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    Response Headers

    Status Header Type Format Description
    204 X-Maturity string Experimental API. Subject to change in the near future.

    app

    gitProviderAppPermissions

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/gitProviderAppPermissions

    Get the status of Codacy Git provider app permissions for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "contentPermission": true,
      "customPropertiesPermission": true
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation. i.e. we could determine permissions. GitProviderAppPermissions
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    enterprise

    deleteEnterpriseToken

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/user/enterprise/integrations/{provider} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/user/enterprise/integrations/{provider} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/enterprise/integrations/{provider}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/enterprise/integrations/{provider}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/user/enterprise/integrations/{provider}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/user/enterprise/integrations/{provider}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/enterprise/integrations/{provider}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/user/enterprise/integrations/{provider}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /user/enterprise/integrations/{provider}

    Delete an Enterprise account token

    This endpoint allows the authenticated user to delete a GitHub Enterprise account token. The token will no longer be used to access enterprise-level resources on GitHub.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    cleanEnterpriseCache

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/enterprises/{provider}/cache/clean", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /enterprises/{provider}/cache/clean

    Clean enterprise cache for the authenticated user

    Clean cached information regarding the authenticated user on the specified enterprise, such as the list of repositories in the enterprise.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listUserEnterpriseProviderTokens

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/user/enterprise/integrations \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/user/enterprise/integrations HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/enterprise/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/enterprise/integrations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/user/enterprise/integrations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/user/enterprise/integrations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/enterprise/integrations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/user/enterprise/integrations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /user/enterprise/integrations

    List user configured enterprise provider account tokens on Codacy's platform

    Example responses

    200 Response

    {
      "data": [
        {
          "provider": "gh"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation EnterpriseAccountTokenListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    addEnterpriseToken

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/user/enterprise/integrations \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/user/enterprise/integrations HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "token": "string",
      "provider": "gh"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/enterprise/integrations',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "token": "string",
      "provider": "gh"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/user/enterprise/integrations',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/user/enterprise/integrations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/user/enterprise/integrations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/user/enterprise/integrations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/user/enterprise/integrations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /user/enterprise/integrations

    Add an Enterprise account token

    This endpoint allows the authenticated user to add a GitHub Enterprise account token with read permissions. The token will be used to access enterprise-level resources on GitHub.

    Body parameter

    {
      "token": "string",
      "provider": "gh"
    }
    

    Parameters

    Name In Type Required Description
    body body AddEnterpriseAccountTokenBody true Information of the enterprise token to create

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    listEnterpriseOrganizations

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/organizations", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /enterprises/{provider}/{enterpriseName}/organizations

    Get the organizations of an enterprise

    Parameters

    Name In Type Required Description
    enterpriseName path string true Enterprise name (slug)
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 42,
          "remoteId": "group-id",
          "name": "my-enterprise",
          "displayName": "My Enterprise",
          "userRole": "Owner",
          "url": "https://github.com/enterprises/my-enterprise",
          "avatar": "string"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation EnterpriseOrganizationsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    listEnterprises

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/enterprises/{provider} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/enterprises/{provider} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/enterprises/{provider}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/enterprises/{provider}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/enterprises/{provider}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /enterprises/{provider}

    List user enterprises

    Parameters

    Name In Type Required Description
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)

    Example responses

    200 Response

    {
      "data": [
        {
          "name": "string",
          "displayName": "string",
          "userRole": "admin",
          "url": "string",
          "avatarUrl": "string",
          "provider": "gh"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation EnterpriseListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    getEnterprise

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /enterprises/{provider}/{enterpriseName}

    Get an enterprise

    Parameters

    Name In Type Required Description
    enterpriseName path string true Enterprise name (slug)
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)

    Example responses

    200 Response

    {
      "data": {
        "name": "string",
        "displayName": "string",
        "userRole": "admin",
        "url": "string",
        "avatarUrl": "string",
        "provider": "gh"
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation GetEnterpriseResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    502 Bad Gateway Bad Gateway BadGateway

    listEnterpriseSeats

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/enterprises/{provider}/{enterpriseName}/seats", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /enterprises/{provider}/{enterpriseName}/seats

    Get enterprise seats

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "organizationsIds": [
            0
          ],
          "emails": [
            "string"
          ],
          "lastAnalysis": "2019-08-24T14:15:22Z",
          "createdAt": "2019-08-24T14:15:22Z",
          "lastCommitId": 0,
          "providerId": "string",
          "providerLogin": "string",
          "isActive": true
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SeatsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    gate policies

    setDefaultGatePolicy

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/setDefault

    Set the gate policy as the default for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    gatePolicyId path integer(int64) true Identifier of the gate policy

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    setCodacyDefault

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/gate-policies/setCodacyDefault

    Set the built-in Codacy gate policy as the default for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getGatePolicy

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}

    Get a gate policy

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    gatePolicyId path integer(int64) true Identifier of the gate policy

    Example responses

    200 Response

    {
      "data": {
        "id": 1,
        "name": "policy-name",
        "isDefault": true,
        "readOnly": true,
        "settings": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "meta": {
          "nrOfQualityGates": 10,
          "linkedRepositoriesCount": 10
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation GetGatePolicyResultResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Use at your own risk.

    deleteGatePolicy

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}

    Delete a gate policy

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    gatePolicyId path integer(int64) true Identifier of the gate policy

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    Response Headers

    Status Header Type Format Description
    204 X-Maturity string Experimental API. Use at your own risk.

    updateGatePolicy

    Code samples

    # You can also use wget
    curl -X PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId} \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PATCH https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId} HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "gatePolicyName": "string",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
    {
      method: 'PATCH',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "gatePolicyName": "string",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
    {
      method: 'PATCH',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.patch 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.patch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PATCH");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PATCH", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PATCH /organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}

    Update a gate policy

    Body parameter

    {
      "gatePolicyName": "string",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    gatePolicyId path integer(int64) true Identifier of the gate policy
    body body UpdateGatePolicyBody true The new values for the name, default status, or quality gates of the gate policy

    Example responses

    200 Response

    {
      "data": {
        "id": 1,
        "name": "policy-name",
        "isDefault": true,
        "readOnly": true,
        "settings": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "meta": {
          "nrOfQualityGates": 10,
          "linkedRepositoriesCount": 10
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation GetGatePolicyResultResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Use at your own risk.

    listGatePolicies

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/gate-policies

    List the gate policies for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "id": 1,
          "name": "policy-name",
          "isDefault": true,
          "readOnly": true,
          "meta": {
            "nrOfQualityGates": 10,
            "linkedRepositoriesCount": 10
          }
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation GatePoliciesListResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Use at your own risk.

    createGatePolicy

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "gatePolicyName": "gate-policy-name",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "gatePolicyName": "gate-policy-name",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/gate-policies

    Create a gate policy

    Body parameter

    {
      "gatePolicyName": "gate-policy-name",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body CreateGatePolicyBody true Details of the gate policy to create

    Example responses

    200 Response

    {
      "data": {
        "id": 1,
        "name": "policy-name",
        "isDefault": true,
        "readOnly": true,
        "settings": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "meta": {
          "nrOfQualityGates": 10,
          "linkedRepositoriesCount": 10
        }
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation GetGatePolicyResultResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Use at your own risk.

    listRepositoriesFollowingGatePolicy

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories

    List all repositories following a gate policy

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    gatePolicyId path integer(int64) true Identifier of the gate policy
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "data": [
        {
          "repositoryId": 0,
          "name": "codacy-eslint"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ListRepositoriesFollowingGatePolicyResultResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Use at your own risk.

    applyGatePolicyToRepositories

    Code samples

    # You can also use wget
    curl -X PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    PUT https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories',
    {
      method: 'PUT',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories',
    {
      method: 'PUT',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.put 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.put('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("PUT");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("PUT", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    PUT /organizations/{provider}/{remoteOrganizationName}/gate-policies/{gatePolicyId}/repositories

    Apply a gate policy to a list of repositories

    Link or unlink a gate policy to a list of repositories.

    Body parameter

    {
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    gatePolicyId path integer(int64) true Identifier of the gate policy
    body body ApplyGatePolicyToRepositoriesBody true none

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    Response Headers

    Status Header Type Format Description
    204 X-Maturity string Experimental API. Use at your own risk.

    sbom

    searchSbomDependencies

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "text": "string",
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "findingSeverities": [
        "Critical"
      ],
      "riskCategories": [
        "Forbidden"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "text": "string",
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "findingSeverities": [
        "Critical"
      ],
      "riskCategories": [
        "Forbidden"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search

    Return a list of SBOM dependencies, used across the organization.

    Body parameter

    {
      "text": "string",
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "findingSeverities": [
        "Critical"
      ],
      "riskCategories": [
        "Forbidden"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    sortColumn query string false Field used to sort the results. The possible values are severity (default, to sort by the item's severity), or order (to sort by the OSSF order).
    columnOrder query string false Sort direction. The possible values are asc (ascending) or desc (descending - default).
    body body SearchSbomDependenciesBody false Request body with filters.

    Enumerated Values

    Parameter Value
    sortColumn severity
    sortColumn ossfScore
    columnOrder asc
    columnOrder desc

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "fullName": "maven/ch.qos.logback/logback-classic",
          "purl": "maven:ch.qos.logback:logback-classic:1.2.3",
          "ossfScore": 0.1,
          "repositoriesCount": 0,
          "versionsCount": 1,
          "findings": [
            {
              "severity": "string",
              "open": 0
            }
          ],
          "licensesDetails": [
            {
              "name": "string",
              "url": "string",
              "isOsiApproved": true,
              "isFsfLibre": true,
              "riskCategory": "Forbidden",
              "isDerivedByAi": true
            }
          ]
        }
      ],
      "overview": {
        "totalRepositoriesCount": 0,
        "filteredRepositoriesCount": 0,
        "totalDependenciesCount": 0,
        "filteredDependenciesCount": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SearchSbomDependenciesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented
    502 Bad Gateway Bad Gateway BadGateway

    searchRepositoriesOfSbomDependency

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "dependencyFullName": "string",
      "repositoriesFilter": [
        "string"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "dependencyFullName": "string",
      "repositoriesFilter": [
        "string"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/repositories/search

    Return a paginated list of repositories where a version of the specified SBOM dependency is used.

    Body parameter

    {
      "dependencyFullName": "string",
      "repositoriesFilter": [
        "string"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchRepositoriesOfSbomDependencyBody true Request body with filters.

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "name": "string",
          "dependencyVersion": "string",
          "highestFindingSeverity": "string",
          "licenses": [
            "string"
          ],
          "licensesDetails": [
            {
              "name": "string",
              "url": "string",
              "isOsiApproved": true,
              "isFsfLibre": true,
              "riskCategory": "Forbidden",
              "isDerivedByAi": true
            }
          ]
        }
      ],
      "overview": {
        "name": "logback-classic",
        "fullName": "maven/ch.qos.logback/logback-classic",
        "purl": "maven:ch.qos.logback:logback-classic:1.2.3",
        "ossfScore": 0.1,
        "latestVersion": "10.1.2",
        "oldestVersion": "1.2.3",
        "totalVersionsCount": 0,
        "filteredVersionsCount": 0,
        "totalRepositoriesCount": 0,
        "filteredRepositoriesCount": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SearchRepositoriesOfSbomDependencyResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented
    502 Bad Gateway Bad Gateway BadGateway

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future.

    searchSbomRepositories

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '[
      "cargo/addr2line",
      "cargo/addr2line",
      "cargo/adler",
      "cargo/ahash",
      "cargo/aho-corasi",
      "cargo/backtrace",
      "cargo/bitflags"
    ]';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = [
      "cargo/addr2line",
      "cargo/addr2line",
      "cargo/adler",
      "cargo/ahash",
      "cargo/aho-corasi",
      "cargo/backtrace",
      "cargo/bitflags"
    ];
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/sbom/repositories/search

    List repositories with SBOM dependency information

    Body parameter

    [
      "cargo/addr2line",
      "cargo/addr2line",
      "cargo/adler",
      "cargo/ahash",
      "cargo/aho-corasi",
      "cargo/backtrace",
      "cargo/bitflags"
    ]
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    body body SearchSbomRepositoriesBody false Request body with filters.

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "name": "string",
          "dependenciesCount": 0,
          "dependenciesFindings": [
            {
              "severity": "string",
              "open": 0
            }
          ]
        }
      ],
      "overview": {
        "totalRepositoriesCount": 0,
        "filteredRepositoriesCount": 0,
        "totalDependenciesCount": 0,
        "filteredDependenciesCount": 0
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SearchSbomRepositoriesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented
    502 Bad Gateway Bad Gateway BadGateway

    Response Headers

    Status Header Type Format Description
    200 X-Maturity string Experimental API. Subject to change in the near future.

    getRepositorySbomPresignedUrl

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/projects/{repositoryName}/sbom

    Get a presigned URL for the latest SBOM of the repository

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    repositoryName path string true Repository name on the Git provider organization

    Example responses

    200 Response

    {
      "url": "http://example.com"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation. SbomPresignResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    uploadImageSbom

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms \
      -H 'Content-Type: multipart/form-data' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms HTTP/1.1
    Host: app.codacy.com
    Content-Type: multipart/form-data
    Accept: application/json
    
    
    const inputBody = '{
      "sbom": "string",
      "imageName": "string",
      "tag": "string",
      "repositoryName": "string",
      "environment": "string"
    }';
    const headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "sbom": "string",
      "imageName": "string",
      "tag": "string",
      "repositoryName": "string",
      "environment": "string"
    };
    const headers = {
      'Content-Type':'multipart/form-data',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'multipart/form-data',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'multipart/form-data',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"multipart/form-data"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/image-sboms

    Upload an SBOM for a Docker image

    Body parameter

    sbom: string
    imageName: string
    tag: string
    repositoryName: string
    environment: string
    
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body object true none
    » sbom body string(binary) true SBOM file (SPDX or CycloneDX format)
    » imageName body string true Name of the Docker image
    » tag body string true Tag of the Docker image
    » repositoryName body string false Repository name
    » environment body string false Environment where the image is deployed

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    500 Internal Server Error Internal Server Error InternalServerError

    deleteImageSboms

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}

    Delete all SBOMs for a given image

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    imageName path string true Image name of the SBOM Image

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    deleteImageTag

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/image-sboms/{imageName}/tags/{tag}

    Delete SBOM for a given image/tag combination

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    imageName path string true Image name of the SBOM Image
    tag path string true Image Tag of the SBOM Image

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    listOrganizationImages

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/images

    List Docker images for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "imageName": "codacy/service-a",
          "latestTag": "1.0.0",
          "lastSbomUploaded": "2019-08-24T14:15:22Z",
          "lastSbomGenerated": "2019-08-24T14:15:22Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ListImagesResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    listImageTags

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/images/{imageName}/tags

    List Docker image tags for an organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    imageName path string true Image name of the SBOM Image
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "imageName": "codacy/service-a",
          "tag": "string",
          "environment": "string",
          "repositoryId": 0,
          "repositoryName": "string",
          "generatedAt": "2019-08-24T14:15:22Z",
          "uploadedAt": "2019-08-24T14:15:22Z",
          "scanStatus": "2019-08-24T14:15:22Z",
          "lastAnalysedAt": "2019-08-24T14:15:22Z"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation ListImageTagsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    reports

    getReportSecurityItems

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /reports/organizations/{provider}/{remoteOrganizationName}/security/items

    Generate a CSV file listing all security and risk management items for an organization.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    "string"
    

    Responses

    Status Meaning Description Schema
    200 OK CSV file containing the security and risk management items. string
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 Transfer-Encoding string See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Transfer-Encoding .
    200 Content-Disposition string See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition .

    searchReportSecurityItems

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: text/csv' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: text/csv
    
    
    const inputBody = '{
      "repositories": [
        "string"
      ],
      "priorities": [
        "Critical"
      ],
      "statuses": [
        "Overdue"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "searchText": "string"
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'text/csv',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "repositories": [
        "string"
      ],
      "priorities": [
        "Critical"
      ],
      "statuses": [
        "Overdue"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "searchText": "string"
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'text/csv',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'text/csv',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'text/csv',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"text/csv"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/security/items/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /reports/organizations/{provider}/{remoteOrganizationName}/security/items/search

    Generate a filtered CSV export of security and risk management items

    Body parameter

    {
      "repositories": [
        "string"
      ],
      "priorities": [
        "Critical"
      ],
      "statuses": [
        "Overdue"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "searchText": "string"
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body PostReportSecurityItemsBody false Optional filters for the CSV export

    Example responses

    200 Response

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK CSV file containing the filtered security and risk management items string
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 Transfer-Encoding string See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Transfer-Encoding
    200 Content-Disposition string See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition

    searchReportSbomDependencies

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search \
      -H 'Content-Type: application/json' \
      -H 'Accept: text/csv' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: text/csv
    
    
    const inputBody = '{
      "text": "string",
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "findingSeverities": [
        "Critical"
      ],
      "riskCategories": [
        "Forbidden"
      ]
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'text/csv',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "text": "string",
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "findingSeverities": [
        "Critical"
      ],
      "riskCategories": [
        "Forbidden"
      ]
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'text/csv',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'text/csv',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'text/csv',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"text/csv"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /reports/organizations/{provider}/{remoteOrganizationName}/sbom/dependencies/search

    Search SBOM dependencies for the organization in CSV format

    Body parameter

    {
      "text": "string",
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "findingSeverities": [
        "Critical"
      ],
      "riskCategories": [
        "Forbidden"
      ]
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body SearchSbomDependenciesBody false Optional filters for report generation

    Example responses

    200 Response

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation string
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Headers

    Status Header Type Format Description
    200 Transfer-Encoding string See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Transfer-Encoding
    200 Content-Disposition string See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Disposition

    listEnterpriseSeatsCsv

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv \
      -H 'Accept: text/csv' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv HTTP/1.1
    Host: app.codacy.com
    Accept: text/csv
    
    
    
    const headers = {
      'Accept':'text/csv',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'text/csv',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'text/csv',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'text/csv',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"text/csv"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/reports/enterprises/{provider}/{enterpriseName}/seats-csv", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /reports/enterprises/{provider}/{enterpriseName}/seats-csv

    Get enterprise seats as a CSV file

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    enterpriseName path string true Enterprise name (slug)

    Example responses

    200 Response

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation string
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    500 Internal Server Error Internal Server Error InternalServerError

    session

    heartbeat

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/session/heartbeat \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/session/heartbeat HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "wasActive": true
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/session/heartbeat',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "wasActive": true
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/session/heartbeat',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/session/heartbeat',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/session/heartbeat', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/session/heartbeat");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/session/heartbeat", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /session/heartbeat

    Send a heartbeat to keep the session alive

    Body parameter

    {
      "wasActive": true
    }
    

    Parameters

    Name In Type Required Description
    body body HeartbeatRequest true none

    Example responses

    200 Response

    {
      "lastActivity": "2020-11-09T09:10:00Z",
      "idleExpiresIn": 300000,
      "absoluteExpiresIn": 28800000
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation HeartbeatResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    segments

    getSegmentsSyncStatus

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/segments/sync

    Get the status of the segments synchronization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    200 Response

    {
      "status": "Syncing",
      "error": "Error message"
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SegmentsSyncStatusResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    syncSegments

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/sync", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/segments/sync

    Synchronize the segments of the organization with the Git provider

    For GitHub, segments are the repository custom properties

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    202 Accepted Sync already in progress None
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    Response Schema

    getSegmentsKeys

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/segments/keys

    Get the segment keys for the organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        "group-id"
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SegmentsKeysResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getSegmentsKeysWithIds

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/keys/ids", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/segments/keys/ids

    Get the segment keys with IDs for the organization

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return
    search query string false Filter results by searching for this string

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "key": "group"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SegmentsKeysIdsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getSegmentsValues

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey}',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/segments/values/{segmentKey}

    Get segment values for a segment key

    Deprecated: Use getSegments instead.

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    segmentKey path string true Unique key identifier for the segment
    search query string false Filter results by searching for this string
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 1,
          "name": "group-id",
          "value": "common libraries",
          "description": "Group of common libraries for projects"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SegmentsResponseDeprecated
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    getSegments

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/segments/{segmentKey}/values

    Get the segment values for the organization by segment key

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    segmentKey path string true Unique key identifier for the segment
    cursor query string false Cursor to specify a batch of results to request
    search query string false Filter results by searching for this string
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 1,
          "name": "group-id",
          "value": "common libraries",
          "description": "Group of common libraries for projects"
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation SegmentsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    dast

    getDastTargets

    Code samples

    # You can also use wget
    curl -X GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    GET https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets',
    {
      method: 'GET',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.get 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.get('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("GET", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    GET /organizations/{provider}/{remoteOrganizationName}/dast/targets

    List configured DAST targets

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    cursor query string false Cursor to specify a batch of results to request
    limit query integer(int32) false Maximum number of items to return

    Example responses

    200 Response

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 125904,
          "url": "https://api.domain.com/v1",
          "status": [
            {
              "status": "queued",
              "transitionedAt": "2024-06-28T14:29:13.43Z",
              "transitionReason": "Timed out.",
              "analysisId": "72aa9244-4281-460a-a4ee-25be58d2a1ab"
            }
          ],
          "targetType": "webapp",
          "apiDefinitionUrl": "string",
          "apiAuthHeaderNames": [
            "string"
          ]
        }
      ]
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DastTargetsResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    createDastTarget

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets \
      -H 'Content-Type: application/json' \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets HTTP/1.1
    Host: app.codacy.com
    Content-Type: application/json
    Accept: application/json
    
    
    const inputBody = '{
      "url": "https://api.domain.com/v1",
      "targetType": "webapp",
      "apiDefinitionUrl": "https://api.domain.com/v1",
      "apiAuthHeaders": {
        "property1": "string",
        "property2": "string"
      }
    }';
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets',
    {
      method: 'POST',
      body: inputBody,
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    const inputBody = {
      "url": "https://api.domain.com/v1",
      "targetType": "webapp",
      "apiDefinitionUrl": "https://api.domain.com/v1",
      "apiAuthHeaders": {
        "property1": "string",
        "property2": "string"
      }
    };
    const headers = {
      'Content-Type':'application/json',
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets',
    {
      method: 'POST',
      body: JSON.stringify(inputBody),
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Content-Type' => 'application/json',
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Content-Type': 'application/json',
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Content-Type": []string{"application/json"},
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/dast/targets

    Create a DAST target

    Body parameter

    {
      "url": "https://api.domain.com/v1",
      "targetType": "webapp",
      "apiDefinitionUrl": "https://api.domain.com/v1",
      "apiAuthHeaders": {
        "property1": "string",
        "property2": "string"
      }
    }
    

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    body body CreateDastTargetBody true none

    Example responses

    200 Response

    {
      "data": {
        "id": 125904,
        "url": "https://api.domain.com/v1",
        "status": [
          {
            "status": "queued",
            "transitionedAt": "2024-06-28T14:29:13.43Z",
            "transitionReason": "Timed out.",
            "analysisId": "72aa9244-4281-460a-a4ee-25be58d2a1ab"
          }
        ],
        "targetType": "webapp",
        "apiDefinitionUrl": "string",
        "apiAuthHeaderNames": [
          "string"
        ]
      }
    }
    

    Responses

    Status Meaning Description Schema
    200 OK Successful operation DastTargetResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    409 Conflict Conflict Conflict
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError
    501 Not Implemented Not Implemented NotImplemented

    deleteDastTarget

    Code samples

    # You can also use wget
    curl -X DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId} \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    DELETE https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId} HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}',
    {
      method: 'DELETE',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.delete 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.delete('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("DELETE");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("DELETE", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    DELETE /organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}

    Delete a DAST target

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    dastTargetId path integer(int64) true Identifier of a DAST analysis target

    Example responses

    400 Response

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    

    Responses

    Status Meaning Description Schema
    204 No Content Successful operation None
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    500 Internal Server Error Internal Server Error InternalServerError

    analyzeDastTarget

    Code samples

    # You can also use wget
    curl -X POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze \
      -H 'Accept: application/json' \
      -H 'api-token: API_KEY'
    
    
    POST https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze HTTP/1.1
    Host: app.codacy.com
    Accept: application/json
    
    
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    const fetch = require('node-fetch');
    
    const headers = {
      'Accept':'application/json',
      'api-token':'API_KEY'
    };
    
    fetch('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze',
    {
      method: 'POST',
    
      headers: headers
    })
    .then(function(res) {
        return res.json();
    }).then(function(body) {
        console.log(body);
    });
    
    
    require 'rest-client'
    require 'json'
    
    headers = {
      'Accept' => 'application/json',
      'api-token' => 'API_KEY'
    }
    
    result = RestClient.post 'https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze',
      params: {
      }, headers: headers
    
    p JSON.parse(result)
    
    
    import requests
    headers = {
      'Accept': 'application/json',
      'api-token': 'API_KEY'
    }
    
    r = requests.post('https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze', headers = headers)
    
    print(r.json())
    
    
    URL obj = new URL("https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze");
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("POST");
    int responseCode = con.getResponseCode();
    BufferedReader in = new BufferedReader(
        new InputStreamReader(con.getInputStream()));
    String inputLine;
    StringBuffer response = new StringBuffer();
    while ((inputLine = in.readLine()) != null) {
        response.append(inputLine);
    }
    in.close();
    System.out.println(response.toString());
    
    
    package main
    
    import (
           "bytes"
           "net/http"
    )
    
    func main() {
    
        headers := map[string][]string{
            "Accept": []string{"application/json"},
            "api-token": []string{"API_KEY"},
        }
    
        data := bytes.NewBuffer([]byte{jsonReq})
        req, err := http.NewRequest("POST", "https://app.codacy.com/api/v3/organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze", data)
        req.Header = headers
    
        client := &http.Client{}
        resp, err := client.Do(req)
        // ...
    }
    
    

    POST /organizations/{provider}/{remoteOrganizationName}/dast/targets/{dastTargetId}/analyze

    Enqueue a DAST analysis for the given target

    Parameters

    Name In Type Required Description
    provider path string true Git provider identifier (e.g., gh for GitHub, gl for GitLab, bb for Bitbucket)
    remoteOrganizationName path string true Organization name on the Git provider
    dastTargetId path integer(int64) true Identifier of a DAST analysis target

    Example responses

    201 Response

    {
      "data": {
        "analysisId": "75d1b4cf-ef70-4be8-93ca-e9d21c7dca31"
      }
    }
    

    Responses

    Status Meaning Description Schema
    201 Created Successful operation AnalyzeDastTargetResponse
    400 Bad Request Bad Request BadRequest
    401 Unauthorized Unauthorized Unauthorized
    403 Forbidden Forbidden Forbidden
    404 Not Found Not Found NotFound
    422 Unprocessable Entity Unprocessable Entity UnprocessableEntity
    429 Too Many Requests Too Many Requests TooManyRequests
    500 Internal Server Error Internal Server Error InternalServerError

    Schemas

    Version

    {
      "data": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data string true none none

    {
      "name": "Check our documentation",
      "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none none
    url string true none none

    ApiError

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    message string true none none
    innerMessage string false none none
    actions [ProblemLink] true none none

    Unauthorized

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "Unauthorized",
      "code": "Unauthorized"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none
    » code string true none none

    UnprocessableEntity

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "UnprocessableEntity"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    InternalServerError

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "InternalServerError"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    PaginationInfo

    {
      "cursor": "string",
      "limit": 0,
      "total": 0
    }
    
    

    Cursor-based pagination information to obtain more items

    Properties

    Name Type Required Restrictions Description
    cursor string false none Cursor to request the next batch of results
    limit integer(int32) false none Maximum number of items returned
    total integer(int32) false none Total number of items returned

    CommitIdentification

    {
      "sha": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    sha string true none Commit SHA

    Commit

    {
      "sha": "string",
      "id": 1,
      "commitTimestamp": "2019-05-07T14:29:13.43Z",
      "authorName": "string",
      "authorEmail": "string",
      "message": "string",
      "startedAnalysis": "2022-01-07T14:29:13.43Z",
      "endedAnalysis": "2022-01-07T14:29:13.43Z",
      "isMergeCommit": false,
      "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
      "parents": [
        "string"
      ]
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous CommitIdentification false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » id integer(int64) true none Internal commit identifier
    » commitTimestamp string(date-time) true none Timestamp when the commit was created
    » authorName string true none Name of the commit author
    » authorEmail string true none Email address of the commit author
    » message string true none Commit message
    » startedAnalysis string(date-time) false none Timestamp when Codacy started the last analysis of the commit
    » endedAnalysis string(date-time) false none Timestamp when Codacy finished the last analysis of the commit
    » isMergeCommit boolean false none True if the commit is a merge commit
    » gitHref string false none URL to the commit on the Git provider
    » parents [string] false none none

    Provider

    "gh"
    
    

    Git provider hosting the repository

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Git provider hosting the repository

    RepositorySummary

    {
      "repositoryId": 45738,
      "provider": "gh",
      "owner": "codacy",
      "name": "codacy-eslint"
    }
    
    

    Essential information to describe a repository.

    Properties

    Name Type Required Restrictions Description
    repositoryId integer(int64) false none Codacy identifier for this repository.
    provider Provider true none Git provider hosting the repository
    owner string true none Name of the organization that owns the repository.
    name string true none Name of the repository.

    Visibility

    "Private"
    
    

    Visibility of the repository

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Visibility of the repository

    Enumerated Values

    Property Value
    anonymous Public
    anonymous Private
    anonymous LoginPublic

    Permission

    "admin"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous admin
    anonymous write
    anonymous read

    RepositoryProblem

    {
      "message": "We can't analyze this repository because none of the committers are part of the organization.",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "code": "failed_to_clone",
      "severity": "all_analysis"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    message string true none none
    actions [ProblemLink] true none none
    code string true none A stable identifier for a problem.
    severity string true none The extent to which this problem affects the repository in terms of analysis execution.

    Branch

    {
      "id": 1,
      "name": "master",
      "isDefault": true,
      "isEnabled": true,
      "lastUpdated": "2019-05-07T14:29:13.43Z",
      "branchType": "Branch",
      "lastCommit": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    name string true none none
    isDefault boolean true none none
    isEnabled boolean true none none
    lastUpdated string(date-time) false none none
    branchType string true none none
    lastCommit string false none none

    Enumerated Values

    Property Value
    branchType Branch
    branchType PullRequest

    Badges

    {
      "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
      "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    grade string true none Repository grade badge URL
    coverage string true none Repository coverage badge URL

    CodingStandardInfo

    {
      "id": 0,
      "name": "string"
    }
    
    

    Coding standard identifier and name

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Identifier of the coding standard
    name string true none Name of the coding standard

    AddedState

    "Added"
    
    

    Added state of the repository on Codacy. Valid values are NotAdded (the repository was not added to Codacy), Added (the repository was added to Codacy), or Following (the current user is following a repository added to Codacy).

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Added state of the repository on Codacy. Valid values are NotAdded (the repository was not added to Codacy), Added (the repository was added to Codacy), or Following (the current user is following a repository added to Codacy).

    Enumerated Values

    Property Value
    anonymous NotAdded
    anonymous Added
    anonymous Following

    Repository

    {
      "repositoryId": 45738,
      "provider": "gh",
      "owner": "codacy",
      "name": "codacy-eslint",
      "fullPath": "codacy/codacy-eslint",
      "visibility": "Private",
      "remoteIdentifier": "3",
      "lastUpdated": "2019-05-07T14:29:13.43Z",
      "permission": "admin",
      "problems": [
        {
          "message": "We can't analyze this repository because none of the committers are part of the organization.",
          "actions": [
            {
              "name": "Check our documentation",
              "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
            }
          ],
          "code": "failed_to_clone",
          "severity": "all_analysis"
        }
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS"
      ],
      "defaultBranch": {
        "id": 1,
        "name": "master",
        "isDefault": true,
        "isEnabled": true,
        "lastUpdated": "2019-05-07T14:29:13.43Z",
        "branchType": "Branch",
        "lastCommit": "string"
      },
      "badges": {
        "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
        "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
      },
      "codingStandardId": 0,
      "codingStandardName": "string",
      "standards": [
        {
          "id": 0,
          "name": "string"
        }
      ],
      "addedState": "Added",
      "gatePolicyId": 0,
      "gatePolicyName": "string"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous RepositorySummary false none Essential information to describe a repository.

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » fullPath string false none Full path of the repository on the Git provider
    » visibility Visibility true none Visibility of the repository
    » remoteIdentifier string false none Unique identifier of the repository on the Git provider
    » lastUpdated string(date-time) false none Timestamp when the repository was last updated. See Git provider documentation for details.
    » permission Permission false none none
    » problems [RepositoryProblem] true none none
    » languages [string] true none List of the languages in the repository
    » defaultBranch Branch false none none
    » badges Badges false none none
    » codingStandardId integer(int64) false none Deprecated: Use standards field instead. Coding standard identifier.
    » codingStandardName string false none Deprecated: Use standards field instead. Coding standard name.
    » standards [CodingStandardInfo] true none List of the coding standard identifiers and names
    » addedState AddedState true none Added state of the repository on Codacy. Valid values are NotAdded (the repository was not added to Codacy), Added (the repository was added to Codacy), or Following (the current user is following a repository added to Codacy).
    » gatePolicyId integer(int64) false none Identifier of the gate policy the repository is following. If not defined, the repository does not follow a gate policy.
    » gatePolicyName string false none Name of the gate policy the repository is following. Present only if the gatePolicyId is defined.

    Coverage

    {
      "filesUncovered": 1,
      "filesWithLowCoverage": 1,
      "coveragePercentage": 1,
      "coveragePercentageWithDecimals": 15.25,
      "numberTotalFiles": 1,
      "numberCoveredLines": 1,
      "numberCoverableLines": 1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filesUncovered integer(int64) false none none
    filesWithLowCoverage integer(int64) false none none
    coveragePercentage integer(int64) false none Test coverage percentage, truncated. Present only if a coverage report was processed for the most recent commit on the relevant branch.
    coveragePercentageWithDecimals number(double) false none Test coverage percentage. Present only if a coverage report was processed for the most recent commit on the relevant branch.
    numberTotalFiles integer(int32) false none none
    numberCoveredLines integer(int32) false none none
    numberCoverableLines integer(int32) false none none

    RepositoryQualitySettings

    {
      "maxIssuePercentage": 1,
      "maxDuplicatedFilesPercentage": 1,
      "minCoveragePercentage": 1,
      "maxComplexFilesPercentage": 1,
      "fileDuplicationBlockThreshold": 1,
      "fileComplexityValueThreshold": 1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    maxIssuePercentage integer(int32) false none The repository will be considered unhealthy if the percentage of issues is over this threshold
    maxDuplicatedFilesPercentage integer(int32) false none The repository will be considered unhealthy if the percentage of duplication of files is over this threshold
    minCoveragePercentage integer(int32) false none The repository will be considered unhealthy if the coverage percentage is under this threshold
    maxComplexFilesPercentage integer(int32) false none The repository will be considered unhealthy if the percentage of complexity of files is over this threshold
    fileDuplicationBlockThreshold integer(int32) false none A file in this repository will be considered duplicated when the number of cloned blocks is over this threshold. This value cannot be negative
    fileComplexityValueThreshold integer(int32) false none A file in this repository will be considered complex when its complexity value is over this threshold. This value cannot be negative

    RepositoryWithAnalysis

    {
      "lastAnalysedCommit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ]
      },
      "grade": 74,
      "gradeLetter": "A",
      "issuesPercentage": 1,
      "issuesCount": 1,
      "loc": 1,
      "complexFilesPercentage": 1,
      "complexFilesCount": 1,
      "duplicationPercentage": 1,
      "repository": {
        "repositoryId": 45738,
        "provider": "gh",
        "owner": "codacy",
        "name": "codacy-eslint",
        "fullPath": "codacy/codacy-eslint",
        "visibility": "Private",
        "remoteIdentifier": "3",
        "lastUpdated": "2019-05-07T14:29:13.43Z",
        "permission": "admin",
        "problems": [
          {
            "message": "We can't analyze this repository because none of the committers are part of the organization.",
            "actions": [
              {
                "name": "Check our documentation",
                "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
              }
            ],
            "code": "failed_to_clone",
            "severity": "all_analysis"
          }
        ],
        "languages": [
          "Java",
          "Scala",
          "CSS"
        ],
        "defaultBranch": {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        },
        "badges": {
          "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
          "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
        },
        "codingStandardId": 0,
        "codingStandardName": "string",
        "standards": [
          {
            "id": 0,
            "name": "string"
          }
        ],
        "addedState": "Added",
        "gatePolicyId": 0,
        "gatePolicyName": "string"
      },
      "branch": {
        "id": 1,
        "name": "master",
        "isDefault": true,
        "isEnabled": true,
        "lastUpdated": "2019-05-07T14:29:13.43Z",
        "branchType": "Branch",
        "lastCommit": "string"
      },
      "selectedBranch": {
        "id": 1,
        "name": "master",
        "isDefault": true,
        "isEnabled": true,
        "lastUpdated": "2019-05-07T14:29:13.43Z",
        "branchType": "Branch",
        "lastCommit": "string"
      },
      "coverage": {
        "filesUncovered": 1,
        "filesWithLowCoverage": 1,
        "coveragePercentage": 1,
        "coveragePercentageWithDecimals": 15.25,
        "numberTotalFiles": 1,
        "numberCoveredLines": 1,
        "numberCoverableLines": 1
      },
      "goals": {
        "maxIssuePercentage": 1,
        "maxDuplicatedFilesPercentage": 1,
        "minCoveragePercentage": 1,
        "maxComplexFilesPercentage": 1,
        "fileDuplicationBlockThreshold": 1,
        "fileComplexityValueThreshold": 1
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    lastAnalysedCommit Commit false none none
    grade integer(int32) false none Quality grade of the file as a number between 100 (highest grade) and 0 (lowest grade)
    gradeLetter string false none Quality grade of the file as a letter between A (highest grade) and F (lowest grade)
    issuesPercentage integer(int64) false none none
    issuesCount integer(int64) false none none
    loc integer(int64) false none Lines of code of the repository
    complexFilesPercentage integer(int64) false none none
    complexFilesCount integer(int64) false none none
    duplicationPercentage integer(int64) false none none
    repository Repository true none none
    branch Branch false none Deprecated
    selectedBranch Branch false none none
    coverage Coverage false none none
    goals RepositoryQualitySettings false none none

    RepositoryWithAnalysisListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "lastAnalysedCommit": {
            "sha": "string",
            "id": 1,
            "commitTimestamp": "2019-05-07T14:29:13.43Z",
            "authorName": "string",
            "authorEmail": "string",
            "message": "string",
            "startedAnalysis": "2022-01-07T14:29:13.43Z",
            "endedAnalysis": "2022-01-07T14:29:13.43Z",
            "isMergeCommit": false,
            "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "parents": [
              "string"
            ]
          },
          "grade": 74,
          "gradeLetter": "A",
          "issuesPercentage": 1,
          "issuesCount": 1,
          "loc": 1,
          "complexFilesPercentage": 1,
          "complexFilesCount": 1,
          "duplicationPercentage": 1,
          "repository": {
            "repositoryId": 45738,
            "provider": "gh",
            "owner": "codacy",
            "name": "codacy-eslint",
            "fullPath": "codacy/codacy-eslint",
            "visibility": "Private",
            "remoteIdentifier": "3",
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "permission": "admin",
            "problems": [
              {
                "message": "We can't analyze this repository because none of the committers are part of the organization.",
                "actions": [
                  {
                    "name": "Check our documentation",
                    "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
                  }
                ],
                "code": "failed_to_clone",
                "severity": "all_analysis"
              }
            ],
            "languages": [
              "Java",
              "Scala",
              "CSS"
            ],
            "defaultBranch": {
              "id": 1,
              "name": "master",
              "isDefault": true,
              "isEnabled": true,
              "lastUpdated": "2019-05-07T14:29:13.43Z",
              "branchType": "Branch",
              "lastCommit": "string"
            },
            "badges": {
              "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
              "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
            },
            "codingStandardId": 0,
            "codingStandardName": "string",
            "standards": [
              {
                "id": 0,
                "name": "string"
              }
            ],
            "addedState": "Added",
            "gatePolicyId": 0,
            "gatePolicyName": "string"
          },
          "branch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "selectedBranch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "coverage": {
            "filesUncovered": 1,
            "filesWithLowCoverage": 1,
            "coveragePercentage": 1,
            "coveragePercentageWithDecimals": 15.25,
            "numberTotalFiles": 1,
            "numberCoveredLines": 1,
            "numberCoverableLines": 1
          },
          "goals": {
            "maxIssuePercentage": 1,
            "maxDuplicatedFilesPercentage": 1,
            "minCoveragePercentage": 1,
            "maxComplexFilesPercentage": 1,
            "fileDuplicationBlockThreshold": 1,
            "fileComplexityValueThreshold": 1
          }
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [RepositoryWithAnalysis] true none none

    BadRequest

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadRequest"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    NotFound

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "NotFound"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    BadGateway

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "BadGateway"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    SearchOrganizationRepositoriesWithAnalysis

    {
      "names": [
        "string"
      ]
    }
    
    

    Search organization repositories with analysis query body

    Properties

    Name Type Required Restrictions Description
    names [string] false none List of repository names

    RepositoryWithAnalysisResponse

    {
      "data": {
        "lastAnalysedCommit": {
          "sha": "string",
          "id": 1,
          "commitTimestamp": "2019-05-07T14:29:13.43Z",
          "authorName": "string",
          "authorEmail": "string",
          "message": "string",
          "startedAnalysis": "2022-01-07T14:29:13.43Z",
          "endedAnalysis": "2022-01-07T14:29:13.43Z",
          "isMergeCommit": false,
          "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
          "parents": [
            "string"
          ]
        },
        "grade": 74,
        "gradeLetter": "A",
        "issuesPercentage": 1,
        "issuesCount": 1,
        "loc": 1,
        "complexFilesPercentage": 1,
        "complexFilesCount": 1,
        "duplicationPercentage": 1,
        "repository": {
          "repositoryId": 45738,
          "provider": "gh",
          "owner": "codacy",
          "name": "codacy-eslint",
          "fullPath": "codacy/codacy-eslint",
          "visibility": "Private",
          "remoteIdentifier": "3",
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "permission": "admin",
          "problems": [
            {
              "message": "We can't analyze this repository because none of the committers are part of the organization.",
              "actions": [
                {
                  "name": "Check our documentation",
                  "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
                }
              ],
              "code": "failed_to_clone",
              "severity": "all_analysis"
            }
          ],
          "languages": [
            "Java",
            "Scala",
            "CSS"
          ],
          "defaultBranch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "badges": {
            "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
            "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
          },
          "codingStandardId": 0,
          "codingStandardName": "string",
          "standards": [
            {
              "id": 0,
              "name": "string"
            }
          ],
          "addedState": "Added",
          "gatePolicyId": 0,
          "gatePolicyName": "string"
        },
        "branch": {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        },
        "selectedBranch": {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        },
        "coverage": {
          "filesUncovered": 1,
          "filesWithLowCoverage": 1,
          "coveragePercentage": 1,
          "coveragePercentageWithDecimals": 15.25,
          "numberTotalFiles": 1,
          "numberCoveredLines": 1,
          "numberCoverableLines": 1
        },
        "goals": {
          "maxIssuePercentage": 1,
          "maxDuplicatedFilesPercentage": 1,
          "minCoveragePercentage": 1,
          "maxComplexFilesPercentage": 1,
          "fileDuplicationBlockThreshold": 1,
          "fileComplexityValueThreshold": 1
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data RepositoryWithAnalysis true none none

    AnalysisToolSettings

    {
      "name": "string",
      "isEnabled": true,
      "followsStandard": true,
      "isCustom": true,
      "hasConfigurationFile": true,
      "usesConfigurationFile": true,
      "enabledBy": [
        {
          "id": 0,
          "name": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string false none none
    isEnabled boolean true none none
    followsStandard boolean true none none
    isCustom boolean true none none
    hasConfigurationFile boolean true none none
    usesConfigurationFile boolean true none none
    enabledBy [CodingStandardInfo] true none List of the coding standard that enable the tool

    AnalysisTool

    {
      "uuid": "string",
      "name": "string",
      "isClientSide": true,
      "settings": {
        "name": "string",
        "isEnabled": true,
        "followsStandard": true,
        "isCustom": true,
        "hasConfigurationFile": true,
        "usesConfigurationFile": true,
        "enabledBy": [
          {
            "id": 0,
            "name": "string"
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    uuid string true none none
    name string true none none
    isClientSide boolean true none none
    settings AnalysisToolSettings true none none

    AnalysisToolsResponse

    {
      "data": [
        {
          "uuid": "string",
          "name": "string",
          "isClientSide": true,
          "settings": {
            "name": "string",
            "isEnabled": true,
            "followsStandard": true,
            "isCustom": true,
            "hasConfigurationFile": true,
            "usesConfigurationFile": true,
            "enabledBy": [
              {
                "id": 0,
                "name": "string"
              }
            ]
          }
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AnalysisTool] true none none

    RepositoryConflictsResponse

    {
      "data": [
        "847feb32-9ff2-11ea-bb37-0242ac130002"
      ]
    }
    
    

    Repository Tools that have conflicts

    Properties

    Name Type Required Restrictions Description
    data [string] true none none

    ConfiguredParameter

    {
      "name": "getWithoutSet",
      "value": "true"
    }
    
    

    Parameter to configure a code pattern for a tool

    Properties

    Name Type Required Restrictions Description
    name string true none Code pattern parameter name
    value string true none Code pattern parameter value

    ConfiguredParametersList

    [
      {
        "name": "getWithoutSet",
        "value": "true"
      }
    ]
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous [ConfiguredParameter] false none [Parameter to configure a code pattern for a tool]

    ConfigurePattern

    {
      "id": "ESLint_@typescript-eslint_no-shadow",
      "enabled": true,
      "parameters": [
        {
          "name": "getWithoutSet",
          "value": "true"
        }
      ]
    }
    
    

    A pattern to enable or disable.

    Properties

    Name Type Required Restrictions Description
    id string true none The pattern's id.
    enabled boolean true none Whether to enable or disable the pattern.
    parameters ConfiguredParametersList false none none

    ConfigureToolBody

    {
      "enabled": true,
      "useConfigurationFile": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    }
    
    

    How to configure a tool.

    Properties

    Name Type Required Restrictions Description
    enabled boolean false none Whether to enable or disable the tool.
    useConfigurationFile boolean false none Marks the tool as using a configuration file or not.
    patterns [ConfigurePattern] false none The patterns to enable or disable.

    Conflict

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "Conflict"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    SeverityLevel

    "Error"
    
    

    Issue severity level. These values map to our UI as follows - Info to Minor, Warning to Medium, High to High, Error to Critical.

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Issue severity level. These values map to our UI as follows - Info to Minor, Warning to Medium, High to High, Error to Critical.

    Enumerated Values

    Property Value
    anonymous Info
    anonymous Warning
    anonymous High
    anonymous Error

    PatternDetails

    {
      "id": "accessor-pairs",
      "title": "string",
      "category": "Security",
      "subCategory": "XSS",
      "level": "Error",
      "severityLevel": "Error"
    }
    
    

    Details of the pattern that was identified in the issue

    Properties

    Name Type Required Restrictions Description
    id string true none Pattern identifier (unique per tool)
    title string false none Pattern title
    category string true none Pattern category
    subCategory string false none Pattern subcategory (optional since some patterns might not have a subcategory)
    level string true none Deprecated, use severityLevel instead
    severityLevel SeverityLevel true none Issue severity level. These values map to our UI as follows - Info to Minor, Warning to Medium, High to High, Error to Critical.

    Enumerated Values

    Property Value
    level Info
    level Warning
    level High
    level Error

    Parameter

    {
      "name": "getWithoutSet",
      "description": "getWithoutSet",
      "default": "true"
    }
    
    

    Parameter to configure a code pattern

    Properties

    Name Type Required Restrictions Description
    name string true none Name of the parameter
    description string false none Description of the parameter
    default string true none Default value of the parameter

    ParameterList

    [
      {
        "name": "getWithoutSet",
        "description": "getWithoutSet",
        "default": "true"
      }
    ]
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous [Parameter] false none [Parameter to configure a code pattern]

    Pattern

    {
      "id": "accessor-pairs",
      "title": "string",
      "category": "Security",
      "subCategory": "XSS",
      "level": "Error",
      "severityLevel": "Error",
      "description": "Enforce getter and setter pairs in objects and classes",
      "explanation": "Accessor pairs description",
      "enabled": true,
      "languages": [
        "JavaScript"
      ],
      "timeToFix": 5,
      "parameters": [
        {
          "name": "getWithoutSet",
          "description": "getWithoutSet",
          "default": "true"
        }
      ],
      "rationale": "string",
      "solution": "string",
      "goodExamples": [
        "string"
      ],
      "badExamples": [
        "string"
      ],
      "tags": [
        "string"
      ]
    }
    
    

    Code pattern that a Codacy tool can use to find issues

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous PatternDetails false none Details of the pattern that was identified in the issue

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » description string false none Short description of the code pattern
    » explanation string false none Full description of the code pattern, in CommonMark
    » enabled boolean true none True if the code pattern is on by default for new repositories
    » languages [string] false none List of languages that the code pattern supports
    » timeToFix integer(int32) false none Average time to fix an issue detected by the code pattern, in minutes
    » parameters ParameterList true none none
    » rationale string false none Rationale for the pattern
    » solution string false none Pattern suggested solution
    » goodExamples [string] false none List of good examples for the pattern
    » badExamples [string] false none List of bad examples for the pattern
    » tags [string] false none Tags associated with the pattern

    ConfiguredPattern

    {
      "patternDefinition": {
        "id": "accessor-pairs",
        "title": "string",
        "category": "Security",
        "subCategory": "XSS",
        "level": "Error",
        "severityLevel": "Error",
        "description": "Enforce getter and setter pairs in objects and classes",
        "explanation": "Accessor pairs description",
        "enabled": true,
        "languages": [
          "JavaScript"
        ],
        "timeToFix": 5,
        "parameters": [
          {
            "name": "getWithoutSet",
            "description": "getWithoutSet",
            "default": "true"
          }
        ],
        "rationale": "string",
        "solution": "string",
        "goodExamples": [
          "string"
        ],
        "badExamples": [
          "string"
        ],
        "tags": [
          "string"
        ]
      },
      "enabled": true,
      "isCustom": true,
      "parameters": [
        {
          "name": "getWithoutSet",
          "value": "true"
        }
      ],
      "enabledBy": [
        {
          "id": 0,
          "name": "string"
        }
      ]
    }
    
    

    Code pattern configuration for a tool

    Properties

    Name Type Required Restrictions Description
    patternDefinition Pattern true none Code pattern that a Codacy tool can use to find issues
    enabled boolean true none True if the code pattern is enabled
    isCustom boolean true none Whether the pattern is enabled outside the scope of a coding standard
    parameters ConfiguredParametersList true none none
    enabledBy [CodingStandardInfo] true none [Coding standard identifier and name]

    ConfiguredPatternListMeta

    {
      "totalEnabled": 35
    }
    
    

    Metadata for a retrieved pattern list

    Properties

    Name Type Required Restrictions Description
    totalEnabled integer(int32) true none Total number of enabled patterns

    ConfiguredPatternsListResponse

    {
      "data": [
        {
          "patternDefinition": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error",
            "description": "Enforce getter and setter pairs in objects and classes",
            "explanation": "Accessor pairs description",
            "enabled": true,
            "languages": [
              "JavaScript"
            ],
            "timeToFix": 5,
            "parameters": [
              {
                "name": "getWithoutSet",
                "description": "getWithoutSet",
                "default": "true"
              }
            ],
            "rationale": "string",
            "solution": "string",
            "goodExamples": [
              "string"
            ],
            "badExamples": [
              "string"
            ],
            "tags": [
              "string"
            ]
          },
          "enabled": true,
          "isCustom": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ],
          "enabledBy": [
            {
              "id": 0,
              "name": "string"
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "meta": {
        "totalEnabled": 35
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [ConfiguredPattern] true none [Code pattern configuration for a tool]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    meta ConfiguredPatternListMeta false none Metadata for a retrieved pattern list

    Forbidden

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "Forbidden"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    UpdatePatternsBody

    {
      "enabled": true
    }
    
    

    Specifies the update to apply to the code patterns of a tool in a coding standard

    Properties

    Name Type Required Restrictions Description
    enabled boolean true none True enables the code patterns, and False disables them.

    ConfiguredPatternResponse

    {
      "data": {
        "patternDefinition": {
          "id": "accessor-pairs",
          "title": "string",
          "category": "Security",
          "subCategory": "XSS",
          "level": "Error",
          "severityLevel": "Error",
          "description": "Enforce getter and setter pairs in objects and classes",
          "explanation": "Accessor pairs description",
          "enabled": true,
          "languages": [
            "JavaScript"
          ],
          "timeToFix": 5,
          "parameters": [
            {
              "name": "getWithoutSet",
              "description": "getWithoutSet",
              "default": "true"
            }
          ],
          "rationale": "string",
          "solution": "string",
          "goodExamples": [
            "string"
          ],
          "badExamples": [
            "string"
          ],
          "tags": [
            "string"
          ]
        },
        "enabled": true,
        "isCustom": true,
        "parameters": [
          {
            "name": "getWithoutSet",
            "value": "true"
          }
        ],
        "enabledBy": [
          {
            "id": 0,
            "name": "string"
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data ConfiguredPattern true none Code pattern configuration for a tool

    Count

    {
      "name": "string",
      "total": 0
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none none
    total integer(int32) true none none

    ToolPatternsOverviewCounts

    {
      "languages": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "categories": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "severities": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "tags": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "totalRecommended": 0,
      "totalEnabled": 0
    }
    
    

    Overview of the patterns in a tool

    Properties

    Name Type Required Restrictions Description
    languages [Count] true none none
    categories [Count] true none none
    severities [Count] true none none
    tags [Count] true none none
    totalRecommended integer(int32) true none none
    totalEnabled integer(int32) true none none

    ToolPatternsOverview

    {
      "counts": {
        "languages": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "categories": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "severities": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "tags": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "totalRecommended": 0,
        "totalEnabled": 0
      }
    }
    
    

    Overview of the patterns in a tool

    Properties

    Name Type Required Restrictions Description
    counts ToolPatternsOverviewCounts true none Overview of the patterns in a tool

    ToolPatternsOverviewResponse

    {
      "data": {
        "counts": {
          "languages": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "categories": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "severities": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "tags": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "totalRecommended": 0,
          "totalEnabled": 0
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data ToolPatternsOverview true none Overview of the patterns in a tool

    StandardParameterConflict

    {
      "standard": {
        "id": 0,
        "name": "string"
      },
      "parameters": [
        {
          "name": "getWithoutSet",
          "value": "true"
        }
      ]
    }
    
    

    Coding Standards and corresponding Patterns Parameters that have conflicts

    Properties

    Name Type Required Restrictions Description
    standard CodingStandardInfo true none Coding standard identifier and name
    parameters ConfiguredParametersList true none none

    StandardPatternConflict

    {
      "patternId": "ESLint_@typescript-eslint_no-shadow",
      "conflicts": [
        {
          "standard": {
            "id": 0,
            "name": "string"
          },
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    }
    
    

    Identifies conflicts in a Pattern

    Properties

    Name Type Required Restrictions Description
    patternId string true none The pattern's id.
    conflicts [StandardParameterConflict] true none [Coding Standards and corresponding Patterns Parameters that have conflicts]

    RepositoryToolConflictsResponse

    {
      "data": [
        {
          "patternId": "ESLint_@typescript-eslint_no-shadow",
          "conflicts": [
            {
              "standard": {
                "id": 0,
                "name": "string"
              },
              "parameters": [
                {
                  "name": "getWithoutSet",
                  "value": "true"
                }
              ]
            }
          ]
        }
      ]
    }
    
    

    Repository Tool Patterns that have conflicts

    Properties

    Name Type Required Restrictions Description
    data [StandardPatternConflict] true none [Identifies conflicts in a Pattern]

    AnalysisAction

    "clone"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous clone
    anonymous createTasks
    anonymous runMetrics
    anonymous runPatterns
    anonymous createOverviews

    FirstAnalysisOverview

    {
      "action": "clone",
      "complete": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    action AnalysisAction true none none
    complete boolean true none none

    FirstAnalysisOverviewResponse

    {
      "data": [
        {
          "action": "clone",
          "complete": false
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [FirstAnalysisOverview] true none none

    PullRequestOwner

    {
      "name": "Foo",
      "avatarUrl": "https://example.com/foo",
      "username": "foo.bar",
      "email": "foobar@example.com"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none none
    avatarUrl string false none none
    username string false none none
    email string false none none

    PullRequest

    {
      "id": 1,
      "number": 1,
      "updated": "2019-05-07T14:29:13.43Z",
      "status": "open",
      "repository": "awesome-repository",
      "title": "Amazing pull request",
      "owner": {
        "name": "Foo",
        "avatarUrl": "https://example.com/foo",
        "username": "foo.bar",
        "email": "foobar@example.com"
      },
      "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
      "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
      "originBranch": "feat-branch",
      "targetBranch": "master",
      "gitHref": "https://github.com/..."
    }
    
    

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    number integer(int32) true none none
    updated string(date-time) true none none
    status string true none Pull request status
    repository string true none none
    title string true none none
    owner PullRequestOwner true none none
    headCommitSha string true none none
    commonAncestorCommitSha string true none none
    originBranch string false none none
    targetBranch string false none none
    gitHref string true none URL to the pull request on the Git provider

    DiffCoverage

    {
      "value": 71,
      "coveredLines": 11,
      "coverableLines": 21,
      "cause": "NoCoverableLines"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    value number(double) false none Coverage value of the lines added or modified by the pull request
    coveredLines integer(int32) false none Number of covered lines from the lines added or modified by the pull request
    coverableLines integer(int32) false none Number of coverable lines from the lines added or modified by the pull request
    cause string true none Rationale for diffCoverage value interpretation

    Enumerated Values

    Property Value
    cause ValueIsPresent
    cause NoCoverableLines
    cause MissingRequirements

    AnalysisExpectedThreshold

    {
      "threshold": 0,
      "minimumSeverity": "Error"
    }
    
    

    Expected threshold for the given gate

    Properties

    Name Type Required Restrictions Description
    threshold number true none Threshold configured for the given gate
    minimumSeverity SeverityLevel false none Issue severity level. These values map to our UI as follows - Info to Minor, Warning to Medium, High to High, Error to Critical.

    AnalysisResultReason

    {
      "gate": "string",
      "expected": -1,
      "expectedThreshold": {
        "threshold": 0,
        "minimumSeverity": "Error"
      },
      "isUpToStandards": true
    }
    
    

    Reason for an analysis result for a quality gate

    Properties

    Name Type Required Restrictions Description
    gate string true none Name of the quality gate
    expected number false none Deprecated: Use expectedThreshold instead. The threshold value configured for the quality gate.
    expectedThreshold AnalysisExpectedThreshold true none Expected threshold for the given gate
    isUpToStandards boolean true none True if the value passes the quality gate

    PullRequestCoverage

    {
      "deltaCoverage": 71,
      "diffCoverage": {
        "value": 71,
        "coveredLines": 11,
        "coverableLines": 21,
        "cause": "NoCoverableLines"
      },
      "isUpToStandards": true,
      "resultReasons": [
        {
          "gate": "string",
          "expected": -1,
          "expectedThreshold": {
            "threshold": 0,
            "minimumSeverity": "Error"
          },
          "isUpToStandards": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    deltaCoverage number(double) false none Difference between the coverage of the head commit and common ancestor commit of the pull request
    diffCoverage DiffCoverage false none none
    isUpToStandards boolean false none True if coverage metrics are at or above gate thresholds
    resultReasons [AnalysisResultReason] false none Reasons for the results of coverage analysis

    QualityAnalysis

    {
      "newIssues": 1,
      "fixedIssues": 1,
      "deltaComplexity": 1,
      "deltaClonesCount": 1,
      "isUpToStandards": true,
      "resultReasons": [
        {
          "gate": "string",
          "expected": -1,
          "expectedThreshold": {
            "threshold": 0,
            "minimumSeverity": "Error"
          },
          "isUpToStandards": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    newIssues integer(int32) false none Number of issues introduced by the pull request or commit
    fixedIssues integer(int32) false none Number of issues fixed by the pull request or commit
    deltaComplexity integer(int32) false none Difference in cyclomatic complexity introduced by the pull request or commit
    deltaClonesCount integer(int32) false none Difference in number of duplicated blocks of code introduced by the pull request or commit
    isUpToStandards boolean false none Deprecated: Use PullRequest isUpToStandards instead (if applicable).
    resultReasons [AnalysisResultReason] false none Reasons for the results of quality analysis

    AnalysisMeta

    {
      "analyzable": true,
      "reason": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    analyzable boolean true none none
    reason string false none none

    PullRequestWithAnalysis

    {
      "isUpToStandards": true,
      "isAnalysing": false,
      "pullRequest": {
        "id": 1,
        "number": 1,
        "updated": "2019-05-07T14:29:13.43Z",
        "status": "open",
        "repository": "awesome-repository",
        "title": "Amazing pull request",
        "owner": {
          "name": "Foo",
          "avatarUrl": "https://example.com/foo",
          "username": "foo.bar",
          "email": "foobar@example.com"
        },
        "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
        "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
        "originBranch": "feat-branch",
        "targetBranch": "master",
        "gitHref": "https://github.com/..."
      },
      "newIssues": 1,
      "fixedIssues": 1,
      "deltaComplexity": 1,
      "deltaClonesCount": 1,
      "deltaCoverageWithDecimals": 71,
      "deltaCoverage": 1,
      "diffCoverage": 71,
      "coverage": {
        "deltaCoverage": 71,
        "diffCoverage": {
          "value": 71,
          "coveredLines": 11,
          "coverableLines": 21,
          "cause": "NoCoverableLines"
        },
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "quality": {
        "newIssues": 1,
        "fixedIssues": 1,
        "deltaComplexity": 1,
        "deltaClonesCount": 1,
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "meta": {
        "analyzable": true,
        "reason": "string"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    isUpToStandards boolean false none True if metrics are at or above gate thresholds
    isAnalysing boolean true none none
    pullRequest PullRequest true none none
    newIssues integer(int32) false none Number of issues introduced by the pull request
    fixedIssues integer(int32) false none Number of issues fixed by the pull request
    deltaComplexity integer(int32) false none Difference in cyclomatic complexity introduced by the pull request
    deltaClonesCount integer(int32) false none Difference in number of duplicated blocks of code introduced by the pull request
    deltaCoverageWithDecimals number(double) false none Deprecated, use coverage instead
    deltaCoverage integer(int32) false none Deprecated, use coverage instead
    diffCoverage number(double) false none Deprecated, use coverage instead
    coverage PullRequestCoverage false none none
    quality QualityAnalysis false none none
    meta AnalysisMeta true none none

    PullRequestWithAnalysisListResponse

    {
      "data": [
        {
          "isUpToStandards": true,
          "isAnalysing": false,
          "pullRequest": {
            "id": 1,
            "number": 1,
            "updated": "2019-05-07T14:29:13.43Z",
            "status": "open",
            "repository": "awesome-repository",
            "title": "Amazing pull request",
            "owner": {
              "name": "Foo",
              "avatarUrl": "https://example.com/foo",
              "username": "foo.bar",
              "email": "foobar@example.com"
            },
            "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
            "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
            "originBranch": "feat-branch",
            "targetBranch": "master",
            "gitHref": "https://github.com/..."
          },
          "newIssues": 1,
          "fixedIssues": 1,
          "deltaComplexity": 1,
          "deltaClonesCount": 1,
          "deltaCoverageWithDecimals": 71,
          "deltaCoverage": 1,
          "diffCoverage": 71,
          "coverage": {
            "deltaCoverage": 71,
            "diffCoverage": {
              "value": 71,
              "coveredLines": 11,
              "coverableLines": 21,
              "cause": "NoCoverableLines"
            },
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "quality": {
            "newIssues": 1,
            "fixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "meta": {
            "analyzable": true,
            "reason": "string"
          }
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [PullRequestWithAnalysis] true none none
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    PullRequestWithCoverage

    {
      "pullRequest": {
        "id": 1,
        "number": 1,
        "updated": "2019-05-07T14:29:13.43Z",
        "status": "open",
        "repository": "awesome-repository",
        "title": "Amazing pull request",
        "owner": {
          "name": "Foo",
          "avatarUrl": "https://example.com/foo",
          "username": "foo.bar",
          "email": "foobar@example.com"
        },
        "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
        "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
        "originBranch": "feat-branch",
        "targetBranch": "master",
        "gitHref": "https://github.com/..."
      },
      "coverage": {
        "deltaCoverage": 71,
        "diffCoverage": {
          "value": 71,
          "coveredLines": 11,
          "coverableLines": 21,
          "cause": "NoCoverableLines"
        },
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pullRequest PullRequest true none none
    coverage PullRequestCoverage true none none

    PullRequestWithCoverageResponse

    {
      "data": {
        "pullRequest": {
          "id": 1,
          "number": 1,
          "updated": "2019-05-07T14:29:13.43Z",
          "status": "open",
          "repository": "awesome-repository",
          "title": "Amazing pull request",
          "owner": {
            "name": "Foo",
            "avatarUrl": "https://example.com/foo",
            "username": "foo.bar",
            "email": "foobar@example.com"
          },
          "headCommitSha": "2957025d42e8daadf937d4044516f991d21deea4",
          "commonAncestorCommitSha": "3357025d42e8daadf937d4044516f991d21deea4",
          "originBranch": "feat-branch",
          "targetBranch": "master",
          "gitHref": "https://github.com/..."
        },
        "coverage": {
          "deltaCoverage": 71,
          "diffCoverage": {
            "value": 71,
            "coveredLines": 11,
            "coverableLines": 21,
            "cause": "NoCoverableLines"
          },
          "isUpToStandards": true,
          "resultReasons": [
            {
              "gate": "string",
              "expected": -1,
              "expectedThreshold": {
                "threshold": 0,
                "minimumSeverity": "Error"
              },
              "isUpToStandards": true
            }
          ]
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data PullRequestWithCoverage true none none

    DiffLineHit

    {
      "lineNumber": "string",
      "hits": 0
    }
    
    

    Properties

    Name Type Required Restrictions Description
    lineNumber string true none none
    hits integer(int64) true none none

    FileDiffCoverage

    {
      "fileName": "string",
      "coverage": 0,
      "variation": 0,
      "diff": {
        "value": 71,
        "coveredLines": 11,
        "coverableLines": 21,
        "cause": "NoCoverableLines"
      },
      "diffLineHits": [
        {
          "lineNumber": "string",
          "hits": 0
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    fileName string true none none
    coverage number true none none
    variation number false none none
    diff DiffCoverage false none none
    diffLineHits [DiffLineHit] true none none

    PullRequestFilesCoverageResponse

    {
      "data": [
        {
          "fileName": "string",
          "coverage": 0,
          "variation": 0,
          "diff": {
            "value": 71,
            "coveredLines": 11,
            "coverableLines": 21,
            "cause": "NoCoverableLines"
          },
          "diffLineHits": [
            {
              "lineNumber": "string",
              "hits": 0
            }
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [FileDiffCoverage] true none none

    CoverageAnalysis

    {
      "totalCoveragePercentage": 93.23,
      "deltaCoveragePercentage": 15.25,
      "isUpToStandards": true,
      "resultReasons": [
        {
          "gate": "string",
          "expected": -1,
          "expectedThreshold": {
            "threshold": 0,
            "minimumSeverity": "Error"
          },
          "isUpToStandards": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    totalCoveragePercentage number(double) false none Total coverage percentage at the requested commit
    deltaCoveragePercentage number(double) false none Difference in coverage between two commits, expressed in percentage points
    isUpToStandards boolean false none True if coverage metrics are at or above gate thresholds
    resultReasons [AnalysisResultReason] false none Reasons for the results of coverage analysis

    CommitWithAnalysis

    {
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ]
      },
      "coverage": {
        "totalCoveragePercentage": 93.23,
        "deltaCoveragePercentage": 15.25,
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "quality": {
        "newIssues": 1,
        "fixedIssues": 1,
        "deltaComplexity": 1,
        "deltaClonesCount": 1,
        "isUpToStandards": true,
        "resultReasons": [
          {
            "gate": "string",
            "expected": -1,
            "expectedThreshold": {
              "threshold": 0,
              "minimumSeverity": "Error"
            },
            "isUpToStandards": true
          }
        ]
      },
      "meta": {
        "analyzable": true,
        "reason": "string"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    commit Commit true none none
    coverage CoverageAnalysis false none none
    quality QualityAnalysis false none none
    meta AnalysisMeta true none none

    CommitWithAnalysisListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "commit": {
            "sha": "string",
            "id": 1,
            "commitTimestamp": "2019-05-07T14:29:13.43Z",
            "authorName": "string",
            "authorEmail": "string",
            "message": "string",
            "startedAnalysis": "2022-01-07T14:29:13.43Z",
            "endedAnalysis": "2022-01-07T14:29:13.43Z",
            "isMergeCommit": false,
            "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "parents": [
              "string"
            ]
          },
          "coverage": {
            "totalCoveragePercentage": 93.23,
            "deltaCoveragePercentage": 15.25,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "quality": {
            "newIssues": 1,
            "fixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1,
            "isUpToStandards": true,
            "resultReasons": [
              {
                "gate": "string",
                "expected": -1,
                "expectedThreshold": {
                  "threshold": 0,
                  "minimumSeverity": "Error"
                },
                "isUpToStandards": true
              }
            ]
          },
          "meta": {
            "analyzable": true,
            "reason": "string"
          }
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [CommitWithAnalysis] true none none

    CommitWithBranches

    {
      "sha": "string",
      "id": 1,
      "commitTimestamp": "2019-05-07T14:29:13.43Z",
      "authorName": "string",
      "authorEmail": "string",
      "message": "string",
      "startedAnalysis": "2022-01-07T14:29:13.43Z",
      "endedAnalysis": "2022-01-07T14:29:13.43Z",
      "isMergeCommit": false,
      "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
      "parents": [
        "string"
      ],
      "branches": [
        {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        }
      ]
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous Commit false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » branches [Branch] false none List of branches containing the commit

    PullRequestCoverageReport

    {
      "targetCommitSha": "string",
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ],
        "branches": [
          {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          }
        ]
      },
      "language": "string",
      "createdAt": "2019-08-24T14:15:22Z",
      "status": "Pending"
    }
    
    

    Status and details of a pull request coverage report

    Properties

    Name Type Required Restrictions Description
    targetCommitSha string true none Commit SHA that was referenced as the target for this report
    commit CommitWithBranches false none none
    language string false none Programming language associated with the coverage report
    createdAt string(date-time) true none Report creation date
    status string true none Coverage status

    Enumerated Values

    Property Value
    status Pending
    status Processed
    status CommitNotAnalysed
    status CommitNotFound
    status BranchNotEnabled
    status MissingFinal

    CoveragePullRequestCommitDetail

    {
      "commitId": 1,
      "commitSha": "string",
      "reports": [
        {
          "targetCommitSha": "string",
          "commit": {
            "sha": "string",
            "id": 1,
            "commitTimestamp": "2019-05-07T14:29:13.43Z",
            "authorName": "string",
            "authorEmail": "string",
            "message": "string",
            "startedAnalysis": "2022-01-07T14:29:13.43Z",
            "endedAnalysis": "2022-01-07T14:29:13.43Z",
            "isMergeCommit": false,
            "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "parents": [
              "string"
            ],
            "branches": [
              {
                "id": 1,
                "name": "master",
                "isDefault": true,
                "isEnabled": true,
                "lastUpdated": "2019-05-07T14:29:13.43Z",
                "branchType": "Branch",
                "lastCommit": "string"
              }
            ]
          },
          "language": "string",
          "createdAt": "2019-08-24T14:15:22Z",
          "status": "Pending"
        }
      ]
    }
    
    

    Status and details of the coverage reports received for a pull request commit

    Properties

    Name Type Required Restrictions Description
    commitId integer(int64) true none none
    commitSha string true none none
    reports [PullRequestCoverageReport] true none [Status and details of a pull request coverage report]

    CoveragePullRequestResponse

    {
      "data": {
        "headCommit": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        },
        "commonAncestorCommit": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        },
        "origin": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        },
        "target": {
          "commitId": 1,
          "commitSha": "string",
          "reports": [
            {
              "targetCommitSha": "string",
              "commit": {
                "sha": "string",
                "id": 1,
                "commitTimestamp": "2019-05-07T14:29:13.43Z",
                "authorName": "string",
                "authorEmail": "string",
                "message": "string",
                "startedAnalysis": "2022-01-07T14:29:13.43Z",
                "endedAnalysis": "2022-01-07T14:29:13.43Z",
                "isMergeCommit": false,
                "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
                "parents": [
                  "string"
                ],
                "branches": [
                  {
                    "id": 1,
                    "name": "master",
                    "isDefault": true,
                    "isEnabled": true,
                    "lastUpdated": "2019-05-07T14:29:13.43Z",
                    "branchType": "Branch",
                    "lastCommit": "string"
                  }
                ]
              },
              "language": "string",
              "createdAt": "2019-08-24T14:15:22Z",
              "status": "Pending"
            }
          ]
        }
      }
    }
    
    

    Status and details about the coverage reports uploaded for the head commit and common ancestor commit of the pull request.

    Properties

    Name Type Required Restrictions Description
    data object true none none
    » headCommit CoveragePullRequestCommitDetail true none Status and details of the coverage reports received for a pull request commit
    » commonAncestorCommit CoveragePullRequestCommitDetail true none Status and details of the coverage reports received for a pull request commit
    » origin CoveragePullRequestCommitDetail true none Status and details of the coverage reports received for a pull request commit
    » target CoveragePullRequestCommitDetail true none Status and details of the coverage reports received for a pull request commit

    ToolReference

    {
      "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
      "name": "ESLint"
    }
    
    

    Details of the tool that found the issue

    Properties

    Name Type Required Restrictions Description
    uuid string true none Tool unique identifier
    name string true none Name of the tool

    CommitReference

    {
      "sha": "string",
      "commiter": "string",
      "commiterName": "string",
      "timestamp": "2019-05-07T14:29:13.43Z"
    }
    
    

    Details of the commit that introduced the issue or null if the issue was introduced in a commit that Codacy didn't analyze

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous CommitIdentification false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » commiter string false none Email address of the author of the commit
    » commiterName string false none Name of the author of the commit
    » timestamp string(date-time) false none Time and date of the commit

    CommitIssue

    {
      "issueId": "string",
      "resultDataId": 0,
      "filePath": "string",
      "fileId": 0,
      "patternInfo": {
        "id": "accessor-pairs",
        "title": "string",
        "category": "Security",
        "subCategory": "XSS",
        "level": "Error",
        "severityLevel": "Error"
      },
      "toolInfo": {
        "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
        "name": "ESLint"
      },
      "lineNumber": 0,
      "message": "string",
      "suggestion": "string",
      "language": "string",
      "lineText": "string",
      "commitInfo": {
        "sha": "string",
        "commiter": "string",
        "commiterName": "string",
        "timestamp": "2019-05-07T14:29:13.43Z"
      },
      "falsePositiveProbability": 0,
      "falsePositiveReason": "string",
      "falsePositiveThreshold": 0
    }
    
    

    Issue details including the commit that originated the issue

    Properties

    Name Type Required Restrictions Description
    issueId string true none ID of the Issue
    resultDataId integer(int64) true none Stable ID for the issue.
    filePath string true none Path of the file where the issue was found
    fileId integer(int64) true none none
    patternInfo PatternDetails true none Details of the pattern that was identified in the issue
    toolInfo ToolReference true none Details of the tool that found the issue
    lineNumber integer(int64) true none Line where the issue was found
    message string true none Detailed cause of the issue
    suggestion string false none The suggested fix for the issue
    language string true none Language of the file where the issue was found
    lineText string true none Contents of the line where the issue was found
    commitInfo CommitReference false none Details of the commit that introduced the issue or null if the issue was introduced in a commit that Codacy didn't analyze
    falsePositiveProbability integer(int32) false none Probability that the issue is a false positive
    falsePositiveReason string false none Reasoning for the false positive
    falsePositiveThreshold integer(int32) true none Threshold for false positive detection

    DeltaType

    "Added"
    
    

    Specifies if the issue was added or fixed by the commit

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Specifies if the issue was added or fixed by the commit

    Enumerated Values

    Property Value
    anonymous Added
    anonymous Fixed

    CommitDeltaIssue

    {
      "commitIssue": {
        "issueId": "string",
        "resultDataId": 0,
        "filePath": "string",
        "fileId": 0,
        "patternInfo": {
          "id": "accessor-pairs",
          "title": "string",
          "category": "Security",
          "subCategory": "XSS",
          "level": "Error",
          "severityLevel": "Error"
        },
        "toolInfo": {
          "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
          "name": "ESLint"
        },
        "lineNumber": 0,
        "message": "string",
        "suggestion": "string",
        "language": "string",
        "lineText": "string",
        "commitInfo": {
          "sha": "string",
          "commiter": "string",
          "commiterName": "string",
          "timestamp": "2019-05-07T14:29:13.43Z"
        },
        "falsePositiveProbability": 0,
        "falsePositiveReason": "string",
        "falsePositiveThreshold": 0
      },
      "deltaType": "Added"
    }
    
    

    Details of an issue that was added or fixed by a commit

    Properties

    Name Type Required Restrictions Description
    commitIssue CommitIssue true none Issue details including the commit that originated the issue
    deltaType DeltaType true none Specifies if the issue was added or fixed by the commit

    PullRequestIssuesResponse

    {
      "analyzed": true,
      "data": [
        {
          "commitIssue": {
            "issueId": "string",
            "resultDataId": 0,
            "filePath": "string",
            "fileId": 0,
            "patternInfo": {
              "id": "accessor-pairs",
              "title": "string",
              "category": "Security",
              "subCategory": "XSS",
              "level": "Error",
              "severityLevel": "Error"
            },
            "toolInfo": {
              "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
              "name": "ESLint"
            },
            "lineNumber": 0,
            "message": "string",
            "suggestion": "string",
            "language": "string",
            "lineText": "string",
            "commitInfo": {
              "sha": "string",
              "commiter": "string",
              "commiterName": "string",
              "timestamp": "2019-05-07T14:29:13.43Z"
            },
            "falsePositiveProbability": 0,
            "falsePositiveReason": "string",
            "falsePositiveThreshold": 0
          },
          "deltaType": "Added"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    List of issues added or fixed on a pull request

    Properties

    Name Type Required Restrictions Description
    analyzed boolean true none True if Codacy already analyzed the latest commit
    data [CommitDeltaIssue] true none List of issues added or fixed on a pull request or an empty list if Codacy didn't analyze the latest commit yet.
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    CloneDuplicationBlock

    {
      "path": "string",
      "fileId": 0,
      "fileDataId": 0,
      "fromLine": 0,
      "toLine": 0
    }
    
    

    Properties

    Name Type Required Restrictions Description
    path string true none none
    fileId integer(int64) true none none
    fileDataId integer(int64) true none none
    fromLine integer(int64) true none none
    toLine integer(int64) true none none

    CommitFileClone

    {
      "id": 0,
      "status": "Added",
      "clones": [
        {
          "path": "string",
          "fileId": 0,
          "fileDataId": 0,
          "fromLine": 0,
          "toLine": 0
        }
      ]
    }
    
    

    A duplicated code block with references to duplicate instances

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    status DeltaType true none Specifies if the issue was added or fixed by the commit
    clones [CloneDuplicationBlock] true none none

    ClonesResponse

    {
      "data": [
        {
          "id": 0,
          "status": "Added",
          "clones": [
            {
              "path": "string",
              "fileId": 0,
              "fileDataId": 0,
              "fromLine": 0,
              "toLine": 0
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    List of duplicate code blocks added or removed in a commit or pull request

    Properties

    Name Type Required Restrictions Description
    data [CommitFileClone] true none List of duplicate code blocks added or removed in a commit or pull request, or an empty list if Codacy has not analyzed the latest commit yet.
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    AnalysisStepExecutionMetrics

    {
      "title": "string",
      "start": "2019-08-24T14:15:22Z",
      "end": "2019-08-24T14:15:22Z",
      "activeExecutionTime": 0,
      "totalExecutionTime": 0,
      "stackTrace": "string",
      "status": "success"
    }
    
    

    Execution metrics for a step of the analysis process

    Properties

    Name Type Required Restrictions Description
    title string true none none
    start string(date-time) true none none
    end string(date-time) true none none
    activeExecutionTime integer(int64) true none none
    totalExecutionTime integer(int64) true none none
    stackTrace string false none none
    status string true none none

    Enumerated Values

    Property Value
    status success
    status error

    LogsResponse

    {
      "data": {
        "headCommitSha": "string",
        "commonAncestorCommitSha": "string",
        "start": "2019-08-24T14:15:22Z",
        "end": "2019-08-24T14:15:22Z",
        "totalAnalysisTime": 0,
        "steps": [
          {
            "title": "string",
            "start": "2019-08-24T14:15:22Z",
            "end": "2019-08-24T14:15:22Z",
            "activeExecutionTime": 0,
            "totalExecutionTime": 0,
            "stackTrace": "string",
            "status": "success"
          }
        ]
      }
    }
    
    

    Analysis logs response for a commit or pull request

    Properties

    Name Type Required Restrictions Description
    data object true none Analysis logs data for a commit or pull request
    » headCommitSha string true none none
    » commonAncestorCommitSha string false none none
    » start string(date-time) true none none
    » end string(date-time) true none none
    » totalAnalysisTime integer(int64) true none none
    » steps [AnalysisStepExecutionMetrics] true none [Execution metrics for a step of the analysis process]

    DeprecatedRepositoryQualitySettings

    {
      "issueThreshold": 1,
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "complexityThreshold": 1,
      "fileDuplicationThreshold": 1,
      "fileComplexityThreshold": 1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    issueThreshold integer(int32) false none The repository will be considered unhealthy if the percentage of issues is over this threshold
    duplicationThreshold integer(int32) false none The repository will be considered unhealthy if the percentage of duplication of files is over this threshold
    coverageThreshold integer(int32) false none The repository will be considered unhealthy if the coverage percentage is under this threshold
    complexityThreshold integer(int32) false none The repository will be considered unhealthy if the percentage of complexity of files is over this threshold
    fileDuplicationThreshold integer(int32) false none A file in this repository will be considered duplicated when the number of cloned blocks is over this threshold
    fileComplexityThreshold integer(int32) false none A file in this repository will be considered complex when its complexity value is over this threshold

    DeprecatedRepositoryQualitySettingsResponse

    {
      "data": {
        "issueThreshold": 1,
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "complexityThreshold": 1,
        "fileDuplicationThreshold": 1,
        "fileComplexityThreshold": 1
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data DeprecatedRepositoryQualitySettings true none none

    FileMetadata

    {
      "branchId": 1,
      "commitId": 1,
      "commitSha": "string",
      "fileId": 1,
      "fileDataId": 1,
      "path": "/src/test.go",
      "language": "Go",
      "gitProviderUrl": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
      "ignored": false
    }
    
    

    Metadata for a file in a repository

    Properties

    Name Type Required Restrictions Description
    branchId integer(int64) false none Identifier for the branch the file belongs to
    commitId integer(int64) true none none
    commitSha string true none Commit SHA
    fileId integer(int64) true none Identifier for file in any branch of a specific commit
    fileDataId integer(int64) true none Identifier for file
    path string true none Relative path of the file in the repository
    language string true none Language of the file
    gitProviderUrl string true none URL to the commit on the Git provider
    ignored boolean true none True if the file is excluded from the analysis

    FileDeltaCoverageAnalysis

    {
      "deltaCoverage": -2.35,
      "totalCoverage": -2.35
    }
    
    

    Coverage changes for a file between two commits

    Properties

    Name Type Required Restrictions Description
    deltaCoverage number(double) false none Difference in code coverage percentage when compared to the parent commit
    totalCoverage number(double) false none The total coverage percentage for a given commit

    FileDeltaQualityAnalysis

    {
      "deltaNewIssues": 1,
      "deltaFixedIssues": 1,
      "deltaComplexity": 1,
      "deltaClonesCount": 1
    }
    
    

    Quality changes for a file between two commits

    Properties

    Name Type Required Restrictions Description
    deltaNewIssues integer(int32) true none Number of issues introduced by the commit
    deltaFixedIssues integer(int32) true none Number of issues fixed by the commit
    deltaComplexity integer(int32) false none Difference in cyclomatic complexity introduced by the commit
    deltaClonesCount integer(int32) false none Difference in number of duplicated blocks of code introduced by the commit

    FileDeltaAnalysis

    {
      "file": {
        "branchId": 1,
        "commitId": 1,
        "commitSha": "string",
        "fileId": 1,
        "fileDataId": 1,
        "path": "/src/test.go",
        "language": "Go",
        "gitProviderUrl": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "ignored": false
      },
      "coverage": {
        "deltaCoverage": -2.35,
        "totalCoverage": -2.35
      },
      "quality": {
        "deltaNewIssues": 1,
        "deltaFixedIssues": 1,
        "deltaComplexity": 1,
        "deltaClonesCount": 1
      },
      "comparedWithCommit": {
        "commitId": 1,
        "coverage": {
          "totalCoverage": 82.35
        }
      }
    }
    
    

    File with analysis results changes between two commits

    Properties

    Name Type Required Restrictions Description
    file FileMetadata true none Metadata for a file in a repository
    coverage FileDeltaCoverageAnalysis false none Coverage changes for a file between two commits
    quality FileDeltaQualityAnalysis false none Quality changes for a file between two commits
    comparedWithCommit object false none Original analysis results for the file
    » commitId integer(int64) true none none
    » coverage object false none none
    »» totalCoverage number(double) false none Total coverage of the commit

    FileAnalysisListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "file": {
            "branchId": 1,
            "commitId": 1,
            "commitSha": "string",
            "fileId": 1,
            "fileDataId": 1,
            "path": "/src/test.go",
            "language": "Go",
            "gitProviderUrl": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
            "ignored": false
          },
          "coverage": {
            "deltaCoverage": -2.35,
            "totalCoverage": -2.35
          },
          "quality": {
            "deltaNewIssues": 1,
            "deltaFixedIssues": 1,
            "deltaComplexity": 1,
            "deltaClonesCount": 1
          },
          "comparedWithCommit": {
            "commitId": 1,
            "coverage": {
              "totalCoverage": 82.35
            }
          }
        }
      ]
    }
    
    

    List of files with analysis results changes between two commits

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [FileDeltaAnalysis] false none [File with analysis results changes between two commits]

    AddedStateResponse

    {
      "data": "Added"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data AddedState true none Added state of the repository on Codacy. Valid values are NotAdded (the repository was not added to Codacy), Added (the repository was added to Codacy), or Following (the current user is following a repository added to Codacy).

    RepositoryQualitySettingsResponse

    {
      "data": {
        "maxIssuePercentage": 1,
        "maxDuplicatedFilesPercentage": 1,
        "minCoveragePercentage": 1,
        "maxComplexFilesPercentage": 1,
        "fileDuplicationBlockThreshold": 1,
        "fileComplexityValueThreshold": 1
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data RepositoryQualitySettings true none none

    SshKeySettingResponse

    {
      "publicSshKey": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    publicSshKey string true none Public SSH key

    SyncProviderSettingResponse

    {
      "name": "codacy-eslint",
      "visibility": "Private"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none Name of the repository
    visibility Visibility true none Visibility of the repository

    BuildServerAnalysisSettingResponse

    {
      "buildServerAnalysisSetting": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    buildServerAnalysisSetting boolean true none If true, Codacy waits for your build server to upload the results of the local analysis before resuming the analysis of your commits.
    If false, Codacy analyzes your commits directly on its cloud infrastructure.

    MethodNotAllowed

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "MethodNotAllowed"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    BuildServerAnalysisSettingRequest

    {
      "buildServerAnalysisSetting": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    buildServerAnalysisSetting boolean true none If true, Codacy waits for your build server to upload the results of the local analysis before resuming the analysis of your commits.
    If false, Codacy analyzes your commits directly on its cloud infrastructure.

    Language

    {
      "name": "Scala"
    }
    
    

    Language information

    Properties

    Name Type Required Restrictions Description
    name string true none name of the language

    RepositoryLanguage

    {
      "name": "Scala",
      "codacyDefaults": [
        "string"
      ],
      "extensions": [
        "string"
      ],
      "defaultFiles": [
        "string"
      ],
      "enabled": true,
      "detected": true
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous Language false none Language information

    and

    Name Type Required Restrictions Description
    anonymous object false none List of supported file extensions for a specific language
    » codacyDefaults [string] true none Default Codacy extensions for the language
    » extensions [string] true none List of custom extensions for the language
    » defaultFiles [string] true none Default Codacy files for the language
    » enabled boolean true none Whether or not this language is to be analyzed for this repository.
    » detected boolean true none Whether or not Codacy detected this language in the given repository. Note that at least one analysis has to have happened after

    RepositoryLanguageResponse

    {
      "languages": [
        {
          "name": "Scala",
          "codacyDefaults": [
            "string"
          ],
          "extensions": [
            "string"
          ],
          "defaultFiles": [
            "string"
          ],
          "enabled": true,
          "detected": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    languages [RepositoryLanguage] true none List of languages with supported extensions

    RepositoryLanguageUpdate

    {
      "name": "Scala",
      "extensions": [
        "string"
      ],
      "enabled": true
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous Language false none Language information

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » extensions [string] false none List of custom file extensions for the language. If left undefined, then the extensions will not be updated.
    » enabled boolean false none Whether this language is to be analyzed for this repository. If left undefined, then the flag will not be updated.

    RepositoryLanguagesBody

    {
      "languages": [
        {
          "name": "Scala",
          "extensions": [
            "string"
          ],
          "enabled": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    languages [RepositoryLanguageUpdate] true none List of languages for this repository

    FileExtensions

    {
      "name": "string",
      "codacyDefaults": [
        "string"
      ],
      "extensions": [
        "string"
      ]
    }
    
    

    List of supported file extensions for a specific language

    Properties

    Name Type Required Restrictions Description
    name string true none Language name
    codacyDefaults [string] true none Default Codacy extensions for the language
    extensions [string] true none List of custom extensions for the language

    FileExtensionsResponse

    {
      "languagesExtensions": [
        {
          "name": "string",
          "codacyDefaults": [
            "string"
          ],
          "extensions": [
            "string"
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    languagesExtensions [FileExtensions] true none List of languages with supported extensions

    FileExtensionsUpdate

    {
      "name": "string",
      "extensions": [
        "string"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none Language name
    extensions [string] true none List of custom file extensions for the language

    FileExtensionsBody

    {
      "languagesExtensions": [
        {
          "name": "string",
          "extensions": [
            "string"
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    languagesExtensions [FileExtensionsUpdate] true none List of custom file extensions to associate with each language for a repository

    QualityGate

    {
      "issueThreshold": {
        "threshold": 1,
        "minimumSeverity": "Error"
      },
      "securityIssueThreshold": 1,
      "securityIssueMinimumSeverity": "Error",
      "duplicationThreshold": 1,
      "coverageThreshold": 1,
      "coverageThresholdWithDecimals": -0.02,
      "diffCoverageThreshold": 70,
      "complexityThreshold": 1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    issueThreshold object false none The quality gate will fail if there are new issues of the specified severity over this threshold (if no severity is specified all severity levels are considered). This value cannot be negative
    » threshold integer(int32) true none none
    » minimumSeverity SeverityLevel false none Issue severity level. These values map to our UI as follows - Info to Minor, Warning to Medium, High to High, Error to Critical.
    securityIssueThreshold integer(int32) false none The quality gate will fail if the number of new security issues is over this threshold. This value cannot be negative
    securityIssueMinimumSeverity SeverityLevel false none Issue severity level. These values map to our UI as follows - Info to Minor, Warning to Medium, High to High, Error to Critical.
    duplicationThreshold integer(int32) false none The quality gate will fail if there are new duplicated blocks over this threshold
    coverageThreshold integer(int32) false none Deprecated, use coverageThresholdWithDecimals instead
    coverageThresholdWithDecimals number(double) false none The quality gate will fail if coverage percentage varies less than this threshold. This value should be at most 1.00
    diffCoverageThreshold integer(int32) false none The quality gate will fail if diff coverage is under this threshold. This value should be at least 0 and at most 100
    complexityThreshold integer(int32) false none The quality gate will fail if the complexity value is over this threshold. This value cannot be negative

    RepositoryGatePolicy

    {
      "id": 0,
      "name": "string"
    }
    
    

    Gate policy the repository is following.

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Identifier of the gate policy
    name string true none Name of the gate policy

    QualitySettingsWithGatePolicy

    {
      "qualityGate": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      },
      "repositoryGatePolicyInfo": {
        "id": 0,
        "name": "string"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    qualityGate QualityGate true none none
    repositoryGatePolicyInfo RepositoryGatePolicy false none Gate policy the repository is following.

    QualitySettingsResponse

    {
      "data": {
        "qualityGate": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "repositoryGatePolicyInfo": {
          "id": 0,
          "name": "string"
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data QualitySettingsWithGatePolicy true none none

    CategoryIssues

    {
      "categoryId": 1,
      "categoryType": "string",
      "categoryName": "string",
      "numberOfIssues": 100
    }
    
    

    Properties

    Name Type Required Restrictions Description
    categoryId integer(int64) true none none
    categoryType string true none none
    categoryName string true none none
    numberOfIssues integer(int64) true none none

    CommitAnalysisStats

    {
      "repositoryId": 1,
      "commitId": 1,
      "numberIssues": 1,
      "numberLoc": 1,
      "issuesPerCategory": [
        {
          "categoryId": 1,
          "categoryType": "string",
          "categoryName": "string",
          "numberOfIssues": 100
        }
      ],
      "issuePercentage": 1,
      "totalComplexity": 1,
      "numberComplexFiles": 1,
      "complexFilesPercentage": 1,
      "filesChangedToIncreaseComplexity": 1,
      "numberDuplicatedLines": 1,
      "duplicationPercentage": 1,
      "coveragePercentage": 1,
      "coveragePercentageWithDecimals": 15.25,
      "numberFilesUncovered": 1,
      "techDebt": 1,
      "totalFilesAdded": 1,
      "totalFilesRemoved": 1,
      "totalFilesChanged": 1,
      "commitTimestamp": "2019-05-07T14:29:13.43Z",
      "commitAuthorName": "Mike The Developer",
      "commitShortUUID": "00d3079ed"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositoryId integer(int64) true none none
    commitId integer(int64) true none none
    numberIssues integer(int64) true none none
    numberLoc integer(int64) true none none
    issuesPerCategory [CategoryIssues] true none none
    issuePercentage integer(int64) true none none
    totalComplexity integer(int64) false none none
    numberComplexFiles integer(int64) false none none
    complexFilesPercentage integer(int64) false none none
    filesChangedToIncreaseComplexity integer(int64) false none none
    numberDuplicatedLines integer(int64) false none none
    duplicationPercentage integer(int64) false none none
    coveragePercentage integer(int64) false none Test coverage percentage, truncated. Present only if a coverage report was processed for this commit.
    coveragePercentageWithDecimals number(double) false none Test coverage percentage. Present only if a coverage report was processed for this commit.
    numberFilesUncovered integer(int64) false none none
    techDebt integer(int64) true none none
    totalFilesAdded integer(int64) true none none
    totalFilesRemoved integer(int64) true none none
    totalFilesChanged integer(int64) true none none
    commitTimestamp string(date-time) true none none
    commitAuthorName string true none none
    commitShortUUID string true none none

    CommitAnalysisStatsListResponse

    {
      "data": [
        {
          "repositoryId": 1,
          "commitId": 1,
          "numberIssues": 1,
          "numberLoc": 1,
          "issuesPerCategory": [
            {
              "categoryId": 1,
              "categoryType": "string",
              "categoryName": "string",
              "numberOfIssues": 100
            }
          ],
          "issuePercentage": 1,
          "totalComplexity": 1,
          "numberComplexFiles": 1,
          "complexFilesPercentage": 1,
          "filesChangedToIncreaseComplexity": 1,
          "numberDuplicatedLines": 1,
          "duplicationPercentage": 1,
          "coveragePercentage": 1,
          "coveragePercentageWithDecimals": 15.25,
          "numberFilesUncovered": 1,
          "techDebt": 1,
          "totalFilesAdded": 1,
          "totalFilesRemoved": 1,
          "totalFilesChanged": 1,
          "commitTimestamp": "2019-05-07T14:29:13.43Z",
          "commitAuthorName": "Mike The Developer",
          "commitShortUUID": "00d3079ed"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [CommitAnalysisStats] true none none

    Category

    {
      "categoryType": "string",
      "name": "string",
      "description": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    categoryType string true none none
    name string true none none
    description string true none none

    CategoryOverview

    {
      "commitId": 1,
      "category": {
        "categoryType": "string",
        "name": "string",
        "description": "string"
      },
      "percentage": 1.6,
      "totalResults": 1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    commitId integer(int64) true none none
    category Category true none none
    percentage number(double) true none none
    totalResults integer(int64) true none none

    CategoryOverviewListResponse

    {
      "data": [
        {
          "commitId": 1,
          "category": {
            "categoryType": "string",
            "name": "string",
            "description": "string"
          },
          "percentage": 1.6,
          "totalResults": 1
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [CategoryOverview] true none none

    SearchRepositoryIssuesBody

    {
      "branchName": "a-feature-branch-name",
      "patternIds": [
        "ESLint_@typescript-eslint_consistent-indexed-object-style",
        "ESLint_@typescript-eslint_no-redeclare"
      ],
      "toolUuids": [
        "847feb32-9ff2-11ea-bb37-0242ac130002",
        "cf05f3aa-fd23-4586-8cce-5571b1904586"
      ],
      "languages": [
        "Java",
        "Scala",
        "CSS",
        "ObjectiveC"
      ],
      "categories": [
        "Security",
        "CodeStyle"
      ],
      "levels": [
        "Error",
        "Warning"
      ],
      "tags": [
        "react",
        "angular"
      ],
      "authorEmails": [
        "example@mail.com",
        "another@mail.com"
      ]
    }
    
    

    Search parameters to filter the list of issues in a repository

    Properties

    Name Type Required Restrictions Description
    branchName string false none Name of a repository branch enabled on Codacy,
    as returned by the endpoint listRepositoryBranches.
    By default, uses the main branch defined on the Codacy repository settings.
    patternIds [string] false none Set of code pattern identifiers, as returned by the endpoint listPatterns
    toolUuids [string] false none Set of tool UUIDs to filter issues by the tools that detected them
    languages [string] false none Set of language names, without spaces
    categories [string] false none Set of issue categories
    levels [SeverityLevel] false none Set of issue severity levels
    tags [string] false none Set of issue pattern tags
    authorEmails [string] false none Set of commit author email addresses

    SearchRepositoryIssuesListResponse

    {
      "data": [
        {
          "issueId": "string",
          "resultDataId": 0,
          "filePath": "string",
          "fileId": 0,
          "patternInfo": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error"
          },
          "toolInfo": {
            "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
            "name": "ESLint"
          },
          "lineNumber": 0,
          "message": "string",
          "suggestion": "string",
          "language": "string",
          "lineText": "string",
          "commitInfo": {
            "sha": "string",
            "commiter": "string",
            "commiterName": "string",
            "timestamp": "2019-05-07T14:29:13.43Z"
          },
          "falsePositiveProbability": 0,
          "falsePositiveReason": "string",
          "falsePositiveThreshold": 0
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [CommitIssue] true none [Issue details including the commit that originated the issue]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    BulkIgnoreIssuesBody

    {
      "issueIds": [
        "string"
      ],
      "reason": "string",
      "comment": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    issueIds [string] true none List of issue ids to ignore
    reason string false none Optional reason for ignoring
    comment string false none Optional comment

    PatternsCount

    {
      "id": "string",
      "title": "string",
      "total": 0
    }
    
    

    Number of issues detected by a code pattern

    Properties

    Name Type Required Restrictions Description
    id string true none Identifier of the code pattern
    title string true none Title of the code pattern
    total integer(int32) true none Number of issues detected by the code pattern

    IssuesOverviewCounts

    {
      "categories": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "languages": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "levels": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "tags": [
        {
          "name": "string",
          "total": 0
        }
      ],
      "patterns": [
        {
          "id": "string",
          "title": "string",
          "total": 0
        }
      ],
      "authors": [
        {
          "name": "string",
          "total": 0
        }
      ]
    }
    
    

    Overview of the issues in a repository

    Properties

    Name Type Required Restrictions Description
    categories [Count] true none Number of issues per category
    languages [Count] true none Number of issues per language
    levels [Count] true none Number of issues per severity level
    tags [Count] true none Number of tags per code pattern
    patterns [PatternsCount] true none Number of issues per code pattern
    authors [Count] true none Number of issues per commit author

    IssuesOverview

    {
      "counts": {
        "categories": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "languages": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "levels": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "tags": [
          {
            "name": "string",
            "total": 0
          }
        ],
        "patterns": [
          {
            "id": "string",
            "title": "string",
            "total": 0
          }
        ],
        "authors": [
          {
            "name": "string",
            "total": 0
          }
        ]
      }
    }
    
    

    Overview of the issues in a repository

    Properties

    Name Type Required Restrictions Description
    counts IssuesOverviewCounts true none Overview of the issues in a repository

    IssuesOverviewResponse

    {
      "data": {
        "counts": {
          "categories": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "languages": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "levels": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "tags": [
            {
              "name": "string",
              "total": 0
            }
          ],
          "patterns": [
            {
              "id": "string",
              "title": "string",
              "total": 0
            }
          ],
          "authors": [
            {
              "name": "string",
              "total": 0
            }
          ]
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data IssuesOverview true none Overview of the issues in a repository

    GetIssueResponse

    {
      "data": {
        "issueId": "string",
        "resultDataId": 0,
        "filePath": "string",
        "fileId": 0,
        "patternInfo": {
          "id": "accessor-pairs",
          "title": "string",
          "category": "Security",
          "subCategory": "XSS",
          "level": "Error",
          "severityLevel": "Error"
        },
        "toolInfo": {
          "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
          "name": "ESLint"
        },
        "lineNumber": 0,
        "message": "string",
        "suggestion": "string",
        "language": "string",
        "lineText": "string",
        "commitInfo": {
          "sha": "string",
          "commiter": "string",
          "commiterName": "string",
          "timestamp": "2019-05-07T14:29:13.43Z"
        },
        "falsePositiveProbability": 0,
        "falsePositiveReason": "string",
        "falsePositiveThreshold": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data CommitIssue true none Issue details including the commit that originated the issue

    IssueStateBody

    {
      "ignored": true,
      "reason": "FalsePositive",
      "comment": "string"
    }
    
    

    Ignored status of an issue

    Properties

    Name Type Required Restrictions Description
    ignored boolean true none True if the issue is ignored
    reason string false none Predefined reason for ignoring the issue
    comment string false none Optional comment justifying the ignore action

    Enumerated Values

    Property Value
    reason AcceptedUse
    reason FalsePositive
    reason NotExploitable
    reason TestCode
    reason ExternalCode

    IgnoredIssue

    {
      "issueId": "string",
      "reason": "FalsePositive",
      "comment": "string",
      "ignoredByName": "string",
      "ignoredTimestamp": "2019-05-07T14:29:13.43Z",
      "filePath": "string",
      "fileId": 0,
      "patternInfo": {
        "id": "accessor-pairs",
        "title": "string",
        "category": "Security",
        "subCategory": "XSS",
        "level": "Error",
        "severityLevel": "Error"
      },
      "toolInfo": {
        "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
        "name": "ESLint"
      },
      "lineNumber": 0,
      "message": "string",
      "language": "string",
      "lineText": "string",
      "commitInfo": {
        "sha": "string",
        "commiter": "string",
        "commiterName": "string",
        "timestamp": "2019-05-07T14:29:13.43Z"
      },
      "falsePositiveProbability": 0,
      "falsePositiveReason": "string",
      "falsePositiveThreshold": 0
    }
    
    

    Ignored issue details including the commit that originated the issue

    Properties

    Name Type Required Restrictions Description
    issueId string true none ID of the Issue
    reason string false none Predefined reason for ignoring the issue
    comment string false none Optional comment describing reason for ignoring the issue
    ignoredByName string false none Name of who ignored the issue
    ignoredTimestamp string(date-time) true none Timestamp when the issue was ignored
    filePath string true none Path of the file where the issue was found and ignored
    fileId integer(int64) false none none
    patternInfo PatternDetails true none Details of the pattern that was identified in the issue
    toolInfo ToolReference true none Details of the tool that found the issue
    lineNumber integer(int64) false none Line where the issue was found
    message string true none Detailed cause of the ignored issue
    language string true none Language of the file where the ignored issue was found
    lineText string true none Contents of the line where the ignored issue was found
    commitInfo CommitReference false none Details of the commit that introduced the issue or null if the issue was introduced in a commit that Codacy didn't analyze
    falsePositiveProbability integer(int32) false none Probability that the issue is a false positive
    falsePositiveReason string false none Reasoning for the false positive
    falsePositiveThreshold integer(int32) false none Threshold for false positive detection

    Enumerated Values

    Property Value
    reason AcceptedUse
    reason FalsePositive
    reason NotExploitable
    reason TestCode
    reason ExternalCode

    IgnoredIssuesListResponse

    {
      "data": [
        {
          "issueId": "string",
          "reason": "FalsePositive",
          "comment": "string",
          "ignoredByName": "string",
          "ignoredTimestamp": "2019-05-07T14:29:13.43Z",
          "filePath": "string",
          "fileId": 0,
          "patternInfo": {
            "id": "accessor-pairs",
            "title": "string",
            "category": "Security",
            "subCategory": "XSS",
            "level": "Error",
            "severityLevel": "Error"
          },
          "toolInfo": {
            "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
            "name": "ESLint"
          },
          "lineNumber": 0,
          "message": "string",
          "language": "string",
          "lineText": "string",
          "commitInfo": {
            "sha": "string",
            "commiter": "string",
            "commiterName": "string",
            "timestamp": "2019-05-07T14:29:13.43Z"
          },
          "falsePositiveProbability": 0,
          "falsePositiveReason": "string",
          "falsePositiveThreshold": 0
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [IgnoredIssue] true none [Ignored issue details including the commit that originated the issue]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    CommitDeltaStatistics

    {
      "commitUuid": "string",
      "newIssues": 0,
      "fixedIssues": 0,
      "deltaComplexity": 0,
      "deltaCoverage": 0,
      "deltaCoverageWithDecimals": 71,
      "deltaClonesCount": 0,
      "analyzed": true
    }
    
    

    Delta quality metrics for a commit

    Properties

    Name Type Required Restrictions Description
    commitUuid string true none Unique identifier of the commit
    newIssues integer(int32) true none Number of issues introduced by the commit
    fixedIssues integer(int32) true none Number of issues fixed by the commit
    deltaComplexity integer(int32) false none Difference in cyclomatic complexity when compared to the previous commit
    deltaCoverage integer(int32) false none Difference in code coverage percentage when compared to the previous commit
    deltaCoverageWithDecimals number(double) false none Difference in code coverage with decimals percentage when compared to the previous commit
    deltaClonesCount integer(int32) false none Difference in number of duplicated blocks of code when compared to the previous commit
    analyzed boolean true none True if the commit was already analyzed by Codacy

    CommitDeltaIssuesResponse

    {
      "analyzed": true,
      "data": [
        {
          "commitIssue": {
            "issueId": "string",
            "resultDataId": 0,
            "filePath": "string",
            "fileId": 0,
            "patternInfo": {
              "id": "accessor-pairs",
              "title": "string",
              "category": "Security",
              "subCategory": "XSS",
              "level": "Error",
              "severityLevel": "Error"
            },
            "toolInfo": {
              "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
              "name": "ESLint"
            },
            "lineNumber": 0,
            "message": "string",
            "suggestion": "string",
            "language": "string",
            "lineText": "string",
            "commitInfo": {
              "sha": "string",
              "commiter": "string",
              "commiterName": "string",
              "timestamp": "2019-05-07T14:29:13.43Z"
            },
            "falsePositiveProbability": 0,
            "falsePositiveReason": "string",
            "falsePositiveThreshold": 0
          },
          "deltaType": "Added"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    List of issues added or fixed on a commit

    Properties

    Name Type Required Restrictions Description
    analyzed boolean true none True if Codacy already analyzed the commit
    data [CommitDeltaIssue] true none List of issues added or fixed on a commit or an empty list if Codacy didn't analyze the commit yet.
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    User

    {
      "id": 0,
      "name": "Foo",
      "mainEmail": "main@codacy.com",
      "otherEmails": [
        "foo@bar.com"
      ],
      "isAdmin": false,
      "isActive": true,
      "created": "2019-05-07T14:29:13.43Z",
      "intercomHash": "userhash",
      "zendeskHash": "userzendeskhash",
      "pylonHash": "userpylonhash",
      "shouldDoClientQualification": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    name string false none none
    mainEmail string true none none
    otherEmails [string] true none none
    isAdmin boolean true none none
    isActive boolean true none none
    created string(date-time) true none none
    intercomHash string false none none
    zendeskHash string false none none
    pylonHash string false none none
    shouldDoClientQualification boolean false none none

    UserResponse

    {
      "data": {
        "id": 0,
        "name": "Foo",
        "mainEmail": "main@codacy.com",
        "otherEmails": [
          "foo@bar.com"
        ],
        "isAdmin": false,
        "isActive": true,
        "created": "2019-05-07T14:29:13.43Z",
        "intercomHash": "userhash",
        "zendeskHash": "userzendeskhash",
        "pylonHash": "userpylonhash",
        "shouldDoClientQualification": false
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data User true none none

    UserBody

    {
      "name": "Foo",
      "shouldDoClientQualification": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string false none none
    shouldDoClientQualification boolean false none none

    JoinMode

    "auto"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous auto
    anonymous adminAuto
    anonymous request

    OrganizationType

    "Organization"
    
    

    The type of Organization

    Properties

    Name Type Required Restrictions Description
    anonymous string false none The type of Organization

    Enumerated Values

    Property Value
    anonymous Account
    anonymous Organization

    JoinStatus

    "member"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous member
    anonymous pendingMember
    anonymous remoteMember

    Organization

    {
      "identifier": 0,
      "remoteIdentifier": "string",
      "name": "FooOrganization",
      "avatar": "someRandomLink.com",
      "created": "2019-05-07T14:29:13.43Z",
      "provider": "gh",
      "joinMode": "auto",
      "type": "Organization",
      "joinStatus": "member",
      "singleProviderLogin": true,
      "hasDastAccess": true,
      "hasScaEnabled": true,
      "imageSbomEnabled": true,
      "hasAiInventoryEnabled": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    identifier integer(int64) false none none
    remoteIdentifier string true none none
    name string true none none
    avatar string false none none
    created string(date-time) false none none
    provider Provider true none Git provider hosting the repository
    joinMode JoinMode false none none
    type OrganizationType true none The type of Organization
    joinStatus JoinStatus false none none
    singleProviderLogin boolean true none none
    hasDastAccess boolean true none none
    hasScaEnabled boolean true none none
    imageSbomEnabled boolean true none none
    hasAiInventoryEnabled boolean false none none

    OrganizationListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "identifier": 0,
          "remoteIdentifier": "string",
          "name": "FooOrganization",
          "avatar": "someRandomLink.com",
          "created": "2019-05-07T14:29:13.43Z",
          "provider": "gh",
          "joinMode": "auto",
          "type": "Organization",
          "joinStatus": "member",
          "singleProviderLogin": true,
          "hasDastAccess": true,
          "hasScaEnabled": true,
          "imageSbomEnabled": true,
          "hasAiInventoryEnabled": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [Organization] true none none

    OrganizationResponse

    {
      "data": {
        "identifier": 0,
        "remoteIdentifier": "string",
        "name": "FooOrganization",
        "avatar": "someRandomLink.com",
        "created": "2019-05-07T14:29:13.43Z",
        "provider": "gh",
        "joinMode": "auto",
        "type": "Organization",
        "joinStatus": "member",
        "singleProviderLogin": true,
        "hasDastAccess": true,
        "hasScaEnabled": true,
        "imageSbomEnabled": true,
        "hasAiInventoryEnabled": true
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data Organization true none none

    UserEmail

    {
      "email": "string",
      "isPrivate": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    email string true none none
    isPrivate boolean true none none

    UserEmails

    {
      "mainEmail": {
        "email": "string",
        "isPrivate": true
      },
      "otherEmails": [
        {
          "email": "string",
          "isPrivate": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    mainEmail UserEmail true none none
    otherEmails [UserEmail] true none none

    UserEmailsResponse

    {
      "data": {
        "mainEmail": {
          "email": "string",
          "isPrivate": true
        },
        "otherEmails": [
          {
            "email": "string",
            "isPrivate": true
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data UserEmails true none none

    EmailNotificationSettings

    {
      "perCommit": false,
      "perPullRequest": true,
      "onlyMyActivity": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    perCommit boolean true none Whether to receive notifications for each commit
    perPullRequest boolean true none Whether to receive notifications for pull requests
    onlyMyActivity boolean true none Whether to only receive notifications for your own activity

    EmailNotificationSettingsResponse

    {
      "data": {
        "perCommit": false,
        "perPullRequest": true,
        "onlyMyActivity": true
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data EmailNotificationSettings true none none

    EmailNotificationSettingsOptional

    {
      "perCommit": false,
      "perPullRequest": true,
      "onlyMyActivity": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    perCommit boolean false none Whether to receive notifications for each commit
    perPullRequest boolean false none Whether to receive notifications for pull requests
    onlyMyActivity boolean false none Whether to only receive notifications for your own activity

    Integration

    {
      "provider": "gh",
      "host": "gsh.dev.codacy.org",
      "lastAuthenticated": "2019-05-07T14:29:13.43Z"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    provider Provider true none Git provider hosting the repository
    host string true none none
    lastAuthenticated string(date-time) true none none

    IntegrationListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "provider": "gh",
          "host": "gsh.dev.codacy.org",
          "lastAuthenticated": "2019-05-07T14:29:13.43Z"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [Integration] true none none

    UserRole

    "admin"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous admin
    anonymous manager
    anonymous member

    Membership

    {
      "userRole": "admin"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    userRole UserRole true none none

    Billing

    {
      "isPremium": true,
      "model": "Auto",
      "code": "trial",
      "monthly": true,
      "price": 1000,
      "pricedPerUser": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    isPremium boolean true none Deprecated, use subscriptions.plan.isPremium instead.
    model string true none none
    code string false none Deprecated, use subscriptions.plan.code instead.
    monthly boolean false none none
    price integer(int64) false none none
    pricedPerUser boolean false none none

    Enumerated Values

    Property Value
    model Auto
    model Manual

    Paywall

    {
      "organizationDashboard": true,
      "securityDashboard": true
    }
    
    

    Deprecated, use ProductPaywall and OrganizationPaywall instead.

    Properties

    Name Type Required Restrictions Description
    organizationDashboard boolean true none Deprecated, use OrganizationPaywall instead.
    securityDashboard boolean true none Deprecated, use subscriptions.paywall.securityDashboard instead.

    OrganizationPaywall

    {
      "organizationDashboard": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organizationDashboard boolean true none none

    CodacyProduct

    "coverage"
    
    

    Codacy product

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Codacy product

    Enumerated Values

    Property Value
    anonymous quality
    anonymous coverage

    OrganizationBillingPlan

    {
      "isPremium": true,
      "code": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    isPremium boolean true none none
    code string true none none

    ProductPaywall

    {
      "securityDashboard": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    securityDashboard boolean true none none

    ProductSubscription

    {
      "product": "coverage",
      "plan": {
        "isPremium": true,
        "code": "string"
      },
      "paywall": {
        "securityDashboard": true
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    product CodacyProduct true none Codacy product
    plan OrganizationBillingPlan false none none
    paywall ProductPaywall false none none

    OrganizationWithMeta

    {
      "organization": {
        "identifier": 0,
        "remoteIdentifier": "string",
        "name": "FooOrganization",
        "avatar": "someRandomLink.com",
        "created": "2019-05-07T14:29:13.43Z",
        "provider": "gh",
        "joinMode": "auto",
        "type": "Organization",
        "joinStatus": "member",
        "singleProviderLogin": true,
        "hasDastAccess": true,
        "hasScaEnabled": true,
        "imageSbomEnabled": true,
        "hasAiInventoryEnabled": true
      },
      "membership": {
        "userRole": "admin"
      },
      "billing": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true
      },
      "paywall": {
        "organizationDashboard": true,
        "securityDashboard": true
      },
      "organizationPayWall": {
        "organizationDashboard": true
      },
      "analysisConfigurationMinimumPermission": "admin",
      "subscriptions": [
        {
          "product": "coverage",
          "plan": {
            "isPremium": true,
            "code": "string"
          },
          "paywall": {
            "securityDashboard": true
          }
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organization Organization true none none
    membership Membership true none none
    billing Billing false none none
    paywall Paywall false none Deprecated, use ProductPaywall and OrganizationPaywall instead.
    organizationPayWall OrganizationPaywall false none none
    analysisConfigurationMinimumPermission Permission true none none
    subscriptions [ProductSubscription] true none none

    OrganizationWithMetaResponse

    {
      "data": {
        "organization": {
          "identifier": 0,
          "remoteIdentifier": "string",
          "name": "FooOrganization",
          "avatar": "someRandomLink.com",
          "created": "2019-05-07T14:29:13.43Z",
          "provider": "gh",
          "joinMode": "auto",
          "type": "Organization",
          "joinStatus": "member",
          "singleProviderLogin": true,
          "hasDastAccess": true,
          "hasScaEnabled": true,
          "imageSbomEnabled": true,
          "hasAiInventoryEnabled": true
        },
        "membership": {
          "userRole": "admin"
        },
        "billing": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true
        },
        "paywall": {
          "organizationDashboard": true,
          "securityDashboard": true
        },
        "organizationPayWall": {
          "organizationDashboard": true
        },
        "analysisConfigurationMinimumPermission": "admin",
        "subscriptions": [
          {
            "product": "coverage",
            "plan": {
              "isPremium": true,
              "code": "string"
            },
            "paywall": {
              "securityDashboard": true
            }
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data OrganizationWithMeta true none none

    Reason

    {
      "title": "string",
      "notes": [
        "string"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    title string true none none
    notes [string] true none none

    ChurnFeedback

    {
      "joinReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      },
      "cancelReason": {
        "title": "string",
        "notes": [
          "string"
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    joinReason Reason true none none
    cancelReason Reason true none none

    PaymentPlan

    {
      "isPremium": true,
      "model": "Auto",
      "code": "trial",
      "monthly": true,
      "price": 1000,
      "pricedPerUser": true,
      "alternatePeriodCode": "team-yearly"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    isPremium boolean true none none
    model string true none none
    code string true none none
    monthly boolean true none none
    price integer(int64) true none none
    pricedPerUser boolean true none none
    alternatePeriodCode string false none Plan code for the same tier with opposite billing period (monthly yearly).
    When not available, fall back to default plan selection logic.

    Enumerated Values

    Property Value
    model Auto
    model Manual

    PaymentProvider

    "stripe"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous stripe
    anonymous chargebee
    anonymous direct
    anonymous github

    Tax

    {
      "name": "string",
      "rate": 0.1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none Name of the tax
    rate number(double) true none Rate of the tax

    OrganizationProductBillingPlan

    {
      "product": "coverage",
      "plan": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    product CodacyProduct true none Codacy product
    plan Billing false none none

    OrganizationBillingInformation

    {
      "numberOfSeats": 42,
      "numberOfPurchasedSeats": 100,
      "paymentPlan": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true
      },
      "plan": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true,
        "alternatePeriodCode": "team-yearly"
      },
      "paymentGateway": "stripe",
      "priceInCents": 12020,
      "pricePerSeatInCents": 1405,
      "nextPaymentDate": "2019-05-07T14:29:13.43Z",
      "invoiceDetails": {
        "firstName": "string",
        "lastName": "string",
        "email": "codacy@codacy.com",
        "country": "PT",
        "vat": "PT999999999",
        "address": "Av. João Crisóstomo, nº31 - 6º, 1050-125 Lisboa",
        "zip": "1050-125",
        "state": "Lisbon"
      },
      "taxes": [
        {
          "name": "string",
          "rate": 0.1
        }
      ],
      "subscriptions": [
        {
          "product": "coverage",
          "plan": {
            "isPremium": true,
            "model": "Auto",
            "code": "trial",
            "monthly": true,
            "price": 1000,
            "pricedPerUser": true
          }
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    numberOfSeats integer(int32) true none none
    numberOfPurchasedSeats integer(int32) true none none
    paymentPlan Billing true none none
    plan PaymentPlan true none none
    paymentGateway PaymentProvider false none none
    priceInCents integer(int32) true none Final price paid in cents, containing all taxes if applicable. For example, 12020 represents $120.20.
    pricePerSeatInCents integer(int32) false none Final price paid per seat in cents, containing all taxes if applicable. For example, 1405 represents $14.05.
    nextPaymentDate string(date-time) false none Next payment date for the plan. This field is empty for plans that don't renew automatically.
    invoiceDetails object false none none
    » firstName string true none none
    » lastName string true none none
    » email string(email) true none Invoice email address
    » country string true none Country code
    » vat string true none VAT or equivalent tax number depending on your location
    » address string true none Invoice address
    » zip string true none Postal code or ZIP code
    » state string true none State, province, or administrative region
    taxes [Tax] true none Taxes included in the final price priceInCents.
    subscriptions [OrganizationProductBillingPlan] true none none

    OrganizationBillingInformationResponse

    {
      "data": {
        "numberOfSeats": 42,
        "numberOfPurchasedSeats": 100,
        "paymentPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true
        },
        "plan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "paymentGateway": "stripe",
        "priceInCents": 12020,
        "pricePerSeatInCents": 1405,
        "nextPaymentDate": "2019-05-07T14:29:13.43Z",
        "invoiceDetails": {
          "firstName": "string",
          "lastName": "string",
          "email": "codacy@codacy.com",
          "country": "PT",
          "vat": "PT999999999",
          "address": "Av. João Crisóstomo, nº31 - 6º, 1050-125 Lisboa",
          "zip": "1050-125",
          "state": "Lisbon"
        },
        "taxes": [
          {
            "name": "string",
            "rate": 0.1
          }
        ],
        "subscriptions": [
          {
            "product": "coverage",
            "plan": {
              "isPremium": true,
              "model": "Auto",
              "code": "trial",
              "monthly": true,
              "price": 1000,
              "pricedPerUser": true
            }
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data OrganizationBillingInformation true none none

    BillingDetailsUpdate

    {
      "firstName": "string",
      "lastName": "string",
      "billingEmail": "string",
      "country": "string",
      "vat": "string",
      "address": "string",
      "zip": "string",
      "state": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    firstName string true none none
    lastName string true none none
    billingEmail string true none none
    country string true none none
    vat string true none none
    address string true none none
    zip string true none none
    state string true none none

    Card

    {
      "maskedNumber": "string",
      "last4": "string",
      "expiryMonth": 0,
      "expiryYear": 0,
      "holderName": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    maskedNumber string true none none
    last4 string true none none
    expiryMonth integer(int32) true none none
    expiryYear integer(int32) true none none
    holderName string true none none

    CardResponse

    {
      "data": {
        "maskedNumber": "string",
        "last4": "string",
        "expiryMonth": 0,
        "expiryYear": 0,
        "holderName": "string"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data Card false none none

    CardCreation

    {
      "cardToken": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    cardToken string true none none

    TaxEstimation

    {
      "name": "string",
      "rate": 0.1,
      "valueDollars": 0.1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none none
    rate number(double) true none none
    valueDollars number(double) true none none

    BillingEstimation

    {
      "perSeatCents": 0,
      "seats": 0,
      "taxes": [
        {
          "name": "string",
          "rate": 0.1,
          "valueDollars": 0.1
        }
      ],
      "discountCents": 0,
      "subTotalCents": 0,
      "totalCents": 0,
      "nextBilling": "2019-08-24T14:15:22Z",
      "isMonthly": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    perSeatCents integer(int32) true none none
    seats integer(int32) true none none
    taxes [TaxEstimation] true none none
    discountCents integer(int32) false none none
    subTotalCents integer(int64) true none none
    totalCents integer(int64) true none none
    nextBilling string(date-time) true none none
    isMonthly boolean true none none

    BillingEstimationResponse

    {
      "data": {
        "perSeatCents": 0,
        "seats": 0,
        "taxes": [
          {
            "name": "string",
            "rate": 0.1,
            "valueDollars": 0.1
          }
        ],
        "discountCents": 0,
        "subTotalCents": 0,
        "totalCents": 0,
        "nextBilling": "2019-08-24T14:15:22Z",
        "isMonthly": true
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data BillingEstimation true none none

    ChangePlan

    {
      "code": "string",
      "promoCode": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    code string true none The code that uniquely identifies the payment plan
    promoCode string false none none

    ProviderIntegrationSettingsBody

    {
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true,
      "availableSettings": [
        "GitHubCoverageSummary"
      ]
    }
    
    

    Default settings for Git provider integrations with a list of available settings

    Properties

    Name Type Required Restrictions Description
    commitStatus boolean true none Toggle the feature "Status checks"
    pullRequestComment boolean true none Toggle the feature "Issue annotations"
    pullRequestSummary boolean true none Toggle the feature "Issue summaries"
    coverageSummary boolean false none Toggle the feature "Coverage summary" (GitHub only)
    suggestions boolean false none Toggle the feature "Suggested fixes" (GitHub only)
    aiEnhancedComments boolean true none Toggle the feature "AI-enhanced comments". If "Suggested fixes" (GitHub only) is also enabled, then the AI-enhanced comments also provide suggested fixes. This is an experimental feature.
    aiPullRequestReviewer boolean false none Toggle the feature "AI Pull Request Reviewer" (GitHub only). When enabled, Codacy will use AI to review pull requests and provide comments on code quality and potential issues. This is an experimental feature.
    aiPullRequestReviewerAutomatic boolean false none Toggle the feature "AI Pull Request Reviewer Automatic" (GitHub only). When enabled, Codacy will use AI to review pull requests and provide comments on code quality and potential issues automatically once, subsequent reviews will have to be explicitly requested.
    pullRequestUnifiedSummary boolean false none Toggle the feature "Pull Request Unified Summary" (GitHub only). When enabled, Codacy provides a unified summary (coverage and analysis).
    availableSettings [string] true none List of available settings for the Git provider integration

    ProviderIntegrationSettingsPatchBody

    {
      "commitStatus": true,
      "pullRequestComment": true,
      "pullRequestSummary": true,
      "coverageSummary": true,
      "suggestions": true,
      "aiEnhancedComments": true,
      "aiPullRequestReviewer": true,
      "aiPullRequestReviewerAutomatic": true,
      "pullRequestUnifiedSummary": true
    }
    
    

    Default settings for Git provider integrations

    Properties

    Name Type Required Restrictions Description
    commitStatus boolean false none Toggle the feature "Status checks"
    pullRequestComment boolean false none Toggle the feature "Issue annotations"
    pullRequestSummary boolean false none Toggle the feature "Issue summaries"
    coverageSummary boolean false none Toggle the feature "Coverage summary" (GitHub only)
    suggestions boolean false none Toggle the feature "Suggested fixes" (GitHub only)
    aiEnhancedComments boolean false none Toggle the feature "AI-enhanced comments". If "Suggested fixes" (GitHub only) is also enabled, then the AI-enhanced comments also provide suggested fixes.
    aiPullRequestReviewer boolean false none Toggle the feature "AI Pull Request Reviewer" (GitHub only). When enabled, Codacy will use AI to review pull requests and provide comments on code quality and potential issues.
    aiPullRequestReviewerAutomatic boolean false none Toggle the feature "AI Pull Request Reviewer Automatic" (GitHub only). When enabled, Codacy will use AI to review pull requests and provide comments on code quality and potential issues automatically once, subsequent reviews will have to be explicitly requested.
    pullRequestUnifiedSummary boolean false none Toggle the feature "Pull Request Unified Summary" (GitHub only). When enabled, Codacy provides a unified summary (coverage and analysis).

    RepositoryIntegrationSettings

    {
      "settings": {
        "commitStatus": true,
        "pullRequestComment": true,
        "pullRequestSummary": true,
        "coverageSummary": true,
        "suggestions": true,
        "aiEnhancedComments": true,
        "aiPullRequestReviewer": true,
        "aiPullRequestReviewerAutomatic": true,
        "pullRequestUnifiedSummary": true,
        "availableSettings": [
          "GitHubCoverageSummary"
        ]
      },
      "integratedBy": "example@codacy.com"
    }
    
    

    Settings for Git provider integrations

    Properties

    Name Type Required Restrictions Description
    settings ProviderIntegrationSettingsBody true none Default settings for Git provider integrations with a list of available settings
    integratedBy string false none none

    RepositoryFilter

    "Synced"
    
    

    Filters where to fetch the repositories from:

    • AllSynced - All organization's repositories in Codacy. Requires Admin access
    • NotSynced - All organization's repositories fetched from provider.
    • Synced - All organization's repositories that the user has access.

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Filters where to fetch the repositories from:
    * AllSynced - All organization's repositories in Codacy. Requires Admin access
    * NotSynced - All organization's repositories fetched from provider.
    * Synced - All organization's repositories that the user has access.

    Enumerated Values

    Property Value
    anonymous Synced
    anonymous NotSynced
    anonymous AllSynced

    RepositoryListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "repositoryId": 45738,
          "provider": "gh",
          "owner": "codacy",
          "name": "codacy-eslint",
          "fullPath": "codacy/codacy-eslint",
          "visibility": "Private",
          "remoteIdentifier": "3",
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "permission": "admin",
          "problems": [
            {
              "message": "We can't analyze this repository because none of the committers are part of the organization.",
              "actions": [
                {
                  "name": "Check our documentation",
                  "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
                }
              ],
              "code": "failed_to_clone",
              "severity": "all_analysis"
            }
          ],
          "languages": [
            "Java",
            "Scala",
            "CSS"
          ],
          "defaultBranch": {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          },
          "badges": {
            "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
            "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
          },
          "codingStandardId": 0,
          "codingStandardName": "string",
          "standards": [
            {
              "id": 0,
              "name": "string"
            }
          ],
          "addedState": "Added",
          "gatePolicyId": 0,
          "gatePolicyName": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [Repository] true none none

    OrganizationOnboardingStep

    {
      "step": "addRepositories | enableStatusChecks",
      "isCompleted": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    step string true none Identifier of the onboarding step
    isCompleted boolean true none none

    OrganizationOnboardingProgressResponse

    {
      "data": [
        {
          "step": "addRepositories | enableStatusChecks",
          "isCompleted": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [OrganizationOnboardingStep] true none Completeness status of each onboarding step

    Person

    {
      "name": "John Smith",
      "email": "johnsmith@emailprovider.com",
      "emails": [
        "johnsmith@emailprovider.com"
      ],
      "userId": 1234,
      "committerId": 1234,
      "lastLogin": "2020-11-05T15:39:13.43Z",
      "lastAnalysis": "2020-11-05T15:39:13.43Z",
      "isActive": true,
      "canBeRemoved": true,
      "lastCommitId": 2335557754,
      "providerId": "string",
      "providerLogin": "string",
      "isProviderRegistered": true
    }
    
    

    Representation of a person that belongs to an organization

    Properties

    Name Type Required Restrictions Description
    name string false none The name of the person
    email string true none [deprecated: use emails instead] The email of the person
    emails [string] true none The emails of the person
    userId integer(int64) false none User ID internal to Codacy.
    committerId integer(int64) false none Commit author ID
    lastLogin string(date-time) false none none
    lastAnalysis string(date-time) false none Date and time when Codacy last analyzed a commit from this person.
    isActive boolean false none Whether the person is an active committer on Codacy or not. If null, the person is not a committer, thus they do not occupy a seat. Applies only to specific Enterprise plans.
    canBeRemoved boolean true none Whether the person can be removed from the organization or not
    lastCommitId integer(int64) false none none
    providerId string false none ID of the person on the Git provider
    providerLogin string false none Username of the person on the Git provider
    isProviderRegistered boolean false none True if the person is registered on the Git provider

    ListPeopleResponse

    {
      "data": [
        {
          "name": "John Smith",
          "email": "johnsmith@emailprovider.com",
          "emails": [
            "johnsmith@emailprovider.com"
          ],
          "userId": 1234,
          "committerId": 1234,
          "lastLogin": "2020-11-05T15:39:13.43Z",
          "lastAnalysis": "2020-11-05T15:39:13.43Z",
          "isActive": true,
          "canBeRemoved": true,
          "lastCommitId": 2335557754,
          "providerId": "string",
          "providerLogin": "string",
          "isProviderRegistered": true
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [Person] true none [Representation of a person that belongs to an organization]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    MembershipPrivileges

    "RepoAdmin"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous RepoAdmin
    anonymous RepoWrite
    anonymous RepoRead

    MembershipPrivilegesBody

    {
      "permission": "RepoAdmin"
    }
    
    

    Minimum permission level regarding configuring patterns, configuring which file extensions and branches are analyzed, and ignoring issues and files

    Properties

    Name Type Required Restrictions Description
    permission MembershipPrivileges false none none

    RemovePeopleBody

    {
      "emails": [
        "string"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    emails [string] true none List of emails to add

    RemovePeopleEmailStatus

    {
      "email": "string",
      "error": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    email string true none none
    error string false none none

    RemovePeopleResponse

    {
      "success": [
        {
          "email": "string",
          "error": "string"
        }
      ],
      "failed": [
        {
          "email": "string",
          "error": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    success [RemovePeopleEmailStatus] false none none
    failed [RemovePeopleEmailStatus] false none none

    GitProviderAppPermissions

    {
      "contentPermission": true,
      "customPropertiesPermission": true
    }
    
    

    Information about Codacy GitHub App repository permissions

    Properties

    Name Type Required Restrictions Description
    contentPermission boolean true none True if Codacy GitHub App has repository permissions for Contents, false otherwise
    customPropertiesPermission boolean true none True if Codacy GitHub App has permissions for custom properties, false otherwise

    ProjectCommitStat

    {
      "projectId": 0,
      "firstCommit": "2019-08-24T14:15:22Z",
      "lastCommit": "2019-08-24T14:15:22Z",
      "numberOfCommits": 0
    }
    
    

    Properties

    Name Type Required Restrictions Description
    projectId integer(int64) true none none
    firstCommit string(date-time) false none none
    lastCommit string(date-time) false none none
    numberOfCommits integer(int64) true none none

    SuggestedAuthor

    {
      "commitEmail": "string",
      "totalProjects": 0,
      "totalCommits": 0,
      "lastCommit": "2019-08-24T14:15:22Z",
      "projectCommitStats": [
        {
          "projectId": 0,
          "firstCommit": "2019-08-24T14:15:22Z",
          "lastCommit": "2019-08-24T14:15:22Z",
          "numberOfCommits": 0
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    commitEmail string true none none
    totalProjects integer(int64) true none none
    totalCommits integer(int64) true none none
    lastCommit string(date-time) false none none
    projectCommitStats [ProjectCommitStat] true none none

    SuggestedAuthorsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "commitEmail": "string",
          "totalProjects": 0,
          "totalCommits": 0,
          "lastCommit": "2019-08-24T14:15:22Z",
          "projectCommitStats": [
            {
              "projectId": 0,
              "firstCommit": "2019-08-24T14:15:22Z",
              "lastCommit": "2019-08-24T14:15:22Z",
              "numberOfCommits": 0
            }
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [SuggestedAuthor] true none none

    commitUuidSchema

    "string"
    
    

    UUID or SHA string that identifies the commit

    Properties

    Name Type Required Restrictions Description
    anonymous string false none UUID or SHA string that identifies the commit

    CommitUuidRequest

    {
      "commitUuid": "string",
      "cleanCache": false
    }
    
    

    Properties

    Name Type Required Restrictions Description
    commitUuid commitUuidSchema true none UUID or SHA string that identifies the commit
    cleanCache boolean false none If true, the cache will be cleaned before the analysis

    RepositoryResponse

    {
      "data": {
        "repositoryId": 45738,
        "provider": "gh",
        "owner": "codacy",
        "name": "codacy-eslint",
        "fullPath": "codacy/codacy-eslint",
        "visibility": "Private",
        "remoteIdentifier": "3",
        "lastUpdated": "2019-05-07T14:29:13.43Z",
        "permission": "admin",
        "problems": [
          {
            "message": "We can't analyze this repository because none of the committers are part of the organization.",
            "actions": [
              {
                "name": "Check our documentation",
                "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
              }
            ],
            "code": "failed_to_clone",
            "severity": "all_analysis"
          }
        ],
        "languages": [
          "Java",
          "Scala",
          "CSS"
        ],
        "defaultBranch": {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        },
        "badges": {
          "grade": "https://app.codacy.com/project/badge/Grade/d992a862b1994805907ec277e16b0fda",
          "coverage": "https://app.codacy.com/project/badge/Coverage/d992a862b1994805907ec277e16b0fda"
        },
        "codingStandardId": 0,
        "codingStandardName": "string",
        "standards": [
          {
            "id": 0,
            "name": "string"
          }
        ],
        "addedState": "Added",
        "gatePolicyId": 0,
        "gatePolicyName": "string"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data Repository true none none

    RepositorySuggestedAuthor

    {
      "commitEmail": "string",
      "projectCommitStat": {
        "projectId": 0,
        "firstCommit": "2019-08-24T14:15:22Z",
        "lastCommit": "2019-08-24T14:15:22Z",
        "numberOfCommits": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    commitEmail string true none none
    projectCommitStat ProjectCommitStat true none none

    RepositorySuggestedAuthorsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "commitEmail": "string",
          "projectCommitStat": {
            "projectId": 0,
            "firstCommit": "2019-08-24T14:15:22Z",
            "lastCommit": "2019-08-24T14:15:22Z",
            "numberOfCommits": 0
          }
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [RepositorySuggestedAuthor] true none none

    BranchListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 1,
          "name": "master",
          "isDefault": true,
          "isEnabled": true,
          "lastUpdated": "2019-05-07T14:29:13.43Z",
          "branchType": "Branch",
          "lastCommit": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [Branch] true none none

    UpdateRepositoryBranchConfigurationBody

    {
      "isEnabled": true
    }
    
    

    Configuration of a repository branch

    Properties

    Name Type Required Restrictions Description
    isEnabled boolean false none True if Codacy should analyze the branch

    JoinModeRequest

    {
      "joinMode": "auto"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    joinMode JoinMode true none none

    BranchRequiredChecks

    {
      "quality": true,
      "diffCoverage": true,
      "coverageVariation": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    quality boolean true none True if Branch has Codacy Static Code Analysis step as required before merge
    diffCoverage boolean true none True if Branch has Codacy Diff Coverage step as required before merge
    coverageVariation boolean true none True if Branch has Codacy Coverage Variation step as required before merge

    BranchRequiredChecksResponse

    {
      "data": {
        "quality": true,
        "diffCoverage": true,
        "coverageVariation": true
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data BranchRequiredChecks true none none

    LeaveOrgProblem

    {
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "code": "last_admin_credit"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    actions [ProblemLink] true none none
    code string true none A stable identifier for a problem.

    LeaveOrgCheckResult

    {
      "canLeave": true,
      "message": "Since you are the last organization admin of $orgName, to leave this organization you need to delete it. Please contact us through support.",
      "reason": {
        "actions": [
          {
            "name": "Check our documentation",
            "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
          }
        ],
        "code": "last_admin_credit"
      }
    }
    
    

    Informs if the user can leave the organization and if not, why.

    Properties

    Name Type Required Restrictions Description
    canLeave boolean true none True if user can leave the organization
    message string true none none
    reason LeaveOrgProblem false none none

    RequestToJoin

    {
      "email": "mail@mail.com",
      "name": "a display name",
      "numberOfCommits": 0,
      "numberOfRepositories": 0,
      "lastActivity": "2020-01-06T14:29:13.43Z",
      "creationDate": "2020-01-06T14:29:13.43Z"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    email string true none none
    name string true none none
    numberOfCommits integer(int32) false none none
    numberOfRepositories integer(int32) false none none
    lastActivity string(date-time) false none none
    creationDate string(date-time) true none none

    ListRequestsToJoinResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "email": "mail@mail.com",
          "name": "a display name",
          "numberOfCommits": 0,
          "numberOfRepositories": 0,
          "lastActivity": "2020-01-06T14:29:13.43Z",
          "creationDate": "2020-01-06T14:29:13.43Z"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [RequestToJoin] true none none

    JoinResponse

    {
      "organizationIdentifier": 0,
      "joinStatus": "member"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organizationIdentifier integer(int64) true none none
    joinStatus JoinStatus true none none

    PaymentRequired

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "PaymentRequired"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    AddRepositoryBody

    {
      "repositoryFullPath": "codacy/codacy-analysis-cli",
      "provider": "gh"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositoryFullPath string true none Full path of the repository on the Git provider, starting at the organization. Separate each segment of the path with a slash (/).
    provider Provider true none Git provider hosting the repository

    AddOrganizationBody

    {
      "provider": "gh",
      "remoteIdentifier": "string",
      "name": "FooOrganization",
      "type": "Organization",
      "products": [
        "coverage"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    provider Provider true none Git provider hosting the repository
    remoteIdentifier string true none none
    name string true none none
    type OrganizationType true none The type of Organization
    products [CodacyProduct] false none [Codacy product]

    AddOrganizationResponse

    {
      "organization": {
        "identifier": 0,
        "remoteIdentifier": "string",
        "name": "FooOrganization",
        "avatar": "someRandomLink.com",
        "created": "2019-05-07T14:29:13.43Z",
        "provider": "gh",
        "joinMode": "auto",
        "type": "Organization",
        "joinStatus": "member",
        "singleProviderLogin": true,
        "hasDastAccess": true,
        "hasScaEnabled": true,
        "imageSbomEnabled": true,
        "hasAiInventoryEnabled": true
      },
      "warnings": [
        "string"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organization Organization true none none
    warnings [string] false none none

    EnterpriseAccountToken

    {
      "provider": "gh"
    }
    
    

    Enterprise account token

    Properties

    Name Type Required Restrictions Description
    provider Provider true none Git provider hosting the repository

    EnterpriseAccountTokenListResponse

    {
      "data": [
        {
          "provider": "gh"
        }
      ]
    }
    
    

    List of enterprise account tokens

    Properties

    Name Type Required Restrictions Description
    data [EnterpriseAccountToken] true none [Enterprise account token]

    AddEnterpriseAccountTokenBody

    {
      "token": "string",
      "provider": "gh"
    }
    
    

    Details of a new enterprise account token

    Properties

    Name Type Required Restrictions Description
    token string true none none
    provider Provider true none Git provider hosting the repository

    ApiToken

    {
      "id": 0,
      "token": "string",
      "expiresAt": "2019-05-07T14:29:13.43Z"
    }
    
    

    API token string value and ID

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    token string true none none
    expiresAt string(date-time) false none none

    ApiTokenListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "token": "string",
          "expiresAt": "2019-05-07T14:29:13.43Z"
        }
      ]
    }
    
    

    List of API tokens

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [ApiToken] true none [API token string value and ID]

    ApiTokenCreateRequest

    {
      "expiresAt": "2019-05-07T14:29:13.43Z"
    }
    
    

    Request body for creating an API token containing optional expiration timestamp

    Properties

    Name Type Required Restrictions Description
    expiresAt string(date-time) false none none

    ConfiguredLoginIntegration

    {
      "provider": "gh",
      "loginUrl": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    provider Provider true none Git provider hosting the repository
    loginUrl string true none none

    ConfiguredLoginIntegrationListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "provider": "gh",
          "loginUrl": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [ConfiguredLoginIntegration] true none none

    ProviderIntegration

    {
      "provider": "gh",
      "redirectUrl": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    provider Provider true none Git provider hosting the repository
    redirectUrl string true none none

    ProviderIntegrationListResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "provider": "gh",
          "redirectUrl": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [ProviderIntegration] true none none

    ConfigurationStatusResponse

    {
      "statuses": [
        "string"
      ],
      "metadata": {
        "firstSignupDone": true
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    statuses [string] false none none
    metadata object false none none
    » firstSignupDone boolean true none none

    HealthCheck

    {
      "message": "Hello, it's me"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    message string true none none

    HealthCheckResponse

    {
      "data": {
        "message": "Hello, it's me"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data HealthCheck true none none

    LanguageFileExtension

    {
      "name": "Java",
      "fileExtensions": [
        ".java"
      ],
      "files": [
        "requirements.txt"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none The language name
    fileExtensions [string] true none The default file extensions for this language
    files [string] true none Specific files that should be considered for this language

    LanguageListResponse

    {
      "data": [
        {
          "name": "Java",
          "fileExtensions": [
            ".java"
          ],
          "files": [
            "requirements.txt"
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [LanguageFileExtension] true none none

    Tool

    {
      "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
      "name": "ESLint",
      "version": "6.8.0",
      "shortName": "eslint",
      "documentationUrl": "http://eslint.org/docs/rules/",
      "sourceCodeUrl": "https://github.com/codacy/codacy-eslint",
      "prefix": "ESLint_",
      "needsCompilation": false,
      "configurationFilenames": [
        ".eslintrc.js",
        ".eslintrc.yaml"
      ],
      "description": "ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code. In many ways, it is similar to JSLint and JSHint with a few exceptions",
      "dockerImage": "codacy/codacy-eslint:2.20.19",
      "languages": [
        "JavaScript"
      ],
      "clientSide": true,
      "standalone": true,
      "enabledByDefault": true,
      "configurable": true
    }
    
    

    Codacy tool that can flag patterns/issues on projects

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ToolReference false none Details of the tool that found the issue

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » version string true none Original tool version used by the Codacy tool wrapper
    » shortName string true none Tool unique short name, must contain alphanumeric characters only and no spaces
    » documentationUrl string false none Original tool documentation URL
    » sourceCodeUrl string false none Codacy tool wrapper source code URL
    » prefix string false none Tool prefix used to ensure pattern names are unique
    » needsCompilation boolean true none Tool requires compilation to run
    » configurationFilenames [string] true none Tool configuration filename
    » description string false none Tool description
    » dockerImage string true none Docker image used to launch tool
    » languages [string] true none List of languages that the tool supports
    » clientSide boolean true none True if the tool is supposed to run on the client's machine and the results sent to Codacy
    » standalone boolean true none True if the client-side tool runs stand-alone outside of the CLI
    » enabledByDefault boolean true none True if the tool is enabled by default for new projects (not required)
    » configurable boolean true none True if the tool is configurable on Codacy's UI

    ToolListResponse

    {
      "data": [
        {
          "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
          "name": "ESLint",
          "version": "6.8.0",
          "shortName": "eslint",
          "documentationUrl": "http://eslint.org/docs/rules/",
          "sourceCodeUrl": "https://github.com/codacy/codacy-eslint",
          "prefix": "ESLint_",
          "needsCompilation": false,
          "configurationFilenames": [
            ".eslintrc.js",
            ".eslintrc.yaml"
          ],
          "description": "ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code. In many ways, it is similar to JSLint and JSHint with a few exceptions",
          "dockerImage": "codacy/codacy-eslint:2.20.19",
          "languages": [
            "JavaScript"
          ],
          "clientSide": true,
          "standalone": true,
          "enabledByDefault": true,
          "configurable": true
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [Tool] true none [Codacy tool that can flag patterns/issues on projects]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    PatternListResponse

    {
      "data": [
        {
          "id": "accessor-pairs",
          "title": "string",
          "category": "Security",
          "subCategory": "XSS",
          "level": "Error",
          "severityLevel": "Error",
          "description": "Enforce getter and setter pairs in objects and classes",
          "explanation": "Accessor pairs description",
          "enabled": true,
          "languages": [
            "JavaScript"
          ],
          "timeToFix": 5,
          "parameters": [
            {
              "name": "getWithoutSet",
              "description": "getWithoutSet",
              "default": "true"
            }
          ],
          "rationale": "string",
          "solution": "string",
          "goodExamples": [
            "string"
          ],
          "badExamples": [
            "string"
          ],
          "tags": [
            "string"
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [Pattern] true none [Code pattern that a Codacy tool can use to find issues]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    AddEnrichedPatternFeedbackBody

    {
      "reactionFeedback": true,
      "feedback": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    reactionFeedback boolean true none True if the enriched pattern in
    mention is considered good/relevant by the user
    feedback string false none Feedback from the user to describe why enriched pattern
    is not considered good/relevant

    PatternResponse

    {
      "data": {
        "id": "accessor-pairs",
        "title": "string",
        "category": "Security",
        "subCategory": "XSS",
        "level": "Error",
        "severityLevel": "Error",
        "description": "Enforce getter and setter pairs in objects and classes",
        "explanation": "Accessor pairs description",
        "enabled": true,
        "languages": [
          "JavaScript"
        ],
        "timeToFix": 5,
        "parameters": [
          {
            "name": "getWithoutSet",
            "description": "getWithoutSet",
            "default": "true"
          }
        ],
        "rationale": "string",
        "solution": "string",
        "goodExamples": [
          "string"
        ],
        "badExamples": [
          "string"
        ],
        "tags": [
          "string"
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data Pattern true none Code pattern that a Codacy tool can use to find issues

    DuplicationTool

    {
      "dockerImage": "codacy/codacy-duplication-pmdcpd:1.0.0",
      "languages": [
        "string"
      ]
    }
    
    

    Codacy tool that can detect duplication on projects

    Properties

    Name Type Required Restrictions Description
    dockerImage string true none Docker image used to launch tool
    languages [string] true none List of languages that the tool supports

    DuplicationToolListResponse

    {
      "data": [
        {
          "dockerImage": "codacy/codacy-duplication-pmdcpd:1.0.0",
          "languages": [
            "string"
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [DuplicationTool] true none [Codacy tool that can detect duplication on projects]

    MetricsTool

    {
      "dockerImage": "codacy/codacy-metrics-cloc:1.0.0",
      "languages": [
        "string"
      ]
    }
    
    

    Codacy tool that calculates metrics on projects

    Properties

    Name Type Required Restrictions Description
    dockerImage string true none Docker image used to launch tool
    languages [string] true none List of languages that the tool supports

    MetricsToolListResponse

    {
      "data": [
        {
          "dockerImage": "codacy/codacy-metrics-cloc:1.0.0",
          "languages": [
            "string"
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [MetricsTool] true none [Codacy tool that calculates metrics on projects]

    MetricsFilter

    {
      "metrics": [
        "string"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    metrics [string] true none none

    OrganizationReadyMetrics

    {
      "organizationId": 0,
      "provider": "gh",
      "organizationName": "string",
      "readyMetrics": [
        "string"
      ],
      "startedAt": "2019-08-24T14:15:22Z"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organizationId integer(int64) true none none
    provider Provider true none Git provider hosting the repository
    organizationName string true none The name of the organization to which the results belong.
    readyMetrics [string] true none none
    startedAt string(date-time) false none none

    OrganizationReadyMetricsResponse

    {
      "data": {
        "organizationId": 0,
        "provider": "gh",
        "organizationName": "string",
        "readyMetrics": [
          "string"
        ],
        "startedAt": "2019-08-24T14:15:22Z"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data OrganizationReadyMetrics true none none

    EntityFilter

    {
      "repositories": [
        "string"
      ],
      "segmentIds": [
        0
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositories [string] false none none
    segmentIds [integer] false none none

    DimensionsFilter

    {
      "dimension": "string",
      "value": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    dimension string true none none
    value string true none none

    MetricFilter

    {
      "entityFilter": {
        "repositories": [
          "string"
        ],
        "segmentIds": [
          0
        ]
      },
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    entityFilter EntityFilter true none none
    dimensionsFilter [DimensionsFilter] false none none

    MetricValue

    {
      "value": 0.1,
      "latestValue": 0.1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    value number(double) true none none
    latestValue number(double) false none none

    MetricValueResponse

    {
      "data": {
        "value": 0.1,
        "latestValue": 0.1
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data MetricValue true none none

    MetricGroupBy

    {
      "groupBy": [
        "string"
      ],
      "sortDirection": "string",
      "limit": 0
    }
    
    

    Properties

    Name Type Required Restrictions Description
    groupBy [string] true none Values can be organization, repository, or a dimension type. Supported dimension values will depend
    on the metric.

    Dimension allocation:
    - For OpenIssues, NewIssues & FixedIssues, the dimensions are category and severity
    sortDirection string false none none
    limit integer false none none

    GroupMetricFilter

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filter MetricFilter true none none
    groupBy MetricGroupBy true none none

    MetricGroup

    {
      "organization": "string",
      "repository": "string",
      "dimensions": [
        "string"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organization string false none none
    repository string false none none
    dimensions [string] false none none

    GroupedMetricValue

    {
      "group": {
        "organization": "string",
        "repository": "string",
        "dimensions": [
          "string"
        ]
      },
      "value": 0.1,
      "latestValue": 0
    }
    
    

    Properties

    Name Type Required Restrictions Description
    group MetricGroup true none none
    value number(double) true none none
    latestValue number false none none

    PeriodGroupedMetricValuesResponse

    {
      "data": [
        {
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [GroupedMetricValue] true none none

    PeriodEnum

    "week"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous day
    anonymous week
    anonymous month

    PeriodMetricFilterBody

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filter MetricFilter true none none
    date string(date-time) true none none
    period PeriodEnum true none none

    PeriodGroupMetricFilterBody

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filter MetricFilter true none none
    groupBy MetricGroupBy true none none
    date string(date-time) true none none
    period PeriodEnum true none none

    TimerangeMetricFilterBody

    {
      "filter": {
        "entityFilter": {
          "repositories": [
            "string"
          ],
          "segmentIds": [
            0
          ]
        },
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filter MetricFilter true none none
    groupBy MetricGroupBy true none none
    from string(date-time) true none none
    to string(date-time) true none none
    period PeriodEnum false none none

    TimerangeMetricValue

    {
      "date": "2019-08-24T14:15:22Z",
      "group": {
        "organization": "string",
        "repository": "string",
        "dimensions": [
          "string"
        ]
      },
      "value": 0.1,
      "latestValue": 0.1
    }
    
    

    Properties

    Name Type Required Restrictions Description
    date string(date-time) true none none
    group MetricGroup false none none
    value number(double) true none none
    latestValue number(double) false none none

    TimerangeMetricValuesResponse

    {
      "data": [
        {
          "date": "2019-08-24T14:15:22Z",
          "group": {
            "organization": "string",
            "repository": "string",
            "dimensions": [
              "string"
            ]
          },
          "value": 0.1,
          "latestValue": 0.1
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [TimerangeMetricValue] true none none

    EnterpriseReadyMetrics

    {
      "organizationId": 0,
      "organizationName": "string",
      "readyMetrics": [
        "string"
      ],
      "startedAt": "2019-08-24T14:15:22Z"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organizationId integer(int64) true none none
    organizationName string true none none
    readyMetrics [string] true none none
    startedAt string(date-time) false none none

    ReadyMetricsForEnterpriseResponse

    {
      "data": [
        {
          "organizationId": 0,
          "organizationName": "string",
          "readyMetrics": [
            "string"
          ],
          "startedAt": "2019-08-24T14:15:22Z"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [EnterpriseReadyMetrics] true none none

    EnterpriseMetricFilter

    {
      "dimensionsFilter": [
        {
          "dimension": "string",
          "value": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    dimensionsFilter [DimensionsFilter] false none none

    EnterpriseGroupMetricFilter

    {
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    groupBy MetricGroupBy true none none
    filter EnterpriseMetricFilter true none none

    EnterprisePeriodMetricFilterBody

    {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filter EnterpriseMetricFilter true none none
    date string(date-time) true none none
    period PeriodEnum true none none

    EnterprisePeriodGroupMetricFilterBody

    {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "date": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filter EnterpriseMetricFilter true none none
    groupBy MetricGroupBy true none none
    date string(date-time) true none none
    period PeriodEnum true none none

    EnterpriseTimerangeMetricFilterBody

    {
      "filter": {
        "dimensionsFilter": [
          {
            "dimension": "string",
            "value": "string"
          }
        ]
      },
      "groupBy": {
        "groupBy": [
          "string"
        ],
        "sortDirection": "string",
        "limit": 0
      },
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "period": "week"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filter EnterpriseMetricFilter true none none
    groupBy MetricGroupBy true none none
    from string(date-time) true none none
    to string(date-time) true none none
    period PeriodEnum false none none

    FileWithAnalysisInfo

    {
      "fileId": 2,
      "branchId": 3,
      "path": "/src/test.go",
      "totalIssues": 42,
      "complexity": 3,
      "grade": 74,
      "gradeLetter": "A",
      "coverage": 71,
      "coverageWithDecimals": 71,
      "duplication": 7,
      "linesOfCode": 123,
      "sourceLinesOfCode": 90,
      "numberOfMethods": 12,
      "numberOfClones": 5
    }
    
    

    File with analysis information

    Properties

    Name Type Required Restrictions Description
    fileId integer(int64) true none Identifier of the file in a specific branch and commit
    branchId integer(int64) true none Identifier for the branch the file belongs to
    path string true none Relative path of the file in the repository
    totalIssues integer(int32) true none Number of issues in the file
    complexity integer(int32) false none Complexity level of the file
    grade integer(int32) true none Quality grade of the file as a number between 100 (highest grade) and 0 (lowest grade)
    gradeLetter string true none Quality grade of the file as a letter between A (highest grade) and F (lowest grade)
    coverage integer(int32) false none Deprecated, use coverageWithDecimals instead
    coverageWithDecimals number(double) false none Test coverage percentage of the file with decimals
    duplication integer(int32) false none Number of duplicated lines in the file
    linesOfCode integer(int32) false none Lines of code in the file
    sourceLinesOfCode integer(int32) false none Coverable lines of code in the file
    numberOfMethods integer(int32) true none Number of methods in the file
    numberOfClones integer(int32) false none Number of cloned blocks of code in the file

    FileListResponse

    {
      "data": [
        {
          "fileId": 2,
          "branchId": 3,
          "path": "/src/test.go",
          "totalIssues": 42,
          "complexity": 3,
          "grade": 74,
          "gradeLetter": "A",
          "coverage": 71,
          "coverageWithDecimals": 71,
          "duplication": 7,
          "linesOfCode": 123,
          "sourceLinesOfCode": 90,
          "numberOfMethods": 12,
          "numberOfClones": 5
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [FileWithAnalysisInfo] true none [File with analysis information]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    IgnoredFile

    {
      "filepath": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filepath string true none none

    IgnoredFileListResponse

    {
      "hasCodacyConfigurationFile": true,
      "data": [
        {
          "filepath": "string"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    hasCodacyConfigurationFile boolean true none If the repository has a configuration file that controls what repository files are ignored
    data [IgnoredFile] true none none
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    FileCoverageAnalysis

    {
      "coverage": 71,
      "coverableLines": 2,
      "coveredLines": 1
    }
    
    

    Coverage analysis metrics for a file

    Properties

    Name Type Required Restrictions Description
    coverage number(double) true none Coverage percentage of the file with decimals
    coverableLines integer(int64) true none Coverable lines of the file (lines that can be covered by tests)
    coveredLines integer(int64) true none Covered lines of the file (lines that are covered by tests)

    FileQualityInfo

    {
      "totalIssues": 42,
      "complexity": 3,
      "grade": 74,
      "gradeLetter": "A",
      "duplication": 7,
      "duplicatedLinesOfCode": 45
    }
    
    

    Analysis result information for a file

    Properties

    Name Type Required Restrictions Description
    totalIssues integer(int32) true none Number of issues in the file
    complexity integer(int32) false none Complexity level of the file
    grade integer(int32) true none Quality grade of the file as a number between 100 (highest grade) and 0 (lowest grade)
    gradeLetter string true none Quality grade of the file as a letter between A (highest grade) and F (lowest grade)
    duplication integer(int32) false none Number of cloned blocks of code in the file
    duplicatedLinesOfCode integer(int32) false none Number of duplicated lines in the file

    FileInformationWithAnalysis

    {
      "file": {
        "branchId": 1,
        "commitId": 1,
        "commitSha": "string",
        "fileId": 1,
        "fileDataId": 1,
        "path": "/src/test.go",
        "language": "Go",
        "gitProviderUrl": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "ignored": false
      },
      "coverage": {
        "coverage": 71,
        "coverableLines": 2,
        "coveredLines": 1
      },
      "quality": {
        "totalIssues": 42,
        "complexity": 3,
        "grade": 74,
        "gradeLetter": "A",
        "duplication": 7,
        "duplicatedLinesOfCode": 45
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    file FileMetadata true none Metadata for a file in a repository
    coverage FileCoverageAnalysis false none Coverage analysis metrics for a file
    quality FileQualityInfo false none Analysis result information for a file

    FileClone

    {
      "id": 0,
      "occurrences": [
        {
          "path": "string",
          "fileId": 0,
          "fileDataId": 0,
          "fromLine": 0,
          "toLine": 0
        }
      ]
    }
    
    

    A duplicated code block within a file, including its occurrences

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    occurrences [CloneDuplicationBlock] true none none

    FileClonesResponse

    {
      "data": [
        {
          "id": 0,
          "occurrences": [
            {
              "path": "string",
              "fileId": 0,
              "fileDataId": 0,
              "fromLine": 0,
              "toLine": 0
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Paginated list of duplicate code blocks within a file

    Properties

    Name Type Required Restrictions Description
    data [FileClone] true none Array of duplicated code blocks
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    AiRiskCheckListItem

    {
      "key": "string",
      "check": true,
      "number": 0,
      "threshold": 0,
      "total": 0
    }
    
    

    An item in the AI Risk Checklist

    Properties

    Name Type Required Restrictions Description
    key string true none The key identifier for the checklist item
    check boolean true none Checks if the checklist item passes
    number integer(int32) false none The number of repositories that have the AI policy applied
    threshold integer(int32) false none The minimum percentage of repositories required to meet the AI policy compliance target
    total integer(int32) false none The total number of repositories (all repositories in the organization)

    AiRiskChecklistResponse

    {
      "data": [
        {
          "key": "string",
          "check": true,
          "number": 0,
          "threshold": 0,
          "total": 0
        }
      ]
    }
    
    

    List AI Risk Checklist for an organization

    Properties

    Name Type Required Restrictions Description
    data [AiRiskCheckListItem] true none [An item in the AI Risk Checklist]

    CodingStandardMeta

    {
      "enabledToolsCount": 0,
      "enabledPatternsCount": 0,
      "linkedRepositoriesCount": 0
    }
    
    

    Meta information about a coding standard

    Properties

    Name Type Required Restrictions Description
    enabledToolsCount integer(int32) true none Number of tools that are enabled in the coding standard
    enabledPatternsCount integer(int32) true none Number of code patterns that are enabled in the coding standard
    linkedRepositoriesCount integer(int32) true none Number of repositories using the coding standard

    ComplianceType

    "ai-risk"
    
    

    The type of compliance standard

    Properties

    Name Type Required Restrictions Description
    anonymous string false none The type of compliance standard

    Enumerated Values

    Property Value
    anonymous ai-risk

    CodingStandard

    {
      "id": 0,
      "name": "string",
      "isDraft": true,
      "isDefault": true,
      "languages": [
        "string"
      ],
      "meta": {
        "enabledToolsCount": 0,
        "enabledPatternsCount": 0,
        "linkedRepositoriesCount": 0
      },
      "complianceType": "ai-risk"
    }
    
    

    Coding standard for an organization

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Identifier of the coding standard
    name string true none Name of the coding standard
    isDraft boolean true none True if the coding standard is a draft
    isDefault boolean true none True if the coding standard is the default for the organization
    languages [string] true none List of programming languages supported by the coding standard
    meta CodingStandardMeta true none Meta information about a coding standard
    complianceType ComplianceType false none The type of compliance standard

    CodingStandardsListResponse

    {
      "data": [
        {
          "id": 0,
          "name": "string",
          "isDraft": true,
          "isDefault": true,
          "languages": [
            "string"
          ],
          "meta": {
            "enabledToolsCount": 0,
            "enabledPatternsCount": 0,
            "linkedRepositoriesCount": 0
          },
          "complianceType": "ai-risk"
        }
      ]
    }
    
    

    List of coding standards for an organization

    Properties

    Name Type Required Restrictions Description
    data [CodingStandard] true none [Coding standard for an organization]

    CreateCodingStandardBody

    {
      "name": "Security best practices",
      "languages": [
        "Java",
        "Go"
      ]
    }
    
    

    Details of a new coding standard

    Properties

    Name Type Required Restrictions Description
    name string true none Name of the new coding standard
    languages [string] true none List of programming languages supported by the new coding standard

    CodingStandardResponse

    {
      "data": {
        "id": 0,
        "name": "string",
        "isDraft": true,
        "isDefault": true,
        "languages": [
          "string"
        ],
        "meta": {
          "enabledToolsCount": 0,
          "enabledPatternsCount": 0,
          "linkedRepositoriesCount": 0
        },
        "complianceType": "ai-risk"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data CodingStandard true none Coding standard for an organization

    CreateComplianceStandardBody

    {
      "name": "AI Usage Compliance",
      "complianceType": "ai-risk"
    }
    
    

    Details required to create a compliance standard

    Properties

    Name Type Required Restrictions Description
    name string true none Name of the compliance standard
    complianceType ComplianceType true none The type of compliance standard

    CodingStandardCategoriesPresets

    {
      "bugRisk": 1,
      "security": 1,
      "bestPractices": 1,
      "codeStyle": 1,
      "documentation": 1
    }
    
    

    Settings to create a new coding standard from a series of presets

    Properties

    Name Type Required Restrictions Description
    bugRisk integer(int32) true none none
    security integer(int32) true none none
    bestPractices integer(int32) true none none
    codeStyle integer(int32) true none none
    documentation integer(int32) true none none

    CreateCodingStandardPresetBody

    {
      "name": "Security best practices",
      "isDefault": true,
      "presets": {
        "bugRisk": 1,
        "security": 1,
        "bestPractices": 1,
        "codeStyle": 1,
        "documentation": 1
      }
    }
    
    

    Details of a new coding standard. Uses presets to streamline the creation of the new coding standard

    Properties

    Name Type Required Restrictions Description
    name string false none Name of the new coding standard
    isDefault boolean true none If true, the new coding standard becomes the default coding standard for the organization
    presets CodingStandardCategoriesPresets true none Settings to create a new coding standard from a series of presets

    CodingStandardTool

    {
      "codingStandardId": 0,
      "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
      "isEnabled": true
    }
    
    

    Information about a tool in a coding standard

    Properties

    Name Type Required Restrictions Description
    codingStandardId integer(int64) true none Coding standard identifier
    uuid string true none Unique identifier of the tool
    isEnabled boolean true none True if the tool is enabled in the coding standard

    CodingStandardToolsListResponse

    {
      "data": [
        {
          "codingStandardId": 0,
          "uuid": "847feb32-9ff2-11ea-bb37-0242ac130002",
          "isEnabled": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [CodingStandardTool] true none [Information about a tool in a coding standard]

    SetDefaultCodingStandardBody

    {
      "isDefault": true
    }
    
    

    Toggle the default coding standard for an organization

    Properties

    Name Type Required Restrictions Description
    isDefault boolean true none If true, sets the coding standard as the default coding standard for the organization

    PatternConfiguration

    {
      "id": "ESLint_@typescript-eslint_no-shadow",
      "enabled": true,
      "parameters": [
        {
          "name": "getWithoutSet",
          "value": "true"
        }
      ]
    }
    
    

    Code pattern configuration

    Properties

    Name Type Required Restrictions Description
    id string true none Code pattern unique identifier
    enabled boolean false none True if the code pattern is enabled in the repository or coding standard
    parameters [ConfiguredParameter] false none List of code pattern parameter configurations

    ToolConfiguration

    {
      "enabled": true,
      "patterns": [
        {
          "id": "ESLint_@typescript-eslint_no-shadow",
          "enabled": true,
          "parameters": [
            {
              "name": "getWithoutSet",
              "value": "true"
            }
          ]
        }
      ]
    }
    
    

    Configuration of a tool and its code patterns

    Properties

    Name Type Required Restrictions Description
    enabled boolean false none True if the tool is enabled in the repository or coding standard
    patterns [PatternConfiguration] true none List of code pattern configurations

    RepositoryIdentification

    {
      "repositoryId": 0,
      "name": "codacy-eslint"
    }
    
    

    Identifier and name of a repository using a coding standard

    Properties

    Name Type Required Restrictions Description
    repositoryId integer(int64) true none Identifier of the repository
    name string true none Name of the repository

    CodingStandardRepositoriesListResponse

    {
      "data": [
        {
          "repositoryId": 0,
          "name": "codacy-eslint"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [RepositoryIdentification] true none List of repositories using a coding standard
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    ApplyCodingStandardToRepositoriesBody

    {
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    }
    
    

    Names of the repositories to link or unlink from a coding standard

    Properties

    Name Type Required Restrictions Description
    link [string] true none Names of the repositories to link to a coding standard
    unlink [string] true none Names of the repositories to unlink from a coding standard

    ApplyCodingStandardToRepositoriesResult

    {
      "successful": [
        "string"
      ],
      "failed": [
        "string"
      ]
    }
    
    

    Result of applying a coding standard to a list of repositories

    Properties

    Name Type Required Restrictions Description
    successful [string] true none Names of the repositories that were successfully linked or unlinked from a coding standard
    failed [string] true none Names of the repositories that failed to be linked or unlinked from a coding standard

    ApplyCodingStandardToRepositoriesResultResponse

    {
      "data": {
        "successful": [
          "string"
        ],
        "failed": [
          "string"
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data ApplyCodingStandardToRepositoriesResult true none Result of applying a coding standard to a list of repositories

    GatePolicyMeta

    {
      "nrOfQualityGates": 10,
      "linkedRepositoriesCount": 10
    }
    
    

    Meta information about a gate policy

    Properties

    Name Type Required Restrictions Description
    nrOfQualityGates integer(int32) true none Number of quality gates that are configured in the gate policy
    linkedRepositoriesCount integer(int32) true none Number of repositories following the gate policy

    GatePolicy

    {
      "id": 1,
      "name": "policy-name",
      "isDefault": true,
      "readOnly": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      },
      "meta": {
        "nrOfQualityGates": 10,
        "linkedRepositoriesCount": 10
      }
    }
    
    

    Details of the gate policy

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Identifier of the gate policy
    name string true none Name of the gate policy
    isDefault boolean true none True if the gate policy is the default for the organization
    readOnly boolean true none True if the quality gates of the gate policy cannot be changed
    settings QualityGate true none none
    meta GatePolicyMeta true none Meta information about a gate policy

    GetGatePolicyResultResponse

    {
      "data": {
        "id": 1,
        "name": "policy-name",
        "isDefault": true,
        "readOnly": true,
        "settings": {
          "issueThreshold": {
            "threshold": 1,
            "minimumSeverity": "Error"
          },
          "securityIssueThreshold": 1,
          "securityIssueMinimumSeverity": "Error",
          "duplicationThreshold": 1,
          "coverageThreshold": 1,
          "coverageThresholdWithDecimals": -0.02,
          "diffCoverageThreshold": 70,
          "complexityThreshold": 1
        },
        "meta": {
          "nrOfQualityGates": 10,
          "linkedRepositoriesCount": 10
        }
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data GatePolicy true none Details of the gate policy

    UpdateGatePolicyBody

    {
      "gatePolicyName": "string",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    gatePolicyName string false none Name of the gate policy
    isDefault boolean false none True if the gate policy is the default for the organization
    settings QualityGate false none none

    GatePolicySummarized

    {
      "id": 1,
      "name": "policy-name",
      "isDefault": true,
      "readOnly": true,
      "meta": {
        "nrOfQualityGates": 10,
        "linkedRepositoriesCount": 10
      }
    }
    
    

    Gate policy summary information, without the quality gate settings

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Identifier of the gate policy
    name string true none Name of the gate policy
    isDefault boolean true none True if the gate policy is the default for the organization
    readOnly boolean true none True if the quality gates of the gate policy cannot be changed
    meta GatePolicyMeta true none Meta information about a gate policy

    GatePoliciesListResponse

    {
      "data": [
        {
          "id": 1,
          "name": "policy-name",
          "isDefault": true,
          "readOnly": true,
          "meta": {
            "nrOfQualityGates": 10,
            "linkedRepositoriesCount": 10
          }
        }
      ]
    }
    
    

    List of gate policies for an organization

    Properties

    Name Type Required Restrictions Description
    data [GatePolicySummarized] true none [Gate policy summary information, without the quality gate settings]

    CreateGatePolicyBody

    {
      "gatePolicyName": "gate-policy-name",
      "isDefault": true,
      "settings": {
        "issueThreshold": {
          "threshold": 1,
          "minimumSeverity": "Error"
        },
        "securityIssueThreshold": 1,
        "securityIssueMinimumSeverity": "Error",
        "duplicationThreshold": 1,
        "coverageThreshold": 1,
        "coverageThresholdWithDecimals": -0.02,
        "diffCoverageThreshold": 70,
        "complexityThreshold": 1
      }
    }
    
    

    Details of a new gate policy

    Properties

    Name Type Required Restrictions Description
    gatePolicyName string true none Name of the gate policy
    isDefault boolean false none none
    settings QualityGate false none none

    SyncProviderSettingOrganizationResponse

    {
      "name": "troubleshoot-codacy"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none Synced name of the organization

    CheckSubmodulesResponse

    {
      "data": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data boolean true none True if the submodules option is enabled for the organization, false otherwise

    ListRepositoriesFollowingGatePolicyResultResponse

    {
      "data": [
        {
          "repositoryId": 0,
          "name": "codacy-eslint"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [RepositoryIdentification] true none List of repositories following a gate policy
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    ApplyGatePolicyToRepositoriesBody

    {
      "link": [
        "string"
      ],
      "unlink": [
        "string"
      ]
    }
    
    

    Names of the repositories to link or unlink from a gate policy

    Properties

    Name Type Required Restrictions Description
    link [string] true none Names of the repositories to link to a gate policy
    unlink [string] true none Names of the repositories to unlink from a gate policy

    ApiTokenResponse

    {
      "data": {
        "id": 0,
        "token": "string",
        "expiresAt": "2019-05-07T14:29:13.43Z"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data ApiToken true none API token string value and ID

    CoverageReport

    {
      "targetCommitSha": "string",
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ],
        "branches": [
          {
            "id": 1,
            "name": "master",
            "isDefault": true,
            "isEnabled": true,
            "lastUpdated": "2019-05-07T14:29:13.43Z",
            "branchType": "Branch",
            "lastCommit": "string"
          }
        ]
      },
      "language": "string",
      "createdAt": "2019-08-24T14:15:22Z",
      "status": "Pending"
    }
    
    

    Status and details of a coverage report

    Properties

    Name Type Required Restrictions Description
    targetCommitSha string true none Commit SHA that was referenced as the target for this report
    commit CommitWithBranches false none none
    language string false none Programming language associated with the coverage report
    createdAt string(date-time) true none Report creation date
    status string true none Coverage status

    Enumerated Values

    Property Value
    status Pending
    status Processed
    status CommitNotAnalysed
    status CommitNotFound
    status BranchNotEnabled
    status MissingFinal

    CoverageReportResponse

    {
      "data": {
        "hasCoverageOverview": true,
        "lastReports": [
          {
            "targetCommitSha": "string",
            "commit": {
              "sha": "string",
              "id": 1,
              "commitTimestamp": "2019-05-07T14:29:13.43Z",
              "authorName": "string",
              "authorEmail": "string",
              "message": "string",
              "startedAnalysis": "2022-01-07T14:29:13.43Z",
              "endedAnalysis": "2022-01-07T14:29:13.43Z",
              "isMergeCommit": false,
              "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
              "parents": [
                "string"
              ],
              "branches": [
                {
                  "id": 1,
                  "name": "master",
                  "isDefault": true,
                  "isEnabled": true,
                  "lastUpdated": "2019-05-07T14:29:13.43Z",
                  "branchType": "Branch",
                  "lastCommit": "string"
                }
              ]
            },
            "language": "string",
            "createdAt": "2019-08-24T14:15:22Z",
            "status": "Pending"
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data object true none none
    » hasCoverageOverview boolean false none True if the Quality evolution chart of the repository includes coverage information
    » lastReports [CoverageReport] false none [Status and details of a coverage report]

    CoverageReportEntry

    {
      "repositoryId": 0,
      "commitSha": "string",
      "reportId": "string",
      "language": "string",
      "isFinal": true,
      "processed": true,
      "createdAt": "2019-08-24T14:15:22Z"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositoryId integer(int64) true none none
    commitSha string true none none
    reportId string true none none
    language string false none none
    isFinal boolean true none none
    processed boolean true none none
    createdAt string(date-time) true none none

    CoverageReportEntryResponse

    {
      "data": [
        {
          "repositoryId": 0,
          "commitSha": "string",
          "reportId": "string",
          "language": "string",
          "isFinal": true,
          "processed": true,
          "createdAt": "2019-08-24T14:15:22Z"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [CoverageReportEntry] true none none
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    CoverageReportFile

    {
      "fileName": "string",
      "coverage": {
        "1": 2,
        "12": 1,
        "23": 0
      }
    }
    
    

    Coverage report for the file

    Properties

    Name Type Required Restrictions Description
    fileName string true none Name of the file
    coverage object true none Coverage map
    » additionalProperties integer(int32) false none none

    CoverageReportContent

    {
      "repositoryId": 0,
      "commitSha": "string",
      "reportId": "string",
      "language": "string",
      "isFinal": true,
      "processed": true,
      "createdAt": "2019-08-24T14:15:22Z",
      "content": [
        {
          "fileName": "string",
          "coverage": {
            "1": 2,
            "12": 1,
            "23": 0
          }
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositoryId integer(int64) true none none
    commitSha string true none none
    reportId string true none none
    language string false none none
    isFinal boolean true none none
    processed boolean true none none
    createdAt string(date-time) true none none
    content [CoverageReportFile] true none [Coverage report for the file]

    CoverageReportContentResponse

    {
      "data": {
        "repositoryId": 0,
        "commitSha": "string",
        "reportId": "string",
        "language": "string",
        "isFinal": true,
        "processed": true,
        "createdAt": "2019-08-24T14:15:22Z",
        "content": [
          {
            "fileName": "string",
            "coverage": {
              "1": 2,
              "12": 1,
              "23": 0
            }
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data CoverageReportContent true none none

    CodeBlockLine

    {
      "number": 0,
      "content": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    number integer true none Line number
    content string true none Line content

    CodeBlockLineListResponse

    {
      "data": [
        {
          "number": 0,
          "content": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [CodeBlockLine] true none none

    PayloadTooLarge

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "PayloadTooLarge"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    FileCoverage

    {
      "line": 2,
      "hits": 3
    }
    
    

    Coverage information for a file

    Properties

    Name Type Required Restrictions Description
    line integer(int32) true none Line number
    hits integer(int32) true none Number of test hits for the line

    GetFileCoverageResponse

    {
      "data": [
        {
          "line": 2,
          "hits": 3
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [FileCoverage] true none [Coverage information for a file]

    FileStateBody

    {
      "ignored": true,
      "filepath": "src/main/scala/main/Main.scala"
    }
    
    

    Ignored status of a file

    Properties

    Name Type Required Restrictions Description
    ignored boolean true none True if the file is ignored
    filepath string true none Relative path of the file in the repository

    SrmSource

    "Codacy"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous Codacy
    anonymous Jira
    anonymous PenTest
    anonymous ZAP
    anonymous Trivy

    SrmIgnoredBody

    {
      "at": "2017-08-21T17:32:28Z",
      "authorId": 42,
      "authorName": "John Doe",
      "reason": "False positive"
    }
    
    

    Contains information about who ignored an SRM item

    Properties

    Name Type Required Restrictions Description
    at string(date-time) true none none
    authorId integer(int64) true none Id of user who ignored issue
    authorName string true none Name of the user who ignored the item
    reason string true none Reason for ignoring the item

    SrmItem

    {
      "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
      "itemSource": "Codacy",
      "itemSourceId": "764334",
      "title": "Codacy quality - critical security issue 764334",
      "repository": "codacy-docs",
      "openedAt": "2017-07-21T17:32:28Z",
      "closedAt": "2017-08-21T17:32:28Z",
      "dueAt": "2017-07-21T17:32:28Z",
      "ignored": {
        "at": "2017-08-21T17:32:28Z",
        "authorId": 42,
        "authorName": "John Doe",
        "reason": "False positive"
      },
      "priority": "Critical",
      "status": "Overdue",
      "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
      "projectKey": "PUL",
      "securityCategory": "Cryptography",
      "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
      "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
      "cvssScore": 0.42,
      "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
      "cwe": "CWE-122",
      "cve": "CVE-1970-1234",
      "affectedVersion": "1.0.0",
      "fixedVersion": [
        "1.0.1"
      ],
      "application": "https://example.com",
      "affectedTargets": "https://example.com",
      "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
      "likelihood": "Low",
      "effortToFix": "High",
      "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
      "dastTargetUrls": "string",
      "imageName": "string",
      "imageTag": "string"
    }
    
    

    Security and risk management item of an organization.

    Properties

    Name Type Required Restrictions Description
    id string(uuid) true none Item ID internal to Codacy.
    itemSource SrmSource true none none
    itemSourceId string true none Original source item ID.
    title string true none Human-readable title of the item.
    repository string false none none
    openedAt string(date-time) true none none
    closedAt string(date-time) false none none
    dueAt string(date-time) true none none
    ignored SrmIgnoredBody false none Contains information about who ignored an SRM item
    priority string true none none
    status string true none none
    htmlUrl string false none Link to the item's underlying issue
    projectKey string false none Jira project key of the item's underlying issue
    securityCategory string false none The category of a security item identified by Codacy
    scanType string false none The type of scan that identified the item.
    summary string false none Brief description of the issue. Specific to penetration testing issues.
    cvssScore number(float) false none CVSS (Common Vulnerability Scoring System) score representing the severity of the vulnerability. Specific to penetration testing issues.
    cvssVector string false none CVSS (Common Vulnerability Scoring System) scoring vector, including various metrics detailing the nature and impact of the vulnerability. Specific to penetration testing issues.
    cwe string false none CWE (Common Weakness Enumeration) software vulnerability identifier. Specific to penetration testing issues.
    cve string false none A list of CVE (Common Vulnerabilities and Exposures) identifiers. Most of the time the array will contain only one single ID, but there are niche instances where there can be multiple ones.
    affectedVersion string false none Indicates the version when this vulnerability was first detected in your codebase
    fixedVersion [string] false none Indicates the version (tag, or commit SHA) when this vulnerability was fixed
    application string false none Applicable for issues identified by DAST scanning. A URL identifying the affected application.
    affectedTargets string false none List of targets affected by the security issue, determined dynamically based on the target type. Includes URLs, app names with operating systems for mobile apps, SSIDs for wireless, hostnames, full names for social engineering targets, and various combinations of hostnames and IP addresses for other targets. Cannot guarantee a specific format. Specific to penetration testing issues.
    additionalInfo string false none Additional information about the issue.
    likelihood string false none Specific to penetration testing issues.
    effortToFix string false none Specific to penetration testing issues.
    remediation string false none Recommended steps to fix the security issue. Specific to penetration testing issues.
    dastTargetUrls string false none Specifies the target URLs that were scanned.
    imageName string false none Name of the scanned container image
    imageTag string false none Tag of the scanned container image

    Enumerated Values

    Property Value
    priority Low
    priority Medium
    priority High
    priority Critical
    status Overdue
    status OnTrack
    status DueSoon
    status ClosedOnTime
    status ClosedLate
    status Ignored
    likelihood Low
    likelihood Medium
    likelihood High
    likelihood not_applicable
    effortToFix Low
    effortToFix Medium
    effortToFix High
    effortToFix not_applicable

    SrmItemsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
          "itemSource": "Codacy",
          "itemSourceId": "764334",
          "title": "Codacy quality - critical security issue 764334",
          "repository": "codacy-docs",
          "openedAt": "2017-07-21T17:32:28Z",
          "closedAt": "2017-08-21T17:32:28Z",
          "dueAt": "2017-07-21T17:32:28Z",
          "ignored": {
            "at": "2017-08-21T17:32:28Z",
            "authorId": 42,
            "authorName": "John Doe",
            "reason": "False positive"
          },
          "priority": "Critical",
          "status": "Overdue",
          "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
          "projectKey": "PUL",
          "securityCategory": "Cryptography",
          "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
          "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
          "cvssScore": 0.42,
          "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
          "cwe": "CWE-122",
          "cve": "CVE-1970-1234",
          "affectedVersion": "1.0.0",
          "fixedVersion": [
            "1.0.1"
          ],
          "application": "https://example.com",
          "affectedTargets": "https://example.com",
          "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
          "likelihood": "Low",
          "effortToFix": "High",
          "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
          "dastTargetUrls": "string",
          "imageName": "string",
          "imageTag": "string"
        }
      ]
    }
    
    

    Security and risk management item list, sorted by due date descending.

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [SrmItem] true none [Security and risk management item of an organization.]

    IgnoreSRMItemBody

    {
      "reason": "string",
      "comment": "string"
    }
    
    

    Request body with information of who ignored an SRM item

    Properties

    Name Type Required Restrictions Description
    reason string false none The reason why we ignore an issue.
    Must be one of AcceptedUse, FalsePositive, NotExploitable, TestCode, ExternalCode
    comment string false none Comment describing why we ignore an issue

    SrmItemResponse

    {
      "data": {
        "id": "ba7c836d-85f8-4617-9a95-ac6f00af1d30",
        "itemSource": "Codacy",
        "itemSourceId": "764334",
        "title": "Codacy quality - critical security issue 764334",
        "repository": "codacy-docs",
        "openedAt": "2017-07-21T17:32:28Z",
        "closedAt": "2017-08-21T17:32:28Z",
        "dueAt": "2017-07-21T17:32:28Z",
        "ignored": {
          "at": "2017-08-21T17:32:28Z",
          "authorId": 42,
          "authorName": "John Doe",
          "reason": "False positive"
        },
        "priority": "Critical",
        "status": "Overdue",
        "htmlUrl": "https://app.codacy.com/gh/test-org/test-repo/issues?resultDataId=12345",
        "projectKey": "PUL",
        "securityCategory": "Cryptography",
        "scanType": "SAST, SCA, ContainerSCA, Secrets, IaC, CICD, License, PenTesting, DAST, CSPM",
        "summary": "Modern web application design incorporates a Same-Origin Policy (SOP) in order to restrict interactions between scripts loaded on the origin and resources hosted on other origins.",
        "cvssScore": 0.42,
        "cvssVector": "CVSS:3.0/AV:A/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:L/E:U/MUI:N",
        "cwe": "CWE-122",
        "cve": "CVE-1970-1234",
        "affectedVersion": "1.0.0",
        "fixedVersion": [
          "1.0.1"
        ],
        "application": "https://example.com",
        "affectedTargets": "https://example.com",
        "additionalInfo": "The following directives either allow wildcard sources (or ancestors), are not defined, or are overly broadly defined: script-src, style-src, img-src, connect-src, frame-src, font-src, media-src, object-src, manifest-src, worker-src, form-action. The directive(s): form-action are among the directives that do not fallback to default-src, missing/excluding them is the same as allowing anything.\n",
        "likelihood": "Low",
        "effortToFix": "High",
        "remediation": "Always ensure that the 'Access-Control-Allow-Origin' only allows specific origins.",
        "dastTargetUrls": "string",
        "imageName": "string",
        "imageTag": "string"
      }
    }
    
    

    Response with a security and risk management item.

    Properties

    Name Type Required Restrictions Description
    data SrmItem true none Security and risk management item of an organization.

    ContainerImageFilter

    {
      "name": "string",
      "tag": "string"
    }
    
    

    Filter for container scanning items. The image name is required; tag is optional. Filtering by tag alone (without name) is not allowed.

    Properties

    Name Type Required Restrictions Description
    name string true none Container image name to filter by (e.g. nginx).
    tag string false none Optional image tag (e.g. 1.25.3).

    SearchSRMItems

    {
      "repositories": [
        "string"
      ],
      "priorities": [
        "string"
      ],
      "statuses": [
        "string"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "dastTargetUrls": [
        "string"
      ],
      "searchText": "string",
      "containerImage": {
        "name": "string",
        "tag": "string"
      }
    }
    
    

    Request body to filter the security issues of an organization.

    Properties

    Name Type Required Restrictions Description
    repositories [string] false none Repository names to filter by.
    priorities [string] false none Security issue priorities to filter by. See SrmPriority for valid values.
    statuses [string] false none Security issue status to filter by. See SrmStatus for valid values.
    categories [string] false none Security categories to filter by. Use _other_ to search for issues that don't have a security category.
    scanTypes [string] false none Scan types to filter by.
    segments [integer] false none Segments ids to filter by.
    dastTargetUrls [string] false none Filter containing a list of Dast target urls.
    searchText string false none Text to search for in security items.
    containerImage ContainerImageFilter false none Filter for container scanning items. The image name is required;
    tag is optional. Filtering by tag alone (without name) is not allowed.

    SRMDashboard

    {
      "totalOpen": 0,
      "totalNewThisWeek": 0,
      "totalClosed": 0,
      "onTrack": 0,
      "dueSoon": 0,
      "overdue": 0,
      "closedOnTime": 0,
      "closedLate": 0,
      "openCritical": 0,
      "openHigh": 0,
      "openMedium": 0,
      "openLow": 0,
      "openSAST": 0,
      "openSCA": 0,
      "openContainerSCA": 0,
      "openSecrets": 0,
      "openIaC": 0,
      "openCICD": 0,
      "openLicense": 0,
      "openPenTesting": 0,
      "openDAST": 0,
      "openCSPM": 0,
      "openScanNotAttributed": 0
    }
    
    

    Metrics for the security and risk management dashboard.

    Properties

    Name Type Required Restrictions Description
    totalOpen integer(int32) true none none
    totalNewThisWeek integer(int32) true none none
    totalClosed integer(int32) true none none
    onTrack integer(int32) true none none
    dueSoon integer(int32) true none none
    overdue integer(int32) true none none
    closedOnTime integer(int32) true none none
    closedLate integer(int32) true none none
    openCritical integer(int32) true none Number of open security issues with Critical severity.
    openHigh integer(int32) true none Number of open security issues with High severity.
    openMedium integer(int32) true none Number of open security issues with Medium severity.
    openLow integer(int32) true none Number of open security issues with Low severity.
    openSAST integer(int32) true none Number of open security issues identified by a SAST scan.
    openSCA integer(int32) true none Number of open security issues identified by an SCA scan.
    openContainerSCA integer(int32) true none Number of open security issues identified by a ContainerSCA scan.
    openSecrets integer(int32) true none Number of open security issues identified by a Secrets scan.
    openIaC integer(int32) true none Number of open security issues identified by an IaC scan.
    openCICD integer(int32) true none Number of open security issues identified by a CICD scan.
    openLicense integer(int32) true none Number of open security issues identified by a License scan.
    openPenTesting integer(int32) true none Number of open security issues identified by a PenTesting scan.
    openDAST integer(int32) true none Number of open security issues identified by a DAST scan.
    openCSPM integer(int32) true none Number of open security issues identified by a CSPM scan.
    openScanNotAttributed integer(int32) true none Number of open security issues which do not have an attributed scan type.

    SRMDashboardResponse

    {
      "data": {
        "totalOpen": 0,
        "totalNewThisWeek": 0,
        "totalClosed": 0,
        "onTrack": 0,
        "dueSoon": 0,
        "overdue": 0,
        "closedOnTime": 0,
        "closedLate": 0,
        "openCritical": 0,
        "openHigh": 0,
        "openMedium": 0,
        "openLow": 0,
        "openSAST": 0,
        "openSCA": 0,
        "openContainerSCA": 0,
        "openSecrets": 0,
        "openIaC": 0,
        "openCICD": 0,
        "openLicense": 0,
        "openPenTesting": 0,
        "openDAST": 0,
        "openCSPM": 0,
        "openScanNotAttributed": 0
      }
    }
    
    

    Metrics for the security and risk management dashboard.

    Properties

    Name Type Required Restrictions Description
    data SRMDashboard true none Metrics for the security and risk management dashboard.

    SearchSRMDashboard

    {
      "repositories": [
        "string"
      ],
      "priorities": [
        "Low"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    
    

    Request body to filter the metrics of the security issues dashboard of an organization.

    Properties

    Name Type Required Restrictions Description
    repositories [string] false none Repository names to filter by.
    priorities [string] false none Security issue priorities to filter by. See SrmPriority for valid values.
    categories [string] false none Security categories to filter by. Use _other_ to search for issues that don't have a security category.
    scanTypes [string] false none Scan types to filter by.
    segments [integer] false none Segments ids to filter by.

    SearchSRMDashboardRepositories

    {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    
    

    Request body to filter the search for the list of organization repositories with security findings.

    Properties

    Name Type Required Restrictions Description
    repositories [string] false none Repository names to filter by.
    segments [integer] false none Segments ids to filter by.

    SRMRepositoryIssueCount

    {
      "id": 0,
      "name": "important-repo",
      "critical": 0,
      "high": 0,
      "medium": 0,
      "low": 0
    }
    
    

    Open issue counts for a repository, aggregated by severity.

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Codacy repository id.
    name string true none Repository name.
    critical integer(int32) true none Number of open issues with 'Critical' severity.
    high integer(int32) true none Number of open issues with 'High' severity.
    medium integer(int32) true none Number of open issues with 'Medium' severity.
    low integer(int32) true none Number of open issues with 'Low' severity.

    SRMDashboardRepositoriesResponse

    {
      "data": [
        {
          "id": 0,
          "name": "important-repo",
          "critical": 0,
          "high": 0,
          "medium": 0,
          "low": 0
        }
      ]
    }
    
    

    List of repositories with their respective issue count.

    Properties

    Name Type Required Restrictions Description
    data [SRMRepositoryIssueCount] true none [Open issue counts for a repository, aggregated by severity.]

    SearchSRMDashboardHistory

    {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    
    

    Request body to filter the evolution of security findings over time.

    Properties

    Name Type Required Restrictions Description
    repositories [string] false none Repository names to filter by.
    segments [integer] false none Segments ids to filter by.

    SRMHistoryDataPoint

    {
      "since": "2024-03-04T00:00:00Z",
      "until": "2024-03-11T00:00:00Z",
      "newCritical": 0,
      "newHigh": 0,
      "newMedium": 0,
      "newLow": 0,
      "fixedCritical": 0,
      "fixedHigh": 0,
      "fixedMedium": 0,
      "fixedLow": 0,
      "openCritical": 0,
      "openHigh": 0,
      "openMedium": 0,
      "openLow": 0,
      "ignoredCritical": 0,
      "ignoredHigh": 0,
      "ignoredMedium": 0,
      "ignoredLow": 0,
      "unignoredCritical": 0,
      "unignoredHigh": 0,
      "unignoredMedium": 0,
      "unignoredLow": 0
    }
    
    

    Totals for open, new, and fixed security findings during the given time interval

    Properties

    Name Type Required Restrictions Description
    since string(date-time) true none Beginning of the time interval (inclusive).
    until string(date-time) true none End of the time interval (exclusive).
    newCritical integer(int32) true none Number of security findings with Critical severity, introduced during the time interval
    newHigh integer(int32) true none Number of security findings with High severity, introduced during the time interval
    newMedium integer(int32) true none Number of security findings with Medium severity, introduced during the time interval
    newLow integer(int32) true none Number of security findings with Low severity, introduced during the time interval
    fixedCritical integer(int32) true none Number of security findings with Critical severity, fixed during the time interval
    fixedHigh integer(int32) true none Number of security findings with High severity, fixed during the time interval
    fixedMedium integer(int32) true none Number of security findings with Medium severity, fixed during the time interval
    fixedLow integer(int32) true none Number of security findings with Low severity, fixed during the time interval
    openCritical integer(int32) true none Number of open security findings with Critical severity, at the beginning of the time interval
    openHigh integer(int32) true none Number of open security findings with High severity, at the beginning of the time interval
    openMedium integer(int32) true none Number of open security findings with Medium severity, at the beginning of the time interval
    openLow integer(int32) true none Number of open security findings with Low severity, at the beginning of the time interval
    ignoredCritical integer(int32) true none Number of ignored security findings with Critical severity, at the beginning of the time interval
    ignoredHigh integer(int32) true none Number of ignored security findings with High severity, at the beginning of the time interval
    ignoredMedium integer(int32) true none Number of ignored security findings with Medium severity, at the beginning of the time interval
    ignoredLow integer(int32) true none Number of ignored security findings with Low severity, at the beginning of the time interval
    unignoredCritical integer(int32) true none Number of unignored security findings with Critical severity, at the beginning of the time interval
    unignoredHigh integer(int32) true none Number of unignored security findings with High severity, at the beginning of the time interval
    unignoredMedium integer(int32) true none Number of unignored security findings with Medium severity, at the beginning of the time interval
    unignoredLow integer(int32) true none Number of unignored security findings with Low severity, at the beginning of the time interval

    SRMDashboardHistoryResponse

    {
      "data": [
        {
          "since": "2024-03-04T00:00:00Z",
          "until": "2024-03-11T00:00:00Z",
          "newCritical": 0,
          "newHigh": 0,
          "newMedium": 0,
          "newLow": 0,
          "fixedCritical": 0,
          "fixedHigh": 0,
          "fixedMedium": 0,
          "fixedLow": 0,
          "openCritical": 0,
          "openHigh": 0,
          "openMedium": 0,
          "openLow": 0,
          "ignoredCritical": 0,
          "ignoredHigh": 0,
          "ignoredMedium": 0,
          "ignoredLow": 0,
          "unignoredCritical": 0,
          "unignoredHigh": 0,
          "unignoredMedium": 0,
          "unignoredLow": 0
        }
      ]
    }
    
    

    Evolution of security findings over time.

    Properties

    Name Type Required Restrictions Description
    data [SRMHistoryDataPoint] true none [Totals for open, new, and fixed security findings during the given time interval]

    SearchSRMDashboardCategories

    {
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ]
    }
    
    

    Request body to filter the search for the list of security categories with findings.

    Properties

    Name Type Required Restrictions Description
    repositories [string] false none Repository names to filter by.
    segments [integer] false none Segments ids to filter by.

    SRMCategoryIssueCount

    {
      "name": "Cryptography",
      "total": 0
    }
    
    

    Open issue counts for a security category.

    Properties

    Name Type Required Restrictions Description
    name string true none Security category name.
    total integer(int32) true none Total number of open issues for the given security category.

    SRMDashboardCategoriesResponse

    {
      "data": [
        {
          "name": "Cryptography",
          "total": 0
        }
      ]
    }
    
    

    List of security categories with their respective issue count.

    Properties

    Name Type Required Restrictions Description
    data [SRMCategoryIssueCount] true none [Open issue counts for a security category.]

    SRMDASTReportUploadResponse

    {
      "id": "847feb32-9ff2-11ea-bb37-0242ac130002"
    }
    
    

    Metadata useful to identify the report upload.

    Properties

    Name Type Required Restrictions Description
    id string true none Unique identifier of the uploaded report

    SRMDastReport

    {
      "id": "9a4f2183-c2a8-4f38-abe9-1041c5dc9b05",
      "organizationId": 12455,
      "createdAt": "2024-03-14T06:54:42.869673Z",
      "updatedAt": "2024-03-14T06:54:42.869673Z",
      "generatedAt": "2024-03-14T06:54:42.869673Z",
      "state": "InProgress",
      "tool": "ZAP",
      "failureReason": "Unrecognized report format."
    }
    
    

    A dynamic application security testing (DAST) report.

    Properties

    Name Type Required Restrictions Description
    id string(uuid) true none The report internal id.
    organizationId integer(int64) true none Codacy's organization identifier.
    createdAt string(date-time) true none When the report was created on Codacy's platform.
    updatedAt string(date-time) true none When the report was last updated on Codacy's platform.
    generatedAt string(date-time) true none When the report was originally generated.
    state string true none The report's current processing state.
    tool string true none The DAST scanning tool used to generate the report.
    failureReason string false none The reason the report failed to be processed. This field is only defined when state is 'Failure'.

    Enumerated Values

    Property Value
    state InProgress
    state Success
    state Failure
    tool ZAP

    SRMDastReportResponse

    {
      "data": [
        {
          "id": "9a4f2183-c2a8-4f38-abe9-1041c5dc9b05",
          "organizationId": 12455,
          "createdAt": "2024-03-14T06:54:42.869673Z",
          "updatedAt": "2024-03-14T06:54:42.869673Z",
          "generatedAt": "2024-03-14T06:54:42.869673Z",
          "state": "InProgress",
          "tool": "ZAP",
          "failureReason": "Unrecognized report format."
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    A page of DAST reports submitted to Codacy.

    Properties

    Name Type Required Restrictions Description
    data [SRMDastReport] true none [A dynamic application security testing (DAST) report.]
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    SecurityManager

    {
      "userId": 867842577,
      "name": "John Doe",
      "email": "example@codacy.com",
      "createdAt": "2017-07-21T17:32:28Z"
    }
    
    

    Organization admin or security manager.

    Properties

    Name Type Required Restrictions Description
    userId integer(int64) true none User ID internal to Codacy.
    name string false none none
    email string true none none
    createdAt string(date-time) true none none

    SecurityManagersResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "userId": 867842577,
          "name": "John Doe",
          "email": "example@codacy.com",
          "createdAt": "2017-07-21T17:32:28Z"
        }
      ]
    }
    
    

    Security manager list sorted by organization admin status first and then alphabetically

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [SecurityManager] true none [Organization admin or security manager.]

    SecurityManagerBody

    {
      "userId": 867842577
    }
    
    

    Assign or revoke the Security Manager role for an organization member.

    Properties

    Name Type Required Restrictions Description
    userId integer(int64) true none User ID of the organization member to be promoted to security manager.

    SecurityRepositoriesResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "repositoryId": 45738,
          "provider": "gh",
          "owner": "codacy",
          "name": "codacy-eslint"
        }
      ]
    }
    
    

    List of repositories that have security issues.

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [RepositorySummary] true none [Essential information to describe a repository.]

    SecurityCategoriesResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        "Cryptography"
      ]
    }
    
    

    List of security categories that have security issues.

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [string] true none none

    FindingSeverity

    "Critical"
    
    

    Finding severity level. Possible values are Critical, High, Medium, Low.

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Finding severity level. Possible values are Critical, High, Medium, Low.

    Enumerated Values

    Property Value
    anonymous Critical
    anonymous High
    anonymous Medium
    anonymous Low

    LicenseRiskCategory

    "Forbidden"
    
    

    The risk category of a license.

    Properties

    Name Type Required Restrictions Description
    anonymous string false none The risk category of a license.

    Enumerated Values

    Property Value
    anonymous Forbidden
    anonymous Restricted
    anonymous Reciprocal
    anonymous Notice
    anonymous Permissive
    anonymous Unencumbered
    anonymous Unknown

    SearchSbomDependenciesBody

    {
      "text": "string",
      "repositories": [
        "string"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "findingSeverities": [
        "Critical"
      ],
      "riskCategories": [
        "Forbidden"
      ]
    }
    
    

    Request body for searching dependencies.

    Properties

    Name Type Required Restrictions Description
    text string false none Text search query. Matches against SBOM component fields (purl, full_name).
    repositories [string] false none Repository names to filter by.
    segments [integer] false none Segments ids to filter by.
    findingSeverities [FindingSeverity] false none Finding severities to filter by. Possible values are Critical, High, Medium, Low.
    riskCategories [LicenseRiskCategory] false none License Risk categories to filter by.

    OpenFindingsCount

    {
      "severity": "string",
      "open": 0
    }
    
    

    The open findings count for a given severity.

    Properties

    Name Type Required Restrictions Description
    severity string true none The findings' severity.
    open integer(int32) true none The number of open findings.

    LicensesDetails

    {
      "name": "string",
      "url": "string",
      "isOsiApproved": true,
      "isFsfLibre": true,
      "riskCategory": "Forbidden",
      "isDerivedByAi": true
    }
    
    

    Detailed information about a license.

    Properties

    Name Type Required Restrictions Description
    name string false none The name of the license.
    url string false none The license's official page.
    isOsiApproved boolean false none Whether the license is OSI approved.
    isFsfLibre boolean false none Whether the license is FSF libre.
    riskCategory LicenseRiskCategory false none The license risk category.
    isDerivedByAi boolean false none Whether the license details were derived by AI.

    SbomDependencySummary

    {
      "fullName": "maven/ch.qos.logback/logback-classic",
      "purl": "maven:ch.qos.logback:logback-classic:1.2.3",
      "ossfScore": 0.1,
      "repositoriesCount": 0,
      "versionsCount": 1,
      "findings": [
        {
          "severity": "string",
          "open": 0
        }
      ],
      "licensesDetails": [
        {
          "name": "string",
          "url": "string",
          "isOsiApproved": true,
          "isFsfLibre": true,
          "riskCategory": "Forbidden",
          "isDerivedByAi": true
        }
      ]
    }
    
    

    Summary of a dependency.

    Properties

    Name Type Required Restrictions Description
    fullName string true none The full name of the dependency.
    purl string false none The purl of the dependency.
    ossfScore number(double) false none The ossf score of the dependency.
    repositoriesCount integer(int32) true none The number of repositories where a version of this dependency is used.
    versionsCount integer(int32) true none The number of versions this dependency has across repositories.
    findings [OpenFindingsCount] true none An array containing the open findings count, per severity, found for this dependency
    licensesDetails [LicensesDetails] true none Detailed license information for this dependency.

    SbomDependenciesOverview

    {
      "totalRepositoriesCount": 0,
      "filteredRepositoriesCount": 0,
      "totalDependenciesCount": 0,
      "filteredDependenciesCount": 0
    }
    
    

    Overview of a search dependencies request.

    Properties

    Name Type Required Restrictions Description
    totalRepositoriesCount integer(int32) true none The total number of repositories for which there is dependency information. This number does not change with filtering.
    filteredRepositoriesCount integer(int32) true none The total number of filtered repositories for which there is dependency information.
    totalDependenciesCount integer(int64) true none The total number of dependencies found across repositories for which there is dependency information. If the same dependency is used in multiple repositories, it will be counted multiple times. This number does not change with filtering.
    filteredDependenciesCount integer(int64) true none The total number of filtered dependencies found across repositories for which there is dependency information. If the same dependency is used in multiple repositories, it will be counted multiple times.

    SearchSbomDependenciesResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "fullName": "maven/ch.qos.logback/logback-classic",
          "purl": "maven:ch.qos.logback:logback-classic:1.2.3",
          "ossfScore": 0.1,
          "repositoriesCount": 0,
          "versionsCount": 1,
          "findings": [
            {
              "severity": "string",
              "open": 0
            }
          ],
          "licensesDetails": [
            {
              "name": "string",
              "url": "string",
              "isOsiApproved": true,
              "isFsfLibre": true,
              "riskCategory": "Forbidden",
              "isDerivedByAi": true
            }
          ]
        }
      ],
      "overview": {
        "totalRepositoriesCount": 0,
        "filteredRepositoriesCount": 0,
        "totalDependenciesCount": 0,
        "filteredDependenciesCount": 0
      }
    }
    
    

    Response body for searching dependencies.

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [SbomDependencySummary] true none [Summary of a dependency.]
    overview SbomDependenciesOverview true none Overview of a search dependencies request.

    NotImplemented

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "NotImplemented"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    SearchRepositoriesOfSbomDependencyBody

    {
      "dependencyFullName": "string",
      "repositoriesFilter": [
        "string"
      ]
    }
    
    

    Request body for searching the repositories where a dependency is used.

    Properties

    Name Type Required Restrictions Description
    dependencyFullName string true none The full name of the dependency to search for.
    repositoriesFilter [string] false none Repository names to filter by.

    RepositorySummaryOfSbomDependency

    {
      "id": 0,
      "name": "string",
      "dependencyVersion": "string",
      "highestFindingSeverity": "string",
      "licenses": [
        "string"
      ],
      "licensesDetails": [
        {
          "name": "string",
          "url": "string",
          "isOsiApproved": true,
          "isFsfLibre": true,
          "riskCategory": "Forbidden",
          "isDerivedByAi": true
        }
      ]
    }
    
    

    Summary of a repository where a given dependency is used.

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none The identifier of the repository.
    name string true none The name of the repository.
    dependencyVersion string false none The exact version of the dependency this repository is using.
    highestFindingSeverity string false none The highest severity of the findings found for this dependency in this repository.
    licenses [string] true none Deprecated use licensesDetails instead
    licensesDetails [LicensesDetails] true none Detailed license information for the dependency used in this repository.

    RepositoriesOverviewOfSbomDependency

    {
      "name": "logback-classic",
      "fullName": "maven/ch.qos.logback/logback-classic",
      "purl": "maven:ch.qos.logback:logback-classic:1.2.3",
      "ossfScore": 0.1,
      "latestVersion": "10.1.2",
      "oldestVersion": "1.2.3",
      "totalVersionsCount": 0,
      "filteredVersionsCount": 0,
      "totalRepositoriesCount": 0,
      "filteredRepositoriesCount": 0
    }
    
    

    Overview of how a dependency is used across repositories.

    Properties

    Name Type Required Restrictions Description
    name string false none The dependency name.
    fullName string true none The dependency full name.
    purl string false none The purl of the dependency.
    ossfScore number(double) false none The ossf score of the dependency.
    latestVersion string false none The latest version of this dependency that is being used across filtered repositories.
    oldestVersion string false none The oldest version of this dependency that is being used across filtered repositories.
    totalVersionsCount integer(int32) false none How many dependency versions are being used across repositories. This number does not change with filtering.
    filteredVersionsCount integer(int32) true none How many dependency versions are being used across the filtered repositories.
    totalRepositoriesCount integer(int32) true none How many repositories are using a version of this dependency. This number does not change with filtering.
    filteredRepositoriesCount integer(int32) true none How many repositories matching the filters are using a version of this dependency.

    SearchRepositoriesOfSbomDependencyResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "name": "string",
          "dependencyVersion": "string",
          "highestFindingSeverity": "string",
          "licenses": [
            "string"
          ],
          "licensesDetails": [
            {
              "name": "string",
              "url": "string",
              "isOsiApproved": true,
              "isFsfLibre": true,
              "riskCategory": "Forbidden",
              "isDerivedByAi": true
            }
          ]
        }
      ],
      "overview": {
        "name": "logback-classic",
        "fullName": "maven/ch.qos.logback/logback-classic",
        "purl": "maven:ch.qos.logback:logback-classic:1.2.3",
        "ossfScore": 0.1,
        "latestVersion": "10.1.2",
        "oldestVersion": "1.2.3",
        "totalVersionsCount": 0,
        "filteredVersionsCount": 0,
        "totalRepositoriesCount": 0,
        "filteredRepositoriesCount": 0
      }
    }
    
    

    Response body for searching the repositories where a given dependency is used.

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [RepositorySummaryOfSbomDependency] true none [Summary of a repository where a given dependency is used.]
    overview RepositoriesOverviewOfSbomDependency true none Overview of how a dependency is used across repositories.

    SearchSbomRepositoriesBody

    [
      "cargo/addr2line",
      "cargo/addr2line",
      "cargo/adler",
      "cargo/ahash",
      "cargo/aho-corasi",
      "cargo/backtrace",
      "cargo/bitflags"
    ]
    
    

    Request body for searching dependencies by repository.

    Properties

    None

    DependenciesSummaryOfSbomRepository

    {
      "id": 0,
      "name": "string",
      "dependenciesCount": 0,
      "dependenciesFindings": [
        {
          "severity": "string",
          "open": 0
        }
      ]
    }
    
    

    Summary of the dependencies of a repository.

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none The identifier of the repository.
    name string true none The name of the repository.
    dependenciesCount integer(int32) true none The number of dependencies this repository has, including indirect dependencies
    dependenciesFindings [OpenFindingsCount] true none An array containing the open findings count, per severity, found for this repository's dependencies

    DependenciesOverviewOfSbomRepositories

    {
      "totalRepositoriesCount": 0,
      "filteredRepositoriesCount": 0,
      "totalDependenciesCount": 0,
      "filteredDependenciesCount": 0
    }
    
    

    Overview of dependencies used across repositories.

    Properties

    Name Type Required Restrictions Description
    totalRepositoriesCount integer(int32) true none The total number of repositories for which there is dependency information. This number does not change with filtering.
    filteredRepositoriesCount integer(int32) true none The total number of filtered repositories for which there is dependency information.
    totalDependenciesCount integer(int64) true none The total number of dependencies found across repositories for which there is dependency information. If the same dependency is used in multiple repositories, it will be counted multiple times. This number does not change with filtering.
    filteredDependenciesCount integer(int64) true none The total number of filtered dependencies found across repositories for which there is dependency information. If the same dependency is used in multiple repositories, it will be counted multiple times.

    SearchSbomRepositoriesResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "name": "string",
          "dependenciesCount": 0,
          "dependenciesFindings": [
            {
              "severity": "string",
              "open": 0
            }
          ]
        }
      ],
      "overview": {
        "totalRepositoriesCount": 0,
        "filteredRepositoriesCount": 0,
        "totalDependenciesCount": 0,
        "filteredDependenciesCount": 0
      }
    }
    
    

    Response body for searching repositories with dependency information.

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [DependenciesSummaryOfSbomRepository] true none [Summary of the dependencies of a repository.]
    overview DependenciesOverviewOfSbomRepositories true none Overview of dependencies used across repositories.

    SbomPresignResponse

    {
      "url": "http://example.com"
    }
    
    

    Response containing a presigned URL to download the repository SBOM.

    Properties

    Name Type Required Restrictions Description
    url string(uri) true none Presigned S3 URL to download the SBOM JSON.

    ImageSummary

    {
      "imageName": "codacy/service-a",
      "latestTag": "1.0.0",
      "lastSbomUploaded": "2019-08-24T14:15:22Z",
      "lastSbomGenerated": "2019-08-24T14:15:22Z"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    imageName string true none The name of the Docker image
    latestTag string false none The most recently uploaded tag for this image
    lastSbomUploaded string(date-time) false none Timestamp when the last SBOM was uploaded
    lastSbomGenerated string(date-time) false none Timestamp when the last SBOM was generated

    ListImagesResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "imageName": "codacy/service-a",
          "latestTag": "1.0.0",
          "lastSbomUploaded": "2019-08-24T14:15:22Z",
          "lastSbomGenerated": "2019-08-24T14:15:22Z"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [ImageSummary] true none none

    ImageTagSummary

    {
      "imageName": "codacy/service-a",
      "tag": "string",
      "environment": "string",
      "repositoryId": 0,
      "repositoryName": "string",
      "generatedAt": "2019-08-24T14:15:22Z",
      "uploadedAt": "2019-08-24T14:15:22Z",
      "scanStatus": "2019-08-24T14:15:22Z",
      "lastAnalysedAt": "2019-08-24T14:15:22Z"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    imageName string true none The name of the Docker image
    tag string true none Tag of the Docker image
    environment string false none Environment where the image is deployed
    repositoryId integer(int64) false none The repository id associated with this image tag
    repositoryName string false none The repository name associated with this image tag
    generatedAt string(date-time) true none The timestamp when the SBOM for this image tag was generated
    uploadedAt string(date-time) true none The timestamp when the SBOM was uploaded to the system
    scanStatus string(date-time) false none Deprecated: Use lastAnalysedAt instead.
    The timestamp when this image tag was last analysed.
    lastAnalysedAt string(date-time) false none The timestamp when this image tag was last analysed

    ListImageTagsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "imageName": "codacy/service-a",
          "tag": "string",
          "environment": "string",
          "repositoryId": 0,
          "repositoryName": "string",
          "generatedAt": "2019-08-24T14:15:22Z",
          "uploadedAt": "2019-08-24T14:15:22Z",
          "scanStatus": "2019-08-24T14:15:22Z",
          "lastAnalysedAt": "2019-08-24T14:15:22Z"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [ImageTagSummary] true none none

    ElementType

    "issue"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous issue
    anonymous finding
    anonymous file
    anonymous dependency

    CreateJiraTicketDeprecatedBody

    {
      "elementType": "issue",
      "elementIds": [
        "string"
      ],
      "jiraProjectId": 0,
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    elementType ElementType true none none
    elementIds [string] true none none
    jiraProjectId integer(int64) true none none
    issueTypeId integer(int64) true none none
    summary string true none none
    description string true none JIRA description written in Atlassian Document Format https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/#json-schema
    dueDate string(date) false none Optional due date in YYYY-MM-DD format

    JiraTicket

    {
      "id": "string",
      "key": "string",
      "summary": "string",
      "assignee": "string",
      "link": "string",
      "status": {
        "key": "string",
        "labels": [
          "string"
        ],
        "color": "string"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    id string true none none
    key string true none none
    summary string true none none
    assignee string true none none
    link string true none none
    status object true none none
    » key string true none none
    » labels [string] true none none
    » color string true none none

    CreateJiraTicketResponse

    {
      "data": {
        "id": "string",
        "key": "string",
        "summary": "string",
        "assignee": "string",
        "link": "string",
        "status": {
          "key": "string",
          "labels": [
            "string"
          ],
          "color": "string"
        }
      }
    }
    
    

    Create ticket response

    Properties

    Name Type Required Restrictions Description
    data JiraTicket true none none

    GetJiraTicketsResponse

    {
      "data": [
        {
          "id": "string",
          "key": "string",
          "summary": "string",
          "assignee": "string",
          "link": "string",
          "status": {
            "key": "string",
            "labels": [
              "string"
            ],
            "color": "string"
          }
        }
      ]
    }
    
    

    Jira tickets retrieval response

    Properties

    Name Type Required Restrictions Description
    data [JiraTicket] true none none

    CreateJiraTicketElement

    {
      "elementId": "string",
      "repositoryName": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    elementId string true none none
    repositoryName string false none none

    CreateJiraTicketBody

    {
      "elementType": "issue",
      "jiraProjectId": 0,
      "createJiraTicketElements": [
        {
          "elementId": "string",
          "repositoryName": "string"
        }
      ],
      "issueTypeId": 0,
      "summary": "string",
      "description": "string",
      "dueDate": "2019-08-24"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    elementType ElementType true none none
    jiraProjectId integer(int64) true none none
    createJiraTicketElements [CreateJiraTicketElement] true none none
    issueTypeId integer(int64) true none none
    summary string true none none
    description string true none JIRA description written in Atlassian Document Format https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/#json-schema
    dueDate string(date) false none Optional due date in YYYY-MM-DD format

    UnlinkRepositoryJiraTicketBody

    {
      "elementType": "issue",
      "elementId": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    elementType ElementType true none none
    elementId string true none none

    JiraIntegration

    {
      "organization_id": 867842577,
      "instance_id": "1324a887-45db-1bf4-1e99-ef0ff456d421",
      "instance_name": "codacy",
      "created_at": "2020-11-09T09:10:00Z",
      "updated_at": "2020-11-09T09:10:00Z"
    }
    
    

    Details of a Jira integration for the security and risk management feature.

    Properties

    Name Type Required Restrictions Description
    organization_id integer(int64) true none Codacy organization ID
    instance_id string true none Jira cloud ID of the organization
    instance_name string true none Name of the Jira instance that Codacy has access to
    created_at string(date-time) true none none
    updated_at string(date-time) true none none

    JiraIntegrationResponse

    {
      "data": {
        "organization_id": 867842577,
        "instance_id": "1324a887-45db-1bf4-1e99-ef0ff456d421",
        "instance_name": "codacy",
        "created_at": "2020-11-09T09:10:00Z",
        "updated_at": "2020-11-09T09:10:00Z"
      }
    }
    
    

    A response with a Jira integration

    Properties

    Name Type Required Restrictions Description
    data JiraIntegration true none Details of a Jira integration for the security and risk management feature.

    JiraProject

    {
      "id": 0,
      "key": "string",
      "name": "string",
      "avatarUrl": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    key string true none none
    name string true none none
    avatarUrl string true none none

    PaginationInfoLong

    {
      "cursor": "string",
      "limit": 0,
      "total": 0
    }
    
    

    Cursor-based pagination information to obtain more items

    Properties

    Name Type Required Restrictions Description
    cursor string false none Cursor to request the next batch of results
    limit integer(int32) false none Maximum number of items returned
    total integer(int64) false none Total number of items returned

    AvailableJiraProjectsResponse

    {
      "data": [
        {
          "id": 0,
          "key": "string",
          "name": "string",
          "avatarUrl": "string"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    A response with a list of available projects.

    Properties

    Name Type Required Restrictions Description
    data [JiraProject] true none none
    pagination PaginationInfoLong false none Cursor-based pagination information to obtain more items

    JiraProjectIssueType

    {
      "id": 0,
      "name": "string",
      "isSubtask": true,
      "iconUrl": "string"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    name string true none none
    isSubtask boolean true none none
    iconUrl string false none none

    JiraProjectIssueTypesResponse

    {
      "data": [
        {
          "id": 0,
          "name": "string",
          "isSubtask": true,
          "iconUrl": "string"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    A response with a list of issue types for a Jira project.

    Properties

    Name Type Required Restrictions Description
    data [JiraProjectIssueType] true none none
    pagination PaginationInfoLong false none Cursor-based pagination information to obtain more items

    JiraProjectIssueField

    {
      "fieldId": "string",
      "name": "string",
      "key": "string",
      "required": true,
      "hasDefaultValue": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    fieldId string true none none
    name string true none none
    key string true none none
    required boolean true none none
    hasDefaultValue boolean true none none

    JiraProjectIssueFieldsResponse

    {
      "data": [
        {
          "fieldId": "string",
          "name": "string",
          "key": "string",
          "required": true,
          "hasDefaultValue": true
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    A response with a list of possible fields for a Jira project issue type.

    Properties

    Name Type Required Restrictions Description
    data [JiraProjectIssueField] true none none
    pagination PaginationInfoLong false none Cursor-based pagination information to obtain more items

    SlackIntegration

    {
      "organization_id": 867842577,
      "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
      "created_at": "2020-11-09T09:10:00Z",
      "updated_at": "2020-11-09T09:10:00Z"
    }
    
    

    Details of a Slack integration.

    Properties

    Name Type Required Restrictions Description
    organization_id integer(int64) true none Codacy organization ID
    webhook_url string true none Slack Incoming Webhook URL to post notifications to.
    created_at string(date-time) true none none
    updated_at string(date-time) true none none

    SlackIntegrationResponse

    {
      "data": {
        "organization_id": 867842577,
        "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX",
        "created_at": "2020-11-09T09:10:00Z",
        "updated_at": "2020-11-09T09:10:00Z"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data SlackIntegration true none Details of a Slack integration.

    SlackIntegrationRequest

    {
      "webhook_url": "https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX"
    }
    
    

    The request body to create or update the Slack integration of the organization.

    Properties

    Name Type Required Restrictions Description
    webhook_url string true none Slack Incoming Webhook URL to post notifications to.

    DiffResponse

    {
      "diff": "diff --git a/example.md b/example.md\nindex 9eeb703..777b981 100644\n--- a/example.md\n+++ b/example.md\n@@ -1 +1 @@\n-Edited line\n+Edited line (edit)\n"
    }
    
    

    Human-readable Git diff of a commit or pull request, matching the output format of the git diff command

    Properties

    Name Type Required Restrictions Description
    diff string true none none

    SrmPriority

    "Critical"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous Low
    anonymous Medium
    anonymous High
    anonymous Critical

    SrmStatus

    "Overdue"
    
    

    Properties

    Name Type Required Restrictions Description
    anonymous string false none none

    Enumerated Values

    Property Value
    anonymous Overdue
    anonymous OnTrack
    anonymous DueSoon
    anonymous ClosedOnTime
    anonymous ClosedLate
    anonymous Ignored

    PostReportSecurityItemsBody

    {
      "repositories": [
        "string"
      ],
      "priorities": [
        "Critical"
      ],
      "statuses": [
        "Overdue"
      ],
      "categories": [
        "string"
      ],
      "scanTypes": [
        "SAST",
        "SCA",
        "ContainerSCA",
        "Secrets",
        "IaC",
        "CICD",
        "License",
        "PenTesting",
        "DAST",
        "CSPM"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "searchText": "string"
    }
    
    

    Optional filters for exporting security items as CSV

    Properties

    Name Type Required Restrictions Description
    repositories [string] false none Repository names to filter by
    priorities [SrmPriority] false none Security issue priorities to filter by. See SrmPriority for valid values.
    statuses [SrmStatus] false none Security issue status to filter by. See SrmStatus for valid values.
    categories [string] false none Security categories to filter by. Use _other_ to search for
    issues that don't have a security category
    scanTypes [string] false none Scan types to filter by
    segments [integer] false none Segment IDs to filter by
    searchText string false none Text to search for in security items

    CommitDetails

    {
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ]
      },
      "repository": {
        "repositoryId": 0,
        "name": "codacy-eslint"
      }
    }
    
    

    Details of a commit.

    Properties

    Name Type Required Restrictions Description
    commit Commit true none none
    repository RepositoryIdentification true none Identifier and name of a repository using a coding standard

    RepositoryIdentificationV2

    {
      "repositoryId": 0,
      "name": "codacy-eslint",
      "provider": "gh",
      "organizationName": "codacy"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositoryId integer(int64) true none Identifier of the repository
    name string true none Name of the repository
    provider Provider true none Git provider hosting the repository
    organizationName string true none Name of the organization

    CommitDetailsV2

    {
      "commit": {
        "sha": "string",
        "id": 1,
        "commitTimestamp": "2019-05-07T14:29:13.43Z",
        "authorName": "string",
        "authorEmail": "string",
        "message": "string",
        "startedAnalysis": "2022-01-07T14:29:13.43Z",
        "endedAnalysis": "2022-01-07T14:29:13.43Z",
        "isMergeCommit": false,
        "gitHref": "https://github.com/codacy/tools-for-code-review-engineers/commit/370b160aaf0ed781d707d335aa1fde20cefeabf2",
        "parents": [
          "string"
        ]
      },
      "repository": {
        "repositoryId": 0,
        "name": "codacy-eslint",
        "provider": "gh",
        "organizationName": "codacy"
      }
    }
    
    

    Details of a commit.

    Properties

    Name Type Required Restrictions Description
    commit Commit true none none
    repository RepositoryIdentificationV2 true none none

    HeartbeatRequest

    {
      "wasActive": true
    }
    
    

    Request body to send a heartbeat

    Properties

    Name Type Required Restrictions Description
    wasActive boolean true none True if the user was active in the last heartbeat interval.

    HeartbeatResponse

    {
      "lastActivity": "2020-11-09T09:10:00Z",
      "idleExpiresIn": 300000,
      "absoluteExpiresIn": 28800000
    }
    
    

    Heartbeat response

    Properties

    Name Type Required Restrictions Description
    lastActivity string(date-time) true none Server time of user's last activity
    idleExpiresIn integer true none Time in milliseconds until the session expires due to inactivity
    absoluteExpiresIn integer true none Time in milliseconds until the session absolute timeout expires

    HasQuickfixSuggestionsResponse

    {
      "hasSuggestions": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    hasSuggestions boolean true none none

    QuickfixPatchResponse

    {
      "data": {
        "patch": "string"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data object true none none
    » patch string true none Base64 encoded patch file

    AuditActorRole

    "repositoryAdmin"
    
    

    Role of the audit actor.

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Role of the audit actor.

    Enumerated Values

    Property Value
    anonymous repositoryRead
    anonymous repositoryWrite
    anonymous repositoryAdmin
    anonymous organizationMember
    anonymous organizationManager
    anonymous organizationAdmin

    AuditActor

    {
      "email": "example@email.com",
      "role": "repositoryAdmin"
    }
    
    

    Actor of the audit event.

    Properties

    Name Type Required Restrictions Description
    email string true none Email of the audit actor.
    role AuditActorRole false none Role of the audit actor.

    AuditResultType

    "succeed"
    
    

    Result of the audit action.

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Result of the audit action.

    Enumerated Values

    Property Value
    anonymous succeed
    anonymous failed
    anonymous rejected

    AuditLog

    {
      "actor": {
        "email": "example@email.com",
        "role": "repositoryAdmin"
      },
      "action": "organizations.gatepolicies.repositories.apply",
      "result": "succeed",
      "timestamp": "2024-06-28T14:29:13.43Z",
      "source": "UI",
      "repositoryName": "",
      "description": "Apply gate policy",
      "details": "{\"link\":[\"repo-one\"],\"unlink\":[]}",
      "entityId": "123456"
    }
    
    

    Audit log of an event performed by a Codacy user who is part of an organization.

    Properties

    Name Type Required Restrictions Description
    actor AuditActor true none Actor of the audit event.
    action string true none Action performed in the event.
    result AuditResultType true none Result of the audit action.
    timestamp string(date-time) true none Timestamp when the event occurred.
    source string false none Source of the event. Possible values are 'UI' (Codacy app) or 'API' (Codacy API).
    repositoryName string false none Name of the repository, if the scope of the event action is a repository
    description string false none Description of the event.
    details object false none Details specific to the performed event action. Includes the JSON-format body of the performed request, and any additional information related to that action.
    entityId string false none Identifier of the entity involved in the event. For example, the identifier of the updated gate policy in an event with the action organizations.gatepolicies.update.

    SegmentsSyncStatusResponse

    {
      "status": "Syncing",
      "error": "Error message"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    status string true none Status of the segments synchronization process. Valid values are Syncing, Completed, Error, NotSynced.
    error string false none none

    SegmentsKeysResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        "group-id"
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [string] true none none

    SegmentKeyWithId

    {
      "id": 0,
      "key": "group"
    }
    
    

    Segment keys and id pair

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Segment id
    key string true none Segment key

    SegmentsKeysIdsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 0,
          "key": "group"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [SegmentKeyWithId] true none [Segment keys and id pair]

    SegmentEntryDeprecated

    {
      "id": 1,
      "name": "group-id",
      "value": "common libraries",
      "description": "Group of common libraries for projects"
    }
    
    

    Segment of an organization.

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Identifier of the segment
    name string true none Name of the segment. Specific to the organization.
    value string true none Value of the segment
    description string false none Description of the segment

    SegmentsResponseDeprecated

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 1,
          "name": "group-id",
          "value": "common libraries",
          "description": "Group of common libraries for projects"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [SegmentEntryDeprecated] true none [Segment of an organization.]

    SegmentEntry

    {
      "id": 1,
      "name": "group-id",
      "value": "common libraries",
      "description": "Group of common libraries for projects"
    }
    
    

    Segment of an organization.

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none Identifier of the segment
    name string true none Name of the segment. Specific to the organization.
    value string false none Value of the segment
    description string false none Description of the segment

    SegmentsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 1,
          "name": "group-id",
          "value": "common libraries",
          "description": "Group of common libraries for projects"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [SegmentEntry] true none [Segment of an organization.]

    DastTargetStatus

    {
      "status": "queued",
      "transitionedAt": "2024-06-28T14:29:13.43Z",
      "transitionReason": "Timed out.",
      "analysisId": "72aa9244-4281-460a-a4ee-25be58d2a1ab"
    }
    
    

    The current analysis status of a DAST target.

    Properties

    Name Type Required Restrictions Description
    status string true none The current analysis status of a DAST target.
    transitionedAt string(date-time) true none When the target transitioned to this status.
    transitionReason string false none An optional description of why the target transition to the current status.
    analysisId string(uuid) true none The DAST analysis id associated with this status.

    Enumerated Values

    Property Value
    status queued
    status running
    status successful
    status failed

    DastTargetType

    "webapp"
    
    

    Dast target request type

    Properties

    Name Type Required Restrictions Description
    anonymous string false none Dast target request type

    Enumerated Values

    Property Value
    anonymous webapp
    anonymous openapi
    anonymous graphql

    DastTarget

    {
      "id": 125904,
      "url": "https://api.domain.com/v1",
      "status": [
        {
          "status": "queued",
          "transitionedAt": "2024-06-28T14:29:13.43Z",
          "transitionReason": "Timed out.",
          "analysisId": "72aa9244-4281-460a-a4ee-25be58d2a1ab"
        }
      ],
      "targetType": "webapp",
      "apiDefinitionUrl": "string",
      "apiAuthHeaderNames": [
        "string"
      ]
    }
    
    

    A target for DAST analysis.

    Properties

    Name Type Required Restrictions Description
    id integer(int64) true none none
    url string(uri) true none none
    status [DastTargetStatus] true none The analysis status the target is in. A target can have multiple status at once.
    Currently, it can be both running and queued.
    This array can be empty if the target was never analysed.
    targetType DastTargetType false none Dast target request type
    apiDefinitionUrl string false none none
    apiAuthHeaderNames [string] false none none

    DastTargetsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 125904,
          "url": "https://api.domain.com/v1",
          "status": [
            {
              "status": "queued",
              "transitionedAt": "2024-06-28T14:29:13.43Z",
              "transitionReason": "Timed out.",
              "analysisId": "72aa9244-4281-460a-a4ee-25be58d2a1ab"
            }
          ],
          "targetType": "webapp",
          "apiDefinitionUrl": "string",
          "apiAuthHeaderNames": [
            "string"
          ]
        }
      ]
    }
    
    

    List of DAST targets.

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items
    data [DastTarget] true none [A target for DAST analysis.]

    CreateDastTargetBody

    {
      "url": "https://api.domain.com/v1",
      "targetType": "webapp",
      "apiDefinitionUrl": "https://api.domain.com/v1",
      "apiAuthHeaders": {
        "property1": "string",
        "property2": "string"
      }
    }
    
    

    body to create a DAST target

    Properties

    Name Type Required Restrictions Description
    url string(uri) true none none
    targetType DastTargetType false none Dast target request type
    apiDefinitionUrl string false none none
    apiAuthHeaders object false none none
    » additionalProperties string false none none

    DastTargetResponse

    {
      "data": {
        "id": 125904,
        "url": "https://api.domain.com/v1",
        "status": [
          {
            "status": "queued",
            "transitionedAt": "2024-06-28T14:29:13.43Z",
            "transitionReason": "Timed out.",
            "analysisId": "72aa9244-4281-460a-a4ee-25be58d2a1ab"
          }
        ],
        "targetType": "webapp",
        "apiDefinitionUrl": "string",
        "apiAuthHeaderNames": [
          "string"
        ]
      }
    }
    
    

    A response with a target for DAST analysis.

    Properties

    Name Type Required Restrictions Description
    data DastTarget true none A target for DAST analysis.

    AnalyzeDastTargetResponse

    {
      "data": {
        "analysisId": "75d1b4cf-ef70-4be8-93ca-e9d21c7dca31"
      }
    }
    
    

    A response with the analysis ID that was queued.

    Properties

    Name Type Required Restrictions Description
    data object true none none
    » analysisId string(uuid) true none none

    TooManyRequests

    {
      "message": "string",
      "innerMessage": "string",
      "actions": [
        {
          "name": "Check our documentation",
          "url": "https://docs.codacy.com/faq/troubleshooting/why-isnt-my-public-repository-being-analyzed/"
        }
      ],
      "error": "TooManyRequests"
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous ApiError false none none

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » error string true none none

    SLAConfig

    {
      "criticalSla": 0,
      "highSla": 0,
      "mediumSla": 0,
      "lowSla": 0
    }
    
    

    SLA configuration of an organization.

    Properties

    Name Type Required Restrictions Description
    criticalSla integer(int32) true none Amount of time, in days, to handle critical severity security issues.
    highSla integer(int32) true none Amount of time, in days, to handle high severity security issues.
    mediumSla integer(int32) true none Amount of time, in days, to handle medium severity security issues.
    lowSla integer(int32) true none Amount of time, in days, to handle low severity security issues.

    SLAConfigResponse

    {
      "slaConfig": {
        "criticalSla": 0,
        "highSla": 0,
        "mediumSla": 0,
        "lowSla": 0
      }
    }
    
    

    Response body for getting SLA configuration for a given organization.

    Properties

    Name Type Required Restrictions Description
    slaConfig SLAConfig true none SLA configuration of an organization.

    SLAConfigBody

    {
      "slaConfig": {
        "criticalSla": 0,
        "highSla": 0,
        "mediumSla": 0,
        "lowSla": 0
      }
    }
    
    

    Request body for updating an SLA configuration.

    Properties

    Name Type Required Restrictions Description
    slaConfig SLAConfig true none SLA configuration of an organization.

    EnterpriseOrganization

    {
      "id": 42,
      "remoteId": "group-id",
      "name": "my-enterprise",
      "displayName": "My Enterprise",
      "userRole": "Owner",
      "url": "https://github.com/enterprises/my-enterprise",
      "avatar": "string"
    }
    
    

    Organization in an enterprise

    Properties

    Name Type Required Restrictions Description
    id integer(int64) false none Internal Codacy organization id
    remoteId string true none Organization ID in provider
    name string true none Organization name.
    displayName string false none Organization display name.
    userRole string false none User role in the organization.
    url string true none Organization URL
    avatar string true none Organization avatar URL

    Enumerated Values

    Property Value
    userRole admin
    userRole member

    EnterpriseOrganizationsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "id": 42,
          "remoteId": "group-id",
          "name": "my-enterprise",
          "displayName": "My Enterprise",
          "userRole": "Owner",
          "url": "https://github.com/enterprises/my-enterprise",
          "avatar": "string"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [EnterpriseOrganization] true none [Organization in an enterprise]

    EnterpriseEntity

    {
      "name": "string",
      "displayName": "string",
      "userRole": "admin",
      "url": "string",
      "avatarUrl": "string",
      "provider": "gh"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    name string true none Enterprise name. This is used as stable Enterprise Identifier
    displayName string true none Enterprise remote name. This is not Enterprise Identifier
    userRole string true none none
    url string true none none
    avatarUrl string true none none
    provider Provider true none Git provider hosting the repository

    Enumerated Values

    Property Value
    userRole admin
    userRole member

    EnterpriseListResponse

    {
      "data": [
        {
          "name": "string",
          "displayName": "string",
          "userRole": "admin",
          "url": "string",
          "avatarUrl": "string",
          "provider": "gh"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [EnterpriseEntity] true none none
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items

    GetEnterpriseResponse

    {
      "data": {
        "name": "string",
        "displayName": "string",
        "userRole": "admin",
        "url": "string",
        "avatarUrl": "string",
        "provider": "gh"
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data EnterpriseEntity true none none

    Seat

    {
      "organizationsIds": [
        0
      ],
      "emails": [
        "string"
      ],
      "lastAnalysis": "2019-08-24T14:15:22Z",
      "createdAt": "2019-08-24T14:15:22Z",
      "lastCommitId": 0,
      "providerId": "string",
      "providerLogin": "string",
      "isActive": true
    }
    
    

    Properties

    Name Type Required Restrictions Description
    organizationsIds [integer] true none none
    emails [string] true none none
    lastAnalysis string(date-time) false none none
    createdAt string(date-time) true none none
    lastCommitId integer(int64) false none none
    providerId string false none none
    providerLogin string false none none
    isActive boolean true none none

    SeatsResponse

    {
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      },
      "data": [
        {
          "organizationsIds": [
            0
          ],
          "emails": [
            "string"
          ],
          "lastAnalysis": "2019-08-24T14:15:22Z",
          "createdAt": "2019-08-24T14:15:22Z",
          "lastCommitId": 0,
          "providerId": "string",
          "providerLogin": "string",
          "isActive": true
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    pagination PaginationInfo false none Cursor-based pagination information to obtain more items
    data [Seat] true none none

    CodacyPaymentPlans

    {
      "defaultYearlyPaidCode": "string",
      "defaultMonthlyPaidCode": "string",
      "trialCode": "string",
      "openSourceCode": "string",
      "defaultYearlyPaidPlan": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true,
        "alternatePeriodCode": "team-yearly"
      },
      "defaultMonthlyPaidPlan": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true,
        "alternatePeriodCode": "team-yearly"
      },
      "trialPlan": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true,
        "alternatePeriodCode": "team-yearly"
      },
      "openSourcePlan": {
        "isPremium": true,
        "model": "Auto",
        "code": "trial",
        "monthly": true,
        "price": 1000,
        "pricedPerUser": true,
        "alternatePeriodCode": "team-yearly"
      },
      "plans": [
        {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    defaultYearlyPaidCode string true none none
    defaultMonthlyPaidCode string true none none
    trialCode string true none none
    openSourceCode string true none none
    defaultYearlyPaidPlan PaymentPlan true none none
    defaultMonthlyPaidPlan PaymentPlan true none none
    trialPlan PaymentPlan true none none
    openSourcePlan PaymentPlan true none none
    plans [PaymentPlan] true none none

    PaymentPlansResponse

    {
      "data": {
        "defaultYearlyPaidCode": "string",
        "defaultMonthlyPaidCode": "string",
        "trialCode": "string",
        "openSourceCode": "string",
        "defaultYearlyPaidPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "defaultMonthlyPaidPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "trialPlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "openSourcePlan": {
          "isPremium": true,
          "model": "Auto",
          "code": "trial",
          "monthly": true,
          "price": 1000,
          "pricedPerUser": true,
          "alternatePeriodCode": "team-yearly"
        },
        "plans": [
          {
            "isPremium": true,
            "model": "Auto",
            "code": "trial",
            "monthly": true,
            "price": 1000,
            "pricedPerUser": true,
            "alternatePeriodCode": "team-yearly"
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data CodacyPaymentPlans true none none

    OssfScorecardUrlRequest

    {
      "url": "https://www.github.com/codacy/codacy",
      "purl": "maven:ch.qos.logback:logback-classic:1.2.3"
    }
    
    

    Request body to fetch OSSF Scorecard information by URL.

    Properties

    Name Type Required Restrictions Description
    url string false none The URL of the repository to fetch OSSF Scorecard information for.
    purl string false none The PURL of the dependency to fetch OSSF Scorecard information for.

    OssfScorecardDocumentation

    {
      "url": "https://github.com/ossf/scorecard/blob/40576783fda6698350fcbbeaea760ff827433034/docs/checks.md#code-review",
      "short": "Determines if the project requires human code review before pull requests (aka merge requests) are merged."
    }
    
    

    OSSF scorecard check documentation for a given repository.

    Properties

    Name Type Required Restrictions Description
    url string true none The URL of the documentation.
    short string true none The short documentation of the check.

    OssfScorecardSeverity

    "Critical"
    
    

    The severity of a check, according to OSSF Scorecard. (https://github.com/ossf/scorecard?tab=readme-ov-file#scorecard-checks)

    Properties

    Name Type Required Restrictions Description
    anonymous string false none The severity of a check, according to OSSF Scorecard. (https://github.com/ossf/scorecard?tab=readme-ov-file#scorecard-checks)

    Enumerated Values

    Property Value
    anonymous Critical
    anonymous High
    anonymous Medium
    anonymous Low
    anonymous Unknown

    OssfScorecardCheck

    {
      "name": "string",
      "score": 0.1,
      "reason": "string",
      "details": [
        "string"
      ],
      "documentation": {
        "url": "https://github.com/ossf/scorecard/blob/40576783fda6698350fcbbeaea760ff827433034/docs/checks.md#code-review",
        "short": "Determines if the project requires human code review before pull requests (aka merge requests) are merged."
      },
      "severity": "Critical"
    }
    
    

    An OSSF Scorecard check.

    Properties

    Name Type Required Restrictions Description
    name string true none The name of the check.
    score number(float) true none The score of the check.
    reason string true none The reason for the score.
    details [string] true none none
    documentation OssfScorecardDocumentation true none OSSF scorecard check documentation for a given repository.
    severity OssfScorecardSeverity true none The severity of a check, according to OSSF Scorecard. (https://github.com/ossf/scorecard?tab=readme-ov-file#scorecard-checks)

    OssfScorecard

    {
      "score": 0.1,
      "date": "string",
      "checks": [
        {
          "name": "string",
          "score": 0.1,
          "reason": "string",
          "details": [
            "string"
          ],
          "documentation": {
            "url": "https://github.com/ossf/scorecard/blob/40576783fda6698350fcbbeaea760ff827433034/docs/checks.md#code-review",
            "short": "Determines if the project requires human code review before pull requests (aka merge requests) are merged."
          },
          "severity": "Critical"
        }
      ],
      "failingCheckCount": 0,
      "passingCheckCount": 0
    }
    
    

    OSSF Scorecard information for a repository.

    Properties

    Name Type Required Restrictions Description
    score number(float) true none The overall OSSF Scorecard score.
    date string true none The date of the scorecard.
    checks [OssfScorecardCheck] true none The list of OSSF Scorecard checks.
    failingCheckCount integer(int32) true none The number of failing checks.
    passingCheckCount integer(int32) true none The number of passing checks.

    OssfScorecardResponse

    {
      "data": {
        "score": 0.1,
        "date": "string",
        "checks": [
          {
            "name": "string",
            "score": 0.1,
            "reason": "string",
            "details": [
              "string"
            ],
            "documentation": {
              "url": "https://github.com/ossf/scorecard/blob/40576783fda6698350fcbbeaea760ff827433034/docs/checks.md#code-review",
              "short": "Determines if the project requires human code review before pull requests (aka merge requests) are merged."
            },
            "severity": "Critical"
          }
        ],
        "failingCheckCount": 0,
        "passingCheckCount": 0
      }
    }
    
    

    Response body to fetch OSSF Scorecard information.

    Properties

    Name Type Required Restrictions Description
    data OssfScorecard true none OSSF Scorecard information for a repository.

    PatternOverview

    {
      "patternId": "ai_dependency",
      "count": 5
    }
    
    

    Properties

    Name Type Required Restrictions Description
    patternId string true none Identifier for the AI usage pattern (e.g. ai_dependency, ai_model_usage, ai_env_endpoint, ai_key)
    count integer(int32) true none Number of inventory entries matching this pattern

    ProviderOverview

    {
      "provider": "openai",
      "itemsCount": 12,
      "repositoriesCount": 3,
      "patterns": [
        {
          "patternId": "ai_dependency",
          "count": 5
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    provider string true none Normalized provider slug (e.g. anthropic, openai). unknown for entries without a recognized provider
    itemsCount integer(int32) true none Total number of inventory entries for this provider
    repositoriesCount integer(int32) true none Number of distinct repositories with findings for this provider
    patterns [PatternOverview] true none Per-pattern breakdown, sorted by count descending

    AiInventoryOverview

    {
      "totalProviders": 3,
      "providers": [
        {
          "provider": "openai",
          "itemsCount": 12,
          "repositoriesCount": 3,
          "patterns": [
            {
              "patternId": "ai_dependency",
              "count": 5
            }
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    totalProviders integer(int32) true none Total number of distinct providers detected
    providers [ProviderOverview] true none Per-provider overview, sorted by itemsCount descending

    AiInventoryOverviewResponse

    {
      "data": {
        "totalProviders": 3,
        "providers": [
          {
            "provider": "openai",
            "itemsCount": 12,
            "repositoriesCount": 3,
            "patterns": [
              {
                "patternId": "ai_dependency",
                "count": 5
              }
            ]
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data AiInventoryOverview true none none

    SearchAiInventoryResources

    {
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternId": [
        "string"
      ]
    }
    
    

    Request body to filter AI inventory resources

    Properties

    Name Type Required Restrictions Description
    segments [integer] false none Segment IDs to filter by
    repositories [string] false none Repository names to filter by
    vendors [string] false none AI vendor slugs to filter by (e.g. openai, anthropic)
    patternId [string] false none AI usage pattern identifiers to filter by (e.g. ai_dependency, ai_model_usage, ai_env_endpoint, ai_key) A.K.A resource type

    AiInventoryResourceIdentity

    {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai"
    }
    
    

    Marker, pattern, and vendor identifying an AI inventory resource

    Properties

    Name Type Required Restrictions Description
    marker string true none Marker identifying the AI resource (e.g. model id, package name)
    patternId string true none Identifier for the AI usage pattern (e.g. ai_dependency, ai_model_usage, ai_env_endpoint, ai_key). A.K.A resource type.
    vendor string true none AI vendor slug

    AiInventoryResourceItem

    {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai",
      "repositoriesCount": 3,
      "referencesCount": 11
    }
    
    

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous AiInventoryResourceIdentity false none Marker, pattern, and vendor identifying an AI inventory resource

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » repositoriesCount integer(int32) true none Number of distinct repositories containing this resource
    » referencesCount integer(int32) true none Total number of reference entries for this resource

    AiInventoryResourcesResponse

    {
      "data": [
        {
          "marker": "gpt-4o-2024-05-13",
          "patternId": "ai_model_usage",
          "vendor": "openai",
          "repositoriesCount": 3,
          "referencesCount": 11
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryResourceItem] true none none
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    AiRepositorySummary

    {
      "repositoryId": 45738,
      "name": "my-service",
      "owner": "codacy"
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositoryId integer(int64) false none Codacy identifier for this repository.
    name string true none Name of the repository
    owner string true none Owner of the repository

    AiRiskRepositoriesResponse

    {
      "data": [
        {
          "repositoryId": 45738,
          "name": "my-service",
          "owner": "codacy"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    List of repositories that have AI inventory resources.

    Properties

    Name Type Required Restrictions Description
    data [AiRepositorySummary] true none none
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    SearchAiRiskRepositories

    {
      "segments": [
        1,
        2,
        3
      ]
    }
    
    

    Request body to filter AI risk repositories

    Properties

    Name Type Required Restrictions Description
    segments [integer] false none Segment IDs to filter by

    SearchAiInventoryResourceRepositories

    {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "vendors": [
        "string"
      ],
      "patternIds": [
        "string"
      ]
    }
    
    

    Required filters identifying the inventory resource when listing repositories. Values must correspond to a resource from the organization inventory

    Properties

    allOf

    Name Type Required Restrictions Description
    anonymous AiInventoryResourceIdentity false none Marker, pattern, and vendor identifying an AI inventory resource

    and

    Name Type Required Restrictions Description
    anonymous object false none none
    » segments [integer] false none Segment IDs to filter by
    » repositories [string] false none Repository names to filter by
    » vendors [string] false none AI vendor slugs to filter by (e.g. openai, anthropic)
    » patternIds [string] false none AI usage pattern identifiers to filter by (e.g. ai_dependency, ai_model_usage, ai_env_endpoint, ai_key).
    Distinct from required patternId on the resource identity

    AiInventoryRepository

    {
      "repositoryName": "my-service",
      "filesCount": 11,
      "referencesCount": 5
    }
    
    

    Properties

    Name Type Required Restrictions Description
    repositoryName string true none Name of the repository
    filesCount integer(int32) true none Number of distinct files in this repository containing the resource
    referencesCount integer(int32) true none Total number of reference entries in this repository for the resource

    AiInventoryRepositoriesResponse

    {
      "data": [
        {
          "repositoryName": "my-service",
          "filesCount": 11,
          "referencesCount": 5
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryRepository] true none none
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    SearchAiInventoryFiles

    {
      "marker": "gpt-4o-2024-05-13",
      "patternId": "ai_model_usage",
      "vendor": "openai"
    }
    
    

    Request body to filter AI inventory files

    Properties

    None

    AiInventoryFileReference

    {
      "filePath": "src/ai/client.py",
      "lineNumbers": [
        14,
        27,
        85
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    filePath string true none Relative path of the file within the repository
    lineNumbers [integer] true none Line numbers where the resource is referenced

    AiInventoryFilesResponse

    {
      "data": [
        {
          "filePath": "src/ai/client.py",
          "lineNumbers": [
            14,
            27,
            85
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryFileReference] true none none
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    AiInventoryFilter

    {
      "inventoryItemTypes": [
        "tool"
      ],
      "aiProvider": "Claude Code",
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ],
      "marker": "Generated with [Claude Code]"
    }
    
    

    Common filters for AI inventory queries

    Properties

    Name Type Required Restrictions Description
    inventoryItemTypes [string] false none Inventory item types to filter by (e.g. tool, asset)
    aiProvider string false none AI provider name to filter by
    segments [integer] false none Segment IDs to filter by
    repositories [string] false none Repository names to filter by
    categoryGroups [string] false none Inventory category groups to filter by (e.g. workflows, usage, mcps).
    Category groups are the higher-level buckets that group individual categories
    categories [string] false none Inventory categories to filter by (e.g. code_marker, commits, branches, settings, instructions).
    Available categories grouped by category group can be retrieved from the categories endpoint
    marker string false none Marker text to filter by. Typically used when drilling down from a marker summary
    to list its repositories or locations

    CategoryGroupCount

    {
      "categoryGroup": "usage",
      "repositoriesCount": 12,
      "count": 4
    }
    
    

    Counts for a given categoryGroup

    Properties

    Name Type Required Restrictions Description
    categoryGroup string true none Inventory category group (e.g. workflows, usage, mcps)
    repositoriesCount integer(int32) false none Number of distinct repositories with items in this category group
    count integer(int32) true none Number of distinct (category, marker) pairs in this category group

    AiInventoryProviderSummary

    {
      "aiProvider": "Claude Code",
      "resourcesCount": 12,
      "referencesCount": 120,
      "repositoriesCount": 12,
      "categoryGroupBreakdown": [
        {
          "categoryGroup": "usage",
          "repositoriesCount": 12,
          "count": 4
        }
      ]
    }
    
    

    Summary of AI inventory for a provider. resources are distinct (categoryGroup, category, marker) groupings; references are individual inventory item findings; repositories are the distinct repositories where they occur

    Properties

    Name Type Required Restrictions Description
    aiProvider string true none AI provider name
    resourcesCount integer(int32) true none Number of distinct inventory resources for this provider.
    A resource is a (categoryGroup, category, marker) grouping
    referencesCount integer(int32) true none Total number of inventory item references (individual findings) for this provider
    repositoriesCount integer(int32) true none Number of distinct repositories where items for this provider occur
    categoryGroupBreakdown [CategoryGroupCount] true none Per-category-group repository counts (e.g. how many repositories have
    workflows items, how many have usage items)

    AiInventoryProviderSummariesResponse

    {
      "data": [
        {
          "aiProvider": "Claude Code",
          "resourcesCount": 12,
          "referencesCount": 120,
          "repositoriesCount": 12,
          "categoryGroupBreakdown": [
            {
              "categoryGroup": "usage",
              "repositoriesCount": 12,
              "count": 4
            }
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryProviderSummary] true none [Summary of AI inventory for a provider. resources are distinct
    (categoryGroup, category, marker) groupings; references are individual
    inventory item findings; repositories are the distinct repositories where they occur
    ]
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    GetAiInventoryProviderSummaryBody

    {
      "aiProvider": "Claude Code",
      "inventoryItemTypes": [
        "tool"
      ],
      "segments": [
        1,
        2,
        3
      ],
      "repositories": [
        "string"
      ],
      "categoryGroups": [
        "usage"
      ],
      "categories": [
        "code_marker"
      ]
    }
    
    

    Required AI provider identity plus optional filters to scope the returned summary counts. The caller must name the provider to summarize

    Properties

    Name Type Required Restrictions Description
    aiProvider string true none AI provider name to return the summary for
    inventoryItemTypes [string] false none Inventory item types to filter by (e.g. tool, asset)
    segments [integer] false none Segment IDs to filter by
    repositories [string] false none Repository names to filter by
    categoryGroups [string] false none Inventory category groups to filter by (e.g. workflows, usage, mcps).
    Category groups are the higher-level buckets that group individual categories
    categories [string] false none Inventory categories to filter by (e.g. code_marker, commits, branches, settings, instructions).
    Available categories grouped by category group can be retrieved from the categories endpoint

    AiInventoryProviderSummaryResponse

    {
      "data": {
        "aiProvider": "Claude Code",
        "resourcesCount": 12,
        "referencesCount": 120,
        "repositoriesCount": 12,
        "categoryGroupBreakdown": [
          {
            "categoryGroup": "usage",
            "repositoriesCount": 12,
            "count": 4
          }
        ]
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data AiInventoryProviderSummary true none Summary of AI inventory for a provider. resources are distinct
    (categoryGroup, category, marker) groupings; references are individual
    inventory item findings; repositories are the distinct repositories where they occur

    AiInventoryMarkerSummary

    {
      "categoryGroup": "usage",
      "category": "code_marker",
      "marker": "Generated with [Claude Code]",
      "referencesCount": 4,
      "repositoriesCount": 3
    }
    
    

    Summary for a distinct inventory resource — a (categoryGroup, category, marker) grouping. references are the individual findings across repositories for this grouping; repositories are the distinct repositories containing them

    Properties

    Name Type Required Restrictions Description
    categoryGroup string true none Category group the marker belongs to (e.g. usage, workflows, mcps)
    category string true none Category the marker belongs to within its category group (e.g. code_marker, commits)
    marker string true none Marker text identifying the inventory item (e.g. a generated-by string,
    a package name, a model ID)
    referencesCount integer(int32) true none Total number of references (individual findings) for this marker
    repositoriesCount integer(int32) true none Number of distinct repositories containing this marker

    AiInventoryMarkerSummariesResponse

    {
      "data": [
        {
          "categoryGroup": "usage",
          "category": "code_marker",
          "marker": "Generated with [Claude Code]",
          "referencesCount": 4,
          "repositoriesCount": 3
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryMarkerSummary] true none [Summary for a distinct inventory resource — a (categoryGroup, category, marker) grouping.
    references are the individual findings across repositories for this grouping;
    repositories are the distinct repositories containing them
    ]
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    AiInventoryRepositoryInfo

    {
      "name": "codacy-website",
      "owner": "codacy"
    }
    
    

    A repository that has AI inventory items

    Properties

    Name Type Required Restrictions Description
    name string true none Name of the repository
    owner string true none Owner of the repository

    AiInventoryRepositoryListResponse

    {
      "data": [
        {
          "name": "codacy-website",
          "owner": "codacy"
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryRepositoryInfo] true none [A repository that has AI inventory items]
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    AiInventoryRepositorySummary

    {
      "repositoryName": "my-service",
      "locationsCount": 11,
      "referencesCount": 11
    }
    
    

    Summary of AI inventory for a repository. locations are the distinct locations containing matching inventory items; references are the individual findings across those locations

    Properties

    Name Type Required Restrictions Description
    repositoryName string true none Name of the repository
    locationsCount integer(int32) true none Number of distinct locations in this repository containing matching inventory items
    referencesCount integer(int32) true none Total number of inventory item references in this repository

    AiInventoryRepositorySummariesResponse

    {
      "data": [
        {
          "repositoryName": "my-service",
          "locationsCount": 11,
          "referencesCount": 11
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryRepositorySummary] true none [Summary of AI inventory for a repository.
    locations are the distinct locations containing matching inventory items;
    references are the individual findings across those locations
    ]
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    AiInventoryLocationSummary

    {
      "location": "repo-file:src/ai/client.py",
      "regions": [
        "line:10"
      ]
    }
    
    

    Summary for a distinct location, describing where an AI inventory item is referenced. The caller scopes which items are included via the request filter

    Properties

    Name Type Required Restrictions Description
    location string true none Location URI (e.g. repo-file:src/somefile.py, repo-sha:abc123)
    regions [string] true none Regions within the location relevant to the inventory item.
    Each region is a URI with its own kind prefix (e.g. line:10).
    May be empty when the item has no region-level granularity

    AiInventoryLocationSummariesResponse

    {
      "data": [
        {
          "location": "repo-file:src/ai/client.py",
          "regions": [
            "line:10"
          ]
        }
      ],
      "pagination": {
        "cursor": "string",
        "limit": 0,
        "total": 0
      }
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryLocationSummary] true none [Summary for a distinct location, describing where an AI inventory item is referenced.
    The caller scopes which items are included via the request filter
    ]
    pagination PaginationInfo true none Cursor-based pagination information to obtain more items

    AiInventoryCategoryGroup

    {
      "categoryGroup": "usage",
      "categories": [
        "code_marker",
        "commits",
        "branches"
      ]
    }
    
    

    A category group with its child categories

    Properties

    Name Type Required Restrictions Description
    categoryGroup string true none Category group name (e.g. workflows, usage, mcps)
    categories [string] true none Categories belonging to this group

    AiInventoryCategoriesResponse

    {
      "data": [
        {
          "categoryGroup": "usage",
          "categories": [
            "code_marker",
            "commits",
            "branches"
          ]
        }
      ]
    }
    
    

    Properties

    Name Type Required Restrictions Description
    data [AiInventoryCategoryGroup] true none [A category group with its child categories]