> For the complete documentation index, see [llms.txt](https://docs.bbchain.com.br/bbchain-ebs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bbchain.com.br/bbchain-ebs/bbchain-ebs-pt/para-desenvolvedores/api-reference/network-management/node/models.md).

# Models

## The HardwareSizeDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"HardwareSizeDTO":{"type":"object","properties":{"vcpu":{"type":"number","format":"double","description":"Number of virtual cpus."},"ram":{"type":"integer","format":"int64","description":"Size of RAM."}},"required":["ram","vcpu"]}}}}
```

## The NodeBaseLegalName object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"NodeBaseLegalName":{"type":"object","properties":{"organization":{"type":"string","maxLength":110,"minLength":2,"pattern":"^[A-Z][A-Za-z0-9]*(\\s[A-Za-z0-9]+)*$"},"city":{"type":"string","maxLength":64,"minLength":2,"pattern":"^[A-Z][A-Za-z]*(\\s[A-Za-z]+)*$"},"country":{"type":"string","maxLength":2,"minLength":2,"pattern":"^[A-Z][A-Z]$"}},"required":["organization"]}}}}
```

## The NodeBaseNetworkProtocol object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"NodeBaseNetworkProtocol":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"tag":{"type":"string"},"name":{"type":"string"}},"required":["id","name","tag"]}}}}
```

## The NodeDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"NodeDTO":{"type":"object","properties":{"legalName":{"$ref":"#/components/schemas/NodeBaseLegalName"},"participant":{"type":"integer","format":"int64"},"id":{"type":"integer","format":"int64","readOnly":true},"networkProtocol":{"$ref":"#/components/schemas/NodeBaseNetworkProtocol"},"currentStatus":{"type":"string","enum":["STARTING","RUNNING","CREATING","STOPPING","STOPPED","PENDING_UPDATE","DELETING","ERROR","PURGING","RESTARTING"]},"size":{"$ref":"#/components/schemas/HardwareSizeDTO"},"networkId":{"type":"integer","format":"int64"},"componentId":{"type":"integer","format":"int64"},"networkName":{"type":"string","readOnly":true},"besuValidator":{"type":"boolean"},"besuBootNode":{"type":"boolean"},"lastAccess":{"type":"string","format":"date-time","readOnly":true},"host":{"type":"string","description":"host endpoint.","readOnly":true},"explorer":{"type":"string","description":"explorer endpoint.","readOnly":true},"ports":{"type":"array","items":{"$ref":"#/components/schemas/PortDTO"},"readOnly":true},"enode":{"type":"string","readOnly":true},"customer":{"type":"integer","format":"int64"},"tenantId":{"type":"integer","format":"int64"},"createdBy":{"type":"integer","format":"int64","description":"ID do usuário que criou o nó","readOnly":true},"nodeDomain":{"type":"string","readOnly":true}},"required":["legalName","participant"]},"NodeBaseLegalName":{"type":"object","properties":{"organization":{"type":"string","maxLength":110,"minLength":2,"pattern":"^[A-Z][A-Za-z0-9]*(\\s[A-Za-z0-9]+)*$"},"city":{"type":"string","maxLength":64,"minLength":2,"pattern":"^[A-Z][A-Za-z]*(\\s[A-Za-z]+)*$"},"country":{"type":"string","maxLength":2,"minLength":2,"pattern":"^[A-Z][A-Z]$"}},"required":["organization"]},"NodeBaseNetworkProtocol":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"tag":{"type":"string"},"name":{"type":"string"}},"required":["id","name","tag"]},"HardwareSizeDTO":{"type":"object","properties":{"vcpu":{"type":"number","format":"double","description":"Number of virtual cpus."},"ram":{"type":"integer","format":"int64","description":"Size of RAM."}},"required":["ram","vcpu"]},"PortDTO":{"type":"object","properties":{"name":{"type":"string"},"number":{"type":"integer","format":"int64"}}}}}}
```

## The PortDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"PortDTO":{"type":"object","properties":{"name":{"type":"string"},"number":{"type":"integer","format":"int64"}}}}}}
```

## The Error object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"Error":{"type":"object","properties":{"message":{"type":"string","description":"Error status summary for the executed command."},"code":{"type":"string","description":"# `network.{field}.invalid` field is non compliant # `auth.invalid` Invalid credentials sent to the server. # `auth.verifyEmail` User did not verified their email. # `auth.mustChangePassword` User must change password.         # `user.emailAlreadyUsed` Email already exists. # `auth.forbidden` Forbidden access # `internal.unexpected` Unexpected error from server ","enum":["auth.invalid","auth.verifyEmail","auth.unauthorized","auth.forbidden","auth.expired","auth.blocked","auth.emailDomainBlocked","auth.mustChangePassword","auth.invalidPhoneVerificationCode","auth.passwordNotValid","auth.unableToUpdatePassword","user.notFound","user.created","user.notCreated","user.emailAlreadyExists","userHasRoleInClient","notaryNotFound","notaryPublishDateTooEarly","notaryOrganizationNameConflict","notaryIsCreating","network.notFound","network.alias.invalid","network.name.invalid","network.domain.invalid","network.organizationLegalName.invalid","network.city.invalid","network.country.invalid","network.nodeDomain.invalid","network.tenant.invalid","networkUserDoesNotHavePermissionOnNode","networkUserDoesNotHaveOperatorPermissionOnNode","networkUserDoesNotHavePermissionOnNotary","networkUserDoesNotHaveOperatorPermissionOnNotary","node.notFound","nodeOrganizationNameConflict","cordappVersionShouldBeDisabled","cordappShouldNotHaveVersions","shouldWaitPendingFlagday","internal.unexpected","field.required","field.invalid","field.size","field.pattern","illegalStatus","badRequest","timeConstraint","reachedMaxNetworks","reachedSubscriptionLimit","userReachedSubscriptionLimit","subscriptionTenantNotFoundBecauseNetworkNotFound","subscriptionNodeNameConflict","featureDisabled","adminActionNotFound","adminActionExists","adminActionNotCreated","adminActionDuplicated","adminCloudProviderNotFound","adminCloudProviderExists","adminCloudProviderNotCreated","adminProtocolNotFound","adminProtocolExists","adminProtocolNotCreated","adminPipelineServiceNotFound","adminPipelineServiceExists","adminPipelineServiceNotCreated","adminTenantNotFound","adminTenantExists","adminTenantNotCreated","adminPipelineNotFound","adminPipelineExists","adminPipelineNotCreated","adminComponentNotFound","adminComponentExists","adminComponentNotCreated","adminTenantSettingsNotFound","adminTenantSettingsExists","adminTenantSettingsNotCreated","adminTenantProtocolNotFound","adminTenantProtocolExists","adminTenantProtocolNotCreated","adminFeatureToggleNotFound","adminFeatureToggleExists","adminUserNotFound","adminNetworkNotFound","adminNetworkExists","adminNodeNotFound","adminNodeExists","adminNotaryNotFound","adminNotaryExists","adminPipelineActionDuplicated","adminAppNotFound","adminAppVersionNotFound","adminAppInstallationNotFound","adminComponentTypeNotFound","adminComponentTypeExists","adminBaseDltNotFound","adminBaseDltExists","adminBaseDltNotCreated","adminIdentityProviderNotFound","adminIdentityProviderExists","adminIdentityProviderNotCreated","adminNodeFeatureNotFound","adminNodeFeatureExists","adminNodeFeatureNotCreated","adminSpecializedModuleNotFound","adminSpecializedModuleExists"]}}}}}}
```

## The LegalNameDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"LegalNameDTO":{"type":"object","properties":{"organization":{"type":"string","maxLength":110,"minLength":2,"pattern":"^[A-Z][A-Za-z0-9]*(\\s[A-Za-z0-9]+)*$"},"city":{"type":"string","maxLength":64,"minLength":2,"pattern":"^[A-Z][A-Za-z]*(\\s[A-Za-z]+)*$"},"country":{"type":"string","maxLength":2,"minLength":2,"pattern":"^[A-Z][A-Z]$"}},"required":["city","country","organization"]}}}}
```

## The UpdateDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"UpdateDTO":{"type":"object","properties":{"size":{"$ref":"#/components/schemas/HardwareSizeDTO"},"command":{"type":"string","enum":["STOP","START","RESTART","PURGE"]}}},"HardwareSizeDTO":{"type":"object","properties":{"vcpu":{"type":"number","format":"double","description":"Number of virtual cpus."},"ram":{"type":"integer","format":"int64","description":"Size of RAM."}},"required":["ram","vcpu"]}}}}
```

## The NodesPageDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"NodesPageDTO":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/NodeDTO"}},"metadata":{"$ref":"#/components/schemas/PageMetadata"}}},"NodeDTO":{"type":"object","properties":{"legalName":{"$ref":"#/components/schemas/NodeBaseLegalName"},"participant":{"type":"integer","format":"int64"},"id":{"type":"integer","format":"int64","readOnly":true},"networkProtocol":{"$ref":"#/components/schemas/NodeBaseNetworkProtocol"},"currentStatus":{"type":"string","enum":["STARTING","RUNNING","CREATING","STOPPING","STOPPED","PENDING_UPDATE","DELETING","ERROR","PURGING","RESTARTING"]},"size":{"$ref":"#/components/schemas/HardwareSizeDTO"},"networkId":{"type":"integer","format":"int64"},"componentId":{"type":"integer","format":"int64"},"networkName":{"type":"string","readOnly":true},"besuValidator":{"type":"boolean"},"besuBootNode":{"type":"boolean"},"lastAccess":{"type":"string","format":"date-time","readOnly":true},"host":{"type":"string","description":"host endpoint.","readOnly":true},"explorer":{"type":"string","description":"explorer endpoint.","readOnly":true},"ports":{"type":"array","items":{"$ref":"#/components/schemas/PortDTO"},"readOnly":true},"enode":{"type":"string","readOnly":true},"customer":{"type":"integer","format":"int64"},"tenantId":{"type":"integer","format":"int64"},"createdBy":{"type":"integer","format":"int64","description":"ID do usuário que criou o nó","readOnly":true},"nodeDomain":{"type":"string","readOnly":true}},"required":["legalName","participant"]},"NodeBaseLegalName":{"type":"object","properties":{"organization":{"type":"string","maxLength":110,"minLength":2,"pattern":"^[A-Z][A-Za-z0-9]*(\\s[A-Za-z0-9]+)*$"},"city":{"type":"string","maxLength":64,"minLength":2,"pattern":"^[A-Z][A-Za-z]*(\\s[A-Za-z]+)*$"},"country":{"type":"string","maxLength":2,"minLength":2,"pattern":"^[A-Z][A-Z]$"}},"required":["organization"]},"NodeBaseNetworkProtocol":{"type":"object","properties":{"id":{"type":"integer","format":"int64"},"tag":{"type":"string"},"name":{"type":"string"}},"required":["id","name","tag"]},"HardwareSizeDTO":{"type":"object","properties":{"vcpu":{"type":"number","format":"double","description":"Number of virtual cpus."},"ram":{"type":"integer","format":"int64","description":"Size of RAM."}},"required":["ram","vcpu"]},"PortDTO":{"type":"object","properties":{"name":{"type":"string"},"number":{"type":"integer","format":"int64"}}},"PageMetadata":{"type":"object","properties":{"page":{"type":"integer","format":"int32"},"pageSize":{"type":"integer","format":"int32"},"totalItems":{"type":"integer","format":"int32"},"totalPages":{"type":"integer","format":"int32"}}}}}}
```

## The PageMetadata object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"PageMetadata":{"type":"object","properties":{"page":{"type":"integer","format":"int32"},"pageSize":{"type":"integer","format":"int32"},"totalItems":{"type":"integer","format":"int32"},"totalPages":{"type":"integer","format":"int32"}}}}}}
```

## The NodeStatisticsDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"NodeStatisticsDTO":{"type":"object","properties":{"total":{"type":"integer","format":"int64","description":"Total number of nodes"},"byProtocol":{"type":"array","description":"Count of nodes grouped by protocol","items":{"$ref":"#/components/schemas/ProtocolCountDTO"}}},"required":["byProtocol","total"]},"ProtocolCountDTO":{"type":"object","properties":{"protocol":{"type":"string","description":"Protocol type","enum":["BESU","CORDA","PTAH","OTHER"]},"count":{"type":"integer","format":"int64","description":"Number of nodes with this protocol"}},"required":["count","protocol"]}}}}
```

## The ProtocolCountDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"ProtocolCountDTO":{"type":"object","properties":{"protocol":{"type":"string","description":"Protocol type","enum":["BESU","CORDA","PTAH","OTHER"]},"count":{"type":"integer","format":"int64","description":"Number of nodes with this protocol"}},"required":["count","protocol"]}}}}
```

## The CorDappPageItemDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"CorDappPageItemDTO":{"type":"object","properties":{"id":{"type":"integer","format":"int64","readOnly":true},"name":{"type":"string"},"version":{"type":"string","description":"App version"},"developer":{"type":"string"},"updatedAt":{"type":"string","format":"date-time"},"status":{"type":"string","enum":["RUNNING","INSTALLING","REMOVING","INSTALLED","NOT_INSTALLED","ERROR","CREATED","CREATING"]}}}}}}
```

## The CorDappsPageDTO object

```json
{"openapi":"3.1.0","info":{"title":"EBS Nodes API","version":"0.1.0"},"components":{"schemas":{"CorDappsPageDTO":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CorDappPageItemDTO"}},"metadata":{"$ref":"#/components/schemas/PageMetadata"}}},"CorDappPageItemDTO":{"type":"object","properties":{"id":{"type":"integer","format":"int64","readOnly":true},"name":{"type":"string"},"version":{"type":"string","description":"App version"},"developer":{"type":"string"},"updatedAt":{"type":"string","format":"date-time"},"status":{"type":"string","enum":["RUNNING","INSTALLING","REMOVING","INSTALLED","NOT_INSTALLED","ERROR","CREATED","CREATING"]}}},"PageMetadata":{"type":"object","properties":{"page":{"type":"integer","format":"int32"},"pageSize":{"type":"integer","format":"int32"},"totalItems":{"type":"integer","format":"int32"},"totalPages":{"type":"integer","format":"int32"}}}}}}
```
