NAV
Shell HTTP JS PHP C# Java

serviceapi_v1 v1.0

Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.

Authentication

ExternalApi

Get all pages

Code samples

# You can also use wget
curl -X GET /app/documentation/pages \
  -H 'Accept: application/json' \
  -H 'api-version: string' \
  -H 'Authorization: API_KEY' \
  -H 'Tenant: API_KEY'

GET /app/documentation/pages HTTP/1.1

Accept: application/json
api-version: string


const headers = {
  'Accept':'application/json',
  'api-version':'string',
  'Authorization':'API_KEY',
  'Tenant':'API_KEY'
};

fetch('/app/documentation/pages',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Accept' => 'application/json',
    'api-version' => 'string',
    'Authorization' => 'API_KEY',
    'Tenant' => 'API_KEY',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','/app/documentation/pages', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }

    /// Make a dummy request
    public async Task MakeGetRequest()
    {
      string url = "/app/documentation/pages";
      var result = await GetAsync(url);
    }

    /// Performs a GET Request
    public async Task GetAsync(string url)
    {
        //Start the request
        HttpResponseMessage response = await Client.GetAsync(url);

        //Validate result
        response.EnsureSuccessStatusCode();

    }




    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

URL obj = new URL("/app/documentation/pages");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

GET /app/documentation/pages

Parameters

Name In Type Required Description
api-version query string false none
api-version header string false none

Example responses

200 Response

{
  "data": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string",
      "book": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string"
      },
      "chapter": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string"
      }
    }
  ]
}

Responses

Status Meaning Description Schema
200 OK Success ExternalPageLookupItemIEnumerableApiResponse
500 Internal Server Error Server Error string

Create new Page

Code samples

# You can also use wget
curl -X POST /app/documentation/pages \
  -H 'Content-Type: application/json-patch+json' \
  -H 'Accept: application/json' \
  -H 'api-version: string' \
  -H 'Authorization: API_KEY' \
  -H 'Tenant: API_KEY'

POST /app/documentation/pages HTTP/1.1

Content-Type: application/json-patch+json
Accept: application/json
api-version: string

const inputBody = '{
  "title": "string",
  "content": "string",
  "plainText": "string",
  "chapterId": "2a48aff7-27e7-4ab6-9471-1ee9c5632811",
  "canVerify": [
    "497f6eca-6276-4993-bfeb-53cbbbba6f08"
  ],
  "verificationPeriod": 0,
  "revisionIdSync": "058e6def-f960-4030-b1cc-9da651ba345e"
}';
const headers = {
  'Content-Type':'application/json-patch+json',
  'Accept':'application/json',
  'api-version':'string',
  'Authorization':'API_KEY',
  'Tenant':'API_KEY'
};

fetch('/app/documentation/pages',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'application/json-patch+json',
    'Accept' => 'application/json',
    'api-version' => 'string',
    'Authorization' => 'API_KEY',
    'Tenant' => 'API_KEY',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','/app/documentation/pages', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "/app/documentation/pages";

      string json = @"{
  ""title"": ""string"",
  ""content"": ""string"",
  ""plainText"": ""string"",
  ""chapterId"": ""2a48aff7-27e7-4ab6-9471-1ee9c5632811"",
  ""canVerify"": [
    ""497f6eca-6276-4993-bfeb-53cbbbba6f08""
  ],
  ""verificationPeriod"": 0,
  ""revisionIdSync"": ""058e6def-f960-4030-b1cc-9da651ba345e""
}";
      ExternalCreatePage content = JsonConvert.DeserializeObject(json);
      await PostAsync(content, url);


    }

    /// Performs a POST Request
    public async Task PostAsync(ExternalCreatePage content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(ExternalCreatePage content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

URL obj = new URL("/app/documentation/pages");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

POST /app/documentation/pages

Body parameter

{
  "title": "string",
  "content": "string",
  "plainText": "string",
  "chapterId": "2a48aff7-27e7-4ab6-9471-1ee9c5632811",
  "canVerify": [
    "497f6eca-6276-4993-bfeb-53cbbbba6f08"
  ],
  "verificationPeriod": 0,
  "revisionIdSync": "058e6def-f960-4030-b1cc-9da651ba345e"
}

Parameters

Name In Type Required Description
api-version query string false none
api-version header string false none
body body ExternalCreatePage false Page data in ExternalCreatePage model

Example responses

201 Response

{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string",
    "content": "string",
    "shelf": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "book": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "chapter": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "tags": [
      "string"
    ],
    "metadata": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "isVerified": true,
    "nextVerificationIn": 0,
    "lastVerifiedDate": "2019-08-24T14:15:22Z",
    "lastVerifiedBy": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "name": "string"
    }
  }
}

Responses

Status Meaning Description Schema
201 Created Created ExternalPageApiResponse
400 Bad Request Bad Request ProblemDetails
403 Forbidden Forbidden ProblemDetails
500 Internal Server Error Server Error string

Get a single Page

Code samples

# You can also use wget
curl -X GET /app/documentation/pages/{id} \
  -H 'Accept: application/json' \
  -H 'api-version: string' \
  -H 'Authorization: API_KEY' \
  -H 'Tenant: API_KEY'

GET /app/documentation/pages/{id} HTTP/1.1

Accept: application/json
api-version: string


const headers = {
  'Accept':'application/json',
  'api-version':'string',
  'Authorization':'API_KEY',
  'Tenant':'API_KEY'
};

fetch('/app/documentation/pages/{id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Accept' => 'application/json',
    'api-version' => 'string',
    'Authorization' => 'API_KEY',
    'Tenant' => 'API_KEY',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','/app/documentation/pages/{id}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }

    /// Make a dummy request
    public async Task MakeGetRequest()
    {
      string url = "/app/documentation/pages/{id}";
      var result = await GetAsync(url);
    }

    /// Performs a GET Request
    public async Task GetAsync(string url)
    {
        //Start the request
        HttpResponseMessage response = await Client.GetAsync(url);

        //Validate result
        response.EnsureSuccessStatusCode();

    }




    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

URL obj = new URL("/app/documentation/pages/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

GET /app/documentation/pages/{id}

Parameters

Name In Type Required Description
id path string(uuid) true Page Id
api-version query string false none
api-version header string false none

Example responses

200 Response

{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string",
    "content": "string",
    "shelf": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "book": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "chapter": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "tags": [
      "string"
    ],
    "metadata": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "isVerified": true,
    "nextVerificationIn": 0,
    "lastVerifiedDate": "2019-08-24T14:15:22Z",
    "lastVerifiedBy": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "name": "string"
    }
  }
}

Responses

Status Meaning Description Schema
200 OK Success ExternalPageApiResponse
403 Forbidden Forbidden ProblemDetails
404 Not Found Not Found string
500 Internal Server Error Server Error string

Create relation with external item in Page

Used in TemplatesApp

Code samples

# You can also use wget
curl -X POST /app/documentation/pages/{id}/references \
  -H 'Content-Type: application/json-patch+json' \
  -H 'Accept: application/json' \
  -H 'api-version: string' \
  -H 'Authorization: API_KEY' \
  -H 'Tenant: API_KEY'

POST /app/documentation/pages/{id}/references HTTP/1.1

Content-Type: application/json-patch+json
Accept: application/json
api-version: string

const inputBody = '{
  "knownApplication": 0,
  "application": "string",
  "relativeUrl": "string",
  "thirdPartyAppUrl": "string",
  "referencingEntityTitle": "string",
  "externalItemId": "0e1fce12-4246-4901-adef-a4db111e0a19",
  "itemId": "f11b669d-7201-4c21-88af-d85092f0c005"
}';
const headers = {
  'Content-Type':'application/json-patch+json',
  'Accept':'application/json',
  'api-version':'string',
  'Authorization':'API_KEY',
  'Tenant':'API_KEY'
};

fetch('/app/documentation/pages/{id}/references',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'application/json-patch+json',
    'Accept' => 'application/json',
    'api-version' => 'string',
    'Authorization' => 'API_KEY',
    'Tenant' => 'API_KEY',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','/app/documentation/pages/{id}/references', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }


    /// Make a dummy request
    public async Task MakePostRequest()
    {
      string url = "/app/documentation/pages/{id}/references";

      string json = @"{
  ""knownApplication"": 0,
  ""application"": ""string"",
  ""relativeUrl"": ""string"",
  ""thirdPartyAppUrl"": ""string"",
  ""referencingEntityTitle"": ""string"",
  ""externalItemId"": ""0e1fce12-4246-4901-adef-a4db111e0a19"",
  ""itemId"": ""f11b669d-7201-4c21-88af-d85092f0c005""
}";
      ExternalContentReference content = JsonConvert.DeserializeObject(json);
      await PostAsync(content, url);


    }

    /// Performs a POST Request
    public async Task PostAsync(ExternalContentReference content, string url)
    {
        //Serialize Object
        StringContent jsonContent = SerializeObject(content);

        //Execute POST request
        HttpResponseMessage response = await Client.PostAsync(url, jsonContent);
    }



    /// Serialize an object to Json
    private StringContent SerializeObject(ExternalContentReference content)
    {
        //Serialize Object
        string jsonObject = JsonConvert.SerializeObject(content);

        //Create Json UTF8 String Content
        return new StringContent(jsonObject, Encoding.UTF8, "application/json");
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

URL obj = new URL("/app/documentation/pages/{id}/references");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

POST /app/documentation/pages/{id}/references

Body parameter

{
  "knownApplication": 0,
  "application": "string",
  "relativeUrl": "string",
  "thirdPartyAppUrl": "string",
  "referencingEntityTitle": "string",
  "externalItemId": "0e1fce12-4246-4901-adef-a4db111e0a19",
  "itemId": "f11b669d-7201-4c21-88af-d85092f0c005"
}

Parameters

Name In Type Required Description
id path string(uuid) true Id of target page
api-version query string false none
api-version header string false none
body body ExternalContentReference false External content reference

Example responses

201 Response

{
  "itemId": "f11b669d-7201-4c21-88af-d85092f0c005",
  "title": "string",
  "content": "string",
  "relativeUrl": "string"
}

Responses

Status Meaning Description Schema
201 Created Created ExternalPageContentLink
403 Forbidden Forbidden string
404 Not Found Not Found string
500 Internal Server Error Server Error string

Remove relation to external item in page

Code samples

# You can also use wget
curl -X DELETE /app/documentation/pages/{id}/references/{externalItemId} \
  -H 'Accept: application/json' \
  -H 'api-version: string' \
  -H 'Authorization: API_KEY' \
  -H 'Tenant: API_KEY'

DELETE /app/documentation/pages/{id}/references/{externalItemId} HTTP/1.1

Accept: application/json
api-version: string


const headers = {
  'Accept':'application/json',
  'api-version':'string',
  'Authorization':'API_KEY',
  'Tenant':'API_KEY'
};

fetch('/app/documentation/pages/{id}/references/{externalItemId}',
{
  method: 'DELETE',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Accept' => 'application/json',
    'api-version' => 'string',
    'Authorization' => 'API_KEY',
    'Tenant' => 'API_KEY',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('DELETE','/app/documentation/pages/{id}/references/{externalItemId}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }




    /// Make a dummy request
    public async Task MakeDeleteRequest()
    {
      int id = 1;
      string url = "/app/documentation/pages/{id}/references/{externalItemId}";

      await DeleteAsync(id, url);
    }

    /// Performs a DELETE Request
    public async Task DeleteAsync(int id, string url)
    {
        //Execute DELETE request
        HttpResponseMessage response = await Client.DeleteAsync(url + $"/{id}");

        //Return response
        await DeserializeObject(response);
    }

    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

URL obj = new URL("/app/documentation/pages/{id}/references/{externalItemId}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

DELETE /app/documentation/pages/{id}/references/{externalItemId}

Parameters

Name In Type Required Description
id path string(uuid) true Id of page with reference
externalItemId path string(uuid) true External item id (also reference id)
api-version query string false none
api-version header string false none

Example responses

204 Response

{
  "statusCode": 0
}

Responses

Status Meaning Description Schema
204 No Content No Content NoContentResult
403 Forbidden Forbidden string
404 Not Found Not Found string
500 Internal Server Error Server Error string

Get all pages available for user

Code samples

# You can also use wget
curl -X GET /app/documentation/search?Query=string \
  -H 'Accept: application/json' \
  -H 'api-version: string' \
  -H 'Authorization: API_KEY' \
  -H 'Tenant: API_KEY'

GET /app/documentation/search?Query=string HTTP/1.1

Accept: application/json
api-version: string


const headers = {
  'Accept':'application/json',
  'api-version':'string',
  'Authorization':'API_KEY',
  'Tenant':'API_KEY'
};

fetch('/app/documentation/search?Query=string',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Accept' => 'application/json',
    'api-version' => 'string',
    'Authorization' => 'API_KEY',
    'Tenant' => 'API_KEY',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','/app/documentation/search', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }

    /// Make a dummy request
    public async Task MakeGetRequest()
    {
      string url = "/app/documentation/search";
      var result = await GetAsync(url);
    }

    /// Performs a GET Request
    public async Task GetAsync(string url)
    {
        //Start the request
        HttpResponseMessage response = await Client.GetAsync(url);

        //Validate result
        response.EnsureSuccessStatusCode();

    }




    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

URL obj = new URL("/app/documentation/search?Query=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

GET /app/documentation/search

Parameters

Name In Type Required Description
Query query string true none
FieldOption query SearchFieldOption false none
VerificationOption query SearchVerificationOption false none
api-version query string false none
api-version header string false none

Enumerated Values

Parameter Value
FieldOption 0
FieldOption 1
FieldOption 2
FieldOption 3
VerificationOption 1
VerificationOption 2
VerificationOption 3

Example responses

200 Response

{
  "data": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    }
  ],
  "message": "string"
}

Responses

Status Meaning Description Schema
200 OK Success ExternalPageInfoIEnumerableApiResponseWithMessage
500 Internal Server Error Server Error string

Get a single Shelf

Code samples

# You can also use wget
curl -X GET /app/documentation/shelves/{id} \
  -H 'Accept: application/json' \
  -H 'api-version: string' \
  -H 'Authorization: API_KEY' \
  -H 'Tenant: API_KEY'

GET /app/documentation/shelves/{id} HTTP/1.1

Accept: application/json
api-version: string


const headers = {
  'Accept':'application/json',
  'api-version':'string',
  'Authorization':'API_KEY',
  'Tenant':'API_KEY'
};

fetch('/app/documentation/shelves/{id}',
{
  method: 'GET',

  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});

<?php

require 'vendor/autoload.php';

$headers = array(
    'Accept' => 'application/json',
    'api-version' => 'string',
    'Authorization' => 'API_KEY',
    'Tenant' => 'API_KEY',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('GET','/app/documentation/shelves/{id}', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...

using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

/// <<summary>>
/// Example of Http Client
/// <</summary>>
public class HttpExample
{
    private HttpClient Client { get; set; }

    /// <<summary>>
    /// Setup http client
    /// <</summary>>
    public HttpExample()
    {
      Client = new HttpClient();
    }

    /// Make a dummy request
    public async Task MakeGetRequest()
    {
      string url = "/app/documentation/shelves/{id}";
      var result = await GetAsync(url);
    }

    /// Performs a GET Request
    public async Task GetAsync(string url)
    {
        //Start the request
        HttpResponseMessage response = await Client.GetAsync(url);

        //Validate result
        response.EnsureSuccessStatusCode();

    }




    /// Deserialize object from request response
    private async Task DeserializeObject(HttpResponseMessage response)
    {
        //Read body 
        string responseBody = await response.Content.ReadAsStringAsync();

        //Deserialize Body to object
        var result = JsonConvert.DeserializeObject(responseBody);
    }
}

URL obj = new URL("/app/documentation/shelves/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());

GET /app/documentation/shelves/{id}

Parameters

Name In Type Required Description
id path string(uuid) true Shelf Id
api-version query string false none
api-version header string false none

Example responses

200 Response

{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string",
    "books": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string",
        "chapters": [
          {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "title": "string",
            "pages": [
              {
                "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
                "title": "string"
              }
            ]
          }
        ]
      }
    ]
  }
}

Responses

Status Meaning Description Schema
200 OK Success ExternalShelfApiResponse
404 Not Found Not Found string
500 Internal Server Error Server Error string

Schemas

ExternalBook

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string",
  "chapters": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string",
      "pages": [
        {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "title": "string"
        }
      ]
    }
  ]
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none
chapters [ExternalChapter]¦null false none none

ExternalBookInfo

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string"
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none

ExternalChapter

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string",
  "pages": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    }
  ]
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none
pages [ExternalPageInfo]¦null false none none

ExternalChapterInfo

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string"
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none

ExternalContentReference

{
  "knownApplication": 0,
  "application": "string",
  "relativeUrl": "string",
  "thirdPartyAppUrl": "string",
  "referencingEntityTitle": "string",
  "externalItemId": "0e1fce12-4246-4901-adef-a4db111e0a19",
  "itemId": "f11b669d-7201-4c21-88af-d85092f0c005"
}

Properties

Name Type Required Restrictions Description
knownApplication KnownApplication false none
UserManagement = 0
Checklist = 1
Portal = 2
ChecklistManagement = 3
Documentation = 4
EquipmentCatalogue = 5
Barrier = 6
AlertValidation = 7
DataRegister = 8
ShoreViewer = 9
NotificationApp = 10
ElsaAutomationApp = 11
application string¦null false none none
relativeUrl string¦null false none none
thirdPartyAppUrl string¦null false none none
referencingEntityTitle string true none none
externalItemId string(uuid) true none none
itemId string(uuid) true none none

ExternalCreatePage

{
  "title": "string",
  "content": "string",
  "plainText": "string",
  "chapterId": "2a48aff7-27e7-4ab6-9471-1ee9c5632811",
  "canVerify": [
    "497f6eca-6276-4993-bfeb-53cbbbba6f08"
  ],
  "verificationPeriod": 0,
  "revisionIdSync": "058e6def-f960-4030-b1cc-9da651ba345e"
}

Properties

Name Type Required Restrictions Description
title string true none none
content string¦null false none none
plainText string¦null false none none
chapterId string(uuid) true none none
canVerify [string] true none none
verificationPeriod VerificationPeriod true none
OneMonth = 0
ThreeMonths = 1
SixMonth = 2
TwelveMonth = 3
revisionIdSync string(uuid) false none none

ExternalPage

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string",
  "content": "string",
  "shelf": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string"
  },
  "book": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string"
  },
  "chapter": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string"
  },
  "tags": [
    "string"
  ],
  "metadata": [
    {
      "key": "string",
      "value": "string"
    }
  ],
  "isVerified": true,
  "nextVerificationIn": 0,
  "lastVerifiedDate": "2019-08-24T14:15:22Z",
  "lastVerifiedBy": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "name": "string"
  }
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none
content string¦null false none none
shelf ExternalShelfInfo false none none
book ExternalBookInfo false none none
chapter ExternalChapterInfo false none none
tags [string]¦null false none none
metadata [StringStringKeyValuePair]¦null false none none
isVerified boolean false none none
nextVerificationIn integer(int32)¦null false none none
lastVerifiedDate string(date-time)¦null false none none
lastVerifiedBy ExternalPersonInfo false none none

ExternalPageApiResponse

{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string",
    "content": "string",
    "shelf": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "book": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "chapter": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    },
    "tags": [
      "string"
    ],
    "metadata": [
      {
        "key": "string",
        "value": "string"
      }
    ],
    "isVerified": true,
    "nextVerificationIn": 0,
    "lastVerifiedDate": "2019-08-24T14:15:22Z",
    "lastVerifiedBy": {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "name": "string"
    }
  }
}

Properties

Name Type Required Restrictions Description
data ExternalPage false none none

{
  "itemId": "f11b669d-7201-4c21-88af-d85092f0c005",
  "title": "string",
  "content": "string",
  "relativeUrl": "string"
}

Properties

Name Type Required Restrictions Description
itemId string(uuid) false none none
title string¦null false none none
content string¦null false none none
relativeUrl string¦null false none none

ExternalPageInfo

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string"
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none

ExternalPageInfoIEnumerableApiResponseWithMessage

{
  "data": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string"
    }
  ],
  "message": "string"
}

Properties

Name Type Required Restrictions Description
data [ExternalPageInfo]¦null false none none
message string¦null false none none

ExternalPageLookupItem

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string",
  "book": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string"
  },
  "chapter": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string"
  }
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none
book ExternalBookInfo false none none
chapter ExternalChapterInfo false none none

ExternalPageLookupItemIEnumerableApiResponse

{
  "data": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string",
      "book": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string"
      },
      "chapter": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string"
      }
    }
  ]
}

Properties

Name Type Required Restrictions Description
data [ExternalPageLookupItem]¦null false none none

ExternalPersonInfo

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "name": "string"
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
name string¦null false none none

ExternalShelf

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string",
  "books": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "title": "string",
      "chapters": [
        {
          "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          "title": "string",
          "pages": [
            {
              "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
              "title": "string"
            }
          ]
        }
      ]
    }
  ]
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none
books [ExternalBook]¦null false none none

ExternalShelfApiResponse

{
  "data": {
    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
    "title": "string",
    "books": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "title": "string",
        "chapters": [
          {
            "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
            "title": "string",
            "pages": [
              {
                "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
                "title": "string"
              }
            ]
          }
        ]
      }
    ]
  }
}

Properties

Name Type Required Restrictions Description
data ExternalShelf false none none

ExternalShelfInfo

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "title": "string"
}

Properties

Name Type Required Restrictions Description
id string(uuid) false none none
title string¦null false none none

KnownApplication

0


UserManagement = 0
Checklist = 1
Portal = 2
ChecklistManagement = 3
Documentation = 4
EquipmentCatalogue = 5
Barrier = 6
AlertValidation = 7
DataRegister = 8
ShoreViewer = 9
NotificationApp = 10
ElsaAutomationApp = 11

Properties

Name Type Required Restrictions Description
anonymous integer(int32) false none
UserManagement = 0
Checklist = 1
Portal = 2
ChecklistManagement = 3
Documentation = 4
EquipmentCatalogue = 5
Barrier = 6
AlertValidation = 7
DataRegister = 8
ShoreViewer = 9
NotificationApp = 10
ElsaAutomationApp = 11

Enumerated Values

Property Value
anonymous 0
anonymous 1
anonymous 2
anonymous 3
anonymous 4
anonymous 5
anonymous 6
anonymous 7
anonymous 8
anonymous 9
anonymous 10
anonymous 11

NoContentResult

{
  "statusCode": 0
}

Properties

Name Type Required Restrictions Description
statusCode integer(int32) false none none

ProblemDetails

{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}

Properties

Name Type Required Restrictions Description
additionalProperties any false none none
type string¦null false none none
title string¦null false none none
status integer(int32)¦null false none none
detail string¦null false none none
instance string¦null false none none

SearchFieldOption

0


Title = 0
Content = 1
Tags = 2
All = 3

Properties

Name Type Required Restrictions Description
anonymous integer(int32) false none
Title = 0
Content = 1
Tags = 2
All = 3

Enumerated Values

Property Value
anonymous 0
anonymous 1
anonymous 2
anonymous 3

SearchVerificationOption

1


Verified = 1
Unverified = 2
All = 3

Properties

Name Type Required Restrictions Description
anonymous integer(int32) false none
Verified = 1
Unverified = 2
All = 3

Enumerated Values

Property Value
anonymous 1
anonymous 2
anonymous 3

StringStringKeyValuePair

{
  "key": "string",
  "value": "string"
}

Properties

Name Type Required Restrictions Description
key string¦null false none none
value string¦null false none none

VerificationPeriod

0


OneMonth = 0
ThreeMonths = 1
SixMonth = 2
TwelveMonth = 3

Properties

Name Type Required Restrictions Description
anonymous integer(int32) false none
OneMonth = 0
ThreeMonths = 1
SixMonth = 2
TwelveMonth = 3

Enumerated Values

Property Value
anonymous 0
anonymous 1
anonymous 2
anonymous 3