Scaleway Schema¶
graph LR ORG(Organization) -- RESOURCE --> PRJ(Project) ORG -- RESOURCE --> APP(Application) ORG -- RESOURCE --> USR(User) ORG -- RESOURCE --> GRP(ScalewayGroup) ORG -- RESOURCE --> APIKEY(ScalewayApiKey) PRJ -- RESOURCE --> INS(Instance) PRJ -- RESOURCE --> FIP(FlexibleIp) PRJ -- RESOURCE --> VOL(Volume) PRJ -- RESOURCE --> SNAP(VolumeSnapshot) INS -- MOUNTS --> VOL FIP -- IDENTIFIES --> INS VOL -- HAS --> SNAP USR -- MEMBER_OF --> GRP(ScalewayGroup) USR -- HAS --> APIKEY(ScalewayApiKey) APP -- MEMBER_OF --> GRP(ScalewayGroup) APP -- HAS --> APIKEY(ScalewayApiKey)
ScalewayOrganization¶
Represents an Organization in Scaleway.
Field |
Description |
---|---|
id |
ID of the Scaleway Organization |
lastupdated |
Timestamp of the last update |
Relationships¶
Project
,Application
,User
,ApiKey
belong to aScalewayOrganization
.(:ScalewayOrganization)-[:RESOURCE]->( :ScalewayProject, :ScalewayApplication, :ScalewayUser, :ScalewayApiKey )
ScalewayProject¶
Represents a Project in Scaleway. Projects are groupings of Scaleway resources.
Field |
Description |
---|---|
id |
ID of the Scaleway Project |
name |
Name of the project |
created_at |
Creation timestamp |
updated_at |
Last update timestamp |
description |
Project description |
lastupdated |
Timestamp of the last update |
Relationships¶
A
Project
belongs to aScalewayOrganization
.(:ScalewayOrganization)-[:RESOURCE]->(:ScalewayProject)
A
Project
hasFlexibleIp
,ScalewayVolume
,VolumeSnapshot
andInstance
as resources.(:ScalewayProject)-[:RESOURCE]->( :ScalewayFlexibleIp, :ScalewayVolume, :ScalewayVolumeSnapshot, :ScalewayInstance )
ScalewayUser¶
Represents a User in Scaleway.
Field |
Description |
---|---|
id |
ID of user. |
Email of user. |
|
username |
User identifier unique to the Organization. |
first_name |
First name of the user. |
last_name |
Last name of the user. |
phone_number |
Phone number of the user. |
locale |
Locale of the user. |
created_at |
Date user was created. |
updated_at |
Date of last user update. |
deletable |
Deletion status of user. Owners cannot be deleted. |
last_login_at |
Date of the last login. |
type |
Type of user ( |
status |
Status of user invitation ( |
mfa |
Defines whether MFA is enabled. |
account_root_user_id |
ID of the account root user associated with the user. |
tags |
Tags associated with the user. |
locked |
Defines whether the user is locked. |
lastupdated |
Timestamp of the last update |
Relationships¶
User
belongs to aOrganization
.(:ScalewayOrganization)-[:RESOURCE]->(:ScalewayUser)
User
is Member ofGroup
.(:ScalewayUser)-[:MEMBER_OF]->(:ScalewayGroup)
User
hasApiKey
.(:ScalewayUser)-[:HAS]->(:ScalewayApiKey)
ScalewayGroup¶
Represents a Group in Scaleway.
Field |
Description |
---|---|
id |
ID of the Group |
created_at |
Date and time of group creation. |
updated_at |
Date and time of last group update. |
name |
Name of the group. |
description |
Description of the group. |
tags |
Tags associated to the group. |
editable |
Defines whether or not the group is editable. |
deletable |
Defines whether or not the group is deletable. |
managed |
Defines whether or not the group is managed. |
lastupdated |
Timestamp of the last update |
Relationships¶
Group
belongs to anOrganization
(:ScalewayOrganization)-[:RESOURCE]->(:ScalewayGroup)
Group
has members:User
andApplication
(:ScalewayUser)-[:MEMBER_OF]->(:ScalewayGroup) (:ScalewayApplication)-[:MEMBER_OF]->(:ScalewayGroup)
ScalewayApplication¶
Represents an Application (Service Account) in Scaleway
Field |
Description |
---|---|
id |
ID of the application. |
name |
Name of the application. |
description |
Description of the application. |
created_at |
Date and time application was created. |
updated_at |
Date and time of last application update. |
editable |
Defines whether or not the application is editable. |
deletable |
Defines whether or not the application is deletable. |
managed |
Defines whether or not the application is managed. |
tags |
Tags associated with the user. |
lastupdated |
Timestamp of the last update |
Relationships¶
Application
belongs to aOrganization
.(:ScalewayOrganization)-[:RESOURCE]->(:ScalewayApplication)
Application
is member of aGroup
(:ScalewayApplication)-[:MEMBER_OF]->(:ScalewayGroup)
Application
hasApiKey
(:ScalewayApplication)-[:HAS]->(:ScalewayApiKey)
ScalewayApiKey¶
Represents an ApiKey in Scaleway.
Field |
Description |
---|---|
id |
Access key of the API key. |
description |
Description of API key. |
created_at |
Date and time of API key creation. |
updated_at |
Date and time of last API key update. |
expires_at |
Date and time of API key expiration. |
default_project_id |
Default Project ID specified for this API key. |
editable |
Defines whether or not the API key is editable. |
deletable |
Defines whether or not the API key is deletable. |
managed |
Defines whether or not the API key is managed. |
creation_ip |
IP address of the device that created the API key. |
lastupdated |
Timestamp of the last update |
Relationships¶
ApiKey
belongs to anOrganization
.(:ScalewayOrganization)-[:RESOURCE]->(:ScalewayApiKey)
ApiKey
is owned by aUser
or anApplication
(:ScalewayUser)-[:HAS]->(:ScalewayApiKey) (:ScalewayApplication)-[:HAS]->(:ScalewayApiKey)
ScalewayVolume¶
Volumes are storage space used by your Instances. You can attach several volumes to an Instance.
Field |
Description |
---|---|
id |
Volume unique ID. |
name |
Volume name. |
export_uri |
Show the volume NBD export URI. |
size |
Volume disk size. (in bytes) |
volume_type |
Volume type ( |
creation_date |
Volume creation date. |
modification_date |
Volume modification date. |
tags |
Volume tags. |
state |
Volume state ( |
zone |
Zone in which the volume is located. |
lastupdated |
Timestamp of the last update |
Relationships¶
Volume
belongs to aProject
.(:ScalewayProject)-[:RESOURCE]->(:ScalewayVolume)
Volume
hasVolumeSnapshot
(:ScalewayVolume)-[:HAS]->(:ScalewayVolumeSnapshot)
ScalewayVolumeSnapshot¶
A snapshot takes a picture of a volume at one specific point in time. For a complete backup of your Instance, you can create an image.
Field |
Description |
---|---|
id |
Snapshot ID. |
name |
Snapshot name. |
tags |
Snapshot tags. |
volume_type |
Snapshot volume type ( |
size |
Snapshot size. (in bytes) |
state |
Snapshot state ( |
creation_date |
Snapshot creation date. |
modification_date |
Snapshot modification date. |
error_reason |
Reason for the failed snapshot import. |
zone |
Snapshot zone. |
lastupdated |
Timestamp of the last update |
Relationships¶
VolumeSnapshot
belongs to aProject
.(:ScalewayProject)-[:RESOURCE]->(:ScalewayVolumeSnapshot)
Volume
hasVolumeSnapshot
(:ScalewayVolume)-[:HAS]->(:ScalewayVolumeSnapshot)
ScalewayFlexibleIp¶
Flexible IP addresses are public IP addresses that you can hold independently of any Instance. By default, a Scaleway Instance’s public IP is also a flexible IP address.
Field |
Description |
---|---|
id |
Flexible IP ID |
address |
IP address |
reverse |
Reverse DNS |
tags |
Tags for the IP |
type |
Type of IP ( |
state |
State of the IP ( |
prefix |
IP Network |
ipam_id |
IPAM ID (UUI Format) |
zone |
AZ of the IP |
lastupdated |
Timestamp of the last update |
Relationships¶
FlexibleIp
belongs to aProject
.(:ScalewayProject)-[:RESOURCE]->(:ScalewayFlexibleIp)
FlexibleIp
identifies anInstance
(:ScalewayFlexibleIp)-[:IDENTIFIES]->(:ScalewayInstance)
ScalewayInstance¶
An Instance is a virtual computing unit that provides resources, such as processing power, memory, and network connectivity, to run your applications.
Field |
Description |
---|---|
id |
Instance unique ID. |
name |
Instance name. |
tags |
Tags associated with the Instance. |
commercial_type |
Instance commercial type (eg. GP1-M). |
creation_date |
Instance creation date. |
dynamic_ip_required |
True if a dynamic IPv4 is required. |
routed_ip_enabled |
True to configure the instance so it uses the routed IP mode. Use of routed_ip_enabled as False is deprecated. |
enable_ipv6 |
True if IPv6 is enabled (deprecated and always False when routed_ip_enabled is True). |
hostname |
Instance host name. |
private_ip |
Private IP address of the Instance (deprecated and always null when routed_ip_enabled is True). |
mac_address |
The server’s MAC address. |
modification_date |
Instance modification date. |
state |
Instance state ( |
location_cluster_id |
Instance location, cluster ID |
location_hypervisor_id |
Instance locationm, hypervisor ID |
location_node_id |
Instance location, node ID |
location_platform_id |
Instance location, plateform ID |
ipv6_address |
Instance IPv6 IP-Address. |
ipv6_gateway |
IPv6 IP-addresses gateway. |
ipv6_netmask |
IPv6 IP-addresses CIDR netmask. |
boot_type |
Instance boot type ( |
state_detail |
Detailed information about the Instance state. |
arch |
Instance architecture ( |
private_nics |
Instance private NICs. |
zone |
Zone in which the Instance is located. |
end_of_service |
True if the Instance type has reached end of service. |
lastupdated |
Timestamp of the last update |
Relationships¶
Instance
belongs to aProject
(:ScalewayProject)-[:RESOURCE]->(:ScalewayInstance)
Instance
mountsVolume
(:ScalewayInstance)-[:MOUNTS]->(:ScalewayVolume)
Instance
is identified byFlexibleIp
(:ScalewayFlexibleIp)-[:IDENTIFIES]->(:ScalewayInstance)