Last modified by Nico Lemaire on 2025/09/01 13:36

From version 6.6
edited by Robert Jan Daams
on 2022/08/23 11:18
Change comment: There is no comment for this version
To version 15.3
edited by Robert Jan Daams
on 2025/02/04 11:15
Change comment: There is no comment for this version

Summary

Details

Page properties
Parent
... ... @@ -1,1 +1,1 @@
1 -Implementation documentation.WebHome
1 +Implementation documentation.For customers.WebHome
Content
... ... @@ -25,13 +25,27 @@
25 25  | |**URL**|
26 26  |**Old**|{{code language="none"}}https://web.terraindex.com/DataWS/{{/code}}|(((
27 27  [[https:~~/~~/web.terraindex.com/DataWS/ITWDataRestService_V1_0/GetProjectsJSON>>https://web.terraindex.com/DataWS/ITWDataRestService_V1_0/GetProjectsJSON]]
28 +
29 +[[https:~~/~~/web.terraindex.com/DataWS/ITWImportExportServiceASMX_V1_0.asmx>>https://web.terraindex.com/DataWSExternals/ITWImportExportServiceASMX_V1_0.asmx]]
28 28  )))
29 29  |**New**|​{{code language="none"}}https://web.terraindex.com/DataWSExternals/{{/code}}|(((
30 30  [[https:~~/~~/web.terraindex.com/DataWSExternals/ITWDataRestService_V1_0/GetProjectsJSON>>https://web.terraindex.com/DataWSExternals/ITWDataRestService_V1_0/GetProjectsJSON]]
33 +
34 +[[https:~~/~~/web.terraindex.com/DataWSExternals/ITWImportExportServiceASMX_V1_0.asmx>>https://web.terraindex.com/DataWSExternals/ITWImportExportServiceASMX_V1_0.asmx?wsdl]]
31 31  )))
32 32  
33 33  == ==
34 34  
39 +{{info}}
40 +We also have new REST Calls, with the same Input Output formats:
41 +\\[[https:~~/~~/web.terraindex.com/datawsExternals/ITWImportExportRestService_V1_0/export>>https://web.terraindex.com/datawsExternals/ITWImportExportRestService_V1_0/export]]
42 +
43 +input as json: ExportRequest
44 +output as json: ExportResult
45 +
46 +as  POST  or  GET
47 +{{/info}}
48 +
35 35  == 1. Retreive all changed project from TerraIndex ==
36 36  
37 37  To retreive all changed project from the TerraIndex database since a specific timestamp, there is a webservice call you can do. This will return all project rows that have changes since the timestamp you send within the request.
... ... @@ -254,11 +254,12 @@
254 254  == 2. Retreive the project export from TerraIndex ==
255 255  
256 256  To request the export from TerraIndex we have a SOAP webservice. This webservice is called the ExportService, and it will provide a full project in TerraIndex Format.
257 -The format of the projectfile is documentated here: [[Documentation TerraIndex Export format - dsFieldProject.xsd>>Implementation documentation.Documentation TerraIndex Export format - dsFieldProject\.xsd.WebHome]]
271 +The format of the projectfile is documentated here: [[Documentation TerraIndex Export format - dsFieldProject.xsd>>Implementation documentation.For customers.Documentation TerraIndex Export format - dsFieldProject\.xsd.WebHome]]
258 258  
259 -To start connecting this webservice, you should use this URL of the Import Export Webservice:
260 -[[https:~~/~~/web.terraindex.com/DataWSExternals/ITWImportExportServiceASMX_V1_0.asmx>>https://web.terraindex.com/DataWSExternals/ITWImportExportServiceASMX_V1_0.asmx]]
273 +To start connecting this webservice, you should use this URL of the Import Export Webservice:
261 261  
275 +[[https:~~/~~/web.terraindex.com/DataWSExternals/ITWImportExportService_V1_0.svc>>https://web.terraindex.com/DataWSExternals/ITWImportExportService_V1_0.svc]]
276 +
262 262  With this URL many IDE’s can create a proxy for you, just by providing the URL. Once this proxy is created, you will have a few classes looking like the call in the image below.
263 263  
264 264  [[image:image-20200108-123431.png]]
... ... @@ -393,137 +393,7 @@
393 393  </soap:Envelope>
394 394  {{/code}}
395 395  
396 -
397 -== Zip Stream class ==
398 -
399 -If needed, this is the Zip Stream class you can use to extract the zipstream as used above:
400 -
401 -{{code language="Csharp" layout="LINENUMBERS"}}
402 -/// <summary>
403 -/// Helper class for compress en decompress of file data
404 -/// </summary>
405 -public static class ZipStreamHelper {
406 - #region Compress and encode
407 - /// <summary>
408 - /// Comprimeer een string en geeft deze terug in Base64 string.
409 - /// </summary>
410 - /// <param name="content">filecontent</param>
411 - /// <returns>gecomprimeerde string</returns>
412 - public static string CompressToBase64String(string content) {
413 - //string to byte[]
414 - byte[] contentArray = stringToByteArray(content);
415 - // Compress
416 - byte[] compressed = Compress(contentArray);
417 - return base64_encode(compressed);
418 - }
419 -
420 - /// <summary>
421 - /// Zet een string om naar een ByteArray
422 - /// </summary>
423 - /// <param name="content">filecontent</param>
424 - /// <returns>ByteArray</returns>
425 - public static byte[] stringToByteArray(string content) {
426 - System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding();
427 - return encoding.GetBytes(content);
428 - }
429 -
430 - /// <summary>
431 - /// comprimeer een ByteArray
432 - /// </summary>
433 - /// <param name="data">filedata als ByteArray</param>
434 - /// <returns>gecomprimeerde ByteArray</returns>
435 - public static byte[] Compress(byte[] data) {
436 - using(var compressedStream = new MemoryStream())
437 - using(var zipStream = new GZipStream(compressedStream, CompressionMode.Compress)) {
438 - zipStream.Write(data, 0, data.Length);
439 - zipStream.Close();
440 - return compressedStream.ToArray();
441 - }
442 - }
443 -
444 - /// <summary>
445 - /// Zet een ByteArray om naar een Base64 string
446 - /// </summary>
447 - /// <param name="data">gecomprimeerde ByteArray</param>
448 - /// <returns>Base 64 string</returns>
449 - public static string base64_encode(byte[] data) {
450 - if (data == null)
451 - return string.Empty;
452 - return Convert.ToBase64String(data);
453 - }
454 -
455 - /// <summary>
456 - /// Zet een string om naar een Base64 string
457 - /// </summary>
458 - /// <param name="data">string</param>
459 - /// <returns>Base 64 string</returns>
460 - public static string string_base64_encode(string data) {
461 - if (string.IsNullOrEmpty(data))
462 - return string.Empty;
463 -
464 - //string to byte[]
465 - byte[] contentArray = stringToByteArray(data);
466 - return base64_encode(contentArray);
467 - }
468 - #endregion
469 -
470 - #region Decompress and decode
471 - // Decode and decompress
472 - /// <summary>
473 - /// Decomprimeer een Base64 string naar een string
474 - /// </summary>
475 - /// <param name="contentBase64">GZIP Base64 string</param>
476 - /// <returns>string</returns>
477 - public static string DecompressBase64StringToString(string contentBase64) {
478 - // Decompress
479 - byte[] decoded = base64_decode(contentBase64);
480 - byte[] decompressed = Decompress(decoded);
481 -
482 - return byteArrayTostring(decompressed);
483 - }
484 -
485 - /// <summary>
486 - /// Zet een ByteArray om in een normale string
487 - /// </summary>
488 - /// <param name="data">ByteArray</param>
489 - /// <returns>string</returns>
490 - public static string byteArrayTostring(byte[] data) {
491 - System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
492 - return enc.GetString(data);
493 - }
494 -
495 - /// <summary>
496 - /// Zet een Base64 string om naar een ByteArray
497 - /// </summary>
498 - /// <param name="encodedData">Base64 string</param>
499 - /// <returns>gecomprimeerde ByteArray</returns>
500 - public static byte[] base64_decode(string encodedData) {
501 - byte[] encodedDataAsBytes = Convert.FromBase64String(encodedData);
502 - return encodedDataAsBytes;
503 - }
504 -
505 - /// <summary>
506 - /// Zet een gecomprimeerde ByteArray om in een ByteArray
507 - /// </summary>
508 - /// <param name="data">gecomprimeerde ByteArray</param>
509 - /// <returns>ByteArray (gedecomprimeerd)</returns>
510 - public static byte[] Decompress(byte[] data) {
511 - using(var compressedStream = new MemoryStream(data))
512 - using(var zipStream = new GZipStream(compressedStream, CompressionMode.Decompress))
513 - using(var resultStream = new MemoryStream()) {
514 - var buffer = new byte[4096];
515 - int read;
516 -
517 - while ((read = zipStream.Read(buffer, 0, buffer.Length)) > 0) {
518 - resultStream.Write(buffer, 0, read);
519 - }
520 -
521 - return resultStream.ToArray();
522 - }
523 - }
524 - #endregion
525 -}
526 -{{/code}}
411 +
527 527  )))
528 528  
529 529