Chilkat Online Tools

Delphi (ActiveX) / Salesforce Platform APIs / Limits

Back to Collection Items

var

begin
http.AuthToken := '<access_token>';success := http.QuickGetSb('https://domain.com/services/data/v{{version}}/limits',sbResponseBody.ControlInterface);jResp.LoadSb(sbResponseBody.ControlInterface);jResp.EmitCompact := 0;

Curl Command

curl -X GET
	-H "Authorization: Bearer <access_token>"
https://domain.com/services/data/v{{version}}/limits

Postman Collection Item JSON

{
  "name": "Limits",
  "event": [
    {
      "listen": "test",
      "script": {
        "exec": [
          "// Visualizer that renders a Chart.js graph with the Salesforce API limits consumption",
          "const template = `<script src=\"https://cdn.jsdelivr.net/npm/chart.js@3.5.1/dist/chart.min.js\"></script>",
          "<canvas id=\"myChart\" width=\"400\" height=\"800\"></canvas>",
          "<script>",
          "pm.getData((err, chartData) => {",
          "    const getTooltipFooter = (tooltipItems) => {",
          "        const index = tooltipItems[0].dataIndex;",
          "        return 'Consumed '+ chartData.consumed[index] +' out of '+ chartData.max[index];",
          "    };",
          "",
          "    const ctx = document.getElementById('myChart').getContext('2d');",
          "    const myChart = new Chart(ctx, {",
          "        type: 'bar',",
          "        data: {",
          "            labels: chartData.labels,",
          "            datasets: [",
          "                {",
          "                    label: '% Consumed',",
          "                    data: chartData.consumedPercent,",
          "                    backgroundColor: 'rgba(255, 99, 132, 1)',",
          "                    borderColor: 'rgba(255, 99, 132, 1)',",
          "                    borderWidth: 1",
          "                }",
          "            ]",
          "        },",
          "        options: {",
          "            indexAxis: 'y',",
          "            responsive: true,",
          "            scales: {",
          "                x: {",
          "                    beginAtZero: true,",
          "                    ticks: {",
          "                        callback: (value, index, values) => value + '%'",
          "                    },",
          "                    max: 100",
          "                }",
          "            },",
          "            interaction: {",
          "                intersect: false,",
          "                mode: 'y'",
          "            },",
          "            plugins: {",
          "                tooltip: {",
          "                    callbacks: {",
          "                        footer: getTooltipFooter,",
          "                        label: (tooltipItems) => tooltipItems.raw + '%'",
          "                    }",
          "                },",
          "                title: {",
          "                    display: true,",
          "                    text: 'API Limits Consumption'",
          "                },",
          "                legend: {",
          "                    display: false",
          "                }",
          "            }",
          "        }",
          "    });",
          "});",
          "</script>`;",
          "",
          "// Format API response into chart data",
          "const responseJson = pm.response.json();",
          "const chartData = {",
          "    labels: [],",
          "    consumed: [],",
          "    consumedPercent: [],",
          "    max: []",
          "};",
          "Object.keys(responseJson).forEach((limitName) => {",
          "    const { Max, Remaining } = responseJson[limitName];",
          "    const consumed = Max - Remaining;",
          "    let percent = 0;",
          "    if (Max !== 0) {",
          "        percent = (consumed / Max) * 100;",
          "        percent = percent",
          "            .toString()",
          "            .match(/^-?\\d+(?:\\.\\d{0,2})?/)[0];",
          "    }",
          "    chartData.labels.push(limitName);",
          "    chartData.consumed.push(consumed);",
          "    chartData.consumedPercent.push(percent);",
          "    chartData.max.push(Max);",
          "});",
          "// Render vizualizer",
          "pm.visualizer.set(template, chartData);"
        ],
        "type": "text/javascript",
        "packages": {}
      }
    }
  ],
  "request": {
    "method": "GET",
    "header": [
    ],
    "url": {
      "raw": "{{_endpoint}}/services/data/v{{version}}/limits",
      "host": [
        "{{_endpoint}}"
      ],
      "path": [
        "services",
        "data",
        "v{{version}}",
        "limits"
      ]
    },
    "description": "Lists information about limits in your org. For each limit, this resource returns the maximum allocation and the remaining allocation based on usage. This resource is available in REST API version 29.0 and later for API users with the View Setup and Configuration permission"
  },
  "response": [
    {
      "name": "Limits",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "{{_endpoint}}/services/data/v{{version}}/limits",
          "host": [
            "{{_endpoint}}"
          ],
          "path": [
            "services",
            "data",
            "v{{version}}",
            "limits"
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Date",
          "value": "Tue, 26 Sep 2023 13:19:11 GMT"
        },
        {
          "key": "Strict-Transport-Security",
          "value": "max-age=63072000; includeSubDomains"
        },
        {
          "key": "X-Content-Type-Options",
          "value": "nosniff"
        },
        {
          "key": "X-XSS-Protection",
          "value": "1; mode=block"
        },
        {
          "key": "X-Robots-Tag",
          "value": "none"
        },
        {
          "key": "Cache-Control",
          "value": "no-cache,must-revalidate,max-age=0,no-store,private"
        },
        {
          "key": "Sforce-Limit-Info",
          "value": "api-usage=1/15000"
        },
        {
          "key": "Content-Type",
          "value": "application/json;charset=UTF-8"
        },
        {
          "key": "Vary",
          "value": "Accept-Encoding"
        },
        {
          "key": "Content-Encoding",
          "value": "gzip"
        },
        {
          "key": "Transfer-Encoding",
          "value": "chunked"
        }
      ],
      "cookie": [
      ],
      "body": "{\n    \"ActiveScratchOrgs\": {\n        \"Max\": 3,\n        \"Remaining\": 3\n    },\n    \"AnalyticsExternalDataSizeMB\": {\n        \"Max\": 40960,\n        \"Remaining\": 40960\n    },\n    \"ConcurrentAsyncGetReportInstances\": {\n        \"Max\": 200,\n        \"Remaining\": 200\n    },\n    \"ConcurrentEinsteinDataInsightsStoryCreation\": {\n        \"Max\": 5,\n        \"Remaining\": 5\n    },\n    \"ConcurrentEinsteinDiscoveryStoryCreation\": {\n        \"Max\": 2,\n        \"Remaining\": 2\n    },\n    \"ConcurrentSyncReportRuns\": {\n        \"Max\": 20,\n        \"Remaining\": 20\n    },\n    \"DailyAnalyticsDataflowJobExecutions\": {\n        \"Max\": 60,\n        \"Remaining\": 60\n    },\n    \"DailyAnalyticsUploadedFilesSizeMB\": {\n        \"Max\": 51200,\n        \"Remaining\": 51200\n    },\n    \"DailyApiRequests\": {\n        \"Max\": 15000,\n        \"Remaining\": 14999\n    },\n    \"DailyAsyncApexExecutions\": {\n        \"Max\": 250000,\n        \"Remaining\": 250000\n    },\n    \"DailyAsyncApexTests\": {\n        \"Max\": 540,\n        \"Remaining\": 540\n    },\n    \"DailyBulkApiBatches\": {\n        \"Max\": 15000,\n        \"Remaining\": 15000\n    },\n    \"DailyBulkV2QueryFileStorageMB\": {\n        \"Max\": 976562,\n        \"Remaining\": 976562\n    },\n    \"DailyBulkV2QueryJobs\": {\n        \"Max\": 10000,\n        \"Remaining\": 10000\n    },\n    \"DailyDeliveredPlatformEvents\": {\n        \"Max\": 10000,\n        \"Remaining\": 10000\n    },\n    \"DailyDurableGenericStreamingApiEvents\": {\n        \"Max\": 10000,\n        \"Remaining\": 10000\n    },\n    \"DailyDurableStreamingApiEvents\": {\n        \"Max\": 10000,\n        \"Remaining\": 10000\n    },\n    \"DailyEinsteinDataInsightsStoryCreation\": {\n        \"Max\": 1000,\n        \"Remaining\": 1000\n    },\n    \"DailyEinsteinDiscoveryOptimizationJobRuns\": {\n        \"Max\": 25,\n        \"Remaining\": 25\n    },\n    \"DailyEinsteinDiscoveryPredictAPICalls\": {\n        \"Max\": 50000,\n        \"Remaining\": 50000\n    },\n    \"DailyEinsteinDiscoveryPredictionsByCDC\": {\n        \"Max\": 500000,\n        \"Remaining\": 500000\n    },\n    \"DailyEinsteinDiscoveryStoryCreation\": {\n        \"Max\": 100,\n        \"Remaining\": 100\n    },\n    \"DailyFunctionsApiCallLimit\": {\n        \"Max\": 50000,\n        \"Remaining\": 50000\n    },\n    \"DailyGenericStreamingApiEvents\": {\n        \"Max\": 10000,\n        \"Remaining\": 10000\n    },\n    \"DailyScratchOrgs\": {\n        \"Max\": 6,\n        \"Remaining\": 6\n    },\n    \"DailyStandardVolumePlatformEvents\": {\n        \"Max\": 10000,\n        \"Remaining\": 10000\n    },\n    \"DailyStreamingApiEvents\": {\n        \"Max\": 10000,\n        \"Remaining\": 10000\n    },\n    \"DailyWorkflowEmails\": {\n        \"Max\": 405,\n        \"Remaining\": 405\n    },\n    \"DataStorageMB\": {\n        \"Max\": 5,\n        \"Remaining\": 5\n    },\n    \"DurableStreamingApiConcurrentClients\": {\n        \"Max\": 20,\n        \"Remaining\": 20\n    },\n    \"FileStorageMB\": {\n        \"Max\": 20,\n        \"Remaining\": 20\n    },\n    \"HourlyAsyncReportRuns\": {\n        \"Max\": 1200,\n        \"Remaining\": 1200\n    },\n    \"HourlyDashboardRefreshes\": {\n        \"Max\": 200,\n        \"Remaining\": 200\n    },\n    \"HourlyDashboardResults\": {\n        \"Max\": 5000,\n        \"Remaining\": 5000\n    },\n    \"HourlyDashboardStatuses\": {\n        \"Max\": 999999999,\n        \"Remaining\": 999999999\n    },\n    \"HourlyLongTermIdMapping\": {\n        \"Max\": 100000,\n        \"Remaining\": 100000\n    },\n    \"HourlyManagedContentPublicRequests\": {\n        \"Max\": 50000,\n        \"Remaining\": 50000\n    },\n    \"HourlyODataCallout\": {\n        \"Max\": 1000,\n        \"Remaining\": 1000\n    },\n    \"HourlyPublishedPlatformEvents\": {\n        \"Max\": 50000,\n        \"Remaining\": 50000\n    },\n    \"HourlyPublishedStandardVolumePlatformEvents\": {\n        \"Max\": 1000,\n        \"Remaining\": 1000\n    },\n    \"HourlyShortTermIdMapping\": {\n        \"Max\": 100000,\n        \"Remaining\": 100000\n    },\n    \"HourlySyncReportRuns\": {\n        \"Max\": 500,\n        \"Remaining\": 500\n    },\n    \"HourlyTimeBasedWorkflow\": {\n        \"Max\": 50,\n        \"Remaining\": 50\n    },\n    \"MassEmail\": {\n        \"Max\": 10,\n        \"Remaining\": 10\n    },\n    \"MonthlyEinsteinDiscoveryStoryCreation\": {\n        \"Max\": 500,\n        \"Remaining\": 500\n    },\n    \"Package2VersionCreates\": {\n        \"Max\": 6,\n        \"Remaining\": 6\n    },\n    \"Package2VersionCreatesWithoutValidation\": {\n        \"Max\": 500,\n        \"Remaining\": 500\n    },\n    \"PermissionSets\": {\n        \"Max\": 1500,\n        \"Remaining\": 1498,\n        \"CreateCustom\": {\n            \"Max\": 1000,\n            \"Remaining\": 998\n        }\n    },\n    \"PrivateConnectOutboundCalloutHourlyLimitMB\": {\n        \"Max\": 0,\n        \"Remaining\": 0\n    },\n    \"PublishCallbackUsageInApex\": {\n        \"Max\": 5242880,\n        \"Remaining\": 5242880\n    },\n    \"SingleEmail\": {\n        \"Max\": 15,\n        \"Remaining\": 15\n    },\n    \"StreamingApiConcurrentClients\": {\n        \"Max\": 20,\n        \"Remaining\": 20\n    }\n}"
    }
  ]
}