Sample code for 30+ languages & platforms
Dart

Walmart v3 Get a Feed Status

See more Walmart v3 Examples

This API returns the feed status for a specified Feed ID.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

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

  final http = CkHttp();

  // Implements the following CURL command:

  // curl -X GET \
  //   https://marketplace.walmartapis.com/v3/feeds/{feedId} \
  //   -H 'WM_SVC.NAME: Walmart Marketplace'
  //   -H 'WM_SEC.ACCESS_TOKEN: eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....'
  //   -H 'WM_QOS.CORRELATION_ID: b3261d2d-028a-4ef7-8602-633c23200af6'
  //   -H 'Content-Type: application/xml'
  //   -H 'Accept: application/xml'

  http.setRequestHeader('WM_QOS.CORRELATION_ID', 'b3261d2d-028a-4ef7-8602-633c23200af6');
  http.setRequestHeader('Content-Type', 'application/xml');
  http.setRequestHeader('WM_SEC.ACCESS_TOKEN', 'eyJraWQiOiIzZjVhYTFmNS1hYWE5LTQzM.....');
  http.setRequestHeader('Accept', 'application/xml');
  http.setRequestHeader('WM_SVC.NAME', 'Walmart Marketplace');

  final sbResponseBody = CkStringBuilder();
  try {
    http.quickGetSb('https://marketplace.walmartapis.com/v3/feeds/{feedId}', sbResponseBody);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final xmlResponse = CkXml();
  xmlResponse.loadSb(sbResponseBody, true);

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

  // <?xml version="1.0" encoding="UTF-8"?>
  // <PartnerFeedResponse xmlns:ns2="http://walmart.com/">
  //     <feedId>1c349f8f-aec0-411f-8454-ead47d12946f</feedId>
  //     <feedStatus>PROCESSED</feedStatus>
  //     <ingestionErrors/>
  //     <itemsReceived>11</itemsReceived>
  //     <itemsSucceeded>11</itemsSucceeded>
  //     <itemsFailed>0</itemsFailed>
  //     <itemsProcessing>0</itemsProcessing>
  //     <offset>0</offset>
  //     <limit>0</limit>
  //     <itemDetails>
  //         <itemIngestionStatus>
  //             <martId>0</martId>
  //             <sku>sku1</sku>
  //             <index>8</index>
  //             <ingestionStatus>SUCCESS</ingestionStatus>
  //             <ingestionErrors/>
  //         </itemIngestionStatus>
  //         <itemIngestionStatus>
  //             <martId>0</martId>
  //             <sku>sku2</sku>
  //             <index>6</index>
  //             <ingestionStatus>SUCCESS</ingestionStatus>
  //             <ingestionErrors/>
  //         </itemIngestionStatus>
  //         <itemIngestionStatus>
  //             <martId>0</martId>
  //             <sku>sku3</sku>
  //             <index>9</index>
  //             <ingestionStatus>SUCCESS</ingestionStatus>
  //             <ingestionErrors/>
  //         </itemIngestionStatus>
  //     </itemDetails>
  // </PartnerFeedResponse>

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

  var i = 0;
  var martId = 0;
  var sku = '';
  var index = 0;
  var ingestionStatus = '';

  final partnerFeedResponseXmlnsNs2 = xmlResponse.getAttrValue('xmlns:ns2');
  final feedId = xmlResponse.getChildContent('feedId');
  final feedStatus = xmlResponse.getChildContent('feedStatus');
  final itemsReceived = xmlResponse.getChildIntValue('itemsReceived');
  final itemsSucceeded = xmlResponse.getChildIntValue('itemsSucceeded');
  final itemsFailed = xmlResponse.getChildIntValue('itemsFailed');
  final itemsProcessing = xmlResponse.getChildIntValue('itemsProcessing');
  final offset = xmlResponse.getChildIntValue('offset');
  final limit = xmlResponse.getChildIntValue('limit');
  i = 0;
  final countI = xmlResponse.numChildrenHavingTag('itemDetails|itemIngestionStatus');
  while (i < countI) {
    xmlResponse.i = i;
    martId = xmlResponse.getChildIntValue('itemDetails|itemIngestionStatus[i]|martId');
    sku = xmlResponse.getChildContent('itemDetails|itemIngestionStatus[i]|sku');
    index = xmlResponse.getChildIntValue('itemDetails|itemIngestionStatus[i]|index');
    ingestionStatus = xmlResponse.getChildContent('itemDetails|itemIngestionStatus[i]|ingestionStatus');
    i++;
  }
}