jsonパース

  • クラス

    public static void insertRandomUsers() {
    HttpRequest request = new HttpRequest();
    request.setEndpoint('https://randomuser.me/api/?results=10&format=JSON&nat=us');
    request.setMethod('GET');
    
    Http http = new Http();
    HttpResponse response = new HttpResponse();
    response = http.send(request);
    
    Map<String, Object> requestBody = new Map<String, Object>();
    Integer statusCode = response.getStatusCode();
    if (statusCode == 200) {
        requestBody = (Map<String, Object>)JSON.deserializeUntyped(response.getBody());
    } else {
        System.debug('Error : ' + statusCode + ' => ' + response.getBody());
        return;
    }
    
    List<Lead> leadList = new List<Lead>();
    for (Object result : (List<Object>)requestBody.get('results')) {
        Map<String, Object> user = (Map<String, Object>)result;
        Map<String, Object> name = (Map<String, Object>)user.get('name');
    
        Lead l = new Lead();
        l.firstName = String.valueOf(name.get('first'));
        l.lastName = String.valueOf(name.get('last'));
        l.phone = String.valueOf(user.get('phone'));
        l.Company = String.valueOf(user.get('email'));
    
        leadList.add(l);
    }
    insert leadList;
    }