DigiOffice Gateway Web Services

<back to all web services

GetProjects

Requires Authentication
The following routes are available for this service:
GET POST/api/projects
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class RegistrationProfileFieldValue:
    document_field_i_d: Optional[str] = None
    value: Optional[str] = None
    shadow_value: Optional[str] = None
    is_modified_by_user: Optional[bool] = None


@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetProjects(IFilterRequest):
    search_criteria: Optional[str] = None
    page_size: Optional[int] = None
    page_number: Optional[int] = None
    order_by: Optional[str] = None
    active: Optional[bool] = None
    registration_profile_field_i_d: Optional[str] = None
    dependable_fields: Optional[List[RegistrationProfileFieldValue]] = None

Python GetProjects DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/projects HTTP/1.1 
Host: digiofficeapigateway.deltares.nl 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	SearchCriteria: String,
	PageSize: 0,
	PageNumber: 0,
	OrderBy: String,
	Active: False,
	DependableFields: 
	[
		{
			Value: String,
			ShadowValue: String,
			IsModifiedByUser: False
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

[
	{
		ID: 0,
		Number: String,
		Name: String,
		Description1: String,
		Description2: String,
		City: String,
		Active: False
	}
]