Sample code for 30+ languages & platforms
Delphi ActiveX

Bluzone Get Project Details

See more Bluzone Examples

Get a project by its id

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;

...

procedure TForm1.Button1Click(Sender: TObject);
var
success: Integer;
http: TChilkatHttp;
sbResponseBody: TChilkatStringBuilder;
jResp: TChilkatJsonObject;
respStatusCode: Integer;
projectId: Integer;
name: WideString;
description: WideString;
status: WideString;
ownerUsername: WideString;
ownerEmailAddress: WideString;
defaultUuidValue: WideString;
enableLocusMaps: Integer;
mapProviderType: WideString;
enableAdvancedPackets: Integer;
enabledPacketTypes: WideString;
enableDataUnload: Integer;
enableScanConsumer: Integer;
enablePolicyConsumer: Integer;
enableLocationConsumer: Integer;
enableEmail: Integer;
firmwareUpdateStrategy: WideString;
deviceJobConcurrency: Integer;
mapProviderApiKey: WideString;
wakeupUuid: WideString;
reportTimezone: WideString;
language: WideString;
blufiHostnameNaming: WideString;
dateCreated: Integer;
dateUpdated: Integer;
enableStreamProducer: Integer;
enableMetricStorage: Integer;
i: Integer;
count_i: Integer;

begin
success := 0;

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

http := TChilkatHttp.Create(Self);

// Implements the following CURL command:

// curl -X GET \
//   https://bluzone.io/portal/papis/v1/projects/YOUR_PROJECT_ID_HERE/ \
//   -H 'bzid: YOUR_API_KEY_HERE'

http.SetRequestHeader('bzid','YOUR_API_KEY_HERE');

sbResponseBody := TChilkatStringBuilder.Create(Self);
success := http.QuickGetSb('https://bluzone.io/portal/papis/v1/projects/YOUR_PROJECT_ID_HERE/',sbResponseBody.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(http.LastErrorText);
    Exit;
  end;

jResp := TChilkatJsonObject.Create(Self);
jResp.LoadSb(sbResponseBody.ControlInterface);
jResp.EmitCompact := 0;

Memo1.Lines.Add('Response Body:');
Memo1.Lines.Add(jResp.Emit());

respStatusCode := http.LastStatus;
Memo1.Lines.Add('Response Status Code = ' + IntToStr(respStatusCode));
if (respStatusCode >= 400) then
  begin
    Memo1.Lines.Add('Response Header:');
    Memo1.Lines.Add(http.LastHeader);
    Memo1.Lines.Add('Failed.');
    Exit;
  end;

// Sample JSON response:

// {
//   "projectId": 36845,
//   "name": "My Project",
//   "description": "Default Project for admin@chilkatsoft.com, created on Thu Jun 06 17:18:11 GMT 2019.",
//   "status": null,
//   "owner": {
//     "username": "admin@chilkatsoft.com",
//     "emailAddress": null
//   },
//   "defaultUuidValue": "1b4b243c-59aa-405f-90b5-0c434cac1345",
//   "enableLocusMaps": false,
//   "mapProviderType": "GOOGLE",
//   "enableAdvancedPackets": false,
//   "enabledPacketTypes": "sBv2",
//   "enableDataUnload": false,
//   "enableScanConsumer": false,
//   "enablePolicyConsumer": false,
//   "enableLocationConsumer": false,
//   "enableEmail": true,
//   "firmwareUpdateStrategy": "MANUAL",
//   "deviceJobConcurrency": -1,
//   "mapProviderApiKey": null,
//   "wakeupUuid": null,
//   "reportEmailList": [
//   ],
//   "reportTimezone": "Etc/GMT",
//   "language": "en",
//   "blufiHostnameNaming": "DEFAULT",
//   "dateCreated": 1559841491000,
//   "dateUpdated": 1559841491000,
//   "enableStreamProducer": true,
//   "enableMetricStorage": true
// }

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

projectId := jResp.IntOf('projectId');
name := jResp.StringOf('name');
description := jResp.StringOf('description');
status := jResp.StringOf('status');
ownerUsername := jResp.StringOf('owner.username');
ownerEmailAddress := jResp.StringOf('owner.emailAddress');
defaultUuidValue := jResp.StringOf('defaultUuidValue');
enableLocusMaps := jResp.BoolOf('enableLocusMaps');
mapProviderType := jResp.StringOf('mapProviderType');
enableAdvancedPackets := jResp.BoolOf('enableAdvancedPackets');
enabledPacketTypes := jResp.StringOf('enabledPacketTypes');
enableDataUnload := jResp.BoolOf('enableDataUnload');
enableScanConsumer := jResp.BoolOf('enableScanConsumer');
enablePolicyConsumer := jResp.BoolOf('enablePolicyConsumer');
enableLocationConsumer := jResp.BoolOf('enableLocationConsumer');
enableEmail := jResp.BoolOf('enableEmail');
firmwareUpdateStrategy := jResp.StringOf('firmwareUpdateStrategy');
deviceJobConcurrency := jResp.IntOf('deviceJobConcurrency');
mapProviderApiKey := jResp.StringOf('mapProviderApiKey');
wakeupUuid := jResp.StringOf('wakeupUuid');
reportTimezone := jResp.StringOf('reportTimezone');
language := jResp.StringOf('language');
blufiHostnameNaming := jResp.StringOf('blufiHostnameNaming');
dateCreated := jResp.IntOf('dateCreated');
dateUpdated := jResp.IntOf('dateUpdated');
enableStreamProducer := jResp.BoolOf('enableStreamProducer');
enableMetricStorage := jResp.BoolOf('enableMetricStorage');
i := 0;
count_i := jResp.SizeOfArray('reportEmailList');
while i < count_i do
  begin
    jResp.I := i;
    i := i + 1;
  end;
end;