Sample code for 30+ languages & platforms
React Native

Azure List Storage Accounts

See more Azure Storage Accounts Examples

Demonstrates how to list Azure storage accounts.

Chilkat React Native Downloads

React Native
import { Http, JsonObject } from '@chilkat/react-native'

async function chilkatExample() {
  // This example requires the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  const http = new Http();

  // Load an OAuth2 access token previously fetched by this example:  Get Azure OAuth2 Access Token
  const jsonToken = new JsonObject();
  jsonToken.loadFile('qa_data/tokens/azureToken.json');
  // Assuming success..
  http.authToken = jsonToken.stringOf('access_token');
  console.log(`AuthToken: ${http.authToken}`);

  http.accept = 'application/json';

  const url = 'https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Storage/storageAccounts?api-version=2018-11-01';

  let jsonResp: string;
  try {
    jsonResp = await http.quickGetStrAsync(url);
  } catch {
    console.log(http.lastErrorText);
    return;
  }

  console.log(`Response Status Code: ${http.lastStatus}`);

  const json = new JsonObject();
  json.load(jsonResp);
  json.emitCompact = false;
  console.log(json.emit());

  if (http.lastStatus !== 200) {
    console.log('Failed.');
    return;
  }

  // Sample output...
  // (See the parsing code below..)
  // 
  // Use this online tool to generate parsing code from sample JSON: 
  // Generate Parsing Code from JSON

  // {
  //   "value": [
  //     {
  //       "sku": {
  //         "name": "Standard_LRS",
  //         "tier": "Standard"
  //       },
  //       "kind": "Storage",
  //       "id": "/subscriptions/6c42643b-ebef-45e0-b917-b3583b84a57f/resourceGroups/gchilkat/providers/Microsoft.Storage/storageAccounts/chilkat",
  //       "name": "chilkat",
  //       "type": "Microsoft.Storage/storageAccounts",
  //       "location": "eastus",
  //       "tags": {},
  //       "properties": {
  //         "networkAcls": {
  //           "bypass": "AzureServices",
  //           "virtualNetworkRules": [
  //           ],
  //           "ipRules": [
  //           ],
  //           "defaultAction": "Allow"
  //         },
  //         "supportsHttpsTrafficOnly": true,
  //         "encryption": {
  //           "services": {
  //             "file": {
  //               "enabled": true,
  //               "lastEnabledTime": "2017-12-28T11:02:10.6840887Z"
  //             },
  //             "blob": {
  //               "enabled": true,
  //               "lastEnabledTime": "2017-12-28T11:02:10.6840887Z"
  //             }
  //           },
  //           "keySource": "Microsoft.Storage"
  //         },
  //         "provisioningState": "Succeeded",
  //         "creationTime": "2016-04-18T22:57:36.5377065Z",
  //         "primaryEndpoints": {
  //           "blob": "https://chilkat.blob.core.windows.net/",
  //           "queue": "https://chilkat.queue.core.windows.net/",
  //           "table": "https://chilkat.table.core.windows.net/",
  //           "file": "https://chilkat.file.core.windows.net/"
  //         },
  //         "primaryLocation": "eastus",
  //         "statusOfPrimary": "available"
  //       }
  //     }
  //   ]
  // }
  // 

  let i = 0;
  let skuName = '';
  let skuTier = '';
  let kind = '';
  let id = '';
  let name = '';
  let vType = '';
  let location = '';
  let propertiesNetworkAclsBypass = '';
  let propertiesNetworkAclsDefaultAction = '';
  let propertiesEncryptionServicesFileLastEnabledTime = '';
  let propertiesEncryptionServicesBlobLastEnabledTime = '';
  let propertiesEncryptionKeySource = '';
  let propertiesProvisioningState = '';
  let propertiesCreationTime = '';
  let propertiesPrimaryEndpointsBlob = '';
  let propertiesPrimaryEndpointsQueue = '';
  let propertiesPrimaryEndpointsTable = '';
  let propertiesPrimaryEndpointsFile = '';
  let propertiesPrimaryLocation = '';
  let propertiesStatusOfPrimary = '';

  i = 0;
  const countI = json.sizeOfArray('value');
  while (i < countI) {
    json.i = i;
    skuName = json.stringOf('value[i].sku.name');
    skuTier = json.stringOf('value[i].sku.tier');
    kind = json.stringOf('value[i].kind');
    id = json.stringOf('value[i].id');
    name = json.stringOf('value[i].name');
    vType = json.stringOf('value[i].type');
    location = json.stringOf('value[i].location');
    propertiesNetworkAclsBypass = json.stringOf('value[i].properties.networkAcls.bypass');
    propertiesNetworkAclsDefaultAction = json.stringOf('value[i].properties.networkAcls.defaultAction');
    json.boolOf('value[i].properties.supportsHttpsTrafficOnly');
    json.boolOf('value[i].properties.encryption.services.file.enabled');
    propertiesEncryptionServicesFileLastEnabledTime = json.stringOf('value[i].properties.encryption.services.file.lastEnabledTime');
    json.boolOf('value[i].properties.encryption.services.blob.enabled');
    propertiesEncryptionServicesBlobLastEnabledTime = json.stringOf('value[i].properties.encryption.services.blob.lastEnabledTime');
    propertiesEncryptionKeySource = json.stringOf('value[i].properties.encryption.keySource');
    propertiesProvisioningState = json.stringOf('value[i].properties.provisioningState');
    propertiesCreationTime = json.stringOf('value[i].properties.creationTime');
    propertiesPrimaryEndpointsBlob = json.stringOf('value[i].properties.primaryEndpoints.blob');
    propertiesPrimaryEndpointsQueue = json.stringOf('value[i].properties.primaryEndpoints.queue');
    propertiesPrimaryEndpointsTable = json.stringOf('value[i].properties.primaryEndpoints.table');
    propertiesPrimaryEndpointsFile = json.stringOf('value[i].properties.primaryEndpoints.file');
    propertiesPrimaryLocation = json.stringOf('value[i].properties.primaryLocation');
    propertiesStatusOfPrimary = json.stringOf('value[i].properties.statusOfPrimary');
    i++;
  }
}