Chilkat Online Tools

DataFlex / Salesforce Platform APIs / Bulk Check Batch Status

Back to Collection Items

Use ChilkatAx-win32.pkg

Procedure Test
    Handle hoHttp
    Boolean iSuccess
    Variant vSbResponseBody
    Handle hoSbResponseBody
    Handle hoXmlResponse
    String sBatchInfoList_xmlns
    String sId
    String sJobId
    String sState
    String sCreatedDate
    String sSystemModstamp
    Integer iNumberRecordsProcessed
    Integer iNumberRecordsFailed
    Integer iTotalProcessingTime
    Integer iApiActiveProcessingTime
    Integer iApexProcessingTime
    String sTemp1

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    Get Create (RefClass(cComChilkatHttp)) To hoHttp
    If (Not(IsComObjectCreated(hoHttp))) Begin
        Send CreateComObject of hoHttp
    End

    Send ComSetRequestHeader To hoHttp "X-SFDC-Session" "{{_accessToken}}"
    // Adds the "Authorization: Bearer <access_token>" header.
    Set ComAuthToken Of hoHttp To "<access_token>"
    Send ComSetRequestHeader To hoHttp "Accept-Encoding" "gzip"
    Send ComSetRequestHeader To hoHttp "Content-Encoding" "gzip"

    Get Create (RefClass(cComChilkatStringBuilder)) To hoSbResponseBody
    If (Not(IsComObjectCreated(hoSbResponseBody))) Begin
        Send CreateComObject of hoSbResponseBody
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComQuickGetSb Of hoHttp "https://domain.com/services/async/{{version}}/job/{{_jobId}}/batch" vSbResponseBody To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoHttp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Get Create (RefClass(cComChilkatXml)) To hoXmlResponse
    If (Not(IsComObjectCreated(hoXmlResponse))) Begin
        Send CreateComObject of hoXmlResponse
    End
    Get pvComObject of hoSbResponseBody to vSbResponseBody
    Get ComLoadSb Of hoXmlResponse vSbResponseBody True To iSuccess
    Get ComGetXml Of hoXmlResponse To sTemp1
    Showln sTemp1

    // Sample XML response:
    // (Sample code for parsing the XML response is shown below)

    // <?xml version="1.0" encoding="UTF-8"?>
    // <batchInfoList xmlns="http://www.force.com/2009/06/asyncapi/dataload">
    //     <batchInfo>
    //         <id>751...</id>
    //         <jobId>750...</jobId>
    //         <state>Completed</state>
    //         <createdDate>datetime</createdDate>
    //         <systemModstamp>datetime</systemModstamp>
    //         <numberRecordsProcessed>1</numberRecordsProcessed>
    //         <numberRecordsFailed>0</numberRecordsFailed>
    //         <totalProcessingTime>403</totalProcessingTime>
    //         <apiActiveProcessingTime>225</apiActiveProcessingTime>
    //         <apexProcessingTime>64</apexProcessingTime>
    //     </batchInfo>
    // </batchInfoList>

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

    Get ComGetAttrValue Of hoXmlResponse "xmlns" To sBatchInfoList_xmlns
    Get ComGetChildContent Of hoXmlResponse "batchInfo|id" To sId
    Get ComGetChildContent Of hoXmlResponse "batchInfo|jobId" To sJobId
    Get ComGetChildContent Of hoXmlResponse "batchInfo|state" To sState
    Get ComGetChildContent Of hoXmlResponse "batchInfo|createdDate" To sCreatedDate
    Get ComGetChildContent Of hoXmlResponse "batchInfo|systemModstamp" To sSystemModstamp
    Get ComGetChildIntValue Of hoXmlResponse "batchInfo|numberRecordsProcessed" To iNumberRecordsProcessed
    Get ComGetChildIntValue Of hoXmlResponse "batchInfo|numberRecordsFailed" To iNumberRecordsFailed
    Get ComGetChildIntValue Of hoXmlResponse "batchInfo|totalProcessingTime" To iTotalProcessingTime
    Get ComGetChildIntValue Of hoXmlResponse "batchInfo|apiActiveProcessingTime" To iApiActiveProcessingTime
    Get ComGetChildIntValue Of hoXmlResponse "batchInfo|apexProcessingTime" To iApexProcessingTime


End_Procedure

Curl Command

curl -X GET
	-H "Authorization: Bearer <access_token>"
	-H "X-SFDC-Session: {{_accessToken}}"
	-H "Accept-Encoding: gzip"
	-H "Content-Encoding: gzip"
https://domain.com/services/async/{{version}}/job/{{_jobId}}/batch

Postman Collection Item JSON

{
  "name": "Bulk Check Batch Status",
  "request": {
    "method": "GET",
    "header": [
      {
        "key": "X-SFDC-Session",
        "value": "{{_accessToken}}"
      },
      {
        "key": "Accept-Encoding",
        "value": "gzip"
      },
      {
        "key": "Content-Encoding",
        "value": "gzip"
      }
    ],
    "url": {
      "raw": "{{_endpoint}}/services/async/{{version}}/job/{{_jobId}}/batch",
      "host": [
        "{{_endpoint}}"
      ],
      "path": [
        "services",
        "async",
        "{{version}}",
        "job",
        "{{_jobId}}",
        "batch"
      ]
    }
  },
  "response": [
    {
      "name": "Successful Bulk Check Batch Status",
      "originalRequest": {
        "method": "GET",
        "header": [
          {
            "key": "X-SFDC-Session",
            "value": "{{_accessToken}}"
          },
          {
            "key": "Accept-Encoding",
            "value": "gzip"
          },
          {
            "key": "Content-Encoding",
            "value": "gzip"
          }
        ],
        "url": {
          "raw": "{{_endpoint}}/services/async/{{version}}/job/{{_jobId}}/batch",
          "host": [
            "{{_endpoint}}"
          ],
          "path": [
            "services",
            "async",
            "{{version}}",
            "job",
            "{{_jobId}}",
            "batch"
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "xml",
      "header": [
        {
          "key": "Date",
          "value": "Thu, 16 Nov 2023 16:19:29 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": "Content-Type",
          "value": "application/xml"
        },
        {
          "key": "Content-Encoding",
          "value": "gzip"
        },
        {
          "key": "Transfer-Encoding",
          "value": "chunked"
        }
      ],
      "cookie": [
      ],
      "body": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<batchInfoList\n   xmlns=\"http://www.force.com/2009/06/asyncapi/dataload\">\n    <batchInfo>\n        <id>751...</id>\n        <jobId>750...</jobId>\n        <state>Completed</state>\n        <createdDate>datetime</createdDate>\n        <systemModstamp>datetime</systemModstamp>\n        <numberRecordsProcessed>1</numberRecordsProcessed>\n        <numberRecordsFailed>0</numberRecordsFailed>\n        <totalProcessingTime>403</totalProcessingTime>\n        <apiActiveProcessingTime>225</apiActiveProcessingTime>\n        <apexProcessingTime>64</apexProcessingTime>\n    </batchInfo>\n</batchInfoList>"
    }
  ]
}