The Bizzdesign Open API is available in Horizzon. The Open API can be used for the following:
Data enrichment
Data enrichment enables you to enrich your model data with sets of object attributes (data blocks) of which the values can be edited in Horizzon. These sets of attributes are defined in shared model packages in Enterprise Studio, in data block definitions. Instead of or in addition to manually doing this, the Open API can be used. The API allows an authorized client application to directly create, modify and delete data block definitions and edit data block values. Data enrichment can be used for all metamodels.
Model data enrichment using data blocks
Architecture automation
Architecture automation supports including externally stored and managed objects and relations in shared model packages. The Bizzdesign Open API allows an authorized client application to add collections of entities and links from an external source, and incorporate them seamlessly in a model package in Enterprise Studio. In the Open API you can specify for which model packages the external data should be available. After that, the data will automatically be available in these model packages when they are opened. Including external data can only be used in the context of ArchiMate® modeling.
Including external data in model packages
Data policies
Data policies are used to define rules for maintaining the content of data blocks. Contributor users and groups can be assigned as editors for data blocks. Optionally, update schedules can be configured for data blocks, which will generate periodic data tasks prompting editors to maintain that data block. The open API can be used for managing data policies. This includes assigning editors to data blocks and setting up update schedules for data blocks. Consumer users and groups can be assigned as reader for data blocks, making data blocks readable to a selected group of users.
Setting up data policies for data blocks
Audit event logging
Important events in Horizzon are logged and stored for easy retrieval and inspection. These include system events, external events, and user-generated events. The Open API can be used to access the Horizzon events audit log information.
Horizzon audit log
Required roles
Administrator or System Administrator
On this page:
Creating a named API client
To be able to use the Bizzdesign open API, one or more named API clients must be created in Horizzon. Every API client has a unique identifier (the Client ID) and an associated secret key that can be used to request access tokens to authenticate with the API. Different types of permissions can be set per API client to determine the type of access to the data.
Creating a named API client for the Bizzdesign Open API
Adding IP allowlists
To further limit access to the Bizzdesign Open API, you can add a range of IP addresses for which access to the Open API is allowed. This is optional.
- In the Horizzon sidebar menu, click Settings.
- In Open API allowlist, select Limit access to Open API.
- In Allowed IP4v and/or IPv6 ranges, specify the IP ranges.
Any IP address that does not belong to the specified ranges will be rejected. You can add the ranges in one of both fields, depending on your preference. To add multiple ranges in a field, add them separated by a comma. There is no need to add the same range(s) to both fields, but you can of course use both fields to specify different ranges. The IP ranges must be in CIDR notation. Examples:
IPv4: 147.88.135.144/28, 148.77.135.144/22, .....
IPv6: 2001:db8::/123, 2002::1234:abcd:ffff:c0a8:101/64, .....

- Click Apply to save the changes.
Requesting an API access token
The generated API client credentials can be used to create a temporary access token to authenticate your API calls. For authentication OAuth 2 is used, a modern standard for securing access to APIs. The token is created by sending a POST request to a URL with the parameters shown below. The URL you need to use for requesting the access token depends on the domain setup your environment currently is using.
2-domain setup, use :
https://<orgname>.bizzdesign.cloud/oauth/token
1-domain setup, use :
https://<orgname>.horizzon.cloud/oauth/token
If you are not sure which domain setup you are currently using, you can check this by entering the following URL in your web browser:
https://<orgname>.horizzon.cloud/info
If serverUri and htmlUri have different URLs, you are using the 2-domain setup. If the URL is identical for both, you are using the 1-domain setup. Example of using the 2-domain setup:

Parameters:
Key | Value |
---|
grant_type | client_credentials |
client_id | <generated Client ID> |
client_secret | <generated secret> |
These parameters can either be set as query parameters in the URL or in the body using x-www-form-url encoded data. Possible return values are:
Response code | Body | Description |
---|
200 | Access token in RFC 7519 format (JWT) | Relevant attributes are access_token (which contains the token used to authenticate to the API) and expires_in (lifetime of the access token, in seconds). The access token uses the JSON Web Token format defined in RFC 7519. |
400 | JSON-formatted error message | Invalid request |
401 | empty | The combination of client_id and client_secret is invalid |
403 | empty | Your current license level does not cover use of the Open API |
Below is a simple example using Curl, assuming your Horizzon environment is normally accessed via
https://<orgname>.horizzon.cloud/
and you are using the 1-domain setup.
curl -X POST -H "Content-Type: application/x-www-form-urlencoded"
--data-urlencode "grant_type=client_credentials"
--data-urlencode "client_id=CustomerClientID"
--data-urlencode "client_secret=CustomerClientSecret"
https://<orgname>.horizzon.cloud/oauth/token
curl -X POST -H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'client_id=CustomerClientID' \
--data-urlencode 'client_secret=CustomerClientSecret' \
https://<orgname>.horizzon.cloud/oauth/token
Submitting requests to the Open API
Once a valid access token is obtained requests can be submitted to the Open API using the following URL:
https://<orgname>.horizzon.cloud/api/<version>/<API-call>
Where <version>
represents the API version identifier. It may change with every new version of the Open API.
The identifier associated with the latest Open API version is: 2.0
So, the API is now reachable via https://<orgname>.horizzon.cloud/api/2.0
The access token is used as a bearer token, which means it should be sent in the Authorization: header, with the value of the header set to "Bearer <tokenvalue>". An example using Curl to request a list of all collaborations in JSON format:
curl -H "Accept: application/json" \
-H "Authorization: Bearer ReplaceThisWithTheBearerTokenRetrievedInThePreviousStep" \
https://<orgname>.horizzon.cloud/api/<version>/collaborations
Finding type names
When using the Bizzdesign Open API for requesting elements, their type names are needed to access the correct information. There are various ways for finding the type name. For more information, please refer to Finding element type names.
Open API documentation
openapi: 3.0.3
info:
title: Bizzdesign Open API - 2
description: |2-
<small>Please note that this document refers to <i>data blocks</i> which is the new term for what was previously referred to as <i>documents</i>.</small><p>Bizzdesign Enterprise Studio allows invited users to collaboratively model architectural structural objects, store these on Horizzon, and publish them to selected user groups.<br><br> Part of this collaborative process is managing a set of properties for each modeled object. Property values are assigned in Enterprise Studio, and stored with the object on Horizzon. Horizzon will display their values with the object, but does not allow changing them.</p> <p>This API allows clients to:<ul><li>extend and enrich architectures managed by the Bizzdesign toolset</li> <li>set up data policies to manage the access to and maintenance of data blocks</li> <li>retrieve Horizzon event log information</li></ul></p> <h3><u>Data enrichment</u></h3><p>On top of these read-only properties Horizzon supports additional object attributes of which the values can be edited in Horizzon itself. These attributes are defined in a <i>data block definition</i>, of which instances (aka <i>data blocks</i>) can be attached to architectural structural elements. This API allows an authorized client application to directly create, modify and delete data block definitions and data blocks, enriching the architecture with additional data that is visible and editable in (and only in) Horizzon.</p><h3><u>Architecture automation</u></h3><p>The architecture managed by the Bizzdesign toolset can also be extended with architectural elements that are managed outside of this toolset. This API allows an authorized client application to add <i>collections</i> of <i>entities</i> and <i>links</i> from an external source, and incorporate them seamlessly in an architecture managed in Enterprise Studio. These entities themselves can be assigned additional properties using data enrichment.</p><small>Please note that all calls to this API may be subject to <i>rate limiting</i>, causing them to return a 429 status code ("Too Many Requests"). </small>
<h3><u>Data policies</u></h3><p>Data policies are used to define rules for accessing and maintaining the content of a data block. This allows users and groups with the contributor role to be assigned as <i>editors</i> for data blocks as well as users and groups with the consumer role to be assigned as <i>readers</i> for data blocks. Optionally, data blocks can also be assigned an <i>update schedule</i> which will generate periodic <i>data tasks</i> prompting editors to maintain that data block.</p> <h4>Editors and Readers</h4> <p>Users and groups may be assigned as editors for objects and data blocks, which will allow them to edit the content of a data block. Alternatively, users and groups can be assigned as readers which will allow them to only view the content of a data block. This API allows editors and readers to either be assigned for an object or for a specific data block within an object. Editors and readers assigned for an object will be treated as default editors and readers for all the data blocks within the object's scope. Assigning editors and readers for a data block will override any default set at the object level.</p> <h4>Update schedules</h4> <p>A data block may be assigned an update schedule to indicate when and how often the data block should be maintained by its editors. When this is defined, <i>data maintenance</i> workflows will be created within the system and data tasks will be generated to prompt the data block's editors to maintain the data block.</p>
<h3><u>Audit event logging</u></h3><p>Important events in Horizzon are logged and stored for easy retrieval and inspection. These include system events, external events, and user-generated events. The Open API can be used to access the Horizzon events audit log information.</p>
contact:
name: Bizzdesign
url: https://bizzdesign.com/
version: 2.0.0
externalDocs:
description: Bizzdesign online documentation
url: https://support.bizzdesign.com/beskb.open_api
servers:
- url: /api/2.0
tags:
- name: data block definition
description: A data block definition describes a group of attributes that can be
instantiated (as a data block) and linked to an architectural structural element
(e.g. an Enterprise Studio object).
- name: data block
description: A data block is a group of attribute values that conforms to a data
block definition and is linked to an architectural structural element (e.g. an
Enterprise Studio object).
- name: object
description: An object represents an architectural structural element in a model
package (i.e. an Enterprise Studio object).
- name: collaboration
description: A collaboration is a Horizzon entity that allows invited users to collaboratively
model architectural structural data stored in a model package or project.
- name: repository
description: A repository hosts a model package (aka 'master' collaboration) and
projects based on this model package (if applicable), and also collections if
available. These collections are available in each model package and associated
projects.
- name: collection
description: A collection contains entities and links.<br>These paths use external
IDs (Strings) to identify collections, entities and links.
- name: container
description: A container is a subdivision of a collection, and contains entities
belonging to a certain domain, and links. The number of elements a container can
hold is limited to 5000.<br>These paths use external IDs (Strings) to identify
collections, entities and links.
- name: entity
description: An entity represents a structural element.<br>These paths use external
IDs (Strings) to identify collections, entities and links.
- name: link
description: A link represents a relationship between two entities (or an entity and an object).
The number of links that may be attached to an entity is limited to 500.<br>
These paths use external IDs (Strings) to identify collections, entities and links.
- name: entity data block
description: An entity data block is like a data block, but linked to an architectural
entity that is managed outside of Enterprise Studio.<br>These paths use external
IDs (Strings) to identify collections, entities and links.
- name: link data block
description: A link data block is like a data block, but linked to an architectural
link that is managed outside of Enterprise Studio.<br>These paths use external
IDs (Strings) to identify collections, entities and links.
- name: bulk
description: Creating/updating/deleting multiple entities or links at once.
- name: editor
description: Editors are users or groups that are allowed to view and edit particular
data blocks. Editors can either be defined for an object, or directly for a data
block. If editors are defined for an object, then these will be treated as default
editors which will be inherited by all data blocks within the object. If editors
are set up for a specific data block within an object, then this will override
any default editors set at the object level for that data block.<p><i>(Please
note that by default only a maximum combination of 8 users and groups may be assigned
as editors within a data policy. If this limit is exceeded a 400 "Bad Request"
status code will be returned.)</i></p>
- name: reader
description: Readers are users or groups that are allowed to view particular data
blocks. Readers can either be defined for an object, or directly for a data block.
If readers are defined for an object, then these will be treated as default readers
which will be inherited by all data blocks within the object. If readers are set
up for a specific data block within an object, then this will override any default
readers set at the object level for that data block.<p><i>(Please note that by
default only a maximum combination of 8 users and groups may be assigned as readers
within a data policy. If this limit is exceeded a 400 "Bad Request" status code will
be returned.)</i></p>
- name: data update schedule
description: A data update schedule defines when and how often data blocks should
be updated. A start date and a repeat pattern is specified for a given data block.
Once created, data tasks will be created and assigned to all editors of the given
data block. <p><i>(Please note that depending on the system configuration that
there may be a maximum limit to the amount of update schedules that can be
stored. If such a limit is exceeded a 403 "Forbidden" status code will be returned
detailing the exact limit.) </i></p>
- name: audit event
description: A log of important events that have occurred in Horizzon. Audit events
can be retrieved when a client has admin permissions.
paths:
/collaborations:
get:
tags:
- collaboration
summary: Retrieve all collaborations
description: Retrieve a list of all available collaborations.
operationId: getCollaborations
responses:
200:
description: The request was successful. The response body contains a JSON
array of collaborations. This array might be empty.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Collaboration'
401:
$ref: '#/components/responses/401'
/objects:
get:
tags:
- object
summary: Retrieve all objects of a specified type
description: Retrieve a list of all Enterprise Studio objects of a certain type,
located in the collaboration specified.
operationId: getObjects
parameters:
- $ref: '#/components/parameters/CollaborationLongId'
- name: modelId
in: query
description: A UUID that identifies a parent model (cannot be combined with
layerId).
schema:
type: string
example: '1b65946f-461f-eb11-82d0-066d32674111'
- name: layerId
in: query
description: A UUID that identifies a parent scheme (cannot be combined with
modelId).
schema:
type: string
example: '3a65946f-461f-eb11-82d0-066d32674111'
- name: type
in: query
description: The type of the objects to retrieve (e.g. 'ArchiMate:ApplicationComponent').
required: true
schema:
type: string
example: 'ArchiMate:ApplicationComponent'
- name: updatedAfter
in: query
description: A date/time in ISO format (e.g. '2020-03-21T16:49:31.427Z').
Only objects that were updated after this moment are returned. Please note
that an object is considered updated when either the object itself, or any
of its associated data blocks was updated.
schema:
type: string
example: '2020-03-21T16:49:31.427Z'
- name: includeMetrics
in: query
description: When true, the values for metrics of the returned objects will
be included in the response.
schema:
type: boolean
default: false
- name: includeProfiles
in: query
description: When true, the values for profiles of the returned objects will
be included in the response.
schema:
type: boolean
default: false
- name: includeExternalIds
in: query
description: When true, the external ids of the returned objects will
be included in the response.
schema:
type: boolean
default: false
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
200:
description: The request was successful. The response body is a JSON object,
containing an array of objects (and some additional data). This array
might be empty. Note that although data blocks associated with an object
can be requested separately, they are returned also in this response.
The 'updatedAtAggregated' timestamp differs from 'updatedAt' in that it
contains the most recent timestamp from either the object or one of its
data blocks (and as such is used when filtering using the 'updatedAfter'
parameter).
content:
application/json:
schema:
$ref: '#/components/schemas/Objects'
401:
$ref: '#/components/responses/401'
/objects/{objectId}/{namespace}/{name}:
get:
tags:
- data block
summary: Retrieve a data block attached to an object
description: Retrieve a data block attached to an architectural structural object
(i.e. an Enterprise Studio object)
operationId: getObjectDataBlock
parameters:
- $ref: '#/components/parameters/CollaborationLongId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful. The response body contains the
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
/schemas:
get:
tags:
- data block definition
summary: Get all data block definitions
description: Retrieve a list of all available data block definitions.
operationId: getDataBlockDefinitions
responses:
200:
description: The request was successful. The response body is a JSON object
containing an array of data block definitions. This array might be empty.
content:
application/json:
schema:
$ref: '#/components/schemas/VersionedDataBlockDefinitions'
401:
$ref: '#/components/responses/401'
post:
tags:
- data block definition
summary: Submit (a new version of) a data block definition
description: When a data block definition with this namespace and name does
not yet exist, it is added. When the data block definition already exists,
this new definition will override the current version.<br><br>Existing data
blocks using the previous definition will keep using this definition until
written again, at which moment the new definition will be applied.
operationId: postDataBlockDefinition
requestBody:
description: The JSON contents of the new data block definition
content:
application/json:
schema:
$ref: '#/components/schemas/VersionedDataBlockDefinition'
required: false
responses:
200:
description: The request was successful. The response body contains the
data block definition that was uploaded, complemented with some additional
operational data (like a creation timestamp).
content:
application/json:
schema:
$ref: '#/components/schemas/VersionedDataBlockDefinition'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: schema
/relations:
get:
tags:
- object
summary: Get all relations of a specified type
description: Retrieve a list of all Enterprise Studio relations of a certain
type, located in the collaboration specified.
operationId: getRelations
parameters:
- $ref: '#/components/parameters/CollaborationLongId'
- name: relationType
in: query
description: The type of the relations to retrieve.
schema:
type: string
example: 'ArchiMate:FlowRelation'
- name: fromType
in: query
description: The type of object these relations must start on.
schema:
type: string
example: 'ArchiMate:ApplicationComponent'
- name: toType
in: query
description: The type of object these relations must end on.
schema:
type: string
example: 'ArchiMate:ApplicationComponent'
- name: relationId
in: query
description: The UUID of the relation to retrieve.
schema:
type: string
example: 'd04ef79e-5ea4-ec11-8974-60a5e23ae246'
- name: fromId
in: query
description: The UUID of the object these relations must start on.
schema:
type: string
example: 'f4a07f7c-461f-eb11-82d0-066d32674111'
- name: toId
in: query
description: The UUID of the object these relations must end on.
schema:
type: string
example: 'e298fd5f-bd5c-ec11-b2ff-a4ed433005b7'
- name: includeExternalIds
in: query
description: When true, the external ids of the returned relations will
be included in the response.
schema:
type: boolean
default: false
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
200:
description: The request was successful. The response body is a JSON object,
containing an array of relations. This array might be empty.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/RelationInfos'
401:
$ref: '#/components/responses/401'
/schemas/{namespace}/{name}:
get:
tags:
- data block definition
summary: Get data block definition with name
description: Retrieve the data block definition with the specified namespace
and name.
operationId: getDataBlockDefinitionWithName
parameters:
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful. The response body contains a JSON
object representing the data block definition definition.
content:
application/json:
schema:
$ref: '#/components/schemas/VersionedDataBlockDefinition'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
delete:
tags:
- data block definition
summary: Delete data block definition with name
description: Delete the data block definition with the specified namespace and
name.<br><br><b>Please note that this will also remove all data blocks that
use this data block definition!</b>
operationId: deleteDataBlockDefinitionWithName
parameters:
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
/documents:
post:
tags:
- data block
summary: Create a new data block
description: Create a new data block and associate it with an Enterprise Studio
object.
operationId: postDataBlock
requestBody:
description: The JSON contents of the new data block
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockCreate'
required: false
responses:
200:
description: The request was successful. The response body contains the
JSON data block that was uploaded, complemented with the data block's
ID.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
409:
description: The request failed because the object already has a data block
for the specified data block definition. The response body contains a
JSON object specifying the Horizzon Server error number 'H_409' and a
URL to the associated online help page.
content: {}
x-codegen-request-body-name: document
/documents/{id}:
get:
tags:
- data block
summary: Get an existing data block
description: Retrieve the data block with the specified ID.<br><br>The values
returned will adhere to the data block definition associated with this data
block the moment they were written, even if a new version of this data block
definition has been uploaded since then.<br>Note that when this data block
needs to be written again, its contents must use the latest data block definition
version.
operationId: getDataBlock
parameters:
- $ref: '#/components/parameters/DataBlockId'
responses:
200:
description: The request was successful. The response body contains the
current JSON contents of the data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- data block
summary: Replace an existing data block
description: Replace an existing data block associated with an Enterprise Studio
object.<br><br>If the associated data block definition has been updated since
the last time this data block was written, this latest data block definition
version will be applied.
operationId: putDataBlock
parameters:
- $ref: '#/components/parameters/DataBlockId'
requestBody:
description: The new JSON contents of the data block
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockUpdate'
required: false
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
x-codegen-request-body-name: document
delete:
tags:
- data block
summary: Delete an existing data block
description: Delete the data block with the specified ID.
operationId: deleteDataBlock
parameters:
- $ref: '#/components/parameters/DataBlockId'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
patch:
tags:
- data block
summary: Update an existing data block
description: Replace a subset of values in an existing data block.<br><br>If
the associated data block definition has been updated since the last time
this data block was written, this latest data block definition version will
be applied.
operationId: patchDataBlock
parameters:
- $ref: '#/components/parameters/DataBlockId'
requestBody:
description: The new JSON contents of the data block
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockUpdate'
required: false
responses:
200:
description: The request was successful. The response body contains the
(updated) current JSON contents of the data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
x-codegen-request-body-name: document
/repositories:
get:
tags:
- repository
summary: Retrieve all repositories
description: Retrieve all repositories
operationId: getRepositories
responses:
200:
description: The request was successful. The response body contains the
repositories.
content:
application/json:
schema:
$ref: '#/components/schemas/Repositories'
401:
$ref: '#/components/responses/401'
/repositories/{repositoryId}/collections:
get:
tags:
- collection
summary: Retrieve all collections in the repository
description: Retrieve all collections in the repository
operationId: getCollections
parameters:
- $ref: '#/components/parameters/RepositoryId'
responses:
200:
description: The request was successful. The response body contains the
collections.
content:
application/json:
schema:
$ref: '#/components/schemas/Collections'
401:
$ref: '#/components/responses/401'
post:
tags:
- collection
summary: Create a new collection in the repository
description: Create a new collection in the repository
operationId: postCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
requestBody:
description: The JSON contents of the new collection
content:
application/json:
schema:
$ref: '#/components/schemas/CollectionCreate'
required: false
responses:
200:
description: The request was successful. The response body contains the
collection that was uploaded.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: collection
/repositories/{repositoryId}/collections/{collectionId}:
get:
tags:
- collection
summary: Retrieve a collection from the repository
description: Retrieve a collection from the repository
operationId: getCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
responses:
200:
description: The request was successful. The response body contains the
collection.
content:
application/json:
schema:
$ref: '#/components/schemas/Collection'
401:
$ref: '#/components/responses/401'
put:
tags:
- collection
summary: Update (the name of) a collection
description: Update (the name of) a collection
operationId: updateCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: The values to update (only the name). When omitted, the value
will be cleared. If the values are equal to the ones already set, the request
will succeed without performing an update.
content:
application/json:
schema:
$ref: '#/components/schemas/CollectionUpdate'
required: false
responses:
200:
description: The request was successful.
content: {}
'401':
$ref: '#/components/responses/401'
x-codegen-request-body-name: collection
delete:
tags:
- collection
summary: Delete a collection from the repository
description: Delete a collection from the repository
operationId: deleteCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
409:
description: The request failed because modeling policies have been defined
for the collection.
content: {}
/repositories/{repositoryId}/collections/{collectionId}/containers:
get:
tags:
- container
summary: Retrieve all containers in a collection
description: Retrieve all containers in a collection
operationId: getContainers
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
responses:
200:
description: The request was successful. The response body contains the
containers.
content:
application/json:
schema:
$ref: '#/components/schemas/Containers'
401:
$ref: '#/components/responses/401'
post:
tags:
- container
summary: Create a new container in a collection
description: Create a new container in a collection
operationId: postContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: The JSON contents of the new container
content:
application/json:
schema:
$ref: '#/components/schemas/ContainerCreate'
required: false
responses:
201:
description: The request was successful. The response body contains the
container that was uploaded.
content:
application/json:
schema:
$ref: '#/components/schemas/Container'
400:
$ref: '#/components/responses/400'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: container
/repositories/{repositoryId}/containers/{containerId}:
get:
tags:
- container
summary: Retrieve a container
description: Retrieve a container
operationId: getContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/ContainerId'
responses:
200:
description: The request was successful. The response body contains the
container.
content:
application/json:
schema:
$ref: '#/components/schemas/Container'
401:
$ref: '#/components/responses/401'
put:
tags:
- container
summary: Update (the name of) a container
description: Update (the name of) a container
operationId: updateContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/ContainerId'
requestBody:
description: The values to update (only the name). When omitted, the value
will be cleared. If the values are equal to the ones already set, the request
will succeed without performing an update.
content:
application/json:
schema:
$ref: '#/components/schemas/ContainerUpdate'
required: false
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: container
delete:
tags:
- container
summary: Delete a container
description: Delete a container
operationId: deleteContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/ContainerId'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
/repositories/{repositoryId}/collections/{collectionId}/entities/bulk:
post:
tags:
- bulk
summary: Create and/or update one or more entities in a collection
description: Create and/or update one or more entities in a collection
operationId: postEntities
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: The JSON contents of the entities to create and/or update. Next
to the external ID, the term is also mandatory when creating. When updating,
external ID and the field(s) to update are required. When 'containerExternalId'
is specified for a new element, it will be created in a container with that
ID, unless that has reached its limit of 5000 elements, in which case a
new container will be created with a similar ID. If 'containerExternalId'
is omitted, the element is added to the default container. If the default
container has already reached its limit of 5000 elements, the request will
fail.
content:
application/json:
schema:
$ref: '#/components/schemas/EntitiesCreateUpdate'
required: false
responses:
201:
description: The request was successful. The response body contains the
entities (and data blocks) that were created or updated.
content:
application/json:
schema:
$ref: '#/components/schemas/EntitiesCreateUpdate'
400:
$ref: '#/components/responses/400'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: entities
/repositories/{repositoryId}/collections/{collectionId}/entities/bulk/delete:
post:
tags:
- bulk
summary: Delete one or more entities from a collection
description: Delete one or more entities from a collection. If a specified ID does not represent an existing entity, or the entity is not part of the collection, it is ignored. Any links attached to a deleted entity are deleted also.
operationId: deleteEntities
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: A JSON array with the external IDs of the entities to delete.
content:
application/json:
schema:
$ref: '#/components/schemas/ExternalIds'
required: false
responses:
204:
description: The request was successful.
400:
$ref: '#/components/responses/400'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: externalids
/repositories/{repositoryId}/collections/{collectionId}/entities:
get:
tags:
- entity
summary: Retrieve all entities in a collection
description: Retrieve all entities in a collection
operationId: getEntitiesInCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
200:
description: The request was successful. The response body contains the
entities.
content:
application/json:
schema:
$ref: '#/components/schemas/Entities'
401:
$ref: '#/components/responses/401'
post:
tags:
- entity
summary: Create an entity in a collection
description: Create an entity in a collection
operationId: createEntityInCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: The JSON contents of the entity to create. When 'containerExternalId'
is specified, the element will be created in a container with that ID, unless
it has reached its limit of 5000 elements, in which case a new container
will be created with a similar ID. If 'containerExternalId' is omitted,
the element is added to the default container. If the default container
has already reached its limit of 5000 elements, the request will fail.
content:
application/json:
schema:
$ref: '#/components/schemas/EntityCreateCollection'
required: false
responses:
201:
description: The request was successful. The response body contains the
entity.
content:
application/json:
schema:
$ref: '#/components/schemas/Entity'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: entity
/repositories/{repositoryId}/containers/{containerId}/entities:
get:
tags:
- entity
summary: Retrieve all entities in a container
description: Retrieve all entities in a container
operationId: getEntitiesInContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/ContainerId'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
200:
description: The request was successful. The response body contains the
entities.
content:
application/json:
schema:
$ref: '#/components/schemas/Entities'
401:
$ref: '#/components/responses/401'
post:
tags:
- entity
summary: Create an entity in a container
description: Create an entity in a container
operationId: createEntityInContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/ContainerId'
requestBody:
description: The JSON contents of the entity to create. If the container has
already reached its limit of 5000 elements, the request will fail.
content:
application/json:
schema:
$ref: '#/components/schemas/EntityCreate'
required: false
responses:
201:
description: The request was successful. The response body contains the
entity.
content:
application/json:
schema:
$ref: '#/components/schemas/Entity'
'401':
$ref: '#/components/responses/401'
x-codegen-request-body-name: entity
/repositories/{repositoryId}/entities/{entityId}:
get:
tags:
- entity
summary: Retrieve an entity
description: Retrieve an entity
operationId: getEntity
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/EntityId'
responses:
200:
description: The request was successful. The response body contains the
entity.
content:
application/json:
schema:
$ref: '#/components/schemas/Entity'
401:
$ref: '#/components/responses/401'
put:
tags:
- entity
summary: Update (the name of) an entity
description: Update (the name of) an entity
operationId: updateEntity
parameters:
- name: repositoryId
in: path
description: The number that identifies the repository.
required: true
schema:
type: integer
- name: entityId
in: path
description: The external ID (a String) that identifies the entity.
required: true
schema:
type: string
requestBody:
description: The values to update (only the name). When omitted, the value
will be cleared. If the values are equal to the ones already set, the request
will succeed without performing an update.
content:
application/json:
schema:
$ref: '#/components/schemas/EntityUpdate'
required: false
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: entity
delete:
tags:
- entity
summary: Delete an entity
description: Delete an entity
operationId: deleteEntity
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/EntityId'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
/repositories/{repositoryId}/collections/{collectionId}/links/bulk:
post:
tags:
- bulk
summary: Create and/or update one or more links in a collection
description: Create and/or one or more multiple links in a collection
operationId: postLinks
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: The JSON contents of the links to create and/or update. Next
to the external ID, the term is also mandatory when creating. When updating,
external ID and the field(s) to update are required. When 'containerExternalId'
is specified for a new element, it will be created in a container with that
ID, unless that has reached its limit of 5000 elements, in which case a
new container will be created with a similar ID. If 'containerExternalId'
is omitted, the element is added to the default container. If the default
container has already reached its limit of 5000 elements, the request will
fail. If the addition of this link causes either of its end entities to exceed
the maximum number of 500 attached links, the request will fail.
content:
application/json:
schema:
$ref: '#/components/schemas/LinksCreateUpdate'
required: false
responses:
200:
description: The request was successful. The response body contains the
links (and data blocks) that were created or updated.
content:
application/json:
schema:
$ref: '#/components/schemas/LinksCreateUpdate'
400:
$ref: '#/components/responses/400'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: links
/repositories/{repositoryId}/collections/{collectionId}/links/bulk/delete:
post:
tags:
- bulk
summary: Delete one or more links from a collection
description: Delete one or more links from a collection. If a specified ID does not represent an existing links, or the link is not part of the collection, it is ignored. Any links attached to a deleted links are deleted also.
operationId: deleteLinks
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: A JSON array with the external IDs of the links to delete.
content:
application/json:
schema:
$ref: '#/components/schemas/ExternalIds'
required: false
responses:
204:
description: The request was successful.
400:
$ref: '#/components/responses/400'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: externalids
/repositories/{repositoryId}/collections/{collectionId}/links:
get:
tags:
- link
summary: Retrieve all links in a collection
description: Retrieve all links in a collection
operationId: getLinksInCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
200:
description: The request was successful. The response body contains the
links.
content:
application/json:
schema:
$ref: '#/components/schemas/Links'
401:
$ref: '#/components/responses/401'
post:
tags:
- link
summary: Create a link in a collection
description: Create a link in a collection
operationId: createLinkInCollection
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/CollectionId'
requestBody:
description: The JSON contents of the link to create. When 'containerExternalId'
is specified, the element will be created in a container with that ID, unless
it has reached its limit of 5000 elements, in which case a new container
will be created with a similar ID. If 'containerExternalId' is omitted,
the element is added to the default container. If the default container
has already reached its limit of 5000 elements, the request will fail. If the
addition of this link causes either of its end elements to exceed the maximum
number of 500 attached links, the request will fail.<br>
To create a link use 'fromExternalId' or 'toExternalId' to refer to an Entity
and 'fromId' or 'toId' to refer to an Object. Note that at least one of the
two linked elements must be an entity.
content:
application/json:
schema:
$ref: '#/components/schemas/LinkCreateCollection'
examples:
Entity to Entity link:
value:
externalId: 'entity-to-entity-link-1'
term: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromExternalId: 'entity-1'
toExternalId: 'entity-2'
containerExternalId: 'SNowApps'
Entity to Object link:
value:
externalId: 'entity-to-object-link-2'
term: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromExternalId: 'entity-1'
toId: 'c7dc1184-d9d0-4253-ba30-7f351e0f60eb'
containerExternalId: 'SNowApps'
Object to Entity link:
value:
externalId: 'object-to-entity-link-3'
term: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromId: 'd2ca09f5-4e97-45e5-9754-3ac89d8d10f3'
toExternalId: 'entity-1'
containerExternalId: 'SNowApps'
required: false
responses:
201:
description: The request was successful. The response body contains the
link.
content:
application/json:
schema:
$ref: '#/components/schemas/Link'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: link
/repositories/{repositoryId}/containers/{containerId}/links:
get:
tags:
- link
summary: Retrieve all links in a container
description: Retrieve all links in a container
operationId: getLinksInContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/ContainerId'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
responses:
200:
description: The request was successful. The response body contains the
links.
content:
application/json:
schema:
$ref: '#/components/schemas/Links'
401:
$ref: '#/components/responses/401'
post:
tags:
- link
summary: Create a link in a container
description: Create a link in a container
operationId: createLinkInContainer
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/ContainerId'
requestBody:
description: The JSON contents of the link to create. If the container has
already reached its limit of 5000 elements, the request will fail. If the
addition of this link causes either of its end elements to exceed the maximum
number of 500 attached links, the request will fail.<br>
To create a link use 'fromExternalId' or 'toExternalId' to refer to an Entity
and 'fromId' or 'toId' to refer to an Object. Note that at least one of the
two linked elements must be an entity.
content:
application/json:
schema:
$ref: '#/components/schemas/LinkCreate'
examples:
Entity to Entity link:
value:
externalId: 'entity-to-entity-link-1'
term: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromExternalId: 'entity-1'
toExternalId: 'entity-2'
containerExternalId: 'SNowApps'
Entity to Object link:
value:
externalId: 'entity-to-object-link-2'
term: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromExternalId: 'entity-1'
toId: 'c7dc1184-d9d0-4253-ba30-7f351e0f60eb'
containerExternalId: 'SNowApps'
Object to Entity link:
value:
externalId: 'object-to-entity-link-3'
term: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromId: 'd2ca09f5-4e97-45e5-9754-3ac89d8d10f3'
toExternalId: 'entity-1'
required: false
responses:
201:
description: The request was successful. The response body contains the
link.
content:
application/json:
schema:
$ref: '#/components/schemas/Link'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: link
/repositories/{repositoryId}/links/{linkId}:
get:
tags:
- link
summary: Retrieve a link
description: Retrieve a link
operationId: getLink
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
responses:
200:
description: The request was successful. The response body contains the
link.
content:
application/json:
schema:
$ref: '#/components/schemas/Link'
401:
$ref: '#/components/responses/401'
put:
tags:
- link
summary: Update (the name of) a link
description: Ipdate (the name of) a link
operationId: updateLink
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
requestBody:
description: The values to update (only the name). When omitted, the value
will be cleared. If the values are equal to the ones already set, the request
will succeed without performing an update.
content:
application/json:
schema:
$ref: '#/components/schemas/LinkUpdate'
required: false
responses:
200:
description: The request was successful. The response body contains the
link.
content:
application/json:
schema:
$ref: '#/components/schemas/Link'
'401':
$ref: '#/components/responses/401'
x-codegen-request-body-name: link
delete:
tags:
- link
summary: Delete a link
description: Delete a link
operationId: deleteLink
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
/repositories/{repositoryId}/entities/{entityId}/{namespace}/{name}:
get:
tags:
- entity data block
summary: Retrieve a data block attached to an entity
description: Retrieve a data block attached to an entity
operationId: getEntityDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/EntityId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful. The response body contains the
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- entity data block
summary: Replace an existing data block attached to an entity
description: Replace an existing data block attached to an entity
operationId: putEntityDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/EntityId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The updated JSON contents of the data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockUpdate'
required: false
responses:
200:
description: The request was successful. The response body contains the
updated data block (as it was uploaded).
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: document
post:
tags:
- entity data block
summary: Create a new data block attached to an entity
description: Create a new data block attached to an entity
operationId: postEntityDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/EntityId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The JSON contents of the new data block
content:
application/json:
schema:
$ref: '#/components/schemas/EntityDataBlockCreate'
required: false
responses:
200:
description: The request was successful. The response body contains the
data block that was uploaded, complemented with the data block's ID.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: document
delete:
tags:
- entity data block
summary: Delete a data block attached to an entity
description: Delete a data block attached to an entity
operationId: deleteEntityDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/EntityId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
patch:
tags:
- entity data block
summary: Update an existing data block attached to an entity
description: Update an existing data block attached to an entity
operationId: patchEntityDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/EntityId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The (updated part of the) JSON contents of the data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockUpdate'
required: false
responses:
200:
description: The request was successful. The response body contains the
updated data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: document
/repositories/{repositoryId}/links/{linkId}/{namespace}/{name}:
get:
tags:
- link data block
summary: Retrieve a data block attached to a link
description: Retrieve a data block attached to a link
operationId: getLinkDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful. The response body contains the
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- link data block
summary: Replace an existing data block attached to a link
description: Replace an existing data block attached to a link
operationId: putLinkDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The updated JSON contents of the data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockUpdate'
required: false
responses:
200:
description: The request was successful. The response body contains the
updated data block (as it was uploaded).
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: document
post:
tags:
- link data block
summary: Create a new data block attached to a link
description: Create a new data block attached to a link
operationId: postLinkDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The JSON contents of the new data block
content:
application/json:
schema:
$ref: '#/components/schemas/LinkDataBlockCreate'
required: false
responses:
200:
description: The request was successful. The response body contains the
data block that was uploaded, complemented with the data block's ID.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: document
delete:
tags:
- link data block
summary: Delete a data block attached to a link
description: Delete a data block attached to a link
operationId: deleteLinkDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
patch:
tags:
- link data block
summary: Update an existing data block attached to a link
description: Update an existing data block attached to a link
operationId: patchLinkDataBlock
parameters:
- $ref: '#/components/parameters/RepositoryId'
- $ref: '#/components/parameters/LinkId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The (updated part of the) JSON contents of the data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockUpdate'
required: false
responses:
200:
description: The request was successful. The response body contains the
updated data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockResult'
401:
$ref: '#/components/responses/401'
x-codegen-request-body-name: document
/collaborations/{collaborationId}/models/{modelId}/types/{type}/datablocks/{namespace}/{name}/policies/editors:
get:
tags:
- editor
summary: Retrieve the editors for the specified data block of all objects of the specified type in the model
description: Retrieves the users and groups who are assigned as editors
for the specified data block of all objects of the specified type in the model.
operationId: getModelLevelEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful. The response body is a JSON object
detailing the users and groups which are assigned as editors
for the specified data block of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- editor
summary: Assign or update editors for the specified data block of all objects of the specified type in the model
description: Assigns or, when editors are already assigned for the data block,
updates the users and groups assigned editors for the specified data block of
all objects of the specified type in the model.
operationId: putModelLevelEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The editors to be assigned to the specified data block of
all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
required: true
responses:
200:
description: The request was successful. The editors for the specified data block of
all objects of the specified type in the model have been updated.
The response body is a JSON object with the users and groups which have been assigned
as editors for the specified data block of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
201:
description: The request was successful. The specified data block of
all objects of the specified type in the model has been assigned editors.
The response body is a JSON object with the users and
groups which have been assigned as editors for the for the specified data block
of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
400:
$ref: '#/components/responses/400editors'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
x-codegen-request-body-name: editors
post:
tags:
- editor
summary: Assign editors for the specified data block of all objects of the specified type in the model
description: Assigns users and groups as editors for the specified data block of all objects
of the specified type in the model.
operationId: postModelLevelEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The editors to be assigned to the specified data block of
all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
required: true
responses:
201:
description: The request was successful. The specified data block of
all objects of the specified type in the model has been assigned editors.
The response body is a JSON object with the users and groups which have been assigned
as editors for the specified data block of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
400:
$ref: '#/components/responses/400editors'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
409:
description: The request failed because editors are already defined
for the specified data block of all objects of the specified type in the model.
content: {}
x-codegen-request-body-name: editors
delete:
tags:
- editor
summary: Remove all editors for the specified data block of all objects of the specified type in the model
description: Clear the users and groups assigned as editors for the specified data block of all objects of the specified type in the model.
operationId: deleteModelLevelEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
204:
description: The request was successful and editors have been
cleared for the specified data block of all objects of the specified type in the model.
No content returned in the response body.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
/collaborations/{collaborationId}/models/{modelId}/types/{type}/datablocks/{namespace}/{name}/policies/readers:
get:
tags:
- reader
summary: Retrieve the readers for the specified data block of all objects of the specified type in the model
description: Retrieves the users and groups who are assigned as readers
for the specified data block of all objects of the specified type in the model.
operationId: getModelLevelReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful. The response body is a JSON object
detailing the users and groups which are assigned as readers
for the specified data block of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- reader
summary: Assign or update readers for the specified data block of all objects of the specified type in the model
description: Assigns or, when readers are already assigned for the data block,
updates the users and groups assigned readers for the specified data block of
all objects of the specified type in the model.
operationId: putModelLevelReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The readers to be assigned to the specified data block of
all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
required: true
responses:
200:
description: The request was successful. The readers for the specified data block of
all objects of the specified type in the model have been updated.
The response body is a JSON object with the users and groups which have been assigned
as readers for the specified data block of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
201:
description: The request was successful. The readers for the specified data block of
all objects of the specified type in the model have been assigned readers.
The response body is a JSON object with the users and
groups which have been assigned as readers for the for the specified data block
of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
400:
$ref: '#/components/responses/400readers'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
x-codegen-request-body-name: readers
post:
tags:
- reader
summary: Assign readers for the specified data block of all objects of the specified type in the model
description: Assigns users and groups as readers for the specified data block of all objects
of the specified type in the model.
operationId: postModelLevelReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The readers to be assigned to the specified data block of
all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
required: true
responses:
201:
description: The request was successful. The specified data block of
all objects of the specified type in the model has been assigned readers.
The response body is a JSON object with the users and groups which have been assigned
as readers for the specified data block of all objects of the specified type in the model.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
400:
$ref: '#/components/responses/400readers'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
409:
description: The request failed because readers are already defined
for the specified data block of all objects of the specified type in the model.
content: {}
x-codegen-request-body-name: readers
delete:
tags:
- reader
summary: Remove all readers for the specified data block of all objects of the specified type in the model
description: Clear the users and groups assigned as readers for the specified data block of all objects of the specified type in the model.
operationId: deleteModelLevelReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ModelId'
- $ref: '#/components/parameters/ObjectType'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
204:
description: The request was successful and readers have been
cleared for the specified data block of all objects of the specified type in the model.
No content returned in the response body.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
/collaborations/{collaborationId}/objects/{objectId}/datablocks/{namespace}/{name}/policies/editors:
get:
tags:
- editor
summary: Get the editors for a data block
description: Gets the users and groups who are directly assigned as editors
of a data block.
operationId: getDataBlockEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request successfully found editors for the specified data
block. The response body is a JSON object detailing the users and groups
which are assigned directly as editors for this data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- editor
summary: Assign or update editors for a data block
description: Assigns or, when editors are already assigned for the data block,
updates the users and groups assigned as editors for the specified data block.
operationId: putDataBlockEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The editors to be assigned to the data block
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
required: true
responses:
200:
description: The request was successful. The default editors for the specified
object have been updated. The response body is a JSON object with the
users and groups that have been assigned as editors for the specified
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
201:
description: The request was successful. The specified data block has been
assigned default editors. The response body is a JSON object with the
users and groups that have been assigned as editors for the specified
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
400:
$ref: '#/components/responses/400editors'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
x-codegen-request-body-name: editors
post:
tags:
- editor
summary: Assign editors for a data block
description: Assigns users and groups as editors for the specified data block.
operationId: postDataBlockEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The editors to be assigned to the data block
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
required: true
responses:
201:
description: The request was successful. The specified data block has been
assigned default editors. The response body is a JSON object with the
users and groups that have been assigned as editors for the specified
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockEditors'
400:
$ref: '#/components/responses/400editors'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
409:
description: The request failed because editors already exist for the specified
data block.
content: {}
x-codegen-request-body-name: editors
delete:
tags:
- editor
summary: Remove all editors for a data block
description: Clear the users and groups assigned as editors for the specified
data block
operationId: deleteDataBlockEditors
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
204:
description: The request was successful and all editors have been cleared
for the specified data block. No content returned in the response body.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
/collaborations/{collaborationId}/objects/{objectId}/datablocks/{namespace}/{name}/policies/readers:
get:
tags:
- reader
summary: Get the readers for a data block
description: Gets the users and groups who are directly assigned as readers
of a data block.
operationId: getDataBlockReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request successfully found readers for the specified data
block. The response body is a JSON object detailing the users and groups
which are assigned directly as readers for this data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- reader
summary: Assign or update readers for a data block
description: Assigns or, when readers are already assigned for the data block,
updates the users and groups assigned as readers for the specified data block.
operationId: putDataBlockReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The readers to be assigned to the data block
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
required: true
responses:
200:
description: The request was successful. The default readers for the specified
object have been updated. The response body is a JSON object with the
users and groups that have been assigned as readers for the specified
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
201:
description: The request was successful. The specified data block has been
assigned default readers. The response body is a JSON object with the
users and groups that have been assigned as readers for the specified
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
400:
$ref: '#/components/responses/400readers'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
x-codegen-request-body-name: readers
post:
tags:
- reader
summary: Assign readers for a data block
description: Assigns users and groups as readers for the specified data block.
operationId: postDataBlockReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The readers to be assigned to the data block
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
required: true
responses:
201:
description: The request was successful. The specified data block has been
assigned default readers. The response body is a JSON object with the
users and groups that have been assigned as readers for the specified
data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataBlockReaders'
400:
$ref: '#/components/responses/400readers'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
409:
description: The request failed because readers already exist for the specified
data block.
content: {}
x-codegen-request-body-name: readers
delete:
tags:
- reader
summary: Remove all readers for a data block
description: Clear the users and groups assigned as readers for the specified
data block
operationId: deleteDataBlockReaders
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
204:
description: The request was successful and all readers have been cleared
for the specified data block. No content returned in the response body.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
/collaborations/{collaborationId}/objects/{objectId}/datablocks/{namespace}/{name}/policies/dataupdateschedule:
get:
tags:
- data update schedule
summary: Get an update schedule for a data block
description: Retrieves the update schedule for the specified data block.
This defines when and how often data tasks should be created to prompt editors
to update the data within the data block.
operationId: getDataUpdateSchedule
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
200:
description: The request was successful. The response body is a JSON representation
of the update schedule assigned to the specified data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataUpdateSchedule'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
put:
tags:
- data update schedule
summary: Assign or update an update schedule for a data block
description: Assigns or, when an update schedule already exists for the
data block, updates the update schedule for the specified data block.
This defines when and how often data tasks should be created to prompt editors
to update the data within the data block.
operationId: putDataUpdateSchedule
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The update schedule to be persisted
content:
application/json:
schema:
$ref: '#/components/schemas/DataUpdateSchedule'
required: true
responses:
200:
description: The request was successful. The existing update schedule
has been updated for the specified data block. The response body is a
JSON representation of the update schedule that has been assigned
to the specified data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataUpdateSchedule'
201:
description: The request was successful. An update schedule has been
assigned to the specified data block. The response body is a JSON representation
of the update schedule that has been assigned to the specified data
block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataUpdateSchedule'
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
x-codegen-request-body-name: dataUpdateSchedule
post:
tags:
- data update schedule
summary: Create an update schedule for a data block
description: Creates a new update schedule for the specified data block.
This defines when and how often data tasks should be created to prompt editors
to update the data within the data block.
operationId: postDataUpdateSchedule
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
requestBody:
description: The update schedule to be persisted
content:
application/json:
schema:
$ref: '#/components/schemas/DataUpdateSchedule'
required: true
responses:
201:
description: The request was successful. The response body is a JSON representation
of the update schedule assigned to the specified data block.
content:
application/json:
schema:
$ref: '#/components/schemas/DataUpdateSchedule'
401:
$ref: '#/components/responses/401'
403:
description: The request failed because the API client only has read permissions,
or because the maximum limit of data update schedules within the system
has been exceeded.
content: {}
404:
$ref: '#/components/responses/404'
409:
description: The request failed because an update schedule already exists
for the specified data block.
content: {}
x-codegen-request-body-name: dataUpdateSchedule
delete:
tags:
- data update schedule
summary: Remove an update schedule for a data block
description: Removes the existing update schedule for the specified data
block. This will also remove any data tasks created from the removed
update schedule.
operationId: deleteDataUpdateSchedule
parameters:
- $ref: '#/components/parameters/CollaborationId'
- $ref: '#/components/parameters/ObjectId'
- $ref: '#/components/parameters/DbdNamespace'
- $ref: '#/components/parameters/DbdName'
responses:
204:
description: The request was successful and the update schedule was
removed for the specified data block, as well as any related data tasks.
No content returned in the response body.
content: {}
401:
$ref: '#/components/responses/401'
404:
$ref: '#/components/responses/404'
/auditevents:
get:
tags:
- audit event
summary: Retrieve audit events
description: Retrieve a list of audit events sorted by event id in ascending
order.
operationId: getAuditEvents
parameters:
- name: offset
in: query
description: The zero based offset of the first item in the list to return
from the server.
schema:
type: integer
default: 0
- name: limit
in: query
description: 'Pagination limit: number of rows to return. The maximum is 10000.
When omitted, this number defaults to 100.'
schema:
type: integer
default: 100
maximum: 10000
- name: since
in: query
description: A date/time in ISO format (e.g. '2020-03-21T16:49:31.427Z').
Only events logged since the given moment will be returned, including the
since date/time.
schema:
type: string
example: '2020-03-21T16:49:31.427Z'
- name: until
in: query
description: A date/time in ISO format (e.g. '2020-03-21T16:49:31.427Z').
Only events logged until the given moment will be returned, not including
the until date/time.
schema:
type: string
example: '2020-03-21T16:49:31.427Z'
responses:
200:
description: The request was successful. The response body contains a JSON
array of audit events. This array might be empty when there are no events
for the given parameters. Depending on the name of the event only the
properties relevant to the event will have a value.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/AuditEvent'
401:
$ref: '#/components/responses/401'
components:
schemas:
Collaboration:
type: object
properties:
collaborationId:
type: string
example: 'repositories/171/collaborations/185'
name:
type: string
example: ACME Production
description:
type: string
example: ACME main production model package
VersionedDataBlockDefinition:
required:
- fields
- name
- namespace
- publishedForRepository
- schemas
- types
type: object
properties:
namespace:
type: string
example: 'default'
name:
type: string
example: 'applicationinfo'
label:
type: string
example: 'Application information'
fields:
minItems: 1
type: array
items:
$ref: '#/components/schemas/Field'
schemas:
type: array
items:
$ref: '#/components/schemas/DataBlockDefinition'
types:
type: array
items:
type: string
example: 'ArchiMate:ApplicationComponent'
publishedForRepository:
type: integer
example: 171
VersionedDataBlockDefinitions:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/VersionedDataBlockDefinition'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
Field:
required:
- name
- schema
type: object
properties:
name:
type: string
example: 'totalcost'
schema:
type: string
example: 'money'
label:
type: string
example: 'Total cost'
constraints:
type: object
properties:
currency:
type: string
example: 'EUR'
DataBlockDefinition:
required:
- kind
- name
type: object
properties:
kind:
type: string
enum:
- enum
- reference
name:
type: string
example: 'verylowtoveryhigh_enum'
literals:
minItems: 1
type: array
items:
$ref: '#/components/schemas/EnumLiteral'
DataBlockEditors:
type: object
properties:
users:
type: array
items:
type: string
example: employee@customer.com
groups:
type: array
items:
type: string
example: Editor Group
DataBlockReaders:
type: object
properties:
users:
type: array
items:
type: string
example: employee@customer.com
groups:
type: array
items:
type: string
example: Reader Group
DataUpdateSchedule:
type: object
properties:
startAt:
type: string
example: 2020-11-30
pattern:
type: string
example: EVERY_QUARTER
enum:
- NEVER
- EVERY_WEEK
- EVERY_TWO_WEEKS
- EVERY_MONTH
- EVERY_QUARTER
- EVERY_HALF_A_YEAR
- EVERY_YEAR
EnumLiteral:
type: object
properties:
name:
type: string
label:
type: string
DataBlockCreate:
required:
- objectId
- schemaName
- schemaNamespace
- values
type: object
properties:
objectId:
type: string
example: '5f53a04e-ac11-4301-88b6-f81c0d0f45b1'
schemaNamespace:
type: string
example: 'default'
schemaName:
type: string
example: 'applicationinfo'
values:
type: object
properties: {}
example:
usercount: 1337
totalcost:
currency: 'EUR'
amount: 4711
EntityDataBlockCreate:
required:
- values
type: object
properties:
values:
type: object
properties: {}
example:
usercount: 1337
totalcost:
currency: 'EUR'
amount: 4711
LinkDataBlockCreate:
required:
- values
type: object
properties:
values:
type: object
properties: {}
example:
raci: 'R'
DataBlockUpdate:
required:
- objectId
- schemaName
- schemaNamespace
- values
type: object
properties:
objectId:
type: string
example: '5f53a04e-ac11-4301-88b6-f81c0d0f45b1'
schemaNamespace:
type: string
example: 'default'
schemaName:
type: string
example: 'applicationinfo'
values:
type: object
properties: {}
example:
usercount: 1337
totalcost:
currency: 'EUR'
amount: 4711
DataBlockResult:
type: object
properties:
id:
type: string
example: 'ee84c805-454c-4aea-87a2-b1509b6658e7'
objectId:
type: string
example: '5f53a04e-ac11-4301-88b6-f81c0d0f45b1'
schemaNamespace:
type: string
example: 'default'
schemaName:
type: string
example: 'applicationinfo'
values:
type: object
properties: {}
example:
usercount: 1337
totalcost:
currency: 'EUR'
amount: 4711
updatedAt:
type: string
example: '2020-11-20T15:07:27.199892Z'
Object:
type: object
properties:
id:
type: string
example: '5f53a04e-ac11-4301-88b6-f81c0d0f45b1'
externalId:
type: string
example: 'Entity-1'
type:
type: string
example: 'ArchiMate:ApplicationComponent'
objectName:
type: object
additionalProperties:
type: string
example:
en: 'Bizzdesign'
documents:
type: array
items:
$ref: '#/components/schemas/DataBlockResult'
updatedAt:
type: string
example: '2021-12-14T11:55:41Z'
updatedAtAggregated:
type: string
example: '2022-02-16T15:46:53.269766Z'
Objects:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/Object'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
RelationInfo:
required:
- fromId
- fromType
- relationId
- relationType
- toId
- toType
type: object
properties:
relationId:
type: string
example: 'd04ef79e-5ea4-ec11-8974-60a5e23ae246'
externalId:
type: string
example: 'Link-1'
relationType:
type: string
example: 'ArchiMate:ApplicationComponentApplicationComponentFlow'
relationName:
type: object
additionalProperties:
type: string
example:
en: ''
fromId:
type: string
example: 'f4a07f7c-461f-eb11-82d0-066d32674111'
fromExternalId:
type: string
example: 'Entity-1'
fromType:
type: string
example: 'ArchiMate:ApplicationComponent'
fromName:
type: object
additionalProperties:
type: string
example:
en: 'ServiceNow'
toId:
type: string
example: '5f53a04e-ac11-4301-88b6-f81c0d0f45b1'
toExternalId:
type: string
example: 'Entity-2'
toType:
type: string
example: 'ArchiMate:ApplicationComponent'
toName:
type: object
additionalProperties:
type: string
example:
en: 'Bizzdesign'
updatedAt:
type: string
example: '2020-11-20T15:07:27.199892Z'
RelationInfos:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/RelationInfo'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 0
Names:
type: object
additionalProperties:
type: string
example:
en: "Name in English"
de: "Name auf deutsch"
ExternalIds:
type: array
items:
type: string
example: 'Item-1'
DataBlock:
type: object
properties:
schemaNamespace:
type: string
example: 'default'
schemaName:
type: string
example: 'applicationinfo'
values:
type: object
properties: {}
example:
usercount: 1337
totalcost:
currency: 'EUR'
amount: 4711
Repository:
type: object
properties:
id:
type: integer
example: 171
masterCollaborationId:
type: integer
example: 185
masterCollaborationName:
type: string
example: ACME Production
masterCollaborationDescription:
type: string
example: ACME main production model package
Repositories:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/Repository'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
CollectionCreate:
required:
- externalId
- term
type: object
properties:
externalId:
type: string
example: 'ServiceNowData'
term:
type: string
example: 'ArchiMate'
name:
$ref: '#/components/schemas/Names'
CollectionUpdate:
type: object
properties:
name:
$ref: '#/components/schemas/Names'
Collection:
required:
- id
- term
- updatedAt
type: object
properties:
id:
type: string
example: 'ae995b4b-a98f-4de8-88bf-7edc5b4b9b57'
externalId:
type: string
example: 'ServiceNowData'
term:
type: string
example: 'ArchiMate'
name:
type: object
additionalProperties:
type: string
example:
en: 'ServiceNow data'
updatedAt:
type: string
example: '2022-01-19T15:40:09.616046Z'
Collections:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/Collection'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
ContainerCreate:
required:
- externalId
- term
type: object
properties:
externalId:
type: string
example: 'SNowApps'
term:
type: string
example: 'ArchiMate:ApplicationScheme'
name:
$ref: '#/components/schemas/Names'
ContainerUpdate:
type: object
properties:
name:
$ref: '#/components/schemas/Names'
Container:
required:
- id
- term
- updatedAt
type: object
properties:
id:
type: string
example: '28aae5b8-91c1-47ce-8de3-816caeb7289d'
externalId:
type: string
example: 'SNowApps'
term:
type: string
example: 'ArchiMate:ApplicationScheme'
name:
type: object
additionalProperties:
type: string
example:
en: 'ServiceNow applications'
updatedAt:
type: string
example: '2020-11-20T15:07:27.199892Z'
Containers:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/Container'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
EntityCreateUpdate:
required:
- externalId
type: object
properties:
externalId:
type: string
example: 'Entity-1'
term:
type: string
example: 'ArchiMate:ApplicationComponent'
name:
$ref: '#/components/schemas/Names'
containerExternalId:
type: string
example: 'SnowApps'
dataBlocks:
minItems: 1
type: array
items:
$ref: '#/components/schemas/DataBlock'
EntityCreateCollection:
required:
- externalId
- term
type: object
properties:
externalId:
type: string
example: 'Entity-1'
term:
type: string
example: 'ArchiMate:ApplicationComponent'
name:
$ref: '#/components/schemas/Names'
containerExternalId:
type: string
example: 'SnowApps'
EntityCreate:
required:
- externalId
- term
type: object
properties:
externalId:
type: string
example: 'Entity-1'
term:
type: string
example: 'ArchiMate:ApplicationComponent'
name:
$ref: '#/components/schemas/Names'
EntityUpdate:
type: object
properties:
name:
$ref: '#/components/schemas/Names'
Entity:
required:
- id
- term
- updatedAt
type: object
properties:
id:
type: string
example: 'd2ca09f5-4e97-45e5-9754-3ac89d8d10f3'
externalId:
type: string
example: 'Entity-1'
term:
type: string
example: 'ArchiMate:ApplicationComponent'
name:
$ref: '#/components/schemas/Names'
updatedAt:
type: string
example: "2022-01-19T15:41:24.897484Z"
Entities:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/Entity'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
EntitiesCreateUpdate:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/EntityCreateUpdate'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
LinkCreateUpdate:
required:
- externalId
type: object
properties:
externalId:
type: string
example: 'Link-1'
term:
type: string
example: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromExternalId:
type: string
example: 'Entity-1'
toExternalId:
type: string
example: 'Entity-2'
containerExternalId:
type: string
example: 'SNowApps'
dataBlocks:
minItems: 1
type: array
items:
$ref: '#/components/schemas/DataBlock'
LinkCreateCollection:
required:
- externalId
- fromExternalId
- term
- toExternalId
type: object
properties:
externalId:
type: string
example: 'Link-1'
term:
type: string
example: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromExternalId:
type: string
example: 'Entity-1'
toExternalId:
type: string
example: 'Entity-2'
containerExternalId:
type: string
example: 'SNowApps'
LinkCreate:
required:
- externalId
- fromExternalId
- term
- toExternalId
type: object
properties:
externalId:
type: string
example: 'Link-1'
term:
type: string
example: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromExternalId:
type: string
example: 'Entity-1'
toExternalId:
type: string
example: 'Entity-2'
LinkUpdate:
type: object
properties:
name:
$ref: '#/components/schemas/Names'
Link:
required:
- fromId
- id
- term
- toId
- updatedAt
type: object
properties:
id:
type: string
example: '1c29378f-289b-4b97-9c51-331110117ce8'
externalId:
type: string
example: 'Link-1'
term:
type: string
example: 'ArchiMate:FlowRelation'
name:
$ref: '#/components/schemas/Names'
fromId:
type: string
example: 'd2ca09f5-4e97-45e5-9754-3ac89d8d10f3'
fromExternalId:
type: string
example: 'Entity-1'
toId:
type: string
example: 'c7dc1184-d9d0-4253-ba30-7f351e0f60eb'
toExternalId:
type: string
example: 'Entity-2'
updatedAt:
type: string
example: '2022-03-03T09:15:04.436344Z'
Links:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/Link'
_offset:
type: integer
example: 0
_limit:
type: integer
example: 500
LinksCreateUpdate:
type: object
properties:
_items:
type: array
items:
$ref: '#/components/schemas/LinkCreateUpdate'
_offset:
type: integer
_limit:
type: integer
AuditEvent:
type: object
properties:
eventNumber:
type: integer
example: 5030
name:
type: string
example: "Login Success"
date:
type: string
example: '2019-02-07T11:31:18.834Z'
eventSourceUsername:
type: string
example: 'employee@example.com'
eventSourceEmail:
type: string
example: 'employee@example.com'
eventTargetUsername:
type: string
example: 'employee@example.com'
eventTargetEmail:
type: string
example: 'employee@example.com'
collaborationName:
type: string
example: 'ACME UAT model package'
collaborationType:
type: string
example: 'master'
groupName:
type: string
example: 'Designer group'
commitDate:
type: string
example: '2021-11-09T15:11:28.000Z'
commitAuthor:
type: string
example: 'employee@example.com'
commitHash:
type: string
example: '60dc328c2f60c91723666c36c771206e127bafa2'
properties:
type: object
additionalProperties:
type: string
parameters:
CollaborationLongId:
name: collaborationId
in: query
description: The ID that identifies the collaboration (e.g. 'repositories/171/collaborations/185').
required: true
schema:
type: string
example: 'repositories/171/collaborations/185'
CollaborationId:
name: collaborationId
in: path
description: The number that identifies the collaboration.
required: true
schema:
type: integer
example: 185
ObjectId:
name: objectId
in: path
description: The UUID that identifies the object.
required: true
schema:
type: string
example: '5f53a04e-ac11-4301-88b6-f81c0d0f45b1'
ModelId:
name: modelId
in: path
description: The UUID that identifies the model object.
required: true
schema:
type: string
example: '5f53a04e-ac11-4301-88b6-f81c0d0f45b1'
ObjectType:
name: type
in: path
description: The type of the objects in the model.
required: true
schema:
type: string
example: 'ArchiMate:ApplicationComponent'
DbdNamespace:
name: namespace
in: path
description: The namespace of the data block definition.
required: true
schema:
type: string
example: 'default'
DbdName:
name: name
in: path
description: The name of the data block definition.
required: true
schema:
type: string
example: 'applicationinfo'
DataBlockId:
name: id
in: path
description: The UUID that identifies the data block.
required: true
schema:
type: string
example: 'ee84c805-454c-4aea-87a2-b1509b6658e7'
RepositoryId:
name: repositoryId
in: path
description: The number that identifies the repository.
required: true
schema:
type: integer
example: 171
CollectionId:
name: collectionId
in: path
description: The external ID (a String) that identifies the collection.
required: true
schema:
type: string
example: 'ServiceNowData'
ContainerId:
name: containerId
in: path
description: The external ID (a String) that identifies the container.
required: true
schema:
type: string
example: 'Applications'
EntityId:
name: entityId
in: path
description: The external ID (a String) that identifies the entity.
required: true
schema:
type: string
example: 'Entity-1'
LinkId:
name: linkId
in: path
description: The external ID (a String) that identifies the link.
required: true
schema:
type: string
example: 'Link-1'
Offset:
name: offset
in: query
description: 'Pagination offset: number of rows preceding the first row returned.
When omitted, this number defaults to 0.'
schema:
minimum: 0
type: integer
format: int32
default: 0
Limit:
name: limit
in: query
description: 'Pagination limit: number of rows to return. The maximum is 2000.
When omitted, this number defaults to 100'
schema:
maximum: 2000
minimum: 0
type: integer
format: int32
default: 100
responses:
'400':
description: The request failed because the information provided was incorrect.
content: {}
'400editors':
description: The request failed because the provided body had an invalid
structure or was malformed, or because one or more non-contributor users
or groups were specified as editors. Only users or groups with the contributor
role may be assigned as editors.
content: {}
'400readers':
description: The request failed because the provided body had an invalid
structure or was malformed, or because one or more non-consumer users
or groups were specified as readers. Only users or groups with the consumer
role may be assigned as readers.
content: {}
'401':
description: The request failed because the authentication credentials were incorrect or missing.
content: {}
'404':
description: The request failed because one of the referenced resources
does not exist. Details may be provided in the response body.
content: {}
ArchiMate is a registered trademark of The Open Group.