Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Terminologies 

Organization

Archive Institute

Project

Database Schema

Template

Schema DDL

Entity

Database Table

Field

Table Column

Entity Structure

PK -> Fk relations

Content

Archive unit metadata

Digital file

Files attached with archive units

AMID

Unique identifier for every archive unit

Template/Entity APIs

List Projects

/api/project

Parameters

Name

Type

Default

Description

lite

Boolean

false

Only get id and name

onlyAdmin

Boolean

false

Only projects with admin rights

initializedArchives

Boolean

null

Only get projects with/without initialized archives, if null ignores archive state

Request URL

http://localhost/gui-server/api/project?lite=false&onlyAdmin=false&initializedArchives=true

Example Response

[
  {
    "id": "kurs",
    "name": "KURS",
    "description": "",
    "templateId": "bb4bd713-307e-4c2d-aa0e-872a1d4bf57e",
    "templateName": "ISAD(G)_Asta5_template-kurs",
    "organizationId": "9c8009ac-d5b2-43f5-ba82-d39bba61941f",
    "organizationName": "KURS",
    "organizationCode": "KURS",
    "archiveInitialized": true,
    "projectStandard": "ISADG",
    "systemTemplates": null
  }
  {
    "id": "kbenh",
    "name": "København",
    "description": "",
    "templateId": "d2ada7a6-0859-4000-a929-d98399c6f6ce",
    "templateName": "Starbas-kbenh-kbenh",
    "organizationId": "eb2159a2-d3c5-428c-8d7a-53686a58adbb",
    "organizationName": "STARBAS",
    "organizationCode": "STARBAS",
    "archiveInitialized": true,
    "projectStandard": "STARBAS",
    "systemTemplates": null
  }
]

Get Project

/api/project/{projectId}

Request URL

http://localhost/gui-server/api/project/kurs

Example Response

{
  "id": "kurs",
  "name": "KURS",
  "description": "",
  "templateId": "bb4bd713-307e-4c2d-aa0e-872a1d4bf57e",
  "templateName": "ISAD(G)_Asta5_template-kurs",
  "organizationId": "9c8009ac-d5b2-43f5-ba82-d39bba61941f",
  "organizationName": "KURS",
  "organizationCode": "KURS",
  "archiveInitialized": true,
  "projectStandard": "ISADG",
  "systemTemplates": null
}

Get Project Entity by Entity Name

/api/project/{projectId}/template/entity

Parameters

Name

Type

Default

Description

name

String

Not default must be provided

Entity name ignoring case

getFields

Boolean

true

Should include entity fields or not

Request URL

http://localhost/gui-server/api/project/kurs/template/entity?name=arkiv&getFields=true

Example Response

[
  {
    "id": "335476d5-1c3a-4191-aed9-6f8394388473",
    "name": "ARKIV",
    "description": "",
    "displayName": "Arkiv",
    "templateId": "bb4bd713-307e-4c2d-aa0e-872a1d4bf57e",
    "fields": [
      {
        "id": "818db395-ca3f-47e3-8cc6-3566681a0888",
        "name": "_amid",
        "displayName": null,
        "description": null,
        "type": "uuid",
        "feature": "objectId",
        "length": null,
        "primaryKey": false,
        "generatedPrimaryKey": false,
        "unique": true,
        "nullable": false,
        "editable": false,
        "sequence": 0,
        "entityId": "335476d5-1c3a-4191-aed9-6f8394388473",
        "codeTableReference": null,
        "logSettings": {
          "logCreate": true,
          "logUpdate": true,
          "logDelete": true
        },
        "pattern": null,
        "foreignKey": false,
        "inherits": false,
        "initialValue": null,
        "allowedEntityNames": null,
        "translations": []
      },
      ...
    ],
    "isJunction": false,
    "logSettings": {
      "logCreate": true,
      "logUpdate": true,
      "logDelete": true
    },
    "isArchiveRoot": true,
    "isGlobalMember": false,
    "features": [],
    "searchSettings": {
      "isSearchable": true,
      "includeParticipantForSearch": true,
      "includeInheritedParticipantForSearch": false,
      "includeRestrictionForSearch": true,
      "includeInheritedRestrictionForSearch": false,
      "includeTagForSearch": true,
      "includeInheritedTagForSearch": false
    },
    "translations": [
      {
        "languageCode": "en",
        "id": "5c296bdf-3a28-4a3b-95f1-8485452c768e",
        "displayName": "",
        "description": ""
      },
      ...
    ]
  }
]

List Member Entities

/api/project/{projectId}/template/entity-structure/owner/{entityId}

Request URL

http://localhost/gui-server/api/project/kurs/template/entity-structure/owner/335476d5-1c3a-4191-aed9-6f8394388473

Example Response

[
  {
    "id": "ec13d394-5efc-48aa-a25c-ad31e5fa5c95",
    "owner": {
      "id": "335476d5-1c3a-4191-aed9-6f8394388473",
      "name": "ARKIV",
      ...
    },
    "member": {
      "id": "ecdeff7c-b2f0-41b0-bbe9-e9dfa5d0b0df",
      "name": "LOGG",
      ...
    },
    "links": [
      {
        "id": "c3a612ec-220a-4e27-9176-5929178b3a6b",
        "owner": {
          "id": "7389a042-8860-49a3-b28b-ed26f0eaab18",
          "name": "arkivid",
          ...
        },
        "member": {
          "id": "8f10366a-1da7-4b3e-add0-223b527ff5fd",
          "name": "arkivid",
          ...
        },
        "populateDuringImport": false
      }
    ],
    "createIndex": true,
    "isMemberSearchable": true
  },
  ...
]

List Owner Entities

/api/project/{projectId}/template/entity-structure/member/{entityId}

Request URL

http://localhost/gui-server/api/project/kurs/template/entity-structure/member/ecdeff7c-b2f0-41b0-bbe9-e9dfa5d0b0df

Example Response

[
  {
    "id": "ec13d394-5efc-48aa-a25c-ad31e5fa5c95",
    "owner": {
      "id": "335476d5-1c3a-4191-aed9-6f8394388473",
      "name": "ARKIV",
      ...
    },
    "member": {
      "id": "ecdeff7c-b2f0-41b0-bbe9-e9dfa5d0b0df",
      "name": "LOGG",
      ...
    },
    "links": [
      {
        "id": "c3a612ec-220a-4e27-9176-5929178b3a6b",
        "owner": {
          "id": "7389a042-8860-49a3-b28b-ed26f0eaab18",
          "name": "arkivid",
          ...
        },
        "member": {
          "id": "8f10366a-1da7-4b3e-add0-223b527ff5fd",
          "name": "arkivid",
          ...
        },
        "populateDuringImport": false
      }
    ],
    "createIndex": true,
    "isMemberSearchable": true
  },
  ...
]

Content/Data APIs

List Contents

POST /api/content/{projectId}/entity/{entityName}/search

Parameters

Name

Type

Default

Description

firstResult

Int

Not default must be provided

Offset

maxResults

Int

true

Size

sortParamList

String[]

[_amid]

Sort fields

Body

Optional search condition as a JSON Object. This condition can be of 4 types.

Type

Operators
(Depends on the field type)

Example

Binary

  • EQUALS

  • NOT_EQUAL

  • CONTAINS

  • STARTS_WITH

  • ENDS_WITH

  • NOT_LIKE

  • GREATER_THAN

  • GREATER_THAN_EQUAL

  • LESS_THAN

  • LESS_THAN_EQUAL

{
  "type": "binary",
  "value1": {
    "type": "column",
    "columnName": "arkivid",
    "castAs": null
  },
  "operator": "EQUALS",
  "value2": {
    "type": "direct",
    "value": "319f07ba-e894-4a31-a731-62bc3cd18072",
    "castAs": "uuid"
  }
}

Unitary

  • ISNULL

  • NOT_NULL

{
  "type": "unary",
  "value": {
    "type": "column",
    "columnName": "arkivid",
    "castAs": null
  },
  "operator": "NOT_NULL"
}

List

  • IN

  • NOT_IN

{
  "type": "list",
  "column": {
    "type": "column",
    "columnName": "arkivid",
    "castAs": null
  },
  "listOperator": "IN",
  "values": {
    "type": "direct",
    "value": [
      "319f07ba-e894-4a31-a731-62bc3cd18072"
    ],
    "castAs": "uuid"
  }
}

Combination

  • AND

  • OR

{
  "type": "combination",
  "conditionsToCombine": [
    {
      "type": "list",
      "column": {
        "type": "column",
        "columnName": "arkivid",
        "castAs": null
      },
      "listOperator": "IN",
      "values": {
        "type": "direct",
        "value": [
          "319f07ba-e894-4a31-a731-62bc3cd18072"
        ],
        "castAs": "uuid"
      }
    },
    {
      "type": "unary",
      "value": {
        "type": "column",
        "columnName": "navn",
        "castAs": null
      },
      "operator": "NOT_NULL"
    }
  ],
  "combiner": "AND"
}

Request URL

http://localhost/gui-server/api/project/kurs/template/entity?name=arkiv&getFields=true

Example Request Body

{
  "type": "list",
  "column": {
    "type": "column",
    "columnName": "arkivid",
    "castAs": null
  },
  "listOperator": "IN",
  "values": {
    "type": "direct",
    "value": [
      "319f07ba-e894-4a31-a731-62bc3cd18072"
    ],
    "castAs": "uuid"
  }
}

Example Response

[
  {
    "_amid": "21124e96-66cb-4cf3-88e5-1b3591e02ef3",
    "identifikator": "A-1011",
    "innhold": "Vår største styrke er evnen til å tiltrekke oss og beholde noen av de beste utviklerne i Dhaka - et enormt spennende arbeidsmarked.  Vi kan derfor skaffe erfarne seniorutviklere med kompetanse det nesten er umulig å finne i Norge - og det til en kostnad langt lavere enn lokale ansettelser eller innleide konsulenter.",
    "navn": "Oslo ferieleir",
    "created": "2023-06-21T08:48:46.500+00:00",
    "created_by": "sys_admin",
    "updated": "2024-09-12T07:46:11.442+00:00",
    "updated_by": "sys_admin",
    "kasskode": null,
    "arkivid": "319f07ba-e894-4a31-a731-62bc3cd18072",
    "merknad": null,
    "sluttdato": "1993.05.01",
    "startdato": "1975",
    "presisjon": "E",
    "omfang": null,
    "omfangenhet": null,
    "ordningsgrad": "C",
    "ordnetav": null,
    "ordnetdato": null,
    "katalogisering": null,
    "katalogmedium": null,
    "katalogreferanse": null,
    "asta5urn": "no-KURS_arkiv_000000000109",
    "depotstatus": "AV",
    "bevarinsgstid": 0,
    "kassasjonsar": null,
    "ispublishenabled": true,
    "fargebilde": false,
    "bunnmateriale": "0",
    "teknikk": "0",
    "fysisktilstand": "0",
    "beskrivelse": null,
    "planlagtkonservering": null,
    "bredde": null,
    "hoyde": null,
    "malestokk": null,
    "teknikkmerknad": null,
    "lokasjon": "SAO",
    "arkivlast": false,
    "date": null
  }
]
  • No labels