# Migratie naar V1

Deze gids legt uit hoe je van V0 naar V1 kunt migreren voor de getroffen microservices.

# Veranderingen in de diensten

# Onderzoek naar verwijderde items

Ontvang eindpunten waarmee het retourneren van verwijderde items nu de volgende vragen beschikbaar hebben:

  • show_active - een boolean vlag (standaard true) om niet -gedefinieerde (d.w.z. actieve) items in de responslichaam te retourneren
  • show_deleted - een boolean vlag (standaard false) om verwijderde items in de responslichaam te retourneren.

Standaard worden actieve items alleen geretourneerd.

Alleen om verwijderde items te retourneren, vraagt u aan bij show_deleted waarde true en show_active waarde false.

Om zowel actieve als verwijderde items te retourneren, vraagt u zich aan bij show_deleted waarde true.

OPMERKING: Sommige eindpunten bevatten alleen de query van show_deleted, maar het gedrag is hetzelfde.

# Paginering

Paginering is toegevoegd aan verschillende routes in de services. Dit is zo grote reacties kunnen redelijk worden beheerd.

Paginatie voegt nieuwe vragen toe aan gepagineerde eindpunten:

+ ?page_limit=int
+ ?before=base64
+ ?after=base64

Waar niet eerder aanwezig, zullen nieuwe query's van order en sort_by ook aanwezig zijn op gepagineerde eindpunten:

+ ?sort_by=name
+ ?order=desc

Zie de documentatie voor meer informatie over deze vragen.

De responslichamen voor gepagineerde eindpunten zijn ook bijgewerkt met nieuwe toetsen:

+ paging: {
+     cursors: {
+       before: "MjUxYjYzNzAtNDk1MC1lNzExLTgxMDQtMDA1MDU2YjU3NDU5",
+       after: "OGExMTcxNzAtNDk1MC1lNzExLTgxMDQtMDA1MDU2YjU3NDU5"
+     },
+     previous: "http://ddb.arup.com/api/projects?before=MjUxYjYzNzAtNDk1MC1lNzExLTgxMDQtMDA1MDU2YjU3NDU5",
+     next: "http://ddb.arup.com/api/projects?after=MjUxYjYzNzAtNDk1MC1lNzExLTgxMDQtMDA1MDU2YjU3NDU5"
+   },
+   summary: {
+     estimate_count: 44
+  }

# Foutmeldingen

Clientfoutreacties bevatten niet langer de toets source:

 {
 details: "id \"632f6133-c5c4-4232-bdb6-c1a227a48b8e\" could not be found",
 msg: "Route Not Found",
- source: "body"
 }

# Parameterservice

Gebruik deze migratienotities om over te schakelen van v0 van de parameter-service-api naar v1. Deze sectie moet alle wijzigingen in de versies beschrijven.

# Verouderde eindpunten

De volgende eindpunten zijn verwijderd van V1:

# **GET /parameters/:parameter_id/revision**

Vervangen door nieuw eindpunt GET /entries/:entry_id/revisions (zie hieronder)

# **POST /parameters/:parameter_id/revision**

Vervangen door nieuw eindpunt PUT /entries (zie hieronder)

# **PATCH /parameters/:parameter_id/revision**

Vervangen door nieuw eindpunt PATCH /revisions (zie hieronder)

# Veranderingen over eindpunten

Zie hieronder voor de wijzigingen in elk eindpunt. Dit is op dezelfde manier gestructureerd als de API -documentatie (opens new window) voor gebruiksgemak.

Opmerking: niet alle eindpunten hebben wijzigingen aangebracht.

# Activa

# GET /assets

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • Response body omvat nu asset_type_id eigenschap in de toets asset_sub_type:
asset_sub_type: {
id: "a7154e9a-9dd4-4983-a900-c172a3366544",
name: "Domestic Hot Water",
* asset_type_id: "577cfd8d-8da0-4d78-b4a4-c81ab728d4bf",
parent_asset_sub_type_id: "f2ac4d11-6854-4763-b26e-2b2c664390cb"
}
  • De query van show_deleted_assets is vervangen. Alsjeblieft zie boven sectie voor meer informatie
* GET /assets?show_deleted_assets=true
* GET /assets?show_deleted=true

# POST /assets

  • Dit eindpunt accepteert nu een van asset_type_id of asset_sub_type_id in de aanvraaglichaam:
  • Als u asset_sub_type_id verstrekt, is het veld name optioneel en als links wordt gelaten, wordt automatisch ingevuld om te matchen met de naam asset_sub_type.
  • Als u alleen een asset_type_id verstrekt voor een activum met asset_sub_type eigenschap van true, ontvangt u een fout bij het plaatsen met een name die niet overeenkomt met een van de geldige subtype namen.
  • De responsorgaan omvat nu asset_type_id eigenschap in de toets asset_sub_type:
asset_sub_type: {
id: "a7154e9a-9dd4-4983-a900-c172a3366544",
name: "Domestic Hot Water",
* asset_type_id: "577cfd8d-8da0-4d78-b4a4-c81ab728d4bf",
parent_asset_sub_type_id: "f2ac4d11-6854-4763-b26e-2b2c664390cb"
}

# GET /assets/{asset_id}

  • De responsorgaan omvat nu asset_type_id eigenschap in de toets asset_sub_type:
 asset_sub_type: {
 id: "a7154e9a-9dd4-4983-a900-c172a3366544",
 name: "Domestic Hot Water",
 + asset_type_id: "577cfd8d-8da0-4d78-b4a4-c81ab728d4bf",
 parent_asset_sub_type_id: "f2ac4d11-6854-4763-b26e-2b2c664390cb"
 }
  • De query van show_deleted_assets is vervangen. Zie de boven sectie voor meer informatie
* GET /assets?show_deleted_assets=true
* GET /assets?show_deleted=true

# GET /assets/{asset_ids}/hierarchy

  • Elk hierarchy object in de responsbody bevat nu een asset_type_id toets:

# Inzendingen

Een invoer vertegenwoordigt een waarde voor een parameter. Inzendingen kunnen worden herzien. Momenteel zijn parameters beperkt tot maximum van één vermelding. In toekomstige versies zullen parameters de capaciteit hebben om meerdere vermeldingen te hebben. Zie de documentatie (opens new window) voor meer informatie.

Er zijn vier nieuwe routes met betrekking tot inzendingen:

# GET /entries

  • Dit eindpunt retourneert alle vermeldingen, dit is op zoek te gaan naar een reeks van parameter_id 's.

# PUT /entries

  • Dit eindpunt vervangt POST /parameters/:parameter_id/revision en kunt u een of meer vermeldingen maken of bijwerken.
  • Dit eindpunt accepteert een array van entries. Vereiste velden zijn entry_id, parameter_id, source_id, values. Momenteel heeft values een maximale lengte van één. Optionele toevoegingen zijn comment en location_in_source.

# GET /entries/:entry_id/revisions

  • Dit eindpunt vervangt GET /parameters/:parameter_id/revision en retourneert alle revisies voor een opgegeven entry_id.

# PATCH /revisions

  • Dit eindpunt vervangt het eindpunt PATCH /parameters/:parameter_id/revisions en stelt gebruikers in staat om de status van meerdere revisies bij te werken met betrekking tot meerdere verschillende ingangen tegelijk.
  • Gebruikers mogen alleen delaatsteherziening van een inzending
  • Gebruikers moeten de revision_id van de revisie opgeven om bij te werken
  • Als gebruikers de revisie bijwerken status naar qa status rejected a comment eigenschap is vereist.

# Parameter sets

Opmerking: parametersets zijn in alfa -release voor testen. Het wordt niet aanbevolen om deze routes in productie te gebruiken.

De naamgevingsconventies voor parametersets zijn gewijzigd van v0 in v1. Veranderingen zijn als volgt:

v0 Naamstaatconventie V1 naamgevingsconventie
parameter_set_type parameter_set_category
parameter_set parameter_set_type
parameter_set_instance parameter_set

Dit heeft geresulteerd in de update van routes op de volgende manier:

V0 Route V1 Route
GET /parameter_set_types GET /parameter_set_categories
GET /parameter_sets GET /parameter_set_types
POST /parameter_sets POST /parameter_set_types
DELETE /parameter_sets/:parameter_set_id DELETE /parameter_set_types/:parameter_set_type_id
POST /parameter_sets/:parameter_set_id/items POST /parameter_set_types/:parameter_set_type_id/items
DELETE //parameter_sets/:parameter_set_id/items/:item_type_id DELETE /parameter_set_types/:parameter_set_type_id/items/:item_type_id
GET /parameter_sets/:parameter_set_id/instances GET /parameter_sets
GET /parameter_sets/:parameter_set_id/instances/:instance_id GET /parameter_sets/:parameter_set_id
GET /parameter_sets/:parameter_set_id/instances/:instance_id/parameters GET /parameter_sets/:parameter_set_id/parameters

De sleutels over de responsorganen zijn op de relevante manier bijgewerkt. Bijvoorbeeld, een verzoek aan GET /parameter_set_categories (voorheen bekend als GET /parameter_set_types) zal een antwoord retourneren met:

{
- parameter_set_types: [ ... ]
+ parameter_set_categories: [ ... ]
}

Alle eindpunten moeten zich op een vergelijkbare manier gedragen (exclusief eindpunten hieronder beschreven).

# GET /parameter_sets

Dit eindpunt vervangt v0 endpoint GET /parameter_sets/:parameter_set_id/instances. Om de parameterinstellingen te filteren door de relevante parameter_set_type_id Dit wordt doorgegeven via een query op het eindpunt:

+ GET /parameter_sets?parameter_set_type_id=uuid

Dit retourneert alle parameter_sets van de opgegeven parameter_set_type_id.

# GET /parameter_sets/:parameter_set_id/parameters

Dit eindpunt bevat een verminderde reactie in vergelijking met de v0 -versie (GET /parameter_sets/:parameter_set_id/instances/:instance_id/parameters):

{
- parameter_set_instance_parameters: [
+  parameter_set_parameters: [
    {
      ...parameter,
      parameter_type: {
        id,
        name,
        data_type,
        global_parameter,
-       unit_type_id,
-       created_at,
-       deleted_at,
-       updated_at
      },
      parents: [
        {
          id,
          asset_sub_type,
          children,
          name,
          parent,
          asset_type: {
            id,
            name,
            parent_id,
-           asset_sub_type,
-           asset_type_group,
-           created_at,
-           deleted_at,
          },
-         project_id,
-         deleted_at,
        }
      ]
    }
  ],
  ... rest
}

# Parameters

# GET /parameters

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • De query van show_deleted_parameters is vervangen. Zie de boven sectie voor meer informatie
 - GET /parameters?show_deleted_parameters=true
 + GET /assets?show_deleted=true
  • De query van offset is verwijderd:
 - GET /parameters?offset=
  • De toets revision in de responsorgaan is omgedoopt tot selected_entry:

    {
      parameters: [
        {
          ... parameter,
    -    revision: { ... }
    +     selected_entry: { ... }
        },
        ...
      ]
    }
    
  • De toets selected_entry.source bevat een verminderd antwoord

 source: {
 id: "286a550e-00bc-4b1e-8e20-71f96b43e9c6",
 created_at: "2022-07-18T16:00:53.182Z",
-  updated_at: "2022-07-18T16:00:53.182Z",
-  deleted_at: null,
-  time: null,
 date_day: "15",
 date_month: "1",
 date_year: "2021",
 reference: "Assumption",
-  reference_id: "90803033-268a-ea11-8129-005056b50c57",
-  reference_table: "project",
-  reference_url: "dev.ddb.arup.com/api/project",
-  scope: "90803033-268a-ea11-8129-005056b50c57",
 title: "Assumption",
 url: "TBA",
 source_type: {
 id: "6a1292c7-a245-41cf-8872-46feb9a7fd11",
 name: "Assumption",
-  visible: true,
-  deleted_at: null
 }
 }
  • De toets selected_entry.created_by bevat een verminderd antwoord
 created_by: {
-  staff_id: 12345,
 staff_name: "Arup Employee Name",
 email: "[email protected]",
-  company_centre_arup_unit: "01-462 NOR Digital Services",
-  location_name: "Edinburgh Office",
-  grade_level: 3,
-  my_people_page_url: "https://arup-my.sharepoint.com/PersonImmersive.aspx?accountname=i:0%83.f%7cmembership%[email protected]"
 },
  • De toets selected_entry heeft geen updated_at, comment of location_in_source eigenschap.

# POST /parameters

  • De toets revision in de aanvraaglichaam is vervangen door entries, die een array accepteert.
  • Er is een optionele entry_id -toets in de entries post body:
    • Als u een nieuwe vermelding toevoegt aan eenonbeantwoordParameter, dit kan leeg worden gelaten en wordt automatisch gevuld met een nieuwe UUID.
    • Als u eenbeantwoordParameter, u moet de bestaande entry_id verstrekken om te herzien.

Dit is momenteel beperkt tot één item in de eigenschap entries.

  • De toets revision in de post -responsbody wordt nu hernoemd naar selected_entry
- revision: { ... }
+ selected_entry: { ... }

# GET /parameters/{parameter_id}

  • De query van show_deleted_parameters is vervangen. Zie de boven sectie voor meer informatie
 - GET /parameters/:parameter_id?show_deleted_parameters=true
 + GET /parameters/:parameter_id?show_deleted=true
  • De toets revision in de responsorgaan is omgedoopt tot selected_entry
 - revision: { ... }
 + selected_entry: { ... }
  • De toets selected_entry.source bevat een verminderd antwoord
 source: {
 id: "286a550e-00bc-4b1e-8e20-71f96b43e9c6",
 created_at: "2022-07-18T16:00:53.182Z",
-  updated_at: "2022-07-18T16:00:53.182Z",
-  deleted_at: null,
-  time: null,
 date_day: "15",
 date_month: "1",
 date_year: "2021",
 reference: "Assumption",
-  reference_id: "90803033-268a-ea11-8129-005056b50c57",
-  reference_table: "project",
-  reference_url: "dev.ddb.arup.com/api/project",
-  scope: "90803033-268a-ea11-8129-005056b50c57",
 title: "Assumption",
 url: "TBA",
 source_type: {
 id: "6a1292c7-a245-41cf-8872-46feb9a7fd11",
 name: "Assumption",
-  visible: true,
-  deleted_at: null
 }
 }
  • De toets selected_entry.created_by bevat een verminderd antwoord
 created_by: {
-  staff_id: 12345,
 staff_name: "Arup Employee Name",
 email: "[email protected]",
-  company_centre_arup_unit: "01-462 NOR Digital Services",
-  location_name: "Edinburgh Office",
-  grade_level: 3,
-  my_people_page_url: "https://arup-my.sharepoint.com/PersonImmersive.aspx?accountname=i:0%83.f%7cmembership%[email protected]"
 },
  • De toets selected_entry heeft geen updated_at, comment of location_in_source eigenschap.

# Boom

Er zijn verschillende nieuw eindpunt om boomhiërarchieën terug te geven. Zie de documentatie (opens new window) Voor meer informatie over deze eindpunten.

# GET /asset_tree

  • Nieuw eindpunt dat een activaboom retourneert door asset_id.

# GET /asset_type_tree

  • Nieuw eindpunt dat een actietype boom retourneert door asset_type_id.

# Soorten

# GET /asset_type_groups

# GET /asset_types

# GET /asset_types/{asset_type_id}/asset_sub_types

# GET /parameter_types

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • De name sleutel op de eigenschap default_unit in de responsorgaan is omgedoopt tot symbol:
 default_unit: {
 id: "b39e5bcf-cda6-49ed-8c0c-174d8daf8bc1",
 - name: "°C",
 + symbol: "°C",
 unit_type_id: "5391cd71-08f0-44f8-9dd2-6379a511dd29",
 unit_system_id: "50115948-140f-48fc-b5f2-c56e96869734"
 }

# GET /item_types

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • De query van offset is verwijderd.

# GET /unit_types

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • Elk unit_type object heeft een nieuwe unit_systems -toets, met de eenheidssystemen en eenheden die beschikbaar zijn voor dat specifieke type
 unit_types: [
 {
 id: "e8c3da00-5c20-45f1-a24c-0d657bcae032",
 name: "Geotechnics analysis material type",
 created_at: "2022-06-24T12:26:00.263Z",
 updated_at: "2022-06-24T12:26:00.263Z",
 deleted_at: null,
+ unit_systems: [
+ {
+ id: "5508a780-9f9f-4e6d-bc9c-a84607a5ba87",
+ name: "Drop-down list",
+ short_name: "Drop-down",
+ units: [
+ {
+ id: "892c32c1-808a-440a-8290-e05fdf5457ba",
+ symbol: "Mohr-coulomb, linear-elastic"
+ }
+ ]
+ }
+ ]
 }
 ]

# POST /unit_types

  • De responsorgaan unit_types voor de postmethode is op dezelfde manier bijgewerkt als de GET /unit_types - raadpleeg deze sectie voor details.

# GET /unit_types/:unit_type_id

  • De unit_type objectresponsorgaan omvat nu created_at, updated_at en deleted_at toetsen:
unit_type: {
 id: "38f045f3-ce7a-4a38-9fe7-f9d72d07a129",
 name: "Area",
+ created_at: "2021-12-22T13:07:17.214Z",
+ updated_at: "2021-12-22T13:07:17.214Z",
+ deleted_at: null,
 unit_systems: [ ... ]
 }

# Eenheden

# GET /units

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • De toets name in de responsorgaan is omgedoopt tot symbol:
 {
 id: "a3d5c386-9451-495e-9d3c-8ed152b1300f",
 created_at: "2019-05-10T13:45:08.000Z",
 deleted_at: "2020-06-18T11:25:21.000Z",
 - name: "m",
 + symbol: "m",
 updated_at: "2020-06-12T13:39:41.000Z",
 unit_type_id: "7a857f03-a222-405c-bc03-90d6dcaa8e0e",
 unit_system_id: "50115948-140f-48fc-b5f2-c56e96869734"
 }

# POST /units

  • De aanvraaglichaam accepteert niet langer een veld name. Dit zou nu symbol moeten zijn:
 {
 id: "cdbcb4d1-b6c1-436c-8126-737c29c9b2f4",
 - name: "°F",
 + symbol: "°F",
 unit_type_id: "b68caf97-e537-4ce4-b3bd-7131f0e72e93",
 unit_system_id: "50115948-140f-48fc-b5f2-c56e96869734"
 }

# GET /unit_systems

# Parameter metagegevenservice

Gebruik deze migratienotities om over te schakelen van v0 van de parameter-metadata-service-api naar v1. Dit document moet alle wijzigingen in de versies beschrijven.

# Verouderde eindpunten

Houd er rekening mee dat alle eindpunten in v0 van de API worden verouderd, zodat gebruikers moeten upgraden naar de volgende beschikbare versie

# Veranderingen over eindpunten

Zie hieronder voor de wijzigingen in elk eindpunt. Dit is op dezelfde manier gestructureerd als de API -documentatie (opens new window) voor gebruiksgemak.

Opmerking: niet alle eindpunten hebben wijzigingen aangebracht.

# Allow Custom

  • allow_custom is een nieuwe sleutel in de responsorgaan voor alle tag_type objecten geretourneerden eindpunten. Deze eigenschap betekent of een tag_type aangepaste tags accepteert of geen booleaanse waarde van true of false accepteert.
 tag_type: {
 id: "1e08965a-f116-4a6d-8bba-74290edc8c0a",
 created_at: "2019-05-10T13:45:08.000Z",
 deleted_at: "2019-05-10T13:45:08.000Z",
 name: "Calculation",
 updated_at: "2019-05-10T13:45:08.000Z",
 + allow_custom: false
 }

# Label

# GET /tags

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • Nieuwe vragen toegevoegd voor het ophalen van verwijderde tags. Alsjeblieft zie boven sectie voor meer informatie.
  • De query van item_limit is vervangen door de query page_limit als onderdeel van de paginering.
  • Er is een nieuwe query beschikbaar voor tag_scope, dit kan een of meer project_id zijn en zal alle tags retourneren met de gegeven tag_scope. Een lege (null) Query -stringfilters voor alle tags zonder scope, d.w.z. globale tags.
  • Er is een nieuwe query beschikbaar voor omit_global (bool). Indien waar, laat dit alle globale tags weg (die met tag_scope = null) uit het resultaat. De standaardwaarde voor deze query is false.
  • Het object tag_type in de responsorgaan voor een tag bevat nu een nieuwe sleutel van allow_custom. Alsjeblieft zie deze sectie voor meer informatie.

# POST /tags

  • Dit is een nieuw eindpunt waarmee gebruikers een nieuwe tag kunnen toevoegen.
  • Elke gebruiker kan een aangepaste tag posten die naar een project is gescheiden (d.w.z. een tag met tag_type met eigenschap allow_custom: true en tag_scope: your-project-uuid). Het posten van wereldwijde tags vereist admin -privileges.

# GET /tags/:tag_id

  • Het object tag_type in de responsorgaan bevat nu een nieuwe sleutel van allow_custom. Alsjeblieft zie deze sectie voor meer informatie.

# PATCH /tags/:tag_id

  • Dit is een nieuw eindpunt waarmee u een tag name kunt bijwerken.
  • Dit eindpunt vereist admin -privileges.

# DELETE /tags/:tag_id

  • Dit is een nieuw eindpunt waarmee u een tag kunt verwijderen door tag_id.
  • Dit eindpunt vereist admin -privileges.
  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • Nieuwe vragen toegevoegd voor het ophalen van verwijderde tag -links. Alsjeblieft zie boven sectie voor meer informatie.
  • Dit is een nieuw eindpunt voor gebruikers om een bestaande tag -link tussen bronnen te krijgen.
  • Dit is een nieuw eindpunt om een links bij te werken reference_table en/of reference_url tussen een tag en referentie.
  • Dit is een nieuw eindpunt waarmee gebruikers nieuwe tag_link 's kunnen plaatsen.

# Tagtype

# GET /tag_types

  • Paginatie toegevoegd. Zie de Begingedeelte voor meer informatie.
  • Nieuwe vragen toegevoegd voor het ophalen van verwijderde tagtypen. Alsjeblieft zie boven sectie voor meer informatie.
  • De tag_type objecten in de responsorgaan bevatten nu een nieuwe sleutel van allow_custom. Alsjeblieft zie deze sectie voor meer informatie.

# POST /tag_types

  • Dit is een nieuw eindpunt waarmee u een nieuwe tag_type kunt toevoegen.
  • Dit eindpunt vereist admin -privileges.

# GET /tag_types/:tag_type_id

  • Het object tag_type in de responsorgaan bevat nu een nieuwe sleutel van allow_custom. Alsjeblieft zie deze sectie voor meer informatie.

# PATCH /tag_types/{tag_type_id}

  • Dit is een nieuw eindpunt waarmee gebruikers een enkele tag_type kunnen bijwerken.

*Opmerking: dit eindpunt vereist beheerdersrechten. *

# DELETE /tag_types/{tag_type_id}
  • Nieuw eindpunt dat een enkel tagtype verwijdert met behulp van de tag_type_id als een vereiste query
  • Dit eindpunt vereist admin -privileges.

# Environment context service

Gebruik deze migratienotities om over te schakelen van v0 van de Environmental-Context-Service-api naar v1. Dit document moet alle wijzigingen in de versies beschrijven.

# Verouderde eindpunten

Houd er rekening mee dat alle eindpunten in v0 van deze API worden verouderd, zodat gebruikers moeten upgraden naar de volgende beschikbare versie

Last Updated: 13-9-2023 15:19:15