Apple siliconv1alpha1

Download OpenAPI

Introduction

Scaleway Apple silicon is built using Apple's fifth generation Mac mini hardware. Powered by Appleā€™s M1 silicon and equipped with a 256 GB SSD and 8 GB of RAM, it's designed for towering performance and revolutionary power efficiency. The M1 chip has an Apple Silicon processor: a powerful 8-core CPU running at up to 3.2 GHz.

This M1 processor is designed for developers to create and sign applications for a wide range of Apple devices: from iPhones and iPads to Mac computers and beyond. With its advanced neural engine, Mac mini M1 can process machine learning tasks up to 15 times faster than traditional computers.

A dedicated Mac mini M1 thus allows you to enjoy dazzling performance and speed, enabling you to explore, learn, and build like never before.

Concepts

Refer to our dedicated concepts page to find definitions of the different terms referring to Apple silicon.

Requirements: To perform the following steps, you must first ensure that:

1. Configure your environment variables.

Note: This is an optional step that seeks to simplify your usage of the APIs. Since there is only one Availability Zone for Apple silicon, the possible value for zone is fr-par-3.

2. Edit the POST request payload that we will use in the next step to create an Apple silicon server.

Modify the values in the example according to your needs, using the information in the table to help.

ParameterDescription
project IDID of the Project you want to create your server in. Your project name can only contain alphanumeric characters, spaces, dots and dashes. To find your Project ID, you can consult the Scaleway console
nameCreate a server with this given name.
typeCreate a server of the given type. As Apple silicon-as-a-service currently only offers one type, the possible value is M1-M.

3. Run the following command to create a server. Make sure you include the payload you edited in the previous step.

You should get an output similar to the following one, providing details about your Apple silicon server: Note: This is a response example, the UUIDs and IP address displayed are not real.

  1. Retrieve your Mac mini M1 server IP from the response.

  2. Connect to your Mac mini M1 server using SSH:

  • Apple silicon-as-a-Service comes with a minimum allocation period of 24 hours.
  • There is a maximum of one Mac mini M1 allowed per Organization per Availability Zone. Learn more about account quotas with our dedicated documentation.

Mac mini and macOS are trademarks of Apple Inc., registered in the U.S. and other countries and regions. IOS is a trademark or registered trademark of Cisco in the U.S. and other countries and is used by Apple under license. Scaleway is not affiliated with Apple Inc.

Mac mini M1 can be deployed in the following Availability Zone:

  • Paris fr-par-3

For more help using Scaleway Apple silicon, check out the following resources:

A server is a dedicated Apple Mac mini M1 server

List all servers

List all servers in the specified zone. By default, returned servers in the list are ordered by creation date in ascending order, though this can be modified via the order_by field.

GET
/apple-silicon/v1alpha1/zones/{zone}/servers
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.
Query Parameters

order_by
string
Sort order of the returned servers. Possible values are created_at_asc and created_at_desc. The default value is created_at_asc.

project_id
string
Only list servers of this project ID.

organization_id
string
Only list servers of this Organization ID.

page
integer
Positive integer to choose the page to return. The default value is 1.

page_size
integer
Positive integer lower or equal to 100 to select the number of items to return. The default value is 50.
200 Response

total_count
integer
Total number of servers.

servers
array
Paginated returned servers.
Response Example

Create a new server in the targeted zone, specifying its configuration including name and type.

POST
/apple-silicon/v1alpha1/zones/{zone}/servers
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.
Body

name
string
Create a server with this given name.

project_id
string
Create a server in the given project ID.

type
string
Create a server of the given type.
Request Example
200 Response

id
string
UUID of the server.

type
string
Type of the server.

name
string
Name of the server.

project_id
string
Project this server is associated with.

organization_id
string
Organization this server is associated with.

ip
string
IPv4 address of the server. (IPv4 address).

vnc_url
string
URL of the VNC.

status
string
Current status of the server. Possible values are unknown_status, starting, ready, error, rebooting, updating, locking, locked, unlocking and reinstalling. The default value is unknown_status.

created_at
nullable string
Date on which the server was created. (RFC 3339 format).

updated_at
nullable string
Date on which the server was last updated. (RFC 3339 format).

deletable_at
nullable string
Date on which the server was last deleted. (RFC 3339 format).

zone
string
Zone of the server.
Response Example

Retrieve information about an existing Apple silicon server, specified by its server ID. Its full details, including name, status and IP address, are returned in the response object.

GET
/apple-silicon/v1alpha1/zones/{zone}/servers/{server_id}
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.

server_id
required string
UUID of the server you want to get.
200 Response

id
string
UUID of the server.

type
string
Type of the server.

name
string
Name of the server.

project_id
string
Project this server is associated with.

organization_id
string
Organization this server is associated with.

ip
string
IPv4 address of the server. (IPv4 address).

vnc_url
string
URL of the VNC.

status
string
Current status of the server. Possible values are unknown_status, starting, ready, error, rebooting, updating, locking, locked, unlocking and reinstalling. The default value is unknown_status.

created_at
nullable string
Date on which the server was created. (RFC 3339 format).

updated_at
nullable string
Date on which the server was last updated. (RFC 3339 format).

deletable_at
nullable string
Date on which the server was last deleted. (RFC 3339 format).

zone
string
Zone of the server.
Response Example

Update the parameters of an existing Apple silicon server, specified by its server ID.

PATCH
/apple-silicon/v1alpha1/zones/{zone}/servers/{server_id}
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.

server_id
required string
UUID of the server you want to update.
Body

name
required string
Updated name for your server.
Request Example
200 Response

id
string
UUID of the server.

type
string
Type of the server.

name
string
Name of the server.

project_id
string
Project this server is associated with.

organization_id
string
Organization this server is associated with.

ip
string
IPv4 address of the server. (IPv4 address).

vnc_url
string
URL of the VNC.

status
string
Current status of the server. Possible values are unknown_status, starting, ready, error, rebooting, updating, locking, locked, unlocking and reinstalling. The default value is unknown_status.

created_at
nullable string
Date on which the server was created. (RFC 3339 format).

updated_at
nullable string
Date on which the server was last updated. (RFC 3339 format).

deletable_at
nullable string
Date on which the server was last deleted. (RFC 3339 format).

zone
string
Zone of the server.
Response Example

Delete an existing Apple silicon server, specified by its server ID. Deleting a server is permanent, and cannot be undone. Note that the minimum allocation period for Apple silicon-as-a-service is 24 hours, meaning you cannot delete your server prior to that.

DELETE
/apple-silicon/v1alpha1/zones/{zone}/servers/{server_id}
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.

server_id
required string
UUID of the server you want to delete.
204 Response

Empty response

Reboot an existing Apple silicon server, specified by its server ID.

POST
/apple-silicon/v1alpha1/zones/{zone}/servers/{server_id}/reboot
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.

server_id
required string
UUID of the server you want to reboot.
Body

Request Example
200 Response

id
string
UUID of the server.

type
string
Type of the server.

name
string
Name of the server.

project_id
string
Project this server is associated with.

organization_id
string
Organization this server is associated with.

ip
string
IPv4 address of the server. (IPv4 address).

vnc_url
string
URL of the VNC.

status
string
Current status of the server. Possible values are unknown_status, starting, ready, error, rebooting, updating, locking, locked, unlocking and reinstalling. The default value is unknown_status.

created_at
nullable string
Date on which the server was created. (RFC 3339 format).

updated_at
nullable string
Date on which the server was last updated. (RFC 3339 format).

deletable_at
nullable string
Date on which the server was last deleted. (RFC 3339 format).

zone
string
Zone of the server.
Response Example

Reinstall an existing Apple silicon server (specified by its server ID) from a new image (OS). All the data on the disk is deleted and all configuration is reset to the defailt configuration values of the image (OS).

POST
/apple-silicon/v1alpha1/zones/{zone}/servers/{server_id}/reinstall
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.

server_id
required string
UUID of the server you want to reinstall.
Body

Request Example
200 Response

id
string
UUID of the server.

type
string
Type of the server.

name
string
Name of the server.

project_id
string
Project this server is associated with.

organization_id
string
Organization this server is associated with.

ip
string
IPv4 address of the server. (IPv4 address).

vnc_url
string
URL of the VNC.

status
string
Current status of the server. Possible values are unknown_status, starting, ready, error, rebooting, updating, locking, locked, unlocking and reinstalling. The default value is unknown_status.

created_at
nullable string
Date on which the server was created. (RFC 3339 format).

updated_at
nullable string
Date on which the server was last updated. (RFC 3339 format).

deletable_at
nullable string
Date on which the server was last deleted. (RFC 3339 format).

zone
string
Zone of the server.
Response Example

A server type represents the technical specification of an available Mac mini server, such as its memory and disk size.

Get a server technical details.

GET
/apple-silicon/v1alpha1/zones/{zone}/server-type/{server_type}
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.

server_type
required string
Server type identifier.
200 Response

cpu
object
CPU description.

disk
object
Size of the local disk of the server.

name
string
Name of the type.

memory
object
Size of memory available.

stock
string
Current stock. Possible values are unknown_stock, no_stock, low_stock and high_stock. The default value is unknown_stock.

minimum_lease_duration
nullable string
Minimum duration of the lease in seconds. Minimum duration of the lease in seconds (example. 3.4s). (in seconds).
Response Example

List all technical details about Apple silicon server types available in the specified zone. Since there is only one Availability Zone for Apple silicon servers, the targeted value is fr-par-3.

GET
/apple-silicon/v1alpha1/zones/{zone}/server-types
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.
200 Response

server_types
array
Available server types.
Response Example

Operating systems (OS) available for a given Mac mini server type. The default OS for all our Mac mini M1s is macOS Monterey 12 (Version 12.0.1). Other macOSes, e.g. Linux OS or Windows OS are not supported.

List all Operating System (OS). The response will include the total number of OS as well as their associated IDs, names and labels.

GET
/apple-silicon/v1alpha1/zones/{zone}/os
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.
Query Parameters

page
integer
Positive integer to choose the page to return. The default value is 1.

page_size
integer
Positive integer lower or equal to 100 to select the number of items to return. The default value is 50.

server_type
string
List of compatible server types.

name
string
Filter OS by name (note that "11.1" will return "11.1.2" and "11.1" but not "12")).
200 Response

total_count
integer
Total number of OS.

os
array
List of OS.
Response Example

Get an Operating System (OS). The response will include the OS's unique ID as well as its name and label.

GET
/apple-silicon/v1alpha1/zones/{zone}/os/{os_id}
Path Parameters

zone
required string
The zone you want to target. Possible value is fr-par-3.

os_id
required string
UUID of the OS you want to get.
200 Response

id
string
Unique ID of the OS.

name
string
OS name.

label
string
OS name as it should be displayed.

image_url
string
URL of the image.

compatible_server_types
array
List of compatible server types.
Response Example