Chilkat Online Tools

SQL Server / Salesforce Platform APIs / Limits

Back to Collection Items

-- Important: See this note about string length limitations for strings returned by sp_OAMethod calls.
--
CREATE PROCEDURE ChilkatSample
AS
BEGIN
    DECLARE @hr int
    -- Important: Do not use nvarchar(max).  See the warning about using nvarchar(max).
    DECLARE @sTmp0 nvarchar(4000)
    -- This example assumes the Chilkat API to have been previously unlocked.
    -- See Global Unlock Sample for sample code.

    DECLARE @http int
    -- Use "Chilkat_9_5_0.Http" for versions of Chilkat < 10.0.0
    EXEC @hr = sp_OACreate 'Chilkat.Http', @http OUT
    IF @hr <> 0
    BEGIN
        PRINT 'Failed to create ActiveX component'
        RETURN
    END

    DECLARE @success int

    -- Adds the "Authorization: Bearer <access_token>" header.
    EXEC sp_OASetProperty @http, 'AuthToken', '<access_token>'

    DECLARE @sbResponseBody int
    -- Use "Chilkat_9_5_0.StringBuilder" for versions of Chilkat < 10.0.0
    EXEC @hr = sp_OACreate 'Chilkat.StringBuilder', @sbResponseBody OUT

    EXEC sp_OAMethod @http, 'QuickGetSb', @success OUT, 'https://domain.com/services/data/v{{version}}/limits', @sbResponseBody
    IF @success = 0
      BEGIN
        EXEC sp_OAGetProperty @http, 'LastErrorText', @sTmp0 OUT
        PRINT @sTmp0
        EXEC @hr = sp_OADestroy @http
        EXEC @hr = sp_OADestroy @sbResponseBody
        RETURN
      END

    DECLARE @jResp int
    -- Use "Chilkat_9_5_0.JsonObject" for versions of Chilkat < 10.0.0
    EXEC @hr = sp_OACreate 'Chilkat.JsonObject', @jResp OUT

    EXEC sp_OAMethod @jResp, 'LoadSb', @success OUT, @sbResponseBody
    EXEC sp_OASetProperty @jResp, 'EmitCompact', 0


    PRINT 'Response Body:'
    EXEC sp_OAMethod @jResp, 'Emit', @sTmp0 OUT
    PRINT @sTmp0

    DECLARE @respStatusCode int
    EXEC sp_OAGetProperty @http, 'LastStatus', @respStatusCode OUT

    PRINT 'Response Status Code = ' + @respStatusCode
    IF @respStatusCode >= 400
      BEGIN

        PRINT 'Response Header:'
        EXEC sp_OAGetProperty @http, 'LastHeader', @sTmp0 OUT
        PRINT @sTmp0

        PRINT 'Failed.'
        EXEC @hr = sp_OADestroy @http
        EXEC @hr = sp_OADestroy @sbResponseBody
        EXEC @hr = sp_OADestroy @jResp
        RETURN
      END

    -- Sample JSON response:
    -- (Sample code for parsing the JSON response is shown below)

    -- {
    --   "ActiveScratchOrgs": {
    --     "Max": 3,
    --     "Remaining": 3
    --   },
    --   "AnalyticsExternalDataSizeMB": {
    --     "Max": 40960,
    --     "Remaining": 40960
    --   },
    --   "ConcurrentAsyncGetReportInstances": {
    --     "Max": 200,
    --     "Remaining": 200
    --   },
    --   "ConcurrentEinsteinDataInsightsStoryCreation": {
    --     "Max": 5,
    --     "Remaining": 5
    --   },
    --   "ConcurrentEinsteinDiscoveryStoryCreation": {
    --     "Max": 2,
    --     "Remaining": 2
    --   },
    --   "ConcurrentSyncReportRuns": {
    --     "Max": 20,
    --     "Remaining": 20
    --   },
    --   "DailyAnalyticsDataflowJobExecutions": {
    --     "Max": 60,
    --     "Remaining": 60
    --   },
    --   "DailyAnalyticsUploadedFilesSizeMB": {
    --     "Max": 51200,
    --     "Remaining": 51200
    --   },
    --   "DailyApiRequests": {
    --     "Max": 15000,
    --     "Remaining": 14999
    --   },
    --   "DailyAsyncApexExecutions": {
    --     "Max": 250000,
    --     "Remaining": 250000
    --   },
    --   "DailyAsyncApexTests": {
    --     "Max": 540,
    --     "Remaining": 540
    --   },
    --   "DailyBulkApiBatches": {
    --     "Max": 15000,
    --     "Remaining": 15000
    --   },
    --   "DailyBulkV2QueryFileStorageMB": {
    --     "Max": 976562,
    --     "Remaining": 976562
    --   },
    --   "DailyBulkV2QueryJobs": {
    --     "Max": 10000,
    --     "Remaining": 10000
    --   },
    --   "DailyDeliveredPlatformEvents": {
    --     "Max": 10000,
    --     "Remaining": 10000
    --   },
    --   "DailyDurableGenericStreamingApiEvents": {
    --     "Max": 10000,
    --     "Remaining": 10000
    --   },
    --   "DailyDurableStreamingApiEvents": {
    --     "Max": 10000,
    --     "Remaining": 10000
    --   },
    --   "DailyEinsteinDataInsightsStoryCreation": {
    --     "Max": 1000,
    --     "Remaining": 1000
    --   },
    --   "DailyEinsteinDiscoveryOptimizationJobRuns": {
    --     "Max": 25,
    --     "Remaining": 25
    --   },
    --   "DailyEinsteinDiscoveryPredictAPICalls": {
    --     "Max": 50000,
    --     "Remaining": 50000
    --   },
    --   "DailyEinsteinDiscoveryPredictionsByCDC": {
    --     "Max": 500000,
    --     "Remaining": 500000
    --   },
    --   "DailyEinsteinDiscoveryStoryCreation": {
    --     "Max": 100,
    --     "Remaining": 100
    --   },
    --   "DailyFunctionsApiCallLimit": {
    --     "Max": 50000,
    --     "Remaining": 50000
    --   },
    --   "DailyGenericStreamingApiEvents": {
    --     "Max": 10000,
    --     "Remaining": 10000
    --   },
    --   "DailyScratchOrgs": {
    --     "Max": 6,
    --     "Remaining": 6
    --   },
    --   "DailyStandardVolumePlatformEvents": {
    --     "Max": 10000,
    --     "Remaining": 10000
    --   },
    --   "DailyStreamingApiEvents": {
    --     "Max": 10000,
    --     "Remaining": 10000
    --   },
    --   "DailyWorkflowEmails": {
    --     "Max": 405,
    --     "Remaining": 405
    --   },
    --   "DataStorageMB": {
    --     "Max": 5,
    --     "Remaining": 5
    --   },
    --   "DurableStreamingApiConcurrentClients": {
    --     "Max": 20,
    --     "Remaining": 20
    --   },
    --   "FileStorageMB": {
    --     "Max": 20,
    --     "Remaining": 20
    --   },
    --   "HourlyAsyncReportRuns": {
    --     "Max": 1200,
    --     "Remaining": 1200
    --   },
    --   "HourlyDashboardRefreshes": {
    --     "Max": 200,
    --     "Remaining": 200
    --   },
    --   "HourlyDashboardResults": {
    --     "Max": 5000,
    --     "Remaining": 5000
    --   },
    --   "HourlyDashboardStatuses": {
    --     "Max": 999999999,
    --     "Remaining": 999999999
    --   },
    --   "HourlyLongTermIdMapping": {
    --     "Max": 100000,
    --     "Remaining": 100000
    --   },
    --   "HourlyManagedContentPublicRequests": {
    --     "Max": 50000,
    --     "Remaining": 50000
    --   },
    --   "HourlyODataCallout": {
    --     "Max": 1000,
    --     "Remaining": 1000
    --   },
    --   "HourlyPublishedPlatformEvents": {
    --     "Max": 50000,
    --     "Remaining": 50000
    --   },
    --   "HourlyPublishedStandardVolumePlatformEvents": {
    --     "Max": 1000,
    --     "Remaining": 1000
    --   },
    --   "HourlyShortTermIdMapping": {
    --     "Max": 100000,
    --     "Remaining": 100000
    --   },
    --   "HourlySyncReportRuns": {
    --     "Max": 500,
    --     "Remaining": 500
    --   },
    --   "HourlyTimeBasedWorkflow": {
    --     "Max": 50,
    --     "Remaining": 50
    --   },
    --   "MassEmail": {
    --     "Max": 10,
    --     "Remaining": 10
    --   },
    --   "MonthlyEinsteinDiscoveryStoryCreation": {
    --     "Max": 500,
    --     "Remaining": 500
    --   },
    --   "Package2VersionCreates": {
    --     "Max": 6,
    --     "Remaining": 6
    --   },
    --   "Package2VersionCreatesWithoutValidation": {
    --     "Max": 500,
    --     "Remaining": 500
    --   },
    --   "PermissionSets": {
    --     "Max": 1500,
    --     "Remaining": 1498,
    --     "CreateCustom": {
    --       "Max": 1000,
    --       "Remaining": 998
    --     }
    --   },
    --   "PrivateConnectOutboundCalloutHourlyLimitMB": {
    --     "Max": 0,
    --     "Remaining": 0
    --   },
    --   "PublishCallbackUsageInApex": {
    --     "Max": 5242880,
    --     "Remaining": 5242880
    --   },
    --   "SingleEmail": {
    --     "Max": 15,
    --     "Remaining": 15
    --   },
    --   "StreamingApiConcurrentClients": {
    --     "Max": 20,
    --     "Remaining": 20
    --   }
    -- }

    -- Sample code for parsing the JSON response...
    -- Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code

    DECLARE @Max int
    EXEC sp_OAMethod @jResp, 'IntOf', @Max OUT, 'ActiveScratchOrgs.Max'
    DECLARE @Remaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @Remaining OUT, 'ActiveScratchOrgs.Remaining'
    DECLARE @AnalyticsExternalDataSizeMBMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @AnalyticsExternalDataSizeMBMax OUT, 'AnalyticsExternalDataSizeMB.Max'
    DECLARE @AnalyticsExternalDataSizeMBRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @AnalyticsExternalDataSizeMBRemaining OUT, 'AnalyticsExternalDataSizeMB.Remaining'
    DECLARE @ConcurrentAsyncGetReportInstancesMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentAsyncGetReportInstancesMax OUT, 'ConcurrentAsyncGetReportInstances.Max'
    DECLARE @ConcurrentAsyncGetReportInstancesRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentAsyncGetReportInstancesRemaining OUT, 'ConcurrentAsyncGetReportInstances.Remaining'
    DECLARE @ConcurrentEinsteinDataInsightsStoryCreationMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentEinsteinDataInsightsStoryCreationMax OUT, 'ConcurrentEinsteinDataInsightsStoryCreation.Max'
    DECLARE @ConcurrentEinsteinDataInsightsStoryCreationRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentEinsteinDataInsightsStoryCreationRemaining OUT, 'ConcurrentEinsteinDataInsightsStoryCreation.Remaining'
    DECLARE @ConcurrentEinsteinDiscoveryStoryCreationMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentEinsteinDiscoveryStoryCreationMax OUT, 'ConcurrentEinsteinDiscoveryStoryCreation.Max'
    DECLARE @ConcurrentEinsteinDiscoveryStoryCreationRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentEinsteinDiscoveryStoryCreationRemaining OUT, 'ConcurrentEinsteinDiscoveryStoryCreation.Remaining'
    DECLARE @ConcurrentSyncReportRunsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentSyncReportRunsMax OUT, 'ConcurrentSyncReportRuns.Max'
    DECLARE @ConcurrentSyncReportRunsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @ConcurrentSyncReportRunsRemaining OUT, 'ConcurrentSyncReportRuns.Remaining'
    DECLARE @DailyAnalyticsDataflowJobExecutionsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAnalyticsDataflowJobExecutionsMax OUT, 'DailyAnalyticsDataflowJobExecutions.Max'
    DECLARE @DailyAnalyticsDataflowJobExecutionsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAnalyticsDataflowJobExecutionsRemaining OUT, 'DailyAnalyticsDataflowJobExecutions.Remaining'
    DECLARE @DailyAnalyticsUploadedFilesSizeMBMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAnalyticsUploadedFilesSizeMBMax OUT, 'DailyAnalyticsUploadedFilesSizeMB.Max'
    DECLARE @DailyAnalyticsUploadedFilesSizeMBRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAnalyticsUploadedFilesSizeMBRemaining OUT, 'DailyAnalyticsUploadedFilesSizeMB.Remaining'
    DECLARE @DailyApiRequestsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyApiRequestsMax OUT, 'DailyApiRequests.Max'
    DECLARE @DailyApiRequestsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyApiRequestsRemaining OUT, 'DailyApiRequests.Remaining'
    DECLARE @DailyAsyncApexExecutionsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAsyncApexExecutionsMax OUT, 'DailyAsyncApexExecutions.Max'
    DECLARE @DailyAsyncApexExecutionsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAsyncApexExecutionsRemaining OUT, 'DailyAsyncApexExecutions.Remaining'
    DECLARE @DailyAsyncApexTestsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAsyncApexTestsMax OUT, 'DailyAsyncApexTests.Max'
    DECLARE @DailyAsyncApexTestsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyAsyncApexTestsRemaining OUT, 'DailyAsyncApexTests.Remaining'
    DECLARE @DailyBulkApiBatchesMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyBulkApiBatchesMax OUT, 'DailyBulkApiBatches.Max'
    DECLARE @DailyBulkApiBatchesRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyBulkApiBatchesRemaining OUT, 'DailyBulkApiBatches.Remaining'
    DECLARE @DailyBulkV2QueryFileStorageMBMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyBulkV2QueryFileStorageMBMax OUT, 'DailyBulkV2QueryFileStorageMB.Max'
    DECLARE @DailyBulkV2QueryFileStorageMBRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyBulkV2QueryFileStorageMBRemaining OUT, 'DailyBulkV2QueryFileStorageMB.Remaining'
    DECLARE @DailyBulkV2QueryJobsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyBulkV2QueryJobsMax OUT, 'DailyBulkV2QueryJobs.Max'
    DECLARE @DailyBulkV2QueryJobsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyBulkV2QueryJobsRemaining OUT, 'DailyBulkV2QueryJobs.Remaining'
    DECLARE @DailyDeliveredPlatformEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyDeliveredPlatformEventsMax OUT, 'DailyDeliveredPlatformEvents.Max'
    DECLARE @DailyDeliveredPlatformEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyDeliveredPlatformEventsRemaining OUT, 'DailyDeliveredPlatformEvents.Remaining'
    DECLARE @DailyDurableGenericStreamingApiEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyDurableGenericStreamingApiEventsMax OUT, 'DailyDurableGenericStreamingApiEvents.Max'
    DECLARE @DailyDurableGenericStreamingApiEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyDurableGenericStreamingApiEventsRemaining OUT, 'DailyDurableGenericStreamingApiEvents.Remaining'
    DECLARE @DailyDurableStreamingApiEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyDurableStreamingApiEventsMax OUT, 'DailyDurableStreamingApiEvents.Max'
    DECLARE @DailyDurableStreamingApiEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyDurableStreamingApiEventsRemaining OUT, 'DailyDurableStreamingApiEvents.Remaining'
    DECLARE @DailyEinsteinDataInsightsStoryCreationMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDataInsightsStoryCreationMax OUT, 'DailyEinsteinDataInsightsStoryCreation.Max'
    DECLARE @DailyEinsteinDataInsightsStoryCreationRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDataInsightsStoryCreationRemaining OUT, 'DailyEinsteinDataInsightsStoryCreation.Remaining'
    DECLARE @DailyEinsteinDiscoveryOptimizationJobRunsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryOptimizationJobRunsMax OUT, 'DailyEinsteinDiscoveryOptimizationJobRuns.Max'
    DECLARE @DailyEinsteinDiscoveryOptimizationJobRunsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryOptimizationJobRunsRemaining OUT, 'DailyEinsteinDiscoveryOptimizationJobRuns.Remaining'
    DECLARE @DailyEinsteinDiscoveryPredictAPICallsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryPredictAPICallsMax OUT, 'DailyEinsteinDiscoveryPredictAPICalls.Max'
    DECLARE @DailyEinsteinDiscoveryPredictAPICallsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryPredictAPICallsRemaining OUT, 'DailyEinsteinDiscoveryPredictAPICalls.Remaining'
    DECLARE @DailyEinsteinDiscoveryPredictionsByCDCMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryPredictionsByCDCMax OUT, 'DailyEinsteinDiscoveryPredictionsByCDC.Max'
    DECLARE @DailyEinsteinDiscoveryPredictionsByCDCRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryPredictionsByCDCRemaining OUT, 'DailyEinsteinDiscoveryPredictionsByCDC.Remaining'
    DECLARE @DailyEinsteinDiscoveryStoryCreationMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryStoryCreationMax OUT, 'DailyEinsteinDiscoveryStoryCreation.Max'
    DECLARE @DailyEinsteinDiscoveryStoryCreationRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyEinsteinDiscoveryStoryCreationRemaining OUT, 'DailyEinsteinDiscoveryStoryCreation.Remaining'
    DECLARE @DailyFunctionsApiCallLimitMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyFunctionsApiCallLimitMax OUT, 'DailyFunctionsApiCallLimit.Max'
    DECLARE @DailyFunctionsApiCallLimitRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyFunctionsApiCallLimitRemaining OUT, 'DailyFunctionsApiCallLimit.Remaining'
    DECLARE @DailyGenericStreamingApiEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyGenericStreamingApiEventsMax OUT, 'DailyGenericStreamingApiEvents.Max'
    DECLARE @DailyGenericStreamingApiEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyGenericStreamingApiEventsRemaining OUT, 'DailyGenericStreamingApiEvents.Remaining'
    DECLARE @DailyScratchOrgsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyScratchOrgsMax OUT, 'DailyScratchOrgs.Max'
    DECLARE @DailyScratchOrgsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyScratchOrgsRemaining OUT, 'DailyScratchOrgs.Remaining'
    DECLARE @DailyStandardVolumePlatformEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyStandardVolumePlatformEventsMax OUT, 'DailyStandardVolumePlatformEvents.Max'
    DECLARE @DailyStandardVolumePlatformEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyStandardVolumePlatformEventsRemaining OUT, 'DailyStandardVolumePlatformEvents.Remaining'
    DECLARE @DailyStreamingApiEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyStreamingApiEventsMax OUT, 'DailyStreamingApiEvents.Max'
    DECLARE @DailyStreamingApiEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyStreamingApiEventsRemaining OUT, 'DailyStreamingApiEvents.Remaining'
    DECLARE @DailyWorkflowEmailsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyWorkflowEmailsMax OUT, 'DailyWorkflowEmails.Max'
    DECLARE @DailyWorkflowEmailsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DailyWorkflowEmailsRemaining OUT, 'DailyWorkflowEmails.Remaining'
    DECLARE @DataStorageMBMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DataStorageMBMax OUT, 'DataStorageMB.Max'
    DECLARE @DataStorageMBRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DataStorageMBRemaining OUT, 'DataStorageMB.Remaining'
    DECLARE @DurableStreamingApiConcurrentClientsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @DurableStreamingApiConcurrentClientsMax OUT, 'DurableStreamingApiConcurrentClients.Max'
    DECLARE @DurableStreamingApiConcurrentClientsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @DurableStreamingApiConcurrentClientsRemaining OUT, 'DurableStreamingApiConcurrentClients.Remaining'
    DECLARE @FileStorageMBMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @FileStorageMBMax OUT, 'FileStorageMB.Max'
    DECLARE @FileStorageMBRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @FileStorageMBRemaining OUT, 'FileStorageMB.Remaining'
    DECLARE @HourlyAsyncReportRunsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyAsyncReportRunsMax OUT, 'HourlyAsyncReportRuns.Max'
    DECLARE @HourlyAsyncReportRunsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyAsyncReportRunsRemaining OUT, 'HourlyAsyncReportRuns.Remaining'
    DECLARE @HourlyDashboardRefreshesMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyDashboardRefreshesMax OUT, 'HourlyDashboardRefreshes.Max'
    DECLARE @HourlyDashboardRefreshesRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyDashboardRefreshesRemaining OUT, 'HourlyDashboardRefreshes.Remaining'
    DECLARE @HourlyDashboardResultsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyDashboardResultsMax OUT, 'HourlyDashboardResults.Max'
    DECLARE @HourlyDashboardResultsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyDashboardResultsRemaining OUT, 'HourlyDashboardResults.Remaining'
    DECLARE @HourlyDashboardStatusesMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyDashboardStatusesMax OUT, 'HourlyDashboardStatuses.Max'
    DECLARE @HourlyDashboardStatusesRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyDashboardStatusesRemaining OUT, 'HourlyDashboardStatuses.Remaining'
    DECLARE @HourlyLongTermIdMappingMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyLongTermIdMappingMax OUT, 'HourlyLongTermIdMapping.Max'
    DECLARE @HourlyLongTermIdMappingRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyLongTermIdMappingRemaining OUT, 'HourlyLongTermIdMapping.Remaining'
    DECLARE @HourlyManagedContentPublicRequestsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyManagedContentPublicRequestsMax OUT, 'HourlyManagedContentPublicRequests.Max'
    DECLARE @HourlyManagedContentPublicRequestsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyManagedContentPublicRequestsRemaining OUT, 'HourlyManagedContentPublicRequests.Remaining'
    DECLARE @HourlyODataCalloutMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyODataCalloutMax OUT, 'HourlyODataCallout.Max'
    DECLARE @HourlyODataCalloutRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyODataCalloutRemaining OUT, 'HourlyODataCallout.Remaining'
    DECLARE @HourlyPublishedPlatformEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyPublishedPlatformEventsMax OUT, 'HourlyPublishedPlatformEvents.Max'
    DECLARE @HourlyPublishedPlatformEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyPublishedPlatformEventsRemaining OUT, 'HourlyPublishedPlatformEvents.Remaining'
    DECLARE @HourlyPublishedStandardVolumePlatformEventsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyPublishedStandardVolumePlatformEventsMax OUT, 'HourlyPublishedStandardVolumePlatformEvents.Max'
    DECLARE @HourlyPublishedStandardVolumePlatformEventsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyPublishedStandardVolumePlatformEventsRemaining OUT, 'HourlyPublishedStandardVolumePlatformEvents.Remaining'
    DECLARE @HourlyShortTermIdMappingMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyShortTermIdMappingMax OUT, 'HourlyShortTermIdMapping.Max'
    DECLARE @HourlyShortTermIdMappingRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyShortTermIdMappingRemaining OUT, 'HourlyShortTermIdMapping.Remaining'
    DECLARE @HourlySyncReportRunsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlySyncReportRunsMax OUT, 'HourlySyncReportRuns.Max'
    DECLARE @HourlySyncReportRunsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlySyncReportRunsRemaining OUT, 'HourlySyncReportRuns.Remaining'
    DECLARE @HourlyTimeBasedWorkflowMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyTimeBasedWorkflowMax OUT, 'HourlyTimeBasedWorkflow.Max'
    DECLARE @HourlyTimeBasedWorkflowRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @HourlyTimeBasedWorkflowRemaining OUT, 'HourlyTimeBasedWorkflow.Remaining'
    DECLARE @MassEmailMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @MassEmailMax OUT, 'MassEmail.Max'
    DECLARE @MassEmailRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @MassEmailRemaining OUT, 'MassEmail.Remaining'
    DECLARE @MonthlyEinsteinDiscoveryStoryCreationMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @MonthlyEinsteinDiscoveryStoryCreationMax OUT, 'MonthlyEinsteinDiscoveryStoryCreation.Max'
    DECLARE @MonthlyEinsteinDiscoveryStoryCreationRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @MonthlyEinsteinDiscoveryStoryCreationRemaining OUT, 'MonthlyEinsteinDiscoveryStoryCreation.Remaining'
    DECLARE @Package2VersionCreatesMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @Package2VersionCreatesMax OUT, 'Package2VersionCreates.Max'
    DECLARE @Package2VersionCreatesRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @Package2VersionCreatesRemaining OUT, 'Package2VersionCreates.Remaining'
    DECLARE @Package2VersionCreatesWithoutValidationMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @Package2VersionCreatesWithoutValidationMax OUT, 'Package2VersionCreatesWithoutValidation.Max'
    DECLARE @Package2VersionCreatesWithoutValidationRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @Package2VersionCreatesWithoutValidationRemaining OUT, 'Package2VersionCreatesWithoutValidation.Remaining'
    DECLARE @PermissionSetsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @PermissionSetsMax OUT, 'PermissionSets.Max'
    DECLARE @PermissionSetsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @PermissionSetsRemaining OUT, 'PermissionSets.Remaining'
    DECLARE @CreateCustomMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @CreateCustomMax OUT, 'PermissionSets.CreateCustom.Max'
    DECLARE @CreateCustomRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @CreateCustomRemaining OUT, 'PermissionSets.CreateCustom.Remaining'
    DECLARE @PrivateConnectOutboundCalloutHourlyLimitMBMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @PrivateConnectOutboundCalloutHourlyLimitMBMax OUT, 'PrivateConnectOutboundCalloutHourlyLimitMB.Max'
    DECLARE @PrivateConnectOutboundCalloutHourlyLimitMBRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @PrivateConnectOutboundCalloutHourlyLimitMBRemaining OUT, 'PrivateConnectOutboundCalloutHourlyLimitMB.Remaining'
    DECLARE @PublishCallbackUsageInApexMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @PublishCallbackUsageInApexMax OUT, 'PublishCallbackUsageInApex.Max'
    DECLARE @PublishCallbackUsageInApexRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @PublishCallbackUsageInApexRemaining OUT, 'PublishCallbackUsageInApex.Remaining'
    DECLARE @SingleEmailMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @SingleEmailMax OUT, 'SingleEmail.Max'
    DECLARE @SingleEmailRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @SingleEmailRemaining OUT, 'SingleEmail.Remaining'
    DECLARE @StreamingApiConcurrentClientsMax int
    EXEC sp_OAMethod @jResp, 'IntOf', @StreamingApiConcurrentClientsMax OUT, 'StreamingApiConcurrentClients.Max'
    DECLARE @StreamingApiConcurrentClientsRemaining int
    EXEC sp_OAMethod @jResp, 'IntOf', @StreamingApiConcurrentClientsRemaining OUT, 'StreamingApiConcurrentClients.Remaining'

    EXEC @hr = sp_OADestroy @http
    EXEC @hr = sp_OADestroy @sbResponseBody
    EXEC @hr = sp_OADestroy @jResp


END
GO

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}"
    }
  ]
}