--- page-toc: disable: true title: "ArangoDB Oasis API" --- Protocol Documentation

Protocol Documentation

Table of Contents

resourcemanager/v1/resourcemanager.proto

Top

DataProcessingAddendum

FieldTypeLabelDescription
id string

Identifier of this version of the DPA

content string

Content of DPA in markdown format

created_at google.protobuf.Timestamp

Creation date of this version of the DPA.

Event

An Event represents something that happened to an organization

in the ArangoDB Managed service.

FieldTypeLabelDescription
id string

System identifier of the event. This is a read-only value.

url string

URL of this resource This is a read-only value and cannot be initialized.

organization_id string

Identifier of the organization that owns this event. This is a read-only value.

subject_id string

Identifier of the subject of this event. This is a read-only value. If the subject of this event is an organization, this value is a duplicate of organization_id.

type string

Type of the event.

payload Event.PayloadEntry repeated

Payload of the event. The fields used in the payload are specific to the type of event.

created_at google.protobuf.Timestamp

The creation timestamp of the event

subject_url string

URL of the subject of this event. This is a read-only value.

volatile bool

If set, this event is not persisted. This is a read-only value.

created_by_id string

Identifier of the user that has created this event. This is a read-only value that can be empty.

reason string

Optional human readable reason for the event. This is a read-only value that can be empty.

status_only bool

If set, this event reflects only a status update of an entity. This is a read-only value.

Event.PayloadEntry

FieldTypeLabelDescription
key string

value string

EventList

List of Events.

FieldTypeLabelDescription
items Event repeated

IsMemberOfOrganizationRequest

Request arguments for IsMemberOfOrganization.

FieldTypeLabelDescription
user_id string

Identifier of the user

organization_id string

Identifier of the organization

IsMemberOfOrganizationResponse

Response for IsMemberOfOrganization.

FieldTypeLabelDescription
member bool

Set if the requested user is a member of the requested organization.

owner bool

Set if the requested user is an owner of the requested organization.

ListEventOptions

Options for ListEvents

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Standard list options

subject_ids string repeated

If set, filter on the subject_id of event

types string repeated

If set, filter on the type of event

created_after google.protobuf.Timestamp

If set, filter of events created after this timestamp

created_before google.protobuf.Timestamp

If set, filter of events created before this timestamp

sort_descending bool

Sort descending (new to old) on created_at field (default is ascending).

ListQuotasRequest

Request arguments for ListXyzQuotas

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Common list options

kinds string repeated

If set, limit the returned list of quota's to these kinds.

Member

Member of an organization.

A member is always a user.

FieldTypeLabelDescription
user_id string

Identifier of the user

owner bool

Set if this user is owner of the organization

MemberList

List of Members.

FieldTypeLabelDescription
items Member repeated

Organization

An Organization is represents a real world organization such as a company.

FieldTypeLabelDescription
id string

System identifier of the organization. This is a read-only value.

url string

URL of this resource This is a read-only value and cannot be initialized.

name string

Name of the organization

description string

Description of the organization

is_deleted bool

Set when this organization is deleted. This is a read-only value.

created_at google.protobuf.Timestamp

The creation timestamp of the organization

deleted_at google.protobuf.Timestamp

The deletion timestamp of the organization

tier Tier

Tier used for this organization. This is a read-only value and cannot be initialized.

total_deployments Organization.TotalDeploymentsEntry repeated

Total number of deployments created in this organization throughout its entire lifetime per tier-id. map: tier-id -> count This is a read-only value.

is_flexible_deployments_enabled bool

If set, all projects in this organization are allowed to use deployments using the flexible model.

is_allowed_to_use_custom_images bool

If set, this organization is allowed to use custom images for ArangoDB deployments.

is_allowed_to_use_iamproviders bool

If set, this organization is allowed to use IAMProviders on their deployments.

locked bool

If set, this organization cannot be deleted. To delete, first update the with locked set to false.

Organization.TotalDeploymentsEntry

FieldTypeLabelDescription
key string

value int32

OrganizationInvite

An OrganizationInvite represents an invite for a human to join an

organization.

FieldTypeLabelDescription
id string

System identifier of the invite. This is a read-only value.

url string

URL of this resource This is a read-only value and cannot be initialized.

organization_id string

Identifier of the organization that the human is invited to join. This is a read-only value.

email string

Email address of the human who is invited.

accepted bool

If set, the invitee accepted the invite. This is a read-only value.

rejected bool

If set, the invitee rejected the invite. This is a read-only value.

created_at google.protobuf.Timestamp

The creation timestamp of the invite This is a read-only value.

accepted_at google.protobuf.Timestamp

The acceptance timestamp of the invite This is a read-only value.

rejected_at google.protobuf.Timestamp

The rejection timestamp of the invite This is a read-only value.

user_id string

Identifier of the user that accepted or rejected this invite. This is a read-only value.

created_by_id string

Identifier of the user that created this invite.

organization_name string

Identifier of the organization that the human is invited to join. This is a read-only value.

created_by_name string

Name of the user that created this invite. This is a read-only value.

OrganizationInviteList

List of OrganizationInvites.

FieldTypeLabelDescription
items OrganizationInvite repeated

OrganizationList

List of organizations.

FieldTypeLabelDescription
items Organization repeated

Actual organizations

budget arangodb.cloud.common.v1.Budget

Budget for organizations (owned by the caller)

OrganizationMembersRequest

Request arguments for Add/DeleteOrganizationMembers.

FieldTypeLabelDescription
organization_id string

Identifier of the organization to add/remove a user from

members MemberList

Users to add/remove. For every user, an owner flag is provided as well. If you add an existing user, the owner flag or the add request will overwrite the value of the existing owner flag.

Project

A Project is represents a unit within an organization such as a department.

FieldTypeLabelDescription
id string

System identifier of the project. This is a read-only value. It can be set when creating the project.

url string

URL of this resource This is a read-only value and cannot be initialized.

name string

Name of the project

description string

Description of the project

organization_id string

Identifier of the organization that owns this project. This is a read-only value.

is_deleted bool

Set when this project is deleted

created_at google.protobuf.Timestamp

The creation timestamp of the project

deleted_at google.protobuf.Timestamp

The deletion timestamp of the project

is_flexible_deployments_enabled bool

If set, this project is allowed to use deployments using the flexible model.

locked bool

If set, this project cannot be deleted. To delete, first update the with locked set to false.

ProjectList

List of Projects.

FieldTypeLabelDescription
items Project repeated

Resulting projects

budget arangodb.cloud.common.v1.Budget

Budget for projects

Quota

Quota limit

FieldTypeLabelDescription
kind string

Kind of quota

description string

Human readable description of the quota

limit int64

Current limit of the quota. A value of 0 means unlimited.

QuotaDescription

Description of a kind of quota's

FieldTypeLabelDescription
kind string

Kind of the quota

description string

Human readable description

for_organizations bool

If set, this kind of quota is valid at organization level

for_projects bool

If set, this kind of quota is valid at project level

QuotaDescriptionList

List of QuotaDescription's

FieldTypeLabelDescription
items QuotaDescription repeated

QuotaList

List of Quota's

FieldTypeLabelDescription
items Quota repeated

TermsAndConditions

FieldTypeLabelDescription
id string

Identifier of this version of the terms & conditions

content string

Content of terms & conditions in markdown format

created_at google.protobuf.Timestamp

Creation date of this version of the terms & conditions.

Tier

Tier of an organization.

FieldTypeLabelDescription
id string

Identifier of the tier. This is a read-only value and cannot be initialized.

name string

Human readable name of the tier. This is a read-only value and cannot be initialized.

has_support_plans bool

If set the tier has support plans. This is a read-only value and cannot be initialized.

has_backup_uploads bool

If set the tier has backup uploads. This is a read-only value and cannot be initialized.

requires_terms_and_conditions bool

If set, the tier requires that new deployments accept the current terms & conditions. This is a read-only value and cannot be initialized.

has_support_severity_high bool

If set, this tier allows the user of support severity high.

has_support_severity_critical bool

If set, this tier allows the user of support severity critical.

has_auditlog_feature bool

If set, this tier has the auditlog feature. This is a read-only value and cannot be initialized.

has_auditlog_destination_cloud bool

If set, this tier supports the auditlog destination 'cloud'. This fields is only relevant if has_auditlog_feature is set. This is a read-only value and cannot be initialized.

has_auditlog_destination_https_post bool

If set, this tier supports the auditlog destination 'https-post'. This fields is only relevant if has_auditlog_feature is set. This is a read-only value and cannot be initialized.

ResourceManagerService

ResourceManagerService is the API used to configure basic resource objects.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListOrganizations .arangodb.cloud.common.v1.ListOptions OrganizationList

Fetch all organizations that the authenticated user is a member of. Required permissions: - None

GetOrganization .arangodb.cloud.common.v1.IDOptions Organization

Fetch an organization by its id. The authenticated user must be a member of the organization. Required permissions: - None

CreateOrganization Organization Organization

Create a new organization Required permissions: - None

UpdateOrganization Organization Organization

Update an organization Required permissions: - resourcemanager.organization.update on the organization

DeleteOrganization .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an organization Note that organization are never really removed. Instead their is_deleted field is set to true. Required permissions: - resourcemanager.organization.delete on the organization

ListOrganizationMembers .arangodb.cloud.common.v1.ListOptions MemberList

Get a list of members of the organization identified by the given context ID. Required permissions: - resourcemanager.organization.get on the organization

AddOrganizationMembers OrganizationMembersRequest .arangodb.cloud.common.v1.Empty

Add one or more members to an organization. If there are members (in the request arguments) that are already member of the organization an AlreadyExists error is returned. Required permissions: - resourcemanager.organization.update on the organization

UpdateOrganizationMembers OrganizationMembersRequest .arangodb.cloud.common.v1.Empty

Update the ownership flag of one or more members of an organization. If there are members (in the request arguments) that are not yet member of the organization, an InvalidArgument error is returned. If the request would result in the last owner no longer being an owner, an InvalidArgument error is returned. Required permissions: - resourcemanager.organization.update on the organization

DeleteOrganizationMembers OrganizationMembersRequest .arangodb.cloud.common.v1.Empty

Remove one or more members from an organization. If the request would result in the last owner being removed as member of the organization, an InvalidArgument error is returned. Required permissions: - resourcemanager.organization.update on the organization

IsMemberOfOrganization IsMemberOfOrganizationRequest IsMemberOfOrganizationResponse

Is the user identified by the given user ID a member of the organization identified by the given organization ID. Required permissions: - resourcemanager.organization.get on the organization, unless the requested user is identical to the authenticated user. Note that if the identified user or organization does not exist, no is returned.

ListOrganizationQuotas ListQuotasRequest QuotaList

Get a list of quota values for the organization identified by the given context ID. If a quota is not specified on organization level, a (potentially tier specific) default value is returned. Required permissions: - resourcemanager.organization.get on the organization

ListProjects .arangodb.cloud.common.v1.ListOptions ProjectList

Fetch all projects in the organization identified by the given context ID. The authenticated user must be a member of the organization identifier by the given context ID. Required permissions: - resourcemanager.project.list on the organization identified by the given context ID

GetProject .arangodb.cloud.common.v1.IDOptions Project

Fetch a project by its id. The authenticated user must be a member of the organization that owns the project. Required permissions: - resourcemanager.project.get on the project identified by the given ID

CreateProject Project Project

Create a new project The authenticated user must be a member of the organization that owns the project. Required permissions: - resourcemanager.project.create on the organization that owns the project

UpdateProject Project Project

Update a project The authenticated user must be a member of the organization that owns the project. Required permissions: - resourcemanager.project.update on the project

DeleteProject .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a project Note that project are initially only marked for deleted. Once all their resources are removed the project itself is deleted and cannot be restored. The authenticated user must be a member of the organization that owns the project. Required permissions: - resourcemanager.project.delete on the project

ListProjectQuotas ListQuotasRequest QuotaList

Get a list of quota values for the project identified by the given context ID. If a quota is not specified on project level, a value from organization level is returned. Required permissions: - resourcemanager.project.get on the project

ListEvents ListEventOptions EventList

Fetch all events in the organization identified by the given context ID. The authenticated user must be a member of the organization identifier by the given context ID. Required permissions: - resourcemanager.event.list on the organization identified by the given context ID Note that this method uses a POST method because the list options contains a repeated field.

ListOrganizationInvites .arangodb.cloud.common.v1.ListOptions OrganizationInviteList

Fetch all organization invites in the organization identified by the given context ID. The authenticated user must be a member of the organization identifier by the given context ID. Required permissions: - resourcemanager.organization-invite.list on the invite.

ListMyOrganizationInvites .arangodb.cloud.common.v1.ListOptions OrganizationInviteList

Fetch all organization invites for the email address of the authenticated user. Required permissions: - None

GetOrganizationInvite .arangodb.cloud.common.v1.IDOptions OrganizationInvite

Fetch an organization invite by its id. The authenticated user must be a member of the organization that the invite is for. Required permissions: - resourcemanager.organization-invite.get on the invite.

CreateOrganizationInvite OrganizationInvite OrganizationInvite

Create a new organization invite. The authenticated user must be a member of the organization that the invite is for. Required permissions: - resourcemanager.organization-invite.create on the organization that the invite is for.

DeleteOrganizationInvite .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an organization invite The authenticated user must be a member of the organization that the invite is for. Required permissions: - resourcemanager.organization-invite.delete on the invite

AcceptOrganizationInvite .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Accept an organization invite The authenticated user's email address must match the email address specified in the invite. Required permissions: - None

RejectOrganizationInvite .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Reject an organization invite The authenticated user's email address must match the email address specified in the invite. Required permissions: - None

ListQuotaDescriptions .arangodb.cloud.common.v1.ListOptions QuotaDescriptionList

Fetch descriptions for all quota kinds know by the platform. Required permissions: - None

GetTermsAndConditions .arangodb.cloud.common.v1.IDOptions TermsAndConditions

Fetch a specific version of the Terms & Conditions. Required permissions: - None

GetCurrentTermsAndConditions .arangodb.cloud.common.v1.IDOptions TermsAndConditions

Fetch the current version of the Terms & Conditions for the organization identified by the given (optional) ID. Required permissions: - None If ID is empty. - resourcemanager.organization.get If ID is not empty.

GetDataProcessingAddendum .arangodb.cloud.common.v1.IDOptions DataProcessingAddendum

Fetch a specific version of the Data Processing Addendum. Required permissions: - None

GetCurrentDataProcessingAddendum .arangodb.cloud.common.v1.IDOptions DataProcessingAddendum

Fetch the current version of the Data Processing Addendum for the organization identified by the given (optional) ID. Required permissions: - None If ID is empty. - resourcemanager.organization.get If ID is not empty.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/resourcemanager/v1/api-version
ListOrganizations GET /api/resourcemanager/v1/self/organizations
GetOrganization GET /api/resourcemanager/v1/organizations/{id}
CreateOrganization POST /api/resourcemanager/v1/organizations *
UpdateOrganization PATCH /api/resourcemanager/v1/organizations/{id} *
DeleteOrganization DELETE /api/resourcemanager/v1/organizations/{id}
ListOrganizationMembers GET /api/resourcemanager/v1/organizations/{context_id}/members
AddOrganizationMembers POST /api/resourcemanager/v1/organizations/{organization_id}/members *
UpdateOrganizationMembers PATCH /api/resourcemanager/v1/organizations/{organization_id}/members *
DeleteOrganizationMembers DELETE /api/resourcemanager/v1/organizations/{organization_id}/members *
IsMemberOfOrganization GET /api/resourcemanager/v1/organizations/{organization_id}/members/{user_id}
ListOrganizationQuotas GET /api/resourcemanager/v1/organizations/{options.context_id}/quotas
ListProjects GET /api/resourcemanager/v1/organizations/{context_id}/projects
GetProject GET /api/resourcemanager/v1/projects/{id}
CreateProject POST /api/resourcemanager/v1/organizations/{organization_id}/projects *
UpdateProject PATCH /api/resourcemanager/v1/projects/{id} *
DeleteProject DELETE /api/resourcemanager/v1/projects/{id}
ListProjectQuotas GET /api/resourcemanager/v1/projects/{options.context_id}/quotas
ListEvents POST /api/resourcemanager/v1/organizations/{options.context_id}/events *
ListOrganizationInvites GET /api/resourcemanager/v1/organizations/{context_id}/organization-invites
ListMyOrganizationInvites GET /api/resourcemanager/v1/self/organization-invites
GetOrganizationInvite GET /api/resourcemanager/v1/organization-invites/{id}
CreateOrganizationInvite POST /api/resourcemanager/v1/organizations/{organization_id}/organization-invites *
DeleteOrganizationInvite DELETE /api/resourcemanager/v1/organization-invites/{id}
AcceptOrganizationInvite POST /api/resourcemanager/v1/organization-invites/{id}/accept
RejectOrganizationInvite POST /api/resourcemanager/v1/organization-invites/{id}/reject
ListQuotaDescriptions GET /api/resourcemanager/v1/quotas/descriptions
GetTermsAndConditions GET /api/resourcemanager/v1/termsandconditions/{id}
GetCurrentTermsAndConditions GET /api/resourcemanager/v1/current-termsandconditions
GetDataProcessingAddendum GET /api/resourcemanager/v1/dpa/{id}
GetCurrentDataProcessingAddendum GET /api/resourcemanager/v1/current-dpa

crypto/v1/crypto.proto

Top

CACertificate

A CACertificate is represents a self-signed certificate authority used to sign

TLS certificates for deployments & client authentication.

FieldTypeLabelDescription
id string

System identifier of the CA certificate. This is a read-only value.

url string

URL of this resource This is a read-only value.

name string

Name of the CA certificate

description string

Description of the CA certificate

project_id string

Identifier of the project that owns this CA certificate. This value cannot be changed after creation.

lifetime google.protobuf.Duration

Time from creation of the CA certificate to expiration. This value cannot be changed after creation.

created_at google.protobuf.Timestamp

The creation timestamp of the CA certificate This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the CA certificate This is a read-only value.

expires_at google.protobuf.Timestamp

The expiration timestamp of the CA certificate This is a read-only value.

certificate_pem string

A PEM encoded representation of the public key of the CA certificate. This is a read-only value.

is_deleted bool

Set when this CA certificate is deleted. This is a read-only value.

is_expired bool

Set when this CA certificate has expired. This is a read-only value.

will_expire_soon bool

Set when this CA certificate will expire in the next month. This is a read-only value.

is_default bool

Set when this certificate is the default in its project. This is a read-only value.

use_well_known_certificate bool

When enabled, deployments using this certificate use a well known TLS certificate on the 8529 port. The self-signed certificates is always hosted on port 18529.

locked bool

If set, this certificate cannot be deleted. To delete, first update the with locked set to false.

rotation_needed bool

Set when this CA certificate will expire in the next 48 hours. This is a read-only value.

cloned_from_id string

If set, contains the ID of a CA certificate from which this certificate was cloned. This is a read-only value.

CACertificateInstructions

Instructions for installing & uninstalling CA certificates

FieldTypeLabelDescription
platforms CACertificateInstructions.PlatformInstructions repeated

Per platform instructions for install/uninstall of the CA certificate

CACertificateInstructions.PlatformInstructions

Instructions for a specific platform

FieldTypeLabelDescription
platform string

Human readable description of platform. E.g. "MacOS"

install_steps string repeated

Steps needed to install

uninstall_steps string repeated

Steps needed to uninstall

CACertificateList

List of CACertificates.

FieldTypeLabelDescription
items CACertificate repeated

ListCACertificatesRequest

Request arguments for ListCACertificatesWithFilter.

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Common list options. Context_id is ignored.

project_id string

Required ID of project to list certificates for.

cloned_from_id string

If set, include only certificates that were cloned from the certificate with this ID.

CryptoService

CryptoService is the API used to configure various crypto objects.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListCACertificates .arangodb.cloud.common.v1.ListOptions CACertificateList

Fetch all CA certificates in the project identified by the given context ID. Required permissions: - crypto.cacertificate.list on the project identified by the given context ID

ListCACertificatesWithFilter ListCACertificatesRequest CACertificateList

Fetch all CA certificates in the project identified by the given project ID that match the given filter. Required permissions: - crypto.cacertificate.list on the project identified by the given context ID

GetCACertificate .arangodb.cloud.common.v1.IDOptions CACertificate

Fetch a CA certificate by its id. Required permissions: - crypto.cacertificate.get on the CA certificate identified by the given ID

GetCACertificateInstructions .arangodb.cloud.common.v1.IDOptions CACertificateInstructions

Fetch instructions for installing & unistalling a CA certificate identified by its id on various platforms. Required permissions: - crypto.cacertificate.get on the CA certificate identified by the given ID

CreateCACertificate CACertificate CACertificate

Create a new CA certificate Required permissions: - crypto.cacertificate.create on the project that owns the CA certificate

CloneCACertificate .arangodb.cloud.common.v1.IDOptions CACertificate

Clone a CA certificate identified by given id. Required permissions: - crypto.cacertificate.clone on the project that owns the CA certificate identified by the given ID

UpdateCACertificate CACertificate CACertificate

Update a CA certificate Required permissions: - crypto.cacertificate.update on the CA certificate

DeleteCACertificate .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a CA certificate Note that CA certificate are initially only marked for deleted. Once all the resources that depend on it are removed the CA certificate itself is deleted and cannot be restored. Required permissions: - crypto.cacertificate.delete on the CA certificate

SetDefaultCACertificate CACertificate .arangodb.cloud.common.v1.Empty

Mark the given CA certificate as default for its containing project. Required permissions: - crypto.cacertificate.set-default on the project that owns the certificate.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/crypto/v1/api-version
ListCACertificates GET /api/crypto/v1/projects/{context_id}/cacertificates
ListCACertificatesWithFilter POST /api/crypto/v1/projects/{project_id}/cacertificates *
GetCACertificate GET /api/crypto/v1/cacertificates/{id}
GetCACertificateInstructions GET /api/crypto/v1/cacertificates/{id}/instructions
CreateCACertificate POST /api/crypto/v1/projects/{project_id}/cacertificates *
CloneCACertificate POST /api/crypto/v1/cacertificates/{id}/clone
UpdateCACertificate PATCH /api/crypto/v1/cacertificates/{id} *
DeleteCACertificate DELETE /api/crypto/v1/cacertificates/{id}
SetDefaultCACertificate POST /api/crypto/v1/projects/{project_id}/cacertificates/default *

tools/v1/tools.proto

Top

APIVersionPair

The version pair describing the tools compatibility with an API.

FieldTypeLabelDescription
api_id string

ID of the api.

version arangodb.cloud.common.v1.Version

Expected version of the api.

GetLatestVersionRequest

Request for GetLatestVersion

FieldTypeLabelDescription
name string

Name of the tool

expected_api_versions APIVersionPair repeated

Version pair for the tool depicting compatibility with a given API.

ToolsVersion

Response for GetLatestVersion

FieldTypeLabelDescription
latest_version string

Semantic versioning format of the latest known version of the tool that is compatible with the current API.

download_url string

Download url of the latest version for a tool.

is_compatible bool

True if the current list of API-ID+versions is still compatible with current API.

ToolsService

ToolsService is the API used by the compatibility check for an ArangoDB Tool.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

GetLatestVersion GetLatestVersionRequest ToolsVersion

Get the latest version for a tool. Required permissions: - None

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/tools/v1/api-version
GetLatestVersion GET /api/tools/v1/latest-version

security/v1/security.proto

Top

IAMProvider

IAMProvider provides configuration for a custom Identity & Access management provider

for deployments.

FieldTypeLabelDescription
id string

System identifier of the provider. This is a read-only value.

url string

URL of the provider. This is a read-only value.

name string

Name of the provider.

description string

Description of the provider.

project_id string

Identifier of the project that contains this provider.

type string

Type of provider

created_at google.protobuf.Timestamp

The creation timestamp of this provider. This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the provider This is a read-only value.

is_deleted bool

Set when this provider is deleted. This is a read-only value.

created_by_id string

Identifier of the user who created this provider. This is a read-only value.

is_default bool

Set when this provider is the default in its project. This is a read-only value.

locked bool

If set, this IAM provider cannot be deleted. To delete, first update the with locked set to false.

ldap_settings IAMProvider.LDAPSettings

IAMProvider.LDAPSettings

LDAP provider specific settings

FieldTypeLabelDescription
server string

Hostname or IP address of the server

port int32

Port number of the server (defaults to 389)

base_distinguished_name string

Base distinguished name under which the search takes place

bind_distinguished_name string

distinguished name for a read-only LDAP user to which ArangoDB can bind to search the LDAP server

bind_password string

Password name for a read-only LDAP user to which ArangoDB can bind to search the LDAP server. This is a set-only field. During get/list requests, this field will be empty.

refresh_rate int32

Refresh rate in seconds (defaults to 300)

tls_ca_certificate_pem string

PEM encoded version of the CA certificate used by the LDAP server.

serialized bool

If set, calls into the underlying LDAP library are serialized. This option can be used to work around thread-unsafe LDAP library functionality.

serialize_timeout_sec int32

Timeout (in seconds) used when waiting to enter the LDAP library call serialization lock. This is only meaningful when serialized has been set to true.

retries int32

Number of retries to attempt a connection to the LDAP server. Setting this to values greater than zero will make ArangoDB retry to contact the LDAP server in case no connection can be made initially.

restart bool

If set, the LDAP library will implicitly restart connections.

referrals bool

If set, the LDAP library will implicitly chase referrals.

timeout_sec int32

Timeout value (in seconds) for synchronous LDAP API calls (a value of 0 means default timeout).

network_timeout_sec int32

Timeout value (in seconds) after which network operations following the initial connection return in case of no activity (a value of 0 means default timeout).

async_connect bool

If set, the LDAP library will connect asynchronously.

prefix string

Prefix for simple authentication

suffix string

Suffix for simple authentication

search_scope string

LDAP search scope with possible values "base" (just search the base distinguished name), "sub" (recursive search under the base distinguished name) or "one" (search the base’s immediate children) (default: "sub").

search_filter string

LDAP filter expression which limits the set of LDAP users being considered (default: "objectClass=*"" which means all objects).

search_attribute string

Specifies the attribute in the user objects which is used to match the ArangoDB user name (default: "uid").

roles_attribute_name string

If set, this field specifies the name of the attribute used to fetch the roles of a user.

roles_search string

If set, then the string {USER} in the value of this field is replaced with the distinguished name of the authenticated LDAP user and the resulting search expression is used to match distinguished names of LDAP objects representing roles of that user.

roles_include string

Regular expression that is used to filter roles. Only roles that match the regular expression are used.

roles_exclude string

Regular expression that is used to filter roles. Only roles that do not match the regular expression are used.

roles_transformation string

A regular expression in the format of a replacement text (/re/text/). This regular expression is applied to the role name found. This is especially useful in the roles-search variant to extract the real role name out of the dn value.

super_user_role string

Name of role associated with the superuser. Any user belonging to this role gains superuser status. This role is checked after applying the roles_transformation expression.

IAMProviderList

List of IAM providers.

FieldTypeLabelDescription
items IAMProvider repeated

IPAllowlist

IPAllowlist represents a list of CIDR ranges from which a deployment is accessible.

FieldTypeLabelDescription
id string

System identifier of the allowlist. This is a read-only value.

url string

URL of the allowlist. This is a read-only value.

name string

Name of the allowlist.

description string

Description of the allowlist.

project_id string

Identifier of the project that contains this allowlist.

cidr_ranges string repeated

List of CIDR ranges. Values must follow format as defined in RFC 4632 and RFC 4291.

created_at google.protobuf.Timestamp

The creation timestamp of this allowlist. This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the allowlist This is a read-only value.

is_deleted bool

Set when this allowlist is deleted. This is a read-only value.

created_by_id string

Identifier of the user who created this allowlist. This is a read-only value.

locked bool

If set, this allow list cannot be deleted. To delete, first update the with locked set to false.

IPAllowlistList

List of IP allowlists.

FieldTypeLabelDescription
items IPAllowlist repeated

IPWhitelist

IPWhitelist represents a list of CIDR ranges from which a deployment is accessible.

Note: The use of this message has been deprecated in favor of IPAllowlist.

In a future version, this message will be removed.

FieldTypeLabelDescription
id string

System identifier of the whitelist. This is a read-only value.

url string

URL of the whitelist. This is a read-only value.

name string

Name of the whitelist.

description string

Description of the whitelist.

project_id string

Identifier of the project that contains this whitelist.

cidr_ranges string repeated

List of CIDR ranges. Values must follow format as defined in RFC 4632 and RFC 4291.

created_at google.protobuf.Timestamp

The creation timestamp of this whitelist. This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the whitelist This is a read-only value.

is_deleted bool

Set when this whitelist is deleted. This is a read-only value.

created_by_id string

Identifier of the user who created this whitelist. This is a read-only value.

IPWhitelistList

List of IP whitelists.

Note: The use of this message has been deprecated in favor of IPAllowlistList.

In a future version, this message will be removed.

FieldTypeLabelDescription
items IPWhitelist repeated

SecurityService

SecurityService is the API used to access security entities.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListIPAllowlists .arangodb.cloud.common.v1.ListOptions IPAllowlistList

Fetch all IP allowlists that belong to the project identified by the given context ID. Required permissions: - security.ipallowlist.list on the project identified by the given context ID.

GetIPAllowlist .arangodb.cloud.common.v1.IDOptions IPAllowlist

Fetch an IP allowlist by its id. Required permissions: - security.ipallowlist.get on the IP allowlist

CreateIPAllowlist IPAllowlist IPAllowlist

Create a new IP allowlist Required permissions: - security.ipallowlist.create on the project that owns the IP allowlist.

UpdateIPAllowlist IPAllowlist IPAllowlist

Update an IP allowlist Required permissions: - security.ipallowlist.update on the IP allowlist

DeleteIPAllowlist .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an IP allowlist. Note that IP allowlists are initially only marked for deletion. Once all their dependent deployments are removed, the allowlist is removed. Required permissions: - security.ipallowlist.delete on the IP allowlist

ListIPWhitelists .arangodb.cloud.common.v1.ListOptions IPWhitelistList

Fetch all IP whitelists that belong to the project identified by the given context ID. Required permissions: - security.ipwhitelist.list on the project identified by the given context ID. Note: The use of this method has been deprecated. In a future version, it will be removed.

GetIPWhitelist .arangodb.cloud.common.v1.IDOptions IPWhitelist

Fetch an IP whitelist by its id. Required permissions: - security.ipwhitelist.get on the IP whitelist Note: The use of this method has been deprecated. In a future version, it will be removed.

CreateIPWhitelist IPWhitelist IPWhitelist

Create a new IP whitelist Required permissions: - security.ipwhitelist.create on the project that owns the IP whitelist. Note: The use of this method has been deprecated. In a future version, it will be removed.

UpdateIPWhitelist IPWhitelist IPWhitelist

Update an IP whitelist Required permissions: - security.ipwhitelist.update on the IP whitelist Note: The use of this method has been deprecated. In a future version, it will be removed.

DeleteIPWhitelist .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an IP whitelist. Note that IP whitelists are initially only marked for deletion. Once all their dependent deployments are removed, the whitelist is removed. Required permissions: - security.ipwhitelist.delete on the IP whitelist Note: The use of this method has been deprecated. In a future version, it will be removed.

ListIAMProviders .arangodb.cloud.common.v1.ListOptions IAMProviderList

Fetch all IAM providers that belong to the project identified by the given context ID. Required permissions: - security.iamprovider.list on the project identified by the given context ID.

GetIAMProvider .arangodb.cloud.common.v1.IDOptions IAMProvider

Fetch an IAM provider by its id. Required permissions: - security.iamprovider.get on the IAM provider

CreateIAMProvider IAMProvider IAMProvider

Create a new IAM provider Required permissions: - security.iamprovider.create on the project that owns the IAM provider.

UpdateIAMProvider IAMProvider IAMProvider

Update an IAM provider Required permissions: - security.iamprovider.update on the IAM provider

DeleteIAMProvider .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an IAM provider. Note that IAM providers are initially only marked for deletion. Once all their dependent deployments are removed, the provider is removed. Required permissions: - security.iamprovider.delete on the IP whitelist

SetDefaultIAMProvider IAMProvider .arangodb.cloud.common.v1.Empty

Mark the given IAM provider as default for its containing project. Required permissions: - security.iamprovider.set-default on the project that owns the provider.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/security/v1/api-version
ListIPAllowlists GET /api/security/v1/projects/{context_id}/ipallowlists
GetIPAllowlist GET /api/security/v1/ipallowlists/{id}
CreateIPAllowlist POST /api/security/v1/project/{project_id}/ipallowlists *
UpdateIPAllowlist PATCH /api/security/v1/ipallowlists/{id} *
DeleteIPAllowlist DELETE /api/security/v1/ipallowlists/{id}
ListIPWhitelists GET /api/security/v1/projects/{context_id}/ipwhitelists
GetIPWhitelist GET /api/security/v1/ipwhitelists/{id}
CreateIPWhitelist POST /api/security/v1/project/{project_id}/ipwhitelists *
UpdateIPWhitelist PATCH /api/security/v1/ipwhitelists/{id} *
DeleteIPWhitelist DELETE /api/security/v1/ipwhitelists/{id}
ListIAMProviders GET /api/security/v1/projects/{context_id}/iamproviders
GetIAMProvider GET /api/security/v1/iamproviders/{id}
CreateIAMProvider POST /api/security/v1/project/{project_id}/iamproviders *
UpdateIAMProvider PATCH /api/security/v1/iamproviders/{id} *
DeleteIAMProvider DELETE /api/security/v1/iamproviders/{id}
SetDefaultIAMProvider POST /api/security/v1/projects/{project_id}/iamproviders/default *

example/v1/example.proto

Top

ExampleDataset

ExampleDataset represents a single example dataaset.

FieldTypeLabelDescription
id string

System identifier of the example dataset. This is a read-only value.

url string

URL of this resource. This is a read-only value.

name string

Name of the example dataset

description string

Description of the example dataset

guide string

Guide contains description of the example dataset including several example queries. Content type of guide is markdown.

created_at google.protobuf.Timestamp

The creation timestamp of the example dataset (database object) This is a read-only value.

ExampleDatasetInstallation

ExampleDatasetInstallation represents an installation of a dataset initiated by the user.

FieldTypeLabelDescription
id string

System identifier of the installation. This is a read-only value.

url string

URL of this resource This is a read-only value.

deployment_id string

Identifier of the deployment that owns this installation. After creation, this value cannot be changed.

exampledataset_id string

Identifier of the example dataset which will be installed. After creation, this value cannot be changed.

created_at google.protobuf.Timestamp

The creation timestamp of the installation.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the installation This is a read-only value.

is_deleted bool

Set when this installation is deleted. This is a read-only value.

status ExampleDatasetInstallation.Status

Status of the actual installation.

ExampleDatasetInstallation.Status

Status of the installation.

All members of this field are read-only.

FieldTypeLabelDescription
database_name string

Name of the database into which this example dataset was installed.

state string

The state of the installation. Will be one of the following: "InProgress|Create|Ready|Failed"

is_failed bool

Set when the installation is failed.

is_available bool

Set when once the installation finished successfully and the dataset is available to be used.

ExampleDatasetInstallationList

List of example datasets.

FieldTypeLabelDescription
items ExampleDatasetInstallation repeated

ExampleDatasetList

List of example datasets.

FieldTypeLabelDescription
items ExampleDataset repeated

ListExampleDatasetInstallationsRequest

Request arguments for ListExampleDatasetInstallations.

FieldTypeLabelDescription
deployment_id string

Identifier of the deployment to request the installations for.

options arangodb.cloud.common.v1.ListOptions

Optional common list options, the context_id is ignored.

ListExampleDatasetsRequest

ListExampleDatasetsRequest provides an extendable list request for listing datasets.

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Optional common list options, the context_id is ignored.

organization_id string

If set, the result includes all example datasets which are available for the organization identified by this ID. If not set, only datasets are returned that are available to all organizations.

ExampleDatasetService

ExampleDatasetService is the API used to query for example datasets.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListExampleDatasets ListExampleDatasetsRequest ExampleDatasetList

Fetch all example datasets. Required permissions: - None: Caller must be authenticated.

GetExampleDataset .arangodb.cloud.common.v1.IDOptions ExampleDataset

Fetch an example dataset identified by the given ID. Required permissions: - None: Caller must be authenticated.

ListExampleDatasetInstallations ListExampleDatasetInstallationsRequest ExampleDatasetInstallationList

Fetch all installations for a specific deployment. Required permissions: - example.exampledatasetinstallation.list on the deployment that owns the installation and is identified by the given ID.

GetExampleDatasetInstallation .arangodb.cloud.common.v1.IDOptions ExampleDatasetInstallation

Fetch an installations identified by the given ID. Required permissions: - example.exampledatasetinstallation.get on the installation identified by the given ID.

CreateExampleDatasetInstallation ExampleDatasetInstallation ExampleDatasetInstallation

Create a new example installation. This represents a request made by the user to create an installation for a deployment given a specified example dataset. Required permissions: - example.exampledatasetinstallation.create on the deployment that the installation is for and is identified by the given ID.

UpdateExampleDatasetInstallation ExampleDatasetInstallation ExampleDatasetInstallation

Update an installation. Required permissions: - example.exampledatasetinstallation.update on the installation identified by the given ID.

DeleteExampleDatasetInstallation .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an installation identified by the given ID. Required permissions: - example.exampledatasetinstallation.delete on the installation identified by the given ID.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/example/v1/api-version
ListExampleDatasets GET /api/example/v1/exampledataset
GetExampleDataset GET /api/example/v1/exampledataset/{id}
ListExampleDatasetInstallations GET /api/example/v1/deployment/{deployment_id}/exampledatasetinstallation
GetExampleDatasetInstallation GET /api/example/v1/exampledatasetinstallation/{id}
CreateExampleDatasetInstallation POST /api/example/v1/deployment/{deployment_id}/exampledatasetinstallation *
UpdateExampleDatasetInstallation PATCH /api/example/v1/exampledatasetinstallation/{id} *
DeleteExampleDatasetInstallation DELETE /api/example/v1/exampledatasetinstallation/{id}

platform/v1/platform.proto

Top

ListProvidersRequest

Request arguments for ListProviders

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Common list options

organization_id string

If set, the result includes all providers for that are available for the organization identified by this ID. If not set, only providers are returned that are available to all organizations.

ListRegionsRequest

Request arguments for ListRegions

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Common list options

provider_id string

Required identifier of the provider to list regions for.

organization_id string

If set, the result includes all regions for that are available for the organization identified by this ID. If not set, only regions are returned that are available to all organizations.

Provider

Provider represents a specific cloud provider such as AWS or GCP.

FieldTypeLabelDescription
id string

System identifier of the provider.

name string

Name of the provider

prerelease bool

If set, this provider has not be released as generally available.

ProviderList

List of providers.

FieldTypeLabelDescription
items Provider repeated

Region

Region represents a geographical region in which deployments are run.

FieldTypeLabelDescription
id string

System identifier of the region.

provider_id string

Identifier of the provider that hosts this region.

location string

Location of the region

available bool

Is this region available for creating new deployments?

low_stock bool

If set, this region is low on stock. Creating a deployment may not be possible.

out_of_stock bool

If set, this region is out of stock. Creating a deployment is currently not possible.

prerelease bool

If set, this region has not be released as generally available.

RegionList

List of regions.

FieldTypeLabelDescription
items Region repeated

PlatformService

PlatformService is the API used to query for cloud provider & regional info.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListProviders ListProvidersRequest ProviderList

Fetch all providers that are supported by the ArangoDB cloud. Required permissions: - None

GetProvider .arangodb.cloud.common.v1.IDOptions Provider

Fetch a provider by its id. Required permissions: - None

ListRegions ListRegionsRequest RegionList

Fetch all regions provided by the provided identified by the given context ID. If the given context identifier contains a valid organization ID, the result includes all regions for that organization. Otherwise only regions are returned that are available to all organizations. Required permissions: - None

GetRegion .arangodb.cloud.common.v1.IDOptions Region

Fetch a region by its id. Required permissions: - None

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/platform/v1/api-version
ListProviders GET /api/platform/v1/providers
GetProvider GET /api/platform/v1/providers/{id}
ListRegions GET /api/platform/v1/providers/{provider_id}/regions
GetRegion GET /api/platform/v1/regions/{id}

usage/v1/usage.proto

Top

ListUsageItemsRequest

Request arguments for ListUsageItems

FieldTypeLabelDescription
organization_id string

Request usage items for the organization with this id. This is a required field.

from google.protobuf.Timestamp

Request usage items that overlaps in time with the time period that starts with this timestamp (inclusive). This is a required field.

to google.protobuf.Timestamp

Request usage items that overlaps in time with the time period that ends with this timestamp (exclusive). This is a required field.

sort_descending bool

Sort descending (new to old) on started_at field (default is ascending).

kind string

Limit to usage items of this kind

options arangodb.cloud.common.v1.ListOptions

Standard list options This is an optional field.

resource_url string

Limit to usage items for the resource with this URL. This is an optional field.

resource_kind string

Limit to usage items for the resource with this kind. This is an optional field.

project_id string

Limit to usage items for the project with this id. This is an optional field.

deployment_id string

Limit to usage items for the deployment with this id. This is an optional field.

has_no_invoice_id bool

If set, limit to usage items that have no invoice_id set.

has_invoice_id bool

If set, limit to usage items that have an invoice_id set.

invoice_id string

If set, limit to usage items that have the invoice_id set to this specific value. This is an optional field.

UsageItem

A UsageItem message contained usage tracking information for a tracked

resource (usually deployment) in a specific time period.

FieldTypeLabelDescription
id string

System identifier of the usage item.

url string

URL of this resource

kind string

Kind of usage item

resource UsageItem.Resource

Identification of the resource covered by this usage item

starts_at google.protobuf.Timestamp

This usage item covers a time period that starts at this timestamp

ends_at google.protobuf.Timestamp

This usage item covers a time period that ends at this timestamp. If the usage item has not yet ended, this field is is set to the current time.

has_ended bool

Set when this usage item has ended.

tier_id string

Identifier of the tier the organization was using at the start of this usage period.

invoice_id string

Identifier of the invoice that includes this usage item. The usage item must be ended when this field it set.

deployment_size UsageItem.DeploymentSize

Amount of (computer) resources used by the resource covered by this usage item. This field is only set when the usage item is of kind DeploymentSize.

network_transfer_size UsageItem.NetworkTransferSize

Amount of network traffic used by the resource covered by this usage item. This field is only set when the usage item is of kind NetworkTransferSize.

backup_storage_size UsageItem.BackupStorageSize

Amount of backup related cloud storage used by the resource covered by this usage item. This field is only set when the usage item is of kind BackupStorageSize.

UsageItem.BackupStorageSize

FieldTypeLabelDescription
cloud_storage_size int64

Amount of cloud storage (in bytes) used by backups of a deployment.

UsageItem.DeploymentSize

FieldTypeLabelDescription
coordinators int32

Number of coordinators of the deployment

coordinator_memory_size int32

Amount of memory (in GB) allocated for each coordinator.

dbservers int32

Number of dbservers of the deployment

dbserver_memory_size int32

Amount of memory (in GB) allocated for each dbserver.

dbserver_disk_size int32

Amount of disk space (in GB) allocated for each dbserver.

agents int32

Number of agents of the deployment

agent_memory_size int32

Amount of memory (in GB) allocated for each agent.

agent_disk_size int32

Amount of disk space (in GB) allocated for each agent.

node_size_id string

Identifier of the node-size used for this deployment (empty for flexible)

addon_ids string repeated

List of identifiers of addons used by the deployment.

UsageItem.NetworkTransferSize

FieldTypeLabelDescription
destination string

The destination (or source) the network traffic going to (or coming from) Can be 'Internet' or 'InCluster' An empty string means 'Internet'

total_transfer_ingress_size int64

Total amount of network ingress traffic (in bytes) caused by the use of a deployment. Destination 'Internet': This is traffic coming from the internet, so excluding inner cluster traffic Destination 'InCluster': This is in-cluster traffic only This is always excluding backup traffic (downloads).

total_transfer_egress_size int64

Total amount of network egress traffic (in bytes) caused by the use of a deployment. Destination 'Internet': This is traffic going to the internet, so excluding inner cluster traffic Destination 'InCluster': This is in-cluster traffic only This is always excluding backup traffic (uploads). Note: In the future we want to split between cross_region_transfer_x and inner_region_transfer_x, the total_transfer_x is the sum of these 2. Inner region can be cross availability zone.

UsageItem.Resource

FieldTypeLabelDescription
id string

System identifier of the resource that this usage item covers.

url string

URL of the resource that this usage item covers

kind string

Kind of resource that this usage item covers.

description string

Human readable description of the resource that this usage item covers.

organization_id string

Identifier of the organization that owns the resource that this usage item covers.

organization_name string

Name of the organization that owns the resource that this usage item covers.

project_id string

Identifier of the project that owns the resource that this usage item covers.

project_name string

Name of the project that owns the resource that this usage item covers.

deployment_id string

Identifier of the deployment that owns the resource that this usage item covers.

deployment_name string

Name of the deployment that owns the resource that this usage item covers.

deployment_member_name string

Name of the deployment member that owns the resource that this usage item covers. This field is only set when the usage item is specific for a member of the deployment (e.g. network transfer)

cloud_provider_id string

Identifier of the cloud provider that is used to run the deployment.

cloud_region_id string

Identifier of the cloud region that is used to run the deployment.

support_plan_id string

Identifier of the support plan that is attached to the deployment.

deployment_model string

Model of the deployment

UsageItemList

List of UsageItems.

FieldTypeLabelDescription
items UsageItem repeated

UsageService

UsageService is the API used to fetch usage tracking information.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListUsageItems ListUsageItemsRequest UsageItemList

Fetch all UsageItem resources in the organization identified by the given organization ID that match the given criteria. Required permissions: - usage.usageitem.list on the organization identified by the given organization ID

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/usage/v1/api-version
ListUsageItems GET /api/usage/v1/organization/{organization_id}/usageitems

common/v1/common.proto

Top

Budget

Budget for resources of a specific kind

FieldTypeLabelDescription
used int64

How many resources of the specific kind are in use

available int64

How many resources of the specific kind are still available. Note a value above 0 does not mean that the caller has permission to add those resources.

unlimited bool

If set, there is no limit to the number of resources of a specific kind that can be created. If set, available is 0.

Empty

Empty message

IDOptions

Options for a get-by-id request

FieldTypeLabelDescription
id string

System identifier of the object to fetch.

ListOptions

Options for a list request.

FieldTypeLabelDescription
page_size int32

Maximum number of items to return. If not specified, a default number items are returned. Unless specified otherwise, the default number is DefaultPageSize.

page int64

Page to start with (defaults to 0).

context_id string

Identifier of the resource in which the list request is made.

URLOptions

Options for a get-by-url request

FieldTypeLabelDescription
url string

URL of the resource to fetch.

Version

Semantic version number.

FieldTypeLabelDescription
major int32

Major version (increasing may break APIs)

minor int32

Minor version (increased for new features)

patch int32

Patch version (increased for fixed)

YesOrNo

Response for single boolean.

FieldTypeLabelDescription
result bool

iam/v1/iam.proto

Top

APIKey

API Keys are authentication "keys" intended to be used for scripting.

FieldTypeLabelDescription
id string

Identifier of this key

url string

URL of this key.

user_id string

User represented by this key

organization_id string

If set, this key only grants access to this organization.

is_readonly bool

If set, this key only grants access to read-only API's (List..., Get...)

created_at google.protobuf.Timestamp

The creation timestamp of the key

expires_at google.protobuf.Timestamp

The expiration timestamp of the key

is_expired bool

Set when this key is expired.

revoked_at google.protobuf.Timestamp

The revocation timestamp of the key (if any)

is_revoked bool

Set when this key is explicitly revoked.

APIKeyList

List of APIKey's

FieldTypeLabelDescription
items APIKey repeated

APIKeySecret

API key secrets are used once to inform the users of the secret

for an API key.

FieldTypeLabelDescription
id string

ID of the API key

secret string

Secret of the API key

AuthenticateAPIKeyRequest

Request arguments for AuthenticateAPIKey

FieldTypeLabelDescription
id string

API key id

secret string

Secret of the API key

time_to_live google.protobuf.Duration

Life time of the token. If set, then this TTL is used reduce the default TTL of an authentication token. It cannot be used to increase the default lifetime of a token.

AuthenticateAPIKeyResponse

Response for AuthenticateAPIKey

FieldTypeLabelDescription
token string

Bearer token

time_to_live google.protobuf.Duration

Actual life time of the token.

CreateAPIKeyRequest

Request arguments for CreateAPIKey.

FieldTypeLabelDescription
organization_id string

If set, the created key only grants access to this organization.

readonly bool

If set, the created key only grants access to read-only API's (List..., Get...). If not set, the created key grants access to all API's (that the user has access to).

time_to_live google.protobuf.Duration

Duration between now and the expiration date of the created key. A value of 0 means that the API key will not expire. You can still use RevokeAPIKey to revoke such API keys.

Group

Group of user accounts.

FieldTypeLabelDescription
id string

System identifier of the group. This is a read-only value.

organization_id string

Identifier of the organization that owns this group.

name string

Name of the group

description string

Description of the group

created_at google.protobuf.Timestamp

The creation timestamp of the group

deleted_at google.protobuf.Timestamp

The deletion timestamp of the group

is_deleted bool

Set when this organization is deleted. This is a read-only value.

url string

URL of this resource This is a read-only value and cannot be initialized.

is_virtual bool

Set if this group is virtual and managed by the system. This is a read-only value.

GroupList

List of groups.

FieldTypeLabelDescription
items Group repeated

GroupMemberList

List of group members (user ID's)

FieldTypeLabelDescription
items string repeated

List of ID's of users that are member of the group.

GroupMembersRequest

Request arguments for Add/DeleteGroupMembers.

FieldTypeLabelDescription
group_id string

ID of the group to add/remove members to/from.

user_ids string repeated

ID's of users to add/remove to/from the group.

HasPermissionsRequest

Request arguments for HasPermissionsRequest.

FieldTypeLabelDescription
url string

URL of the resource to query permissions for.

permissions string repeated

The list of permissions that are required.

IsMemberOfGroupRequest

Request arguments for IsMemberOfGroup.

FieldTypeLabelDescription
user_id string

Identifier of the user

group_id string

Identifier of the group

PermissionList

List of permissions.

FieldTypeLabelDescription
items string repeated

Policy

Policy bindings members to roles for access to a resource.

FieldTypeLabelDescription
resource_url string

URL of the resource to which this policy applies.

bindings RoleBinding repeated

Role bindings to apply to the resource.

RenewAPIKeyTokenRequest

Request arguments for RenewAPIKeyToken.

FieldTypeLabelDescription
token string

Bearer token

time_to_live google.protobuf.Duration

Extended life time of the token. By default, a renewed token will have a default lifetime from the moment of the renew call. If this field is set, then this TTL is used reduce the default TTL of the renewed token. It cannot be used to increase the default lifetime of the renewed token.

RenewAPIKeyTokenResponse

Response for RenewAPIKeyToken.

FieldTypeLabelDescription
time_to_live google.protobuf.Duration

Actual life time of the token.

RevokeAPIKeyTokenRequest

Request arguments for RevokeAPIKeyToken.

FieldTypeLabelDescription
token string

Bearer token

Role

A role is a list of permissions.

Roles can be bound to resources for members.

FieldTypeLabelDescription
id string

System identifier of the role. This is a read-only value.

organization_id string

Identifier of the organization that owns this role. This value is undefined for predefined roles.

name string

Name of the role

description string

Description of the role

permissions string repeated

Permissions to grant when this role is bound.

is_predefined bool

Set if this role is predefined. This is a read-only value.

created_at google.protobuf.Timestamp

The creation timestamp of the role

deleted_at google.protobuf.Timestamp

The deletion timestamp of the role

is_deleted bool

Set when this organization is deleted. This is a read-only value.

url string

URL of this resource This is a read-only value and cannot be initialized.

RoleBinding

RoleBinding binds a Role to a member.

FieldTypeLabelDescription
id string

System identifier of the role-binding. This is a read-only value.

member_id string

Identifier of the member to bind a role to. Member ID is formatted as: - user:<user_id> - group:<group_id>

role_id string

Identifier of the Role to grant to member

delete_not_allowed bool

If set, this this role-binding cannot be deleted This is a read-only value.

RoleBindingsRequest

Request arguments for Add/DeleteRoleBindings.

FieldTypeLabelDescription
resource_url string

URL of the resource to add/remove policy binding to/from.

bindings RoleBinding repeated

Role bindings to add/remove to the policy.

RoleList

List of roles.

FieldTypeLabelDescription
items Role repeated

User

User represents an actual person.

FieldTypeLabelDescription
id string

Identifier of the user. This is a read-only value.

email string

Primary email address of the user. All emails send to this user will use this address. This is a read-only value.

name string

Name of the user. This may be empty if not filled out by the user.

given_name string

Given name of the user. This may be empty if not filled out by the user.

family_name string

Family name of the user. This may be empty if not filled out by the user.

created_at google.protobuf.Timestamp

The creation timestamp of the user. This is a read-only value.

additional_emails string repeated

Additional email addresses of the user. This will be filled in when the authentication provided knows multiple email addresses for the user. This is a read-only value.

mobile_phone string

Mobile phone number of the user. This value must be unique globally. This field will not be filled, unless: - The currently authenticated user is this user - The currently authenticated user has `iam.user.get-personal-data` permission on the organization that user is a member of. This value can only be changed to a non-empty value. If changed, the new number has to be verified again.

mobile_phone_verified bool

Set when the mobile phone number has been successfully verified. This is a read-only value.

company_name string

Company name of the user This may be empty if not filled out by the user.

dashboard_access_denied bool

If set, this user is denied access to the dashboard. This is a read-only value.

dashboard_access_denied_reason string

If set, this field describes the reason why this user is denied access to the dashboard. This is a read-only value.

apikey_id string

If set, this user is currently being authenticated using an API key (identified by this ID)

slack_name string

If set, contains Slack name of this user in the arangodb-community slack.

last_login_at google.protobuf.Timestamp

The timestamp of the last login of the user. This is a read-only value.

last_ip string

If set, contains IP address from which the user last logged in.

mobile_phone_needs_verification bool

Defines if a user's mobile phone number needs verification based on email root domain address.

VerifyUserMobilePhoneRequest

Request arguments for VerifyUserMobilePhone

FieldTypeLabelDescription
code string

Code that was send to the mobile phone number.

IAMService

IAMService is the API used to configure IAM objects.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

GetThisUser .arangodb.cloud.common.v1.Empty User

Fetch all available information of the currently authenticated user. Required permissions: - None

GetUser .arangodb.cloud.common.v1.IDOptions User

Fetch all available information of the user identified by the given ID. Required permissions: - resourcemanager.organization.get on one of the organizations that the requested user and authenticated user are both a member of

UpdateUser User User

Update a user Required permissions: - None if the given user is the authenticated user. or - resourcemanager.organization.get on one of the organizations that the requested user and authenticated user are both a member of and - iam.user.update on organization on one of the organizations that the requested user and authenticated user are both a member of

VerifyUserMobilePhone VerifyUserMobilePhoneRequest .arangodb.cloud.common.v1.Empty

Verify the mobile phone number of a user, by provided the unique code that was send to the number. If the code is valid an empty result is returned, otherwise an InvalidArgument error is returned. The authenticated user is always the subject of this request. Required permissions: - None (since the subject is always the authenticated user).

ResendUserMobilePhoneVerification .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Empty

Resend a verification code to the mobile phone number listed for the authenticated user. Required permissions: - None (since the subject is always the authenticated user).

ListGroups .arangodb.cloud.common.v1.ListOptions GroupList

Fetch all groups of the organization identified by the given context ID. Required permissions: - iam.group.list on organization identified by given context ID.

GetGroup .arangodb.cloud.common.v1.IDOptions Group

Fetch a group by its id. Required permissions: - iam.group.get on organization that owns the group

CreateGroup Group Group

Create a group Required permissions: - iam.group.create on organization that owns the group

UpdateGroup Group Group

Update a group Required permissions: - iam.group.update on organization that owns the group

DeleteGroup .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a group Required permissions: - iam.group.delete on organization that owns the group

ListGroupMembers .arangodb.cloud.common.v1.ListOptions GroupMemberList

List of members of the group identified by the given context ID. Required permissions: - iam.group.get on organization that owns the group

AddGroupMembers GroupMembersRequest .arangodb.cloud.common.v1.Empty

Add one or more members to the group identified by given ID. Required permissions: - iam.group.update on organization that owns the group

DeleteGroupMembers GroupMembersRequest .arangodb.cloud.common.v1.Empty

Remove one or more members from the group identified by given ID. Required permissions: - iam.group.update on organization that owns the group

IsMemberOfGroup IsMemberOfGroupRequest .arangodb.cloud.common.v1.YesOrNo

Is the user identified by the given user ID a member of the group identified by the given group ID. Required permissions: - iam.group.get on organization that owns the group, unless the requested user is identical to the authenticated user. Note that if the identified group does not exist, no is returned.

ListRoles .arangodb.cloud.common.v1.ListOptions RoleList

Fetch all roles in the organization identified by the given context ID. Required permissions: - iam.role.list on organization identified by given context ID.

GetRole .arangodb.cloud.common.v1.IDOptions Role

Fetch a role by its id. Required permissions: - iam.role.get on organization that owns the role

CreateRole Role Role

Create a custom role Required permissions: - iam.role.create on organization that owns the role

UpdateRole Role Role

Update a custom role Required permissions: - iam.role.update on organization that owns the role

DeleteRole .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a custom role Required permissions: - iam.role.delete on organization that owns the role

GetPolicy .arangodb.cloud.common.v1.URLOptions Policy

Get the policy for a resource identified by given URL. Required permissions: - iam.policy.get on resource identified by the url

AddRoleBindings RoleBindingsRequest Policy

Add one or more RoleBindings to the policy of a resource identified by given URL. Required permissions: - iam.policy.update on resource identified by the url

DeleteRoleBindings RoleBindingsRequest Policy

Remove one or more RoleBindings from the policy of a resource identified by given URL. Required permissions: - iam.policy.update on resource identified by the url

GetEffectivePermissions .arangodb.cloud.common.v1.URLOptions PermissionList

Return the list of permissions that are available to the currently authenticated used for actions on the resource identified by the given URL. Required permissions: - None

HasPermissions HasPermissionsRequest .arangodb.cloud.common.v1.YesOrNo

Does the authenticated user have all of the requested permissions for the resource identified by the given URL? Required permissions: - None

ListPermissions .arangodb.cloud.common.v1.Empty PermissionList

List all known permissions. Required permissions: - None

ListAPIKeys .arangodb.cloud.common.v1.ListOptions APIKeyList

Fetch all API keys owned by the authenticated caller. Required permissions: - None

GetAPIKey .arangodb.cloud.common.v1.IDOptions APIKey

Fetch an API key by its id. The API key must be owned by the authenticated caller. Required permissions: - None

CreateAPIKey CreateAPIKeyRequest APIKeySecret

Create a new API key. The API key will be owned by the authenticated caller. Required permissions: - None

RevokeAPIKey .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Ensure that the expiration date of the API key identified by given ID is either in the past or set to now. The API key must be owned by the authenticated caller. Required permissions: - None

DeleteAPIKey .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete the API key identified by given ID The API key must be owned by the authenticated caller. Required permissions: - None

AuthenticateAPIKey AuthenticateAPIKeyRequest AuthenticateAPIKeyResponse

Authenticate using an API key. If authentication succeeds, this function returns a bearer token. That token must be used to authenticate all other API requests. If the given API key identifier is invalid or expired, or an incorrect secret is given, this function will return an unauthenticated error. Required permissions: - None

RenewAPIKeyToken RenewAPIKeyTokenRequest RenewAPIKeyTokenResponse

Renew a non-expired API key authentication token. This allows to extend the lifetime of a token created by AuthenticateAPIKey. If the given token is invalid or expired, or the underlying API key is expired this function will return an unauthenticated error. Required permissions: - None

RevokeAPIKeyToken RevokeAPIKeyTokenRequest .arangodb.cloud.common.v1.Empty

Revoke an API key authentication token. This function will return a non-error response, even if the given token is invalid or already expired. Required permissions: - None

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/iam/v1/api-version
GetThisUser GET /api/iam/v1/self/user
GetUser GET /api/iam/v1/users/{id}
UpdateUser PATCH /api/iam/v1/users/{id} *
VerifyUserMobilePhone POST /api/iam/v1/user-mobile-phone/verify *
ResendUserMobilePhoneVerification POST /api/iam/v1/user-mobile-phone/resend *
ListGroups GET /api/iam/v1/organizations/{context_id}/groups
GetGroup GET /api/iam/v1/groups/{id}
CreateGroup POST /api/iam/v1/organizations/{organization_id}/groups *
UpdateGroup PATCH /api/iam/v1/groups/{id} *
DeleteGroup DELETE /api/iam/v1/groups/{id}
ListGroupMembers GET /api/iam/v1/groups/{context_id}/members
AddGroupMembers POST /api/iam/v1/groups/{group_id}/members *
DeleteGroupMembers DELETE /api/iam/v1/groups/{group_id}/members *
IsMemberOfGroup GET /api/iam/v1/groups/{group_id}/members/{user_id}
ListRoles GET /api/iam/v1/organizations/{context_id}/roles
GetRole GET /api/iam/v1/roles/{id}
CreateRole POST /api/iam/v1/organizations/{organization_id}/roles *
UpdateRole PATCH /api/iam/v1/roles/{id} *
DeleteRole DELETE /api/iam/v1/roles/{id}
GetPolicy GET /api/iam/v1/policies
AddRoleBindings POST /api/iam/v1/policies/bindings *
DeleteRoleBindings DELETE /api/iam/v1/policies/bindings *
GetEffectivePermissions GET /api/iam/v1/policies/effective-permissions
HasPermissions GET /api/iam/v1/policies/permissions
ListPermissions GET /api/iam/v1/permissions
ListAPIKeys GET /api/iam/v1/apikeys
GetAPIKey GET /api/iam/v1/apikeys/{id}
CreateAPIKey POST /api/iam/v1/apikeys *
RevokeAPIKey POST /api/iam/v1/apikeys/{id}/revoke
DeleteAPIKey DELETE /api/iam/v1/apikeys/{id}
AuthenticateAPIKey POST /api/iam/v1/apikeys/{id}/authenticate
RenewAPIKeyToken POST /api/iam/v1/tokens/{token}/renew
RevokeAPIKeyToken POST /api/iam/v1/tokens/{token}/revoke

audit/v1/audit.proto

Top

AttachProjectToAuditLogRequest

Request arguments for AttachProjectToAuditLog.

FieldTypeLabelDescription
project_id string

ID of project to attach the AuditLog to.

auditlog_id string

ID of the AuditLog to attach.

AuditLog

AuditLog holds a specification destinations that audit events should be

sent to and it acts as a grouping of audit log archives.

FieldTypeLabelDescription
id string

The ID of this resource.

url string

URL of this resource This is a read-only value.

name string

Name of the audit log

description string

Description of the audit log

created_at google.protobuf.Timestamp

The creation timestamp of the resource This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the resource This is a read-only value.

is_deleted bool

Set when this resource is deleted. This is a read-only value.

created_by_id string

Identifier of the user who created this resource. This is a read-only value.

organization_id string

Identifier of the organization that owns this audit log. This is a read-only value.

is_default bool

If set, this AuditLog is the default for the organization.

destinations AuditLog.Destination repeated

Destinations that events of this AuditLog should be sent to. Note that there can only be 1 destination of type "cloud".

AuditLog.Destination

Specification of a destination for audit events.

FieldTypeLabelDescription
type string

Type of destination. Possible values are: "cloud", "https-post"

http_post AuditLog.HttpsPostSettings

Settings for destinations of type "https-post"

AuditLog.Header

HTTP header pair

FieldTypeLabelDescription
key string

Key of the header

value string

Value of the header

AuditLog.HttpsPostSettings

Settings for a destination of type "https-post"

FieldTypeLabelDescription
url string

URL of the server to POST to. The scheme of the URL must be "https".

trusted_server_ca_pem string

PEM encoded public key of the CA used to sign the server TLS certificate. This public key will be used to verify the TLS connection provided by the server. If this field is empty, a well known CA is expected.

client_certificate_pem string

PEM encoded public key of the client certificate used to make the request.

client_key_pem string

PEM encoded private key of the client certificate used to make the request.

headers AuditLog.Header repeated

HTTP headers to add to the request. It is allowed to pass multiple headers with the same key.

excluded_topics string repeated

Do not send audit events with these topics to this destination.

AuditLogArchive

AuditLogArchive collects files of audit events in a specific region,

usually for a specific deployment.

FieldTypeLabelDescription
id string

The ID of this resource. This is a read-only value.

url string

URL of this resource This is a read-only value.

created_at google.protobuf.Timestamp

The creation timestamp of the resource This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the resource This is a read-only value.

is_deleted bool

Set when this resource is deleted. This is a read-only value.

auditlog_id string

Identifier of the auditlog that owns this audit log archive. This is a read-only value.

deployment_id string

If set, this archive is collecting audit events for a deployment with this ID. Note that the deployment may have already been deleted.

size_in_bytes uint64

Last known size of this archive in bytes. Note that this field is only update periodically. This is a read-only value.

size_in_bytes_changed_at google.protobuf.Timestamp

The timestamp of the last modification of size_in_bytes. This is a read-only value.

AuditLogArchiveList

List of AuditLogArchive's.

FieldTypeLabelDescription
items AuditLogArchive repeated

AuditLogEvent

Single audit log event

FieldTypeLabelDescription
timestamp google.protobuf.Timestamp

When did the event happen

topic string

Topic of the event

project_id string

ID of the project that the event happened in (if applicable)

deployment_id string

ID of the deployment that the event happened in (if applicable)

server_id string

ID of the server that the event happened in (if applicable)

instance_id string

Instance ID of the server that the event happened in (if applicable)

sequence uint64

Sequence number. Must be even increasing for (deployment_id, server_id, instance_id) pairs.

user_id string

ID of the user that caused the event

database string

Name of database the operation is in (if applicable)

client_ip string

IP address of source of operation (if available)

authentication string

Authentication details

message string

Free format text describing the event

auditlogarchive_id string

ID of the AuditLogArchive that contains this event (if applicable)

AuditLogEventList

List of AuditLogEvent's.

FieldTypeLabelDescription
items AuditLogEvent repeated

AuditLogList

List of AuditLog's.

FieldTypeLabelDescription
items AuditLog repeated

DeleteAuditLogArchiveEventsRequest

Request arguments for DeleteAuditLogArchiveEvents.

FieldTypeLabelDescription
auditlogarchive_id string

Identifier of the audit log archive to delete events from.

to google.protobuf.Timestamp

Remove events created before this timestamp. Note that this timestamp will be rounded down to the nearest hour.

GetAuditLogEventsRequest

Request arguments for ListAuditLogEvents.

FieldTypeLabelDescription
auditlog_id string

Identifier of the audit log to request events for.

auditlogarchive_id string

If set, include only events from this AuditLogArchive.

from google.protobuf.Timestamp

Request events created at or after this timestamp. This is an optional field.

to google.protobuf.Timestamp

Request events created before this timestamp. This is an optional field.

included_topics string repeated

If non-empty, only request events with one of these topics.

excluded_topics string repeated

If non-empty, leave out events with one of these topics. If a topic is specified in included_topics as well as excluded_topics, events of that topic will not be included in the results.

limit int32

Limit the number of audit log events. Defaults to 0, meaning no limit.

ListAuditLogArchivesRequest

Request arguments for ListAuditLogArchives

FieldTypeLabelDescription
auditlog_id string

Identifier of the audit log to request the audit log archives for.

include_deleted bool

If set, the result includes all audit log archives, including those who set to deleted, however are not removed from the system currently. If not set, only audit log archives not indicated as deleted are returned.

options arangodb.cloud.common.v1.ListOptions

Optional common list options, the context_id is ignored

ListAuditLogsRequest

Request arguments for ListAuditLogs

FieldTypeLabelDescription
organization_id string

Identifier of the organization to request the audit logs for.

include_deleted bool

If set, the result includes all audit logs, including those who set to deleted, however are not removed from the system currently. If not set, only audit logs not indicated as deleted are returned.

options arangodb.cloud.common.v1.ListOptions

Optional common list options, the context_id is ignored

AuditService

AuditService is the API used to provide access to audit events.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListAuditLogs ListAuditLogsRequest AuditLogList

Fetch all audit logs in the organization identified by the given ID. Required permissions: - audit.auditlog.list on the organization identified by the given ID.

GetAuditLog .arangodb.cloud.common.v1.IDOptions AuditLog

Fetch a specific AuditLog identified by the given ID. Required permissions: - audit.auditlog.get on the audit log identified by the given ID.

CreateAuditLog AuditLog AuditLog

Create a new audit log. Required permissions: - audit.auditlog.create on the organization identified by the given ID.

UpdateAuditLog AuditLog AuditLog

Update an audit log. Required permissions: - audit.auditlog.update on the audit log identified by the given ID.

DeleteAuditLog .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an audit log. Note that audit logs are initially only marked for deleted. Once all their resources are removed the audit log itself is deleted and cannot be restored. Note that deleting an AuditLog will detach it from all Projects that it was attached to. Required permissions: - audit.auditlog.delete on the audit log.

ListAuditLogArchives ListAuditLogArchivesRequest AuditLogArchiveList

Fetch all audit log archives in the audit log identified by the given ID. Required permissions: - audit.auditlogarchive.list on the audit log identified by the given ID.

GetAuditLogArchive .arangodb.cloud.common.v1.IDOptions AuditLogArchive

Fetch a specific AuditLogArchive identified by the given ID. Required permissions: - audit.auditlogarchive.get on the audit log archive identified by the given ID.

DeleteAuditLogArchive .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete an audit log archive. Note that this method will return a precondition-failed error if there is a non-deleted deployment using this archive. Note that audit log archives are initially only marked for deleted. Once all their resources are removed the audit log archive itself is deleted and cannot be restored. Required permissions: - audit.auditlogarchive.delete on the audit log archive.

DeleteAuditLogArchiveEvents DeleteAuditLogArchiveEventsRequest .arangodb.cloud.common.v1.Empty

Remove all audit events that match the given filter from the AuditLogArchive identified by the given ID. Note that this method will return a precondition-failed error if there is no destination of type "cloud" in the AuditLog. Required permissions: - audit.auditlogevent.delete on the audit log archive identified by the given ID.

GetAuditLogEvents GetAuditLogEventsRequest AuditLogEventList stream

Fetch all audit events that match the given filter. Note that this method will return a precondition-failed error if there is no destination of type "cloud" in the AuditLog. Required permissions: - audit.auditlogevents.get on the audit log identified by the given ID.

GetAuditLogAttachedToProject .arangodb.cloud.common.v1.IDOptions AuditLog

Fetch the AuditLog that is attached to the project identified by the given ID. If no AuditLog is attached to the project, a not-found error is returned. Required permissions: - audit.auditlogattachment.get on the project identified by the given ID.

AttachProjectToAuditLog AttachProjectToAuditLogRequest .arangodb.cloud.common.v1.Empty

Attach the AuditLog identified by given ID to the project identified with given ID. This replaces any existing AuditLog attachment for the project. Required permissions: - audit.auditlogattachment.create on the project identified by the given ID.

DetachProjectFromAuditLog .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Detach the current AuditLog from the project identified with given ID. After a detachment, no audit events in the context of the project will be sent to an AuditLog. Required permissions: - audit.auditlogattachment.delete on the project identified by the given ID.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/audit/v1/api-version
ListAuditLogs GET /api/audit/v1/organizations/{organization_id}/auditlogs
GetAuditLog GET /api/audit/v1/auditlogs/{id}
CreateAuditLog POST /api/audit/v1/organizations/{organization_id}/auditlogs *
UpdateAuditLog PATCH /api/audit/v1/auditlogs/{id} *
DeleteAuditLog DELETE /api/audit/v1/auditlogs/{id}
ListAuditLogArchives GET /api/audit/v1/auditlogs/{auditlog_id}/auditlogarchives
GetAuditLogArchive GET /api/audit/v1/auditlogarchives/{id}
DeleteAuditLogArchive DELETE /api/audit/v1/auditlogarchives/{id}
DeleteAuditLogArchiveEvents DELETE /api/audit/v1/auditlogarchives/{auditlogarchive_id}/events *
GetAuditLogEvents POST /api/audit/v1/auditlogs/{auditlog_id}/events *
GetAuditLogAttachedToProject GET /api/audit/v1/projects/{id}/auditlog
AttachProjectToAuditLog POST /api/audit/v1/projects/{project_id}/auditlogs/{auditlog_id}/attach *
DetachProjectFromAuditLog DELETE /api/audit/v1/projects/{id}/auditlogs

support/v1/support.proto

Top

FaqGroup

FaqGroup contains groups of faq entries

FieldTypeLabelDescription
id string

ID of the FAQ Group

name string

Name of the FAQ Group

FaqGroupEntry

FaqGroupEntry contains entries for a group

FieldTypeLabelDescription
question string

The question of this entry

answer string

The answer to the question in this entry

FaqGroupEntryList

List of faq group entries.

FieldTypeLabelDescription
items FaqGroupEntry repeated

FaqGroupList

List of faq groups.

FieldTypeLabelDescription
items FaqGroup repeated

ListPlansRequest

Arguments for a ListPlans request

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Common list options

organization_id string

If set, list plans as they are available for the organization identified by this ID.

Plan

Plan represents a specific support plan such as Bronze, Silver or Gold.

FieldTypeLabelDescription
id string

System identifier of the plan.

name string

Name of the plan.

is_default bool

If set, this plan is the default support plan.

description string

Human readable description of the plan

is_unavailable bool

If set, this plan is shown, but not selectable.

first_response_times ResponseTimes

SLA times to first response for various situations. When this plan is unavailable, this field is optional.

support_hours string

Support hours applicable to the SLA. Possible values are "business" and "24x7".

PlanList

List of plans.

FieldTypeLabelDescription
items Plan repeated

ResponseTimes

Response for various categories on situations.

All values are in minutes.

A value of 0 means "best effort".

FieldTypeLabelDescription
critical int32

Response time for operation-impeding Error in a production environment.

high int32

Response time for operation-limiting error.

normal int32

Response time for minor error.

low int32

Response time for usage question.

SupportRequest

SupportRequest contains information about the request

FieldTypeLabelDescription
id string

ID of the request This is a read-only field

user_name string

Name of the user who submitted the support request This is a required field

user_id string

User ID is only provided if the user submitting the request has authenticated This is an optional field

email_address string

Email address of the user if applicable submitting the request

organization_id string

Optional identifier of the organization that is the subject of the support request

project_id string

Optional identifier of the project that is the subject of the support request

deployment_id string

Optional identifier of the deployment that is the subject of the support request

description string

Desciption which will contain the details provided by the submitter

severity string

Severity of the request. Can be one of the following: (low|normal|high|critical)

SupportService

SupportService is the API used to query for support.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListPlans ListPlansRequest PlanList

Fetch all support plans that are supported by the ArangoDB cloud. Required permissions: - None

GetPlan .arangodb.cloud.common.v1.IDOptions Plan

Fetch a support plan by its id. Required permissions: - None

ListFaqGroups .arangodb.cloud.common.v1.ListOptions FaqGroupList

Fetch all FAQ groups. Required permissions: - None

ListFaqGroupEntries .arangodb.cloud.common.v1.ListOptions FaqGroupEntryList

Fetch all FAQ group entries of the FAQ group identified by the given context ID. Required permissions: - None

CreateSupportRequest SupportRequest SupportRequest

Submit a support request. Required permissions: - resourcemanager.organization.get (if organization id is set) - resourcemanager.project.get (if project id is set) - data.deployment.get (if deployment id is set) - None (if no ids are set)

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/support/v1/api-version
ListPlans GET /api/support/v1/plans
GetPlan GET /api/support/v1/plans/{id}
ListFaqGroups GET /api/support/v1/faqgroups
ListFaqGroupEntries GET /api/support/v1/faqgroups/{context_id}/entries
CreateSupportRequest POST /api/support/v1/supportrequests *

replication/v1/replication.proto

Top

CloneDeploymentFromBackupRequest

CloneDeploymentFromBackupRequest defines a request object for clone deployment call.

FieldTypeLabelDescription
backup_id string

The ID of the backup to clone a deployment from.

region_id string

Target region. This is an optional field

accepted_terms_and_conditions_id string

This field must be set to the identifier of the current Terms&Conditions when cloning a deployment. If the tier of the organization does not require a non-empty Terms&Condition identifier, this field may be left empty. If this field is not set the terms and conditions of the source deployment will be used.

ReplicationService

ReplicationService is the API used to replicate a deployment.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

CloneDeploymentFromBackup CloneDeploymentFromBackupRequest .arangodb.cloud.data.v1.Deployment

Takes a backup and creates a deployment from it. For all intents and purposes this new deployment will be the same as the deployment at that exact moment when the backup was taken from it. This means that the new deployment will be in the same project and use the same provider as the old deployment did. Optionally a different region can be provided using the region id field on the request. Furthermore, the new deployment will have the same server settings ( count, mode, replication factor ) as the old deployment did at the time of taking the backup. After the new deployment successfully started, the backup will be used to restore the data into the new deployment. The new deployment will have a different endpoint, and the password will also be reset for it. All other user settings will remain the same. The old deployment will not be touched. Required permissions: - replication.deployment.clone-from-backup

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/replication/v1/api-version
CloneDeploymentFromBackup POST /api/replication/v1/backup/{backup_id}/clone *

monitoring/v1/monitoring.proto

Top

DeploymentLogsChunk

FieldTypeLabelDescription
chunk bytes

Chunk of bytes from the logs

GetDeploymentLogsRequest

GetDeploymentLogsRequest contains request arguments for GetDeploymentLogs.

FieldTypeLabelDescription
deployment_id string

Identifier of the deployment to get the logs from.

role string

If set, limit logs to servers of this role.

format string

Formatting for log messages. The possible values are text and json, with default value being text.

server_id string

If set limits logs to the server with this ID.

start_at google.protobuf.Timestamp

The start time for the query. Defaults to one hour ago.

end_at google.protobuf.Timestamp

The end time for the query. Defaults to now.

limit int32

Limit the number of log lines. Defaults to 1000.

MonitoringService

MonitoringService is the API used to monitor deployments.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

GetDeploymentLogs GetDeploymentLogsRequest DeploymentLogsChunk stream

Fetch all logs of the deployment that matches the given request. Required permissions: - monitoring.logs.get on the deployment identified by the given deployment ID.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/monitoring/v1/api-version
GetDeploymentLogs POST /api/monitoring/v1/streaming/deployment-logs *

backup/v1/backup.proto

Top

Backup

Backup represents a single backup of a deployment.

FieldTypeLabelDescription
id string

System identifier of the backup. This is a read-only value.

url string

URL of this resource This is a read-only value.

name string

Name of the backup

description string

Description of the backup

deployment_id string

Identifier of the deployment that owns this backup. After creation, this value cannot be changed.

backup_policy_id string

Identifier of the backup policy that triggered this backup After creation, this value cannot be changed. If this field is empty, this is a manual backup

created_at google.protobuf.Timestamp

The creation timestamp of the backup (database object) This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the backup This is a read-only value.

is_deleted bool

Set when this backup is deleted. This is a read-only value.

auto_deleted_at google.protobuf.Timestamp

The timestamp that this backup will be automatically removed You cannot provide a value in the past, If the field is not set, the backup will not be automatically removed.

deployment_info Backup.DeploymentInfo

Information about the deployment during backup

upload bool

Upload the backup, created by the backup policy, to an external source. Setting or unsetting this fields after the backup has been created will upload/delete the backup from the external source. Setting this field when status.available = false will result in an error

upload_updated_at google.protobuf.Timestamp

The timestamp of when the upload boolean has been updated. This is a read-only value.

download Backup.DownloadSpec

Information about a backup download. If this field is set the backup will be downloaded the deployment. This is a read-only field. To set this field please use the DownloadBackup method.

status Backup.Status

Status of the actual backup

Backup.DeploymentInfo

Information about the deployment during backup

All members of this field are read-only.

FieldTypeLabelDescription
version string

ArangoDB version of the deployment during backup.

servers arangodb.cloud.data.v1.Deployment.ServersSpec

Servers spec of the deployment during backup.

model arangodb.cloud.data.v1.Deployment.ModelSpec

Model of the deployment during backup.

Backup.DownloadSpec

Information about a backup download.

All members of this message are read-only.

FieldTypeLabelDescription
revision int32

The revision of this DownloadSpec

last_updated_at google.protobuf.Timestamp

The timestamp of when the last revision has been updated.

Backup.DownloadStatus

The status of backup download

All members of this message are read-only.

FieldTypeLabelDescription
revision int32

The revision of the used DownloadStatus

downloaded bool

Set when the backup has been fully downloaded

downloaded_at google.protobuf.Timestamp

The timestamp of when the backup has been fully downloaded.

Backup.Status

Status of the actual backup

All members of this field are read-only.

FieldTypeLabelDescription
created_at google.protobuf.Timestamp

The creation timestamp of the backup

version string

ArangoDB version of the backup

state string

The state of the backup Will be one of the following: "Pending|Unavailable|Scheduled|Download|DownloadError|Downloading|Create|Upload|Uploading|UploadError|Ready|Deleted|Failed"

is_failed bool

Set when the backup is failed

message string

State message

progress string

Progress of the backup (upload or download)

size_bytes int64

Size of the backup (in bytes)

available bool

If set the backup is available on the cluster and can be restored

dbservers int32

Number of dbservers of the deployment during backup

upload_only bool

Indicates that the backup is available in the external source only. You should download the backup before you can restore it.

upload_status Backup.UploadStatus

The status of backup upload (if applicable).

download_status Backup.DownloadStatus

The status of backup download (if applicable). This field will be set to empty if a new revision of the spec is available

Backup.UploadStatus

The status of backup upload

All members of this message are read-only.

FieldTypeLabelDescription
uploaded bool

Set when the backup has been fully uploaded

uploaded_at google.protobuf.Timestamp

The timestamp of when the backup has been fully uploaded

size_bytes int64

Size of the backup in the external source (in bytes)

BackupList

List of backups.

FieldTypeLabelDescription
items Backup repeated

budget arangodb.cloud.common.v1.Budget

Budget for backups

BackupPolicy

BackupPolicy represents a single backup policy for a deployment.

FieldTypeLabelDescription
id string

System identifier of the backup policy. This is a read-only value.

url string

URL of this resource This is a read-only value.

name string

Name of the backup policy

description string

Description of the backup policy

deployment_id string

Identifier of the deployment that owns this backup policy. After creation, this value cannot be changed.

created_at google.protobuf.Timestamp

The creation timestamp of the backup policy This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the backup policy This is a read-only value.

is_deleted bool

Set when this backup policy is deleted. This is a read-only value.

is_paused bool

Pause this backup policy. If a backup policy is paused, the backup policy will not result in new backups. The backup policy isn't deleted, unsetting this field will resume the creation of backups again.

schedule BackupPolicy.Schedule

The schedule for this backup policy

upload bool

Upload the backup, created by the backup policy, to an external source.

retention_period google.protobuf.Duration

Backups created by this policy will be automatically deleted after the specified retention period A value of 0 means that backup will never be deleted.

email_notification string

The owners of the organization can be notified by email This field support the following values: "Never|FailureOnly|Always"

locked bool

If set, this backup policy cannot be deleted. To delete, first update the with locked set to false.

status BackupPolicy.Status

Status of the backup policy

BackupPolicy.DailySchedule

Note: Nested types inside nested types is not supported by the typescript generator

FieldTypeLabelDescription
monday bool

If set, a backup will be created on Mondays.

tuesday bool

If set, a backup will be created on Tuesdays.

wednesday bool

If set, a backup will be created on Wednesdays.

thursday bool

If set, a backup will be created on Thursdays.

friday bool

If set, a backup will be created on Fridays.

saturday bool

If set, a backup will be created on Saturdays.

sunday bool

If set, a backup will be created on Sundays.

schedule_at TimeOfDay

The (target) time of the schedule

BackupPolicy.HourlySchedule

Note: Nested types inside nested types is not supported by the typescript generator

FieldTypeLabelDescription
schedule_every_interval_hours int32

Schedule should run with an interval of the specified hours (1-23)

BackupPolicy.MonthlySchedule

Note: Nested types inside nested types is not supported by the typescript generator

FieldTypeLabelDescription
day_of_month int32

Run the backup on the specified day of the month (1-31) Note: Specifying a number larger than some months have days will result in no backup for those months (e.g. 29 for February (unless leap year)).

schedule_at TimeOfDay

The (target) time of the schedule

BackupPolicy.Schedule

FieldTypeLabelDescription
schedule_type string

Schedule type should be one of the following string: "Hourly|Daily|Monthly" The schedule_hourly, schedule_daily or schedule_montly field should be set Setting multiple fields, or inconsistent with this field result in an error during create/update

hourly_schedule BackupPolicy.HourlySchedule

Schedule applies to the selected day of the week This is applicable for Hourly type only, ignored for Daily and Monthly

daily_schedule BackupPolicy.DailySchedule

Schedule applies to the selected day of the week This is applicable for Daily type only, ignored for Hourly and Monthly

monthly_schedule BackupPolicy.MonthlySchedule

Schedule applies to the selected day of the month This is applicable for Monthly type only, ignored for Hourly and Daily

BackupPolicy.Status

Status of the backup policy

All members of this field are read-only.

FieldTypeLabelDescription
next_backup google.protobuf.Timestamp

The timestamp when the next backup - initiated by this backup policy - will be created

message string

Message in case of failure, otherwise an empty string

BackupPolicyList

List of backup policies.

FieldTypeLabelDescription
items BackupPolicy repeated

ListBackupPoliciesRequest

Request arguments for ListBackupPolicies

FieldTypeLabelDescription
deployment_id string

Identifier of the deployment to request the backup policies for.

include_deleted bool

If set, the result includes all backup policies, including those who set to deleted, however are not removed from the system currently. If not set, only backup policies not indicated as deleted are returned.

options arangodb.cloud.common.v1.ListOptions

Optional common list options, the context_id is ignored

ListBackupsRequest

Request arguments for ListBackups

FieldTypeLabelDescription
deployment_id string

Identifier of the deployment to request the backups for.

from google.protobuf.Timestamp

Request backups that are created at or after this timestamp. This is an optional field.

to google.protobuf.Timestamp

Request backups that are created before this timestamp. This is an optional field.

good_only bool

If set, only backups that can be recovered from are included in the result. A backup can be recovered from when: - It is available and restorable on the servers of the deployment or - It is uploaded and the upload has finised.

options arangodb.cloud.common.v1.ListOptions

Optional common list options, the context_id is ignored

sort_by_created bool

If set, the results will be sorted by created timestamp.

sort_descending bool

Sort descending (default is ascending).

TimeOfDay

TimeOfDay describes a specific moment on a day

FieldTypeLabelDescription
hours int32

Hours part of the time of day (0-23)

minutes int32

Minutes part of the time of day (0-59)

time_zone string

The time-zone this time of day applies to (empty means UTC) Names MUST be exactly as defined in RFC-822.

BackupService

BackupService is the API used to configure backup objects.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

IsBackupFeatureAvailable .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.YesOrNo

Checks if the backup feature is enabled and available for a specific deployment. Required permissions: - backup.feature.get on the deployment that is identified by the given ID.

IsBackupUploadFeatureAvailable .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.YesOrNo

Checks if the backup upload feature is enabled for a specific deployment. Required permissions: - backup.feature.get on the deployment that is identified by the given ID.

ListBackupPolicies ListBackupPoliciesRequest BackupPolicyList

Fetch all backup policies for a specific deployment. Required permissions: - backup.backuppolicy.list on the deployment that owns the backup policies and is identified by the given ID.

GetBackupPolicy .arangodb.cloud.common.v1.IDOptions BackupPolicy

Fetch a backup policy identified by the given ID. Required permissions: - backup.backuppolicy.get on the backup policy identified by the given ID.

CreateBackupPolicy BackupPolicy BackupPolicy

Create a new backup policy Required permissions: - backup.backuppolicy.create on the deployment that owns the backup policy and is identified by the given ID.

UpdateBackupPolicy BackupPolicy BackupPolicy

Update a backup policy Required permissions: - backup.backuppolicy.update on the backup policy identified by the given ID.

DeleteBackupPolicy .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a backup policy identified by the given ID. Note that the backup policy are initially only marked for deletion, no backups will be deleted with this operation. Once all their dependent backups are removed, the backup policy is removed. Required permissions: - backup.backuppolicy.delete on the backup policy identified by the given ID.

ListBackups ListBackupsRequest BackupList

Fetch all backups for a specific deployment. Required permissions: - backup.backup.list on the deployment that owns the backup and is identified by the given ID.

GetBackup .arangodb.cloud.common.v1.IDOptions Backup

Fetch a backup identified by the given ID. Required permissions: - backup.backup.get on the backup identified by the given ID.

CreateBackup Backup Backup

Create a new manual backup Setting the backup_policy_id field in the backup is not allowed Required permissions: - backup.backup.create on the deployment that owns the backup and is identified by the given ID.

UpdateBackup Backup Backup

Update a backup Required permissions: - backup.backup.update on the backup identified by the given ID.

DownloadBackup .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Download a backup identified by the given ID from remote storage to the volumes of the servers of the deployment. This operation can only be executed on backups which have the same number of DB Servers in the backup and the current running cluster. If this backup was already downloaded, another download will be done. If the backup is still available on the cluster there is no need to explicitly download the backup before restoring. This function will return immediately. To track status, please invoke GetBackup and check the .status field inside the returned backup object Required permissions: - backup.backup.download on the backup identified by the given ID.

RestoreBackup .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Restore (or recover) a backup identified by the given ID This operation can only be executed on backups where status.available is set and the mayor and minor version of the backup and the current running cluster are the same. This function will return immediately. To track status, please invoke GetDeployment on the data API and check the .status.restoring_backup and .status.restore_backup_status fields inside the returned deployment object Required permissions (both are needed): - backup.backup.restore on the backup identified by the given ID. - data.deployment.restore-backup on the deployment that owns this backup

DeleteBackup .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a backup identified by the given ID, after which removal of any remote storage of the backup is started. Note that the backup are initially only marked for deletion. Once all remote storage for the backup has been removed, the backup itself is removed. Required permissions: - backup.backup.delete on the backup identified by the given ID.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/backup/v1/api-version
IsBackupFeatureAvailable GET /api/backup/v1/deployment/{id}/feature
IsBackupUploadFeatureAvailable GET /api/backup/v1/deployment/{id}/uploadfeature
ListBackupPolicies GET /api/backup/v1/deployment/{deployment_id}/backuppolicies
GetBackupPolicy GET /api/backup/v1/backuppolicies/{id}
CreateBackupPolicy POST /api/backup/v1/deployment/{deployment_id}/backuppolicies *
UpdateBackupPolicy PATCH /api/backup/v1/backuppolicies/{id} *
DeleteBackupPolicy DELETE /api/backup/v1/backuppolicies/{id}
ListBackups GET /api/backup/v1/deployment/{deployment_id}/backups
GetBackup GET /api/backup/v1/backup/{id}
CreateBackup POST /api/backup/v1/deployment/{deployment_id}/backup *
UpdateBackup PATCH /api/backup/v1/backup/{id} *
DownloadBackup POST /api/backup/v1/backup/{id}/download
RestoreBackup POST /api/backup/v1/backup/{id}/restore
DeleteBackup DELETE /api/backup/v1/backup/{id}

data/v1/data.proto

Top

CPUSize

CPUSize specifies the a specific level of CPU for a node.

FieldTypeLabelDescription
id string

System identifier of the size (e.g. standard)

name string

Human readable name of the size (e.g. Standard)

CPUSizeList

List of CPU sizes.

FieldTypeLabelDescription
items CPUSize repeated

CalculateDeploymentSizeRequest

Request arguments for CalculateDeploymentSize

FieldTypeLabelDescription
coordinators int32

Number of coordinators of the deployment This field is ignored unless model is "flexible".

coordinator_memory_size int32

Amount of memory (in GB) to allocate for each coordinator. This field is ignored unless model is "flexible".

dbservers int32

Number of dbservers of the deployment This field is ignored unless model is "flexible".

dbserver_memory_size int32

Amount of memory (in GB) to allocate for each dbserver. This field is ignored unless model is "flexible".

dbserver_disk_size int32

Amount of disk space (in GB) to allocate for each dbserver. This field is ignored unless model is "flexible".

model string

Type of model being used

node_size_id string

Size of nodes being used

node_count int32

Number of nodes being used

node_disk_size int32

Amount of disk space per node (in GB)

region_id string

ID of region in which the deployment will be created.

ConnectDriverInstructions

Instructions for connecting a driver to a deployment

FieldTypeLabelDescription
drivers ConnectDriverInstructions.DriverInstructions repeated

Per driver instructions for connecting to a deployment

ConnectDriverInstructions.DriverInstructions

Instructions for a specific driver

FieldTypeLabelDescription
name string

Human readable name of the driver. E.g. "ArangoDB Go driver"

code string repeated

Lines of code

remarks string repeated

Human readable remarks

driver_url string

URL for getting more information on the driver.

CreateTestDatabaseRequest

Request arguments for CreateTestDatabase

FieldTypeLabelDescription
deployment_id string

The id of the deployment

CreateTestDatabaseResponse

CreateTestDatabaseResponse will contain the json formatted output of the create operation

FieldTypeLabelDescription
db_name string

Name of the created database

username string

Username of the created user

password string

Password of the created user

hostname string

Hostname of the database

port string

Port of the database

DataVolumeInfo

DataVolumeInfo provides information about a data volume

FieldTypeLabelDescription
total_bytes int64

The total number of bytes of the data volume.

used_bytes int64

The number of bytes used on the data volume.

available_bytes int64

The number of bytes available on the data volume.

total_inodes int64

The total number of inodes of the data volume.

used_inodes int64

The number of inodes used on the data volume.

available_inodes int64

The number of inodes available on the data volume.

measured_at google.protobuf.Timestamp

When this info has been measused

Deployment

A Deployment is represents one deployment of an ArangoDB cluster.

FieldTypeLabelDescription
id string

System identifier of the deployment. This is a read-only value.

url string

URL of this resource This is a read-only value.

name string

Name of the deployment

description string

Description of the deployment

project_id string

Identifier of the project that owns this deployment. After creation, this value cannot be changed.

region_id string

Identifier of the region in which the deployment is created. After creation, this value cannot be changed.

created_at google.protobuf.Timestamp

The creation timestamp of the deployment This is a read-only value.

deleted_at google.protobuf.Timestamp

The deletion timestamp of the deployment This is a read-only value.

is_deleted bool

Set when this deployment is deleted. This is a read-only value.

support_plan_id string

Optional identifier of the support plan selected for this deployment. After creation, this value cannot be changed. If no support plan identifier is set, the default support plan is used.

created_by_id string

Identifier of the user who created this deployment. This is a read-only value.

accepted_terms_and_conditions_id string

This field must be set to the identifier of the current Terms&Conditions when creating a deployment. If the tier of the organization does not require a non-empty Terms&Condition identifier, this field may be left empty. This is a read-only value after creation.

locked bool

If set, this deployment cannot be deleted. To delete, first update the with locked set to false.

is_paused bool

Indicates that this deployment is paused. Use the data.ResumeDeployment method to resume (aka unpause) the deployment. This is a read-only value.

last_paused_at google.protobuf.Timestamp

The last paused timestamp of the deployment. This is the timestamp that is_paused is transitioned from unset to set. This is a read-only value.

last_resumed_at google.protobuf.Timestamp

The last resumed timestamp of the deployment. This is the timestamp that is_paused is transitioned from set to unset. This is a read-only value.

version string

ArangoDB version to use for this deployment. See Version.version. If you change this value to a higher version, the deployment will be upgraded. If you change this value to a lower patch value, the deployment will be downgraded. Any attempt to change to a lower minor or major version is considered an invalid request. Any attempt to change to a version that is not in the list of available versions is considered an invalid request.

replace_version_by ReplaceVersionBy

If set, it is highly recommended to update to the ArangoDB release with the version as listed in this field.

certificates Deployment.CertificateSpec

servers Deployment.ServersSpec

ipallowlist_id string

Optional identifier of IP allowlist to use for this deployment.

ipwhitelist_id string

Optional identifier of IP whitelist to use for this deployment. Note: The use of this field has been deprecated in favor of ipallowlist_id. In a future version, they will be removed.

model Deployment.ModelSpec

custom_image string

If provided, dataclusterd will use this custom image tag instead of the configured one for a given version. Further, ImagePullPolicy will be set to Always. This field can only be set by selected organizations.

iamprovider_id string

Optional identifier of IAM provider to use for this deployment.

status Deployment.Status

size DeploymentSize

Detailed size of the deployment This is a read-only field.

expiration Deployment.Expiration

backup_restore Deployment.BackupRestoreSpec

Information about a backup restore. If this field is set the deployment will be restored to that backup. This is a read-only field. To set this field please use the backup service RestoreBackup method.

deployment_recommendations DeploymentSizeRecommendation repeated

Recommendations made for deployments using the "oneshard" or "sharded" model.

is_clone bool

Set if this deployment is a clone and should be handled differently. After bootstrapping a clone needs a restore operation. This is a read-only property

clone_backup_id string

The ID of the backup to restore this clone deployment from. This is a read-only property

Deployment.BackupRestoreSpec

Information about a backup restore.

All members of this message are read-only.

FieldTypeLabelDescription
revision int32

The revision of this BackupRestoreSpec

last_updated_at google.protobuf.Timestamp

The timestamp of when the last revision has been updated.

backup_id string

Identifier of a backup to restore to.

Deployment.BackupRestoreStatus

The status of backup restore

All members of this message are read-only.

FieldTypeLabelDescription
revision int32

The revision of the used BackupRestoreSpec

restoring bool

Set if the deployment is preparing or restoring a backup

status string

Status of the restore backup operation. Enum of the following values: "<empty>|Preparing|Restoring|Restored|Failed"

failure_reason string

Failure reason of the backup restore (if applicable)

Deployment.CertificateSpec

FieldTypeLabelDescription
ca_certificate_id string

Identifier of the CACertificate used to sign TLS certificates for the deployment. If you change this value after the creation of the deployment a complete rotation of the deployment is required, which will result in some downtime.

alternate_dns_names string repeated

Zero or more DNS names to include in the TLS certificate of the deployment.

Deployment.Expiration

Expiration of the deployment.

All members of this message are read-only.

FieldTypeLabelDescription
expires_at google.protobuf.Timestamp

The expiration timestamp of the deployment If not set, the deployment will not expire.

reason string

Human readable reason for why the deployment expires (or does not expire).

last_warning_email_send_at google.protobuf.Timestamp

The timestamp of when the last "this deployment will expire at" email was send. If not set, no such email has been send.

last_warning_email_send_to string repeated

List of email addresses to which the last warning email has been send. Not set when no such email has been send.

Deployment.ModelSpec

FieldTypeLabelDescription
model string

Type of model being used

node_size_id string

Size of nodes being used This field is ignored set in case the flexible model is used.

node_count int32

Number of nodes being used This field is ignored set in case the flexible model is used.

node_disk_size int32

Amount of disk space per node (in GB) This field is ignored set in case the flexible model is used.

Deployment.ServerStatus

Status of a single server (of the ArangoDB cluster)

FieldTypeLabelDescription
id string

ID of the server

type string

Type of server (agent|coordinator|dbserver)

description string

Human readable description of the status of the deployment.

created_at google.protobuf.Timestamp

The creation timestamp of the server

ready bool

Set once the server is ready

member_of_cluster bool

Set once the server has been known to be a member of the cluster

failed bool

Set if the server is in a failed state Every server is always in 1 (and only 1) of these states: failed/creating/ok/bad/upgrading.

creating bool

Set if the server is still being created Every server is always in 1 (and only 1) of these states: failed/creating/ok/bad/upgrading.

ok bool

Set if the server is in the ok state. Every server is always in 1 (and only 1) of these states: failed/creating/ok/bad/upgrading.

bad bool

Set if the server is in the bad state. Every server is always in 1 (and only 1) of these states: failed/creating/ok/bad/upgrading.

upgrading bool

Set if the server is still being upgraded Every server is always in 1 (and only 1) of these states: failed/creating/ok/bad/upgrading.

version string

Latest known ArangoDB version used by this server. Initially this field is empty.

last_started_at google.protobuf.Timestamp

The last started timestamp of the server

rotation_pending bool

If set, a rotation of this server has been requested.

can_be_deleted bool

If set, this server reports that it can be deleted.

is_leader bool

If set, this server is leader in its type (currently applies only to agents).

data_volume_info DataVolumeInfo

Information about the data volume used to store the data

recent_restarts int32

Recent number of restarts

last_memory_usage int64

Last known memory usage in bytes

last_cpu_usage float

Last known CPU usage in vCPU units

Deployment.ServersSpec

FieldTypeLabelDescription
coordinators int32

Number of coordinators of the deployment This field is automatically set unless the flexible model is used.

coordinator_memory_size int32

Amount of memory (in GB) to allocate for coordinators. This field is automatically set unless the flexible model is used.

coordinator_args string repeated

Custom command line arguments passed to all coordinators. This field is ignored set unless the flexible model is used.

dbservers int32

Number of dbservers of the deployment This field is automatically set unless the flexible model is used.

dbserver_memory_size int32

Amount of memory (in GB) to allocate for dbservers. This field is automatically set unless the flexible model is used.

dbserver_disk_size int32

Amount of disk space (in GB) to allocate for dbservers. This field is automatically set unless the flexible model is used.

dbserver_args string repeated

Custom command line arguments passed to all dbservers. This field is ignored set unless the flexible model is used.

minimum_dbservers_count int32

The minimum number of dbservers based on the highest replication factor defined by all databases and all collections.

Deployment.Status

Status of the deployment

All members of this field are read-only.

FieldTypeLabelDescription
endpoint string

Endpoint URL used to reach the deployment This value will be empty during the creation of the deployment. This field always contains the URL of the low port (8529) of the deployment. If a certificate with well known certificate is used, this port is using the well known certificate. Otherwise this port is using the self-signed certificate. This endpoint is recommended for human-to-database connections.

description string

Human readable description of the status of the deployment.

created bool

Set once the deployment has been created.

ready bool

Set if the deployment is ready to be used. If the deployment has downtime (e.g. because of changing a CA certificate) this will go to false until the downtime is over.

upgrading bool

Set if the deployment is being upgraded.

server_versions string repeated

Versions of running servers

servers Deployment.ServerStatus repeated

Status of individual servers of the deployment

bootstrapped_at google.protobuf.Timestamp

Set if the ready boolean is transitioned to true for the very first time.

bootstrapped bool

Set if bootstrapped_at has a value, otherwise false.

endpoint_self_signed string

Endpoint URL used to reach the deployment on the port that uses the self-signed certificate. This endpoint is recommended for machine-to-database connections.

backup_restore_status Deployment.BackupRestoreStatus

The status of backup restore (if applicable). This field will be set to empty if a new revision of the spec is available

total_backup_size_bytes int64

The total size of all backups in the external source (in bytes)

backup_upload_in_progress bool

Set if there is any backup currently uploading data to the external source

DeploymentCredentials

Result for GetDeploymentCredentials

FieldTypeLabelDescription
username string

Name of the user for which credentials were asked. Default to username of root user.

password string

Password of the user for which credentials were asked.

DeploymentCredentialsRequest

Request arguments for GetDeploymentCredentials

FieldTypeLabelDescription
deployment_id string

Identifier of deployment to request credentials for.

reason string

Reason for requesting the credentials

DeploymentFeatures

Features that are available to new deployments in a given context.

FieldTypeLabelDescription
iamprovider bool

Is the use of an IAM provider available?

DeploymentFeaturesRequest

Request arguments for GetDeploymentFeatures

FieldTypeLabelDescription
project_id string

Identifier of project that will own a deployment.

region_id string

Identifier of a region in which a deployment will be created.

model string

Model of the intended deployment.

node_size_id string

Node size use for the intended deployments

DeploymentList

List of Deployments.

FieldTypeLabelDescription
items Deployment repeated

Actual deployments

budget arangodb.cloud.common.v1.Budget

Budget for deployments

DeploymentModel

DeploymentModel specifies the a specific model of deploying

arangodb clusters.

FieldTypeLabelDescription
id string

System identifier of the model (e.g. oneshard)

name string

Human readable name of the model (e.g. One shard)

DeploymentModelList

List of deployment models.

FieldTypeLabelDescription
items DeploymentModel repeated

DeploymentPrice

FieldTypeLabelDescription
price_per_hour float

Price per hour in given currency for the deployment.

network_transfer_prices DeploymentPrice.NetworkTransferPrice repeated

Network transfer prices (variable depending on usage)

backup_price DeploymentPrice.BackupPrice

Network transfer prices (variable depending on usage)

currency_id string

Identifier of the currency in which the price is specified.

DeploymentPrice.BackupPrice

FieldTypeLabelDescription
price_per_gb_per_hour float

Price per GB/hour of uploaded backup storage

DeploymentPrice.NetworkTransferPrice

FieldTypeLabelDescription
ingress_price_per_gb float

Price per GB of network transfer into the database

egress_price_per_gb float

Price per GB of network transfer out of the database

description string

Description of this price

DeploymentPriceRequest

Arguments for requesting a price a deployment of given properties.

FieldTypeLabelDescription
organization_id string

Identifier of organization containing the deployment.

project_id string

Identifier of project containing the deployment.

support_plan_id string

Identifier of the support plan of the deployment.

cloud_provider_id string

Identifier of the cloud provider of the deployment.

cloud_region_id string

Identifier of the cloud region of the deployment.

model string

Model of the deployment.

node_size_id string

Node size use for deployments

node_count int32

Number of nodes being used This field is ignored if model is "flexible".

node_disk_size int32

Amount of disk space per node (in GB) This field is ignored if model is "flexible".

coordinators int32

Number of coordinators of the deployment This field is ignored unless model is "flexible".

coordinator_memory_size int32

Amount of memory (in GB) to allocate for each coordinator. This field is ignored unless model is "flexible".

dbservers int32

Number of dbservers of the deployment This field is ignored unless model is "flexible".

dbserver_memory_size int32

Amount of memory (in GB) to allocate for each dbserver. This field is ignored unless model is "flexible".

dbserver_disk_size int32

Amount of disk space (in GB) to allocate for each dbserver. This field is ignored unless model is "flexible".

DeploymentSize

Result of CalculateDeploymentSize

FieldTypeLabelDescription
agents int32

Number of agents

agent_memory_size int32

Amount of memory (in GB) to allocate for each agent.

agent_disk_size int32

Amount of disk space (in GB) to allocate for each agent.

total_memory_size int32

Total (combined) amount of memory (in GB) used by all servers (agents, coordinators & dbservers)

total_disk_size int32

Total (combined) amount of disk space (in GB) used by all servers (agents & dbservers)

coordinators int32

Number of coordinators

coordinator_memory_size int32

Amount of memory (in GB) to allocate for each coordinator.

dbservers int32

Number of dbservers

dbserver_memory_size int32

Amount of memory (in GB) to allocate for each dbserver.

dbserver_disk_size int32

Amount of disk space (in GB) to allocate for each dbserver.

DeploymentSizeRecommendation

Response of RecommendDeploymentSize.

FieldTypeLabelDescription
request DeploymentSizeRequest

Request that resulted in this recommendation.

created_at google.protobuf.Timestamp

Time when the recommendation was made.

node_memory_size int32

Amount of memory space per node (in GB) being recommended

node_disk_size int32

Amount of disk space per node (in GB) being recommended

node_count int32

Number of nodes being recommended

exceeds_quota bool

If set, this recommendation does not fit in the callers quota.

exceeds_platform bool

If set, this recommendation does not fit in the Oasis platform.

DeploymentSizeRequest

Request arguments for RecommendDeploymentSize.

FieldTypeLabelDescription
dataset_size int32

Size of entire dataset (on disk) in GB. Required field. Must be >= 1.

usecase string

Primary use case for the database Possible values: - GRAPH - DOCUMENT - MULTIMODEL - KEYVALUE

model string

Customer preferred model

file_format string

File format on dataset Possible values: - JSON - CSV

number_of_documents int64

Number of documents in the entire dataset (in case of JSON). Number of rows in the entire dataset (in case of CSV).

number_of_columns int32

Largest number of columns of the dataset (in case of CSV).

working_set_percentage float

Percentage of dataset_size that is considered "hot" Must be >= 0.0 and <= 1.0

access_read_percentage float

Percentage of operations that are READ Must be >= 0.0 and <= 1.0

access_create_percentage float

Percentage of operations that are CREATE Must be >= 0.0 and <= 1.0

access_update_percentage float

Percentage of operations that are UPDATE Must be >= 0.0 and <= 1.0

growth_rate float

Increase factor of the dataset_size in 1 year.

replication_factor int32

Desired number of replicas. Must be >= 3 and <= 5

project_id string

Identifier of project to request a recommendation in

region_id string

Identifier of region to request a recommendation in

ImportDataInstructions

Instructions for importing data into a deployment

FieldTypeLabelDescription
import_dump string repeated

Lines of code to run arangorestore

arango_import_json string repeated

Lines of code to run arangoimport with json file format

arango_import_csv string repeated

Lines of code to run arangoimport with csv file format

arango_import_tsv string repeated

Lines of code to run arangoimport with tsv file format

ListCPUSizesRequest

Request arguments for ListCPUSizes

FieldTypeLabelDescription
project_id string

Identifier of project that will own a deployment.

ListDeploymentModelsRequest

Request arguments for ListDeploymentModels

FieldTypeLabelDescription
project_id string

Identifier of project that will own a deployment.

ListVersionsRequest

Request arguments for ListVersions.

FieldTypeLabelDescription
options arangodb.cloud.common.v1.ListOptions

Common list options

organization_id string

If set, the result includes all versions for that are available for the organization identified by this ID. If not set, only versions are returned that are available to all organizations.

current_version string

If set, only versions will be returned that are safe to upgrade to from this version.

NodeSize

NodeSize specifies the size constraints of different data nodes.

FieldTypeLabelDescription
id string

System identifier of the node size

name string

Human readable name of the node size

memory_size int32

Amount of memory (in GB) that is available on this size of node.

min_disk_size int32

Minimum amount of disk (in GB) that is available on this size of node.

max_disk_size int32

Maximum amount of disk (in GB) that is available on this size of node.

cpu_size string

CPU size that is available on this size of node (e.g. standard or high).

disk_sizes int32 repeated

If set, contains list of possible disk sizes (in GB) for the node. In that case, this field overrides the min_disk_size & max_disk_size fields.

NodeSizeList

List of node sizes.

FieldTypeLabelDescription
items NodeSize repeated

NodeSizesRequest

Request arguments for ListNodeSizes

FieldTypeLabelDescription
project_id string

Identifier of project that will own a deployment.

region_id string

Identifier of a region in which a deployment will be created.

deployment_id string

If set, project_id & region_id will be taken from this deployment. This also causes the node_size used by this deployment to be included in the result, if it it would not match for new deployments.

ReplaceVersionBy

ReplaceVersionBy holds replacement instructions.

FieldTypeLabelDescription
version string

The version of the ArangoDB release that it should be upgraded to. Version in the format of major.minor.patch Format details can be found at: https://semver.org/

reason string

Human readable reason why this version should be replaced.

ServersSpecLimits

Limits of allowed values for fields of Deployment.ServersSpec.

FieldTypeLabelDescription
coordinators ServersSpecLimits.Limits

Limits for the number of coordinators of the deployment

coordinator_memory_size ServersSpecLimits.Limits

Possible values for the amount of memory (in GB) to allocate for coordinators.

dbservers ServersSpecLimits.Limits

Limits for the number of dbservers of the deployment

dbserver_memory_size ServersSpecLimits.Limits

Possible values for the amount of memory (in GB) to allocate for dbservers.

dbserver_disk_size ServersSpecLimits.Limits

Amount of disk space (in GB) to allocate for dbservers.

node_memory_size ServersSpecLimits.Limits

Possible values for the amount of memory (in GB) to allocate for pairs of coordinator, dbserver.

node_count ServersSpecLimits.Limits

Possible values for the number of nodes. Value must be min/max (not using allowed_values)

ServersSpecLimits.Limits

FieldTypeLabelDescription
min int32

Minimum value

max int32

Maximum value

allowed_values int32 repeated

Set of allowed values. If this field is non-empty, only one of these values is allowed.

ServersSpecLimitsRequest

Request arguments for ListServersSpecLimits

FieldTypeLabelDescription
project_id string

Identifier of project that will own a deployment.

region_id string

Identifier of a region in which a deployment will be created.

deployment_id string

Optional identifier of a deployment for which compatible server specifications are request.

Version

Version of an ArangoDB release

FieldTypeLabelDescription
version string

Version in the format of major.minor.patch Format details can be found at: https://semver.org/

replace_by ReplaceVersionBy

If set, deployments using this version should be updated to the ArangoDB release with the version as listed in this message.

VersionList

List of Versions.

FieldTypeLabelDescription
items Version repeated

DataService

DataService is the API used to configure data objects.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListDeployments .arangodb.cloud.common.v1.ListOptions DeploymentList

Fetch all deployments in the project identified by the given context ID. Required permissions: - data.deployment.list on the project identified by the given context ID

GetDeployment .arangodb.cloud.common.v1.IDOptions Deployment

Fetch a deployment by its id. Required permissions: - data.deployment.get on the deployment identified by the given ID

GetDeploymentUpdates .arangodb.cloud.common.v1.IDOptions Deployment stream

Fetch all updates (spec and/or status) of the deployment that matches the given request. Required permissions: - data.deployment.get on the deployment identified by the given ID

CreateDeployment Deployment Deployment

Create a new deployment Required permissions: - data.deployment.create on the project that owns the deployment Note that deployment.status & deployment.expiration are ignored in this request.

UpdateDeployment Deployment Deployment

Update a deployment Required permissions: - data.deployment.update on the deployment Note that deployment.status & deployment.expiration are ignored in this request.

DeleteDeployment .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a deployment Note that deployments are initially only marked for deletion. Once all their resources are removed the deployment itself is removed. Required permissions: - data.deployment.delete on the deployment

GetDeploymentCredentials DeploymentCredentialsRequest DeploymentCredentials

Fetch credentials for accessing deployment by its id. Required permissions: - data.deployment.get on the deployment identified by the given ID - data.deploymentcredentials.get on the deployment identified by the given ID

ListVersions ListVersionsRequest VersionList

Fetch all ArangoDB versions that are available for deployments. Required permissions: - None

GetDefaultVersion .arangodb.cloud.common.v1.Empty Version

Fetch the default ArangoDB version for new deployment. Required permissions: - None

GetServersSpecLimits ServersSpecLimitsRequest ServersSpecLimits

Fetch the limits for server specifications for deployments owned by the given projected, created in the given region. Required permissions: - data.limits.get on the requested project - data.deployment.get on the specified deployment (if deployment_id is set) This method is deprecated and will be remove in the very near future, do not use this method anymore

ListNodeSizes NodeSizesRequest NodeSizeList

Fetch the node sizes available for deployments owned by the project with given ID, created in the given region with given ID. If project ID "all" is used, then all node sizes for the region with given ID are returned. Required permissions: - data.nodesize.list on the requested project (if project ID does not equal "all") - None if project ID does equals "all"

ListDeploymentModels ListDeploymentModelsRequest DeploymentModelList

Fetch the models available for deployments owned by the project with given ID. Required permissions: - data.deploymentmodel.list on the requested project

ListCPUSizes ListCPUSizesRequest CPUSizeList

Fetch the CPU sizes available for deployments owned by the project with given ID. Required permissions: - data.cpusize.list on the requested project

CalculateDeploymentSize CalculateDeploymentSizeRequest DeploymentSize

Calculate the total size of a deployment with given arguments. Required permissions: - none

RecommendDeploymentSize DeploymentSizeRequest DeploymentSizeRecommendation

Recommend a deployment size, for a oneshard or sharded deployments, using the given input values. Required permissions: - none

GetConnectDriverInstructions .arangodb.cloud.common.v1.IDOptions ConnectDriverInstructions

Fetch instructions for connecting drivers to the deployment identified by the given id. Required permissions: - data.deployment.get on the deployment identified by the given ID

GetImportDataInstructions .arangodb.cloud.common.v1.IDOptions ImportDataInstructions

Fetch instructions for importing data into the deployment identified by the given id. Required permissions: - data.deployment.get on the deployment identified by the given ID

CalculateDeploymentPrice DeploymentPriceRequest DeploymentPrice

Calculate the price of a deployment of given settings. Required permissions: - data.deploymentprice.calculate

GetDeploymentFeatures DeploymentFeaturesRequest DeploymentFeatures

Get the features that will be available to a deployment in the given context. Required permissions: - data.deploymentfeatures.get on the project that is given in the request.

ResumeDeployment .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Resumes a paused deployment identified by the given id. When ResumeDeployment is invoked on a deployment that has is_paused not set, an PreconditionFailed error is returned. Required permissions: - data.deployment.resume on the deployment

CreateTestDatabase CreateTestDatabaseRequest CreateTestDatabaseResponse

Create a test database and user for a deployment. Returns the output containing the created database name, password, username, host and port. Required permissions: - data.deployment.create-test-database on the deployment

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/data/v1/api-version
ListDeployments GET /api/data/v1/projects/{context_id}/deployments
GetDeployment GET /api/data/v1/deployments/{id}
GetDeploymentUpdates POST /api/data/v1/streaming/deployment *
CreateDeployment POST /api/data/v1/project/{project_id}/deployments *
UpdateDeployment PATCH /api/data/v1/deployments/{id} *
DeleteDeployment DELETE /api/data/v1/deployments/{id}
GetDeploymentCredentials GET /api/data/v1/deploymentcredentials/{deployment_id}
ListVersions GET /api/data/v1/versions
GetDefaultVersion GET /api/data/v1/versions/default
GetServersSpecLimits GET /api/data/v1/projects/{project_id}/regions/{region_id}/limits
ListNodeSizes GET /api/data/v1/projects/{project_id}/regions/{region_id}/nodesizes
ListDeploymentModels GET /api/data/v1/projects/{project_id}/deploymentmodels
ListCPUSizes GET /api/data/v1/projects/{project_id}/cpusizes
CalculateDeploymentSize GET /api/data/v1/deployment-size/calculate
RecommendDeploymentSize GET /api/data/v1/deployment-size/recommend
GetConnectDriverInstructions GET /api/data/v1/deployments/{id}/connect-driver-instructions
GetImportDataInstructions GET /api/data/v1/deployments/{id}/import-data-instructions
CalculateDeploymentPrice GET /api/data/v1/deployment-price/calculate
GetDeploymentFeatures POST /api/data/v1/deployment-features *
ResumeDeployment POST /api/data/v1/deployments/{id}/resume
CreateTestDatabase POST /api/data/v1/deployments/{deployment_id}/create-test-database

currency/v1/currency.proto

Top

Currency

Currency represents a specific monetary currency.

FieldTypeLabelDescription
id string

System identifier of the currency. E.g. "eur" or "usd"

name string

Human readable name of the currency E.g. "US Dollar"

sign string

Human readable sign for the currency. E.g. "$"

iso4217_code string

ISO 4217 currency code. E.g. "USD"

CurrencyList

List of currencies.

FieldTypeLabelDescription
items Currency repeated

GetDefaultCurrencyRequest

Request arguments for GetDefaultCurrency.

FieldTypeLabelDescription
organization_id string

Optional identifier for the organization to request the default currency for.

CurrencyService

CurrencyService is the API used to query for supported currencies.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

ListCurrencies .arangodb.cloud.common.v1.ListOptions CurrencyList

Fetch all providers that are supported by the ArangoDB cloud. Required permissions: - None

GetCurrency .arangodb.cloud.common.v1.IDOptions Currency

Fetch a currency by its id. Required permissions: - None

GetDefaultCurrency GetDefaultCurrencyRequest Currency

Fetch the default currency for a given (optional) organization. Required permissions: - resourcemanager.organization.get On the organization identified by given id. - None In case no organization identifier was given.

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/currency/v1/api-version
ListCurrencies GET /api/currency/v1/currencies
GetCurrency GET /api/currency/v1/currencies/{id}
GetDefaultCurrency GET /api/currency/v1/default-currency

billing/v1/billing.proto

Top

Address

Address of organization

FieldTypeLabelDescription
address string repeated

Address lines

zipcode string

ZIP code (if any)

city string

City

state string

State For US, this must be an ISO 3166-2 2-letter state code See https://en.wikipedia.org/wiki/List_of_U.S._state_abbreviations

country_code string

Country code

BillingConfig

Billing configuration for an organization

FieldTypeLabelDescription
address Address

Address of the organization

vat_number string

EU VAT number of the organization (if any)

email_addresses string repeated

Email address(es) to send emails related to billing (mostly invoices) to.

us_tax_number string

US sales tax number of the organization (if any)

CreatePaymentMethodRequest

Request arguments for CreatePaymentMethod

FieldTypeLabelDescription
prepared_payment_method PreparedPaymentMethod

The result of PreparePaymentMethod.

first_name string

First name of owner of payment method

last_name string

Last name of owner of payment method

Invoice

An Invoice message describes a transaction for usage of ArangoDB Oasis.

FieldTypeLabelDescription
id string

System identifier of the invoice.

url string

URL of this resource

organization_id string

Identifier of the organization that is responsible for the payment of this invoice.

organization_name string

Name of the organization that is responsible for the payment of this invoice.

entity_id string

Identifier of the legal entity that is the sender of this invoice.

entity_name string

Name of the legal entity that is the sender of this invoice.

invoice_number string

Invoice number (used by accounting)

created_at google.protobuf.Timestamp

The creation date of the invoice

requires_manual_verification bool

If set, this invoice must be manually verified before payment can be initiated.

last_updated_at google.protobuf.Timestamp

The last update date of the invoice. This applies to 'specification' only and doesn't apply to status or payments changes.

email_addresses string repeated

The list of email addresses that this invoice (and payments related to this invoice) will be send to.

purchase_order_based bool

If set, this invoice is generated for an organization that is configured to use purchase orders.

invoice_builder_version string

The version of the invoice-builder who created the invoice.

items Invoice.Item repeated

All items of the invoice

currency_id string

Currency for all amounts

total_amount_excl_taxes float

Sum all amount for all items (excluding VAT and sales tax)

total_vat float

VAT amount for all items (applicable for Entity GmbH)

vat_reverse_charge bool

If set, the VAT reverse charge rule is applied for this invoice.

vat_percentage_used float

The VAT percentage used

total_sales_tax float

Sales tax amount for all items (applicable for Entity Inc.)

sales_tax_percentage_used float

The sales tax percentage used

total_amount_incl_taxes float

Sum of total_amount_excl_taxes + total_vat + total_sales_tax. This is the amount that the customer will be charged for.

status Invoice.Status

payments Invoice.Payment repeated

All payment attempts for this invoice, ordered by created_at.

Invoice.Item

A single item of the invoice

FieldTypeLabelDescription
usageitem_ids string repeated

Identifiers of the UsageItems that this item covers.

amount float

Amount of money (ex VAT) for this item

description string

Human readable description of this item

Invoice.Payment

Payment (attempt) of the invoice

FieldTypeLabelDescription
created_at google.protobuf.Timestamp

The timestamp of the start of the payment attempt.

payment_provider_id string

Identifier of the payment provider that is used for this payment.

payment_id string

Identifier of this payment (created by payment provider)

payment_method_id string

Identifier of the payment method that is used for this payment.

is_pending bool

If set, this payment is still being processed.

is_completed bool

If set, this payment has been payed for succesfully.

is_rejected bool

If set, this payment has been rejected.

completed_at google.protobuf.Timestamp

The timestamp of succesfull completion of the payment.

rejected_at google.protobuf.Timestamp

The timestamp of rejected completion of the payment.

rejection_reason string

Human readable reason for the rejection.

Invoice.Status

Status of the invoice

FieldTypeLabelDescription
is_pending bool

If set, this invoice is still being processed.

is_completed bool

If set, a successful payment has been made for this invoice.

is_rejected bool

If set, all payment attempts for this invoice have been rejected.

is_verified bool

If set, this invoice has been verified manually.

needs_rebuild bool

If set, this payment needs to be rebuild (by the invoice-builder service). If set, is_completed & is_rejected must be false.

completed_at google.protobuf.Timestamp

The timestamp of succesfull completion of the payment. This field equals the completed_at field of the last payment if that payment succeeded, nil otherwise.

rejected_at google.protobuf.Timestamp

The timestamp of rejected completion of the payment. This field equals the rejected_at field of the last payment if that payment failed, nil otherwise.

completion_reason string

Human readable reason for the completion.

rejection_reason string

Human readable reason for the rejection.

completed_by string

Identifier of user who completed this invoice.

rejected_by string

Identifier of user who rejected this invoice.

InvoiceList

List of Invoices.

FieldTypeLabelDescription
items Invoice repeated

ListInvoicesRequest

Request arguments for ListInvoices

FieldTypeLabelDescription
organization_id string

Request invoices for the organization with this id. This is a required field.

from google.protobuf.Timestamp

Request invoices that are created at or after this timestamp. This is an optional field.

to google.protobuf.Timestamp

Request invoices that are created before this timestamp. This is an optional field.

options arangodb.cloud.common.v1.ListOptions

Standard list options This is an optional field.

ListPaymentMethodsRequest

Request arguments for ListPaymentMethods

FieldTypeLabelDescription
organization_id string

Identifier of the organization for which payment methods are requested.

options arangodb.cloud.common.v1.ListOptions

Optional common list options. (Context ID is ignored)

ListPaymentProvidersRequest

Request arguments for ListPaymentProviders

FieldTypeLabelDescription
organization_id string

Identifier of the organization for which payment providers are requested.

options arangodb.cloud.common.v1.ListOptions

Optional common list options. (Context ID is ignored)

OrganizationBillingFlags

Billing specific organization flags

FieldTypeLabelDescription
is_allowed_to_list_invoices bool

If set, this organization is allowed to list invoices.

is_allowed_to_access_payment_methods bool

If set, this organization is allowed to create/list/update payment methods.

PDFDocument

FieldTypeLabelDescription
content bytes

Content of the document

filename string

Filename of the document

PaymentMethod

Payment methods are specific methods for paying at a specific payment provider

such as a specific credit card.

FieldTypeLabelDescription
id string

System identifier of this payment method.

name string

Name of the payment method

description string

Description of the payment method

payment_provider_id string

Identifier of the payment provider used for this payment method This is a read-only field.

organization_id string

Identifier of the organization that owns this payment method This is a read-only field.

created_at google.protobuf.Timestamp

Creation timestamp of this payment method This is a read-only field.

deleted_at google.protobuf.Timestamp

Deletion timestamp of this payment method This is a read-only field.

is_deleted bool

Set if the payment method is deleted. This is a read-only field.

valid_until google.protobuf.Timestamp

If set, this timestamp specifies when the payment method is no longer valid. If not set, there is no (known) end date for this payment method.

token string

Token for this payment method, provided by the payment provider. This is a read-only field.

type string

Type of payment method

is_default bool

If set, this payment method is the default for its organization. This is a read-only field.

credit_card_info PaymentMethod.CreditCardInfo

PaymentMethod.CreditCardInfo

Information of the creditcard.

Only set when type == "creditcard"

FieldTypeLabelDescription
last_digits string

Last 4 digits of the CC number.

card_type string

Type of creditcard

PaymentMethodList

List of Payment methods

FieldTypeLabelDescription
items PaymentMethod repeated

PaymentProvider

Payment providers are services that handle payments.

FieldTypeLabelDescription
id string

System identifier of this payment provider.

name string

Name of the payment provider

description string

Description of the payment provider

type string

Type of payment method supported by this provider

PaymentProviderList

List of Payment providers

FieldTypeLabelDescription
items PaymentProvider repeated

PreparePaymentMethodRequest

Request arguments for PreparePaymentMethod.

FieldTypeLabelDescription
provider_id string

ID of the provider to prepare

organization_id string

ID of the organization that will own the future payment method

PreparedPaymentMethod

Response data for PreparePaymentMethod.

FieldTypeLabelDescription
provider_id string

ID of the provider of the future payment method

organization_id string

ID of the organization that will own the future payment method

token string

Token (semantics depends on payment provider)

script_url string

URL of custom script to load to create the payment method

signature string

Signature used to verify the consistency of the data in this message.

SetBillingConfigRequest

Request arguments for SetBillingConfig.

FieldTypeLabelDescription
organization_id string

Identifier of the organization for which billing address is to be set.

config BillingConfig

Billing configuration to set.

SetDefaultPaymentMethodRequest

Request argument for SetDefaultPaymentMethod

FieldTypeLabelDescription
organization_id string

Identifier of the organization for which the default payment method will be set.

payment_method_id string

Identifier of the new default payment method for the organization.

BillingService

BillingService is the API used to fetch billing information.

Method NameRequest TypeResponse TypeDescription
GetAPIVersion .arangodb.cloud.common.v1.Empty .arangodb.cloud.common.v1.Version

Get the current API version of this service. Required permissions: - None

GetOrganizationBillingFlags .arangodb.cloud.common.v1.IDOptions OrganizationBillingFlags

Fetch the billing specific flags for the organization identified by the given ID. Required permissions: - billing.organization.get

ListInvoices ListInvoicesRequest InvoiceList

Fetch all Invoice resources for the organization identified by the given organization ID that match the given criteria. Required permissions: - billing.invoice.list on the organization identified by the given organization ID

GetInvoice .arangodb.cloud.common.v1.IDOptions Invoice

Fetch a specific Invoice identified by the given ID. Required permissions: - billing.invoice.get on the organization that owns the invoice with given ID.

GetInvoicePDF .arangodb.cloud.common.v1.IDOptions PDFDocument

Fetch a specific Invoice identified by the given ID as PDF document. Required permissions: - billing.invoice.get on the organization that owns the invoice with given ID.

ListPaymentProviders ListPaymentProvidersRequest PaymentProviderList

Fetch all payment providers that are usable for the organization identified by the given context ID. Required permissions: - billing.paymentprovider.list on the organization identified by the given context ID

GetPaymentProvider .arangodb.cloud.common.v1.IDOptions PaymentProvider

Fetch a specific payment provider identified by the given ID. Required permissions: - None

ListPaymentMethods ListPaymentMethodsRequest PaymentMethodList

Fetch all payment methods that are configured for the organization identified by the given context ID. Required permissions: - billing.paymentmethod.list on the organization identified by the given context ID

GetPaymentMethod .arangodb.cloud.common.v1.IDOptions PaymentMethod

Fetch a specific payment method identified by the given ID. Required permissions: - billing.paymentmethod.get on the organization that owns the payment method which is identified by the given ID

PreparePaymentMethod PreparePaymentMethodRequest PreparedPaymentMethod

Prepare the payment provider for creating a new payment method. Required permissions: - billing.paymentmethod.create on the organization that owns future payment method.

CreatePaymentMethod CreatePaymentMethodRequest PaymentMethod

Create a new payment method. Required permissions: - billing.paymentmethod.create on the organization that owns the given payment method.

UpdatePaymentMethod PaymentMethod PaymentMethod

Update a specific payment method. Note that only name, description & valid period are updated. Required permissions: - billing.paymentmethod.update on the organization that owns the given payment method.

DeletePaymentMethod .arangodb.cloud.common.v1.IDOptions .arangodb.cloud.common.v1.Empty

Delete a specific payment method identified by the given ID. Required permissions: - billing.paymentmethod.delete on the organization that owns the given payment method which is identified by the given ID.

GetDefaultPaymentMethod .arangodb.cloud.common.v1.IDOptions PaymentMethod

Fetch the default PaymentMethod for an organization identified by the given ID. Required permissions: - billing.paymentmethod.get-default on the organization that is identified by the given ID

SetDefaultPaymentMethod SetDefaultPaymentMethodRequest .arangodb.cloud.common.v1.Empty

Update the default PaymentMethod for an organization identified by the given organization ID, to the payment method identified by the given payment method ID. Required permissions: - billing.paymentmethod.set-default on the organization identified by the given organization ID

GetBillingConfig .arangodb.cloud.common.v1.IDOptions BillingConfig

Fetch the billing configuration of an organization identified by the given ID. Required permissions: - billing.config.get on the organization that is identified by the given ID

SetBillingConfig SetBillingConfigRequest .arangodb.cloud.common.v1.Empty

Update the billing configuration for an organization identified by the given organization ID. Required permissions: - billing.config.set on the organization identified by the given organization ID

Methods with HTTP bindings

Method Name Method Pattern Body
GetAPIVersion GET /api/billing/v1/api-version
GetOrganizationBillingFlags GET /api/billing/v1/organization/{id}/billing-flags
ListInvoices GET /api/billing/v1/organization/{organization_id}/invoices
GetInvoice GET /api/billing/v1/invoices/{id}
GetInvoicePDF GET /api/billing/v1/invoices/{id}/pdf
ListPaymentProviders GET /api/billing/v1/organization/{organization_id}/paymentproviders
GetPaymentProvider GET /api/billing/v1/paymentproviders/{id}
ListPaymentMethods GET /api/billing/v1/organization/{organization_id}/paymentmethods
GetPaymentMethod GET /api/billing/v1/paymentmethods/{id}
PreparePaymentMethod POST /api/billing/v1/paymentproviders/{provider_id}/prepare *
CreatePaymentMethod POST /api/billing/v1/paymentmethods *
UpdatePaymentMethod PUT /api/billing/v1/paymentmethods/{id} *
DeletePaymentMethod DELETE /api/billing/v1/paymentmethods/{id}
GetDefaultPaymentMethod GET /api/billing/v1/organization/{id}/default-paymentmethod
SetDefaultPaymentMethod PUT /api/billing/v1/organization/{organization_id}/default-paymentmethod *
GetBillingConfig GET /api/billing/v1/organization/{id}/config
SetBillingConfig PUT /api/billing/v1/organization/{organization_id}/config *

Scalar Value Types

.proto TypeNotesC++JavaPythonGoC#PHPRuby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)