scaleway_async.account.v3 package

Submodules

scaleway_async.account.v3.api module

class scaleway_async.account.v3.api.AccountV3ContractAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

The Contract API allows you to manage contracts.

async check_contract_signature(*, contract_name: str, organization_id: Optional[str] = None, contract_type: Optional[ContractType] = None) CheckContractSignatureResponse

Check if a contract is signed for your Organization. :param contract_name: Filter on contract name. :param organization_id: ID of the Organization to check the contract signature for. :param contract_type: Filter on contract type. :return: CheckContractSignatureResponse

Usage:

result = await api.check_contract_signature(
    contract_name="example",
)
async create_contract_signature(*, contract_name: str, validated: bool, contract_type: Optional[ContractType] = None, organization_id: Optional[str] = None) ContractSignature

Create a signature for your Organization for the latest version of the requested contract. :param contract_name: The name of the contract. :param validated: Whether the contract is validated at creation. :param contract_type: The type of the contract. :param organization_id: ID of the Organization. :return: ContractSignature

Usage:

result = await api.create_contract_signature(
    contract_name="example",
    validated=False,
)
async download_contract_signature(*, contract_signature_id: str, locale: Optional[LanguageCode] = None) ScwFile

Download a contract content. :param contract_signature_id: The contract signature ID. :param locale: The locale requested for the content of the contract. :return: ScwFile

Usage:

result = await api.download_contract_signature(
    contract_signature_id="example",
)
async list_contract_signatures(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListContractSignaturesRequestOrderBy] = None, organization_id: Optional[str] = None) ListContractSignaturesResponse

List contract signatures for an Organization. :param page: The page number for the returned contracts. :param page_size: The maximum number of contracts per page. :param order_by: How the contracts are ordered in the response. :param organization_id: Filter on Organization ID. :return: ListContractSignaturesResponse

Usage:

result = await api.list_contract_signatures()
async list_contract_signatures_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListContractSignaturesRequestOrderBy] = None, organization_id: Optional[str] = None) List[ContractSignature]

List contract signatures for an Organization. :param page: The page number for the returned contracts. :param page_size: The maximum number of contracts per page. :param order_by: How the contracts are ordered in the response. :param organization_id: Filter on Organization ID. :return: List[ContractSignature]

Usage:

result = await api.list_contract_signatures_all()
async validate_contract_signature(*, contract_signature_id: str) ContractSignature

Sign a contract for your Organization. :param contract_signature_id: The contract linked to your Organization you want to sign. :return: ContractSignature

Usage:

result = await api.validate_contract_signature(
    contract_signature_id="example",
)
class scaleway_async.account.v3.api.AccountV3ProjectAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

This API allows you to manage your Scaleway Projects.

async create_project(*, description: str, name: Optional[str] = None, organization_id: Optional[str] = None) Project

Create a new Project for an Organization. Generate a new Project for an Organization, specifying its configuration including name and description. :param description: Description of the Project. :param name: Name of the Project. :param organization_id: Organization ID of the Project. :return: Project

Usage:

result = await api.create_project(
    description="example",
)
async delete_project(*, project_id: Optional[str] = None) None

Delete an existing Project. Delete an existing Project, specified by its Project ID. The Project needs to be empty (meaning there are no resources left in it) to be deleted effectively. Note that deleting a Project is permanent, and cannot be undone. :param project_id: Project ID of the Project.

Usage:

result = await api.delete_project()
async get_project(*, project_id: Optional[str] = None) Project

Get an existing Project. Retrieve information about an existing Project, specified by its Project ID. Its full details, including ID, name and description, are returned in the response object. :param project_id: Project ID of the Project. :return: Project

Usage:

result = await api.get_project()
async list_projects(*, organization_id: Optional[str] = None, name: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListProjectsRequestOrderBy] = None, project_ids: Optional[List[str]] = None) ListProjectsResponse

List all Projects of an Organization. List all Projects of an Organization. The response will include the total number of Projects as well as their associated Organizations, names, and IDs. Other information includes the creation and update date of the Project. :param organization_id: Organization ID of the Project. :param name: Name of the Project. :param page: Page number for the returned Projects. :param page_size: Maximum number of Project per page. :param order_by: Sort order of the returned Projects. :param project_ids: Project IDs to filter for. The results will be limited to any Projects with an ID in this array. :return: ListProjectsResponse

Usage:

result = await api.list_projects()
async list_projects_all(*, organization_id: Optional[str] = None, name: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListProjectsRequestOrderBy] = None, project_ids: Optional[List[str]] = None) List[Project]

List all Projects of an Organization. List all Projects of an Organization. The response will include the total number of Projects as well as their associated Organizations, names, and IDs. Other information includes the creation and update date of the Project. :param organization_id: Organization ID of the Project. :param name: Name of the Project. :param page: Page number for the returned Projects. :param page_size: Maximum number of Project per page. :param order_by: Sort order of the returned Projects. :param project_ids: Project IDs to filter for. The results will be limited to any Projects with an ID in this array. :return: List[Project]

Usage:

result = await api.list_projects_all()
async set_project_qualification(*, project_id: Optional[str] = None, qualification: Optional[Qualification] = None) ProjectQualification

Set project use case. Set the project use case for a new or existing Project, specified by its Project ID. You can customize the use case, sub use case, and architecture type you want to use in the Project. :param project_id: Project ID. :param qualification: Use case chosen for the Project. :return: ProjectQualification

Usage:

result = await api.set_project_qualification()
async update_project(*, project_id: Optional[str] = None, name: Optional[str] = None, description: Optional[str] = None) Project

Update Project. Update the parameters of an existing Project, specified by its Project ID. These parameters include the name and description. :param project_id: Project ID of the Project. :param name: Name of the Project. :param description: Description of the Project. :return: Project

Usage:

result = await api.update_project()

scaleway_async.account.v3.marshalling module

scaleway_async.account.v3.marshalling.marshal_ContractApiCheckContractSignatureRequest(request: ContractApiCheckContractSignatureRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_ContractApiCreateContractSignatureRequest(request: ContractApiCreateContractSignatureRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_ProjectApiCreateProjectRequest(request: ProjectApiCreateProjectRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_ProjectApiSetProjectQualificationRequest(request: ProjectApiSetProjectQualificationRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_ProjectApiUpdateProjectRequest(request: ProjectApiUpdateProjectRequest, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_Qualification(request: Qualification, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationAiMachine(request: QualificationAiMachine, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationArchiveData(request: QualificationArchiveData, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationContainer(request: QualificationContainer, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationDeploySoftware(request: QualificationDeploySoftware, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationHostApplication(request: QualificationHostApplication, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationHostWebsite(request: QualificationHostWebsite, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationOtherUseCase(request: QualificationOtherUseCase, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationSetScalewayEnvironment(request: QualificationSetScalewayEnvironment, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.marshal_QualificationShareData(request: QualificationShareData, defaults: ProfileDefaults) Dict[str, Any]
scaleway_async.account.v3.marshalling.unmarshal_CheckContractSignatureResponse(data: Any) CheckContractSignatureResponse
scaleway_async.account.v3.marshalling.unmarshal_Contract(data: Any) Contract
scaleway_async.account.v3.marshalling.unmarshal_ContractSignature(data: Any) ContractSignature
scaleway_async.account.v3.marshalling.unmarshal_ListContractSignaturesResponse(data: Any) ListContractSignaturesResponse
scaleway_async.account.v3.marshalling.unmarshal_ListProjectsResponse(data: Any) ListProjectsResponse
scaleway_async.account.v3.marshalling.unmarshal_Project(data: Any) Project
scaleway_async.account.v3.marshalling.unmarshal_ProjectQualification(data: Any) ProjectQualification
scaleway_async.account.v3.marshalling.unmarshal_Qualification(data: Any) Qualification
scaleway_async.account.v3.marshalling.unmarshal_QualificationAiMachine(data: Any) QualificationAiMachine
scaleway_async.account.v3.marshalling.unmarshal_QualificationArchiveData(data: Any) QualificationArchiveData
scaleway_async.account.v3.marshalling.unmarshal_QualificationContainer(data: Any) QualificationContainer
scaleway_async.account.v3.marshalling.unmarshal_QualificationDeploySoftware(data: Any) QualificationDeploySoftware
scaleway_async.account.v3.marshalling.unmarshal_QualificationHostApplication(data: Any) QualificationHostApplication
scaleway_async.account.v3.marshalling.unmarshal_QualificationHostWebsite(data: Any) QualificationHostWebsite
scaleway_async.account.v3.marshalling.unmarshal_QualificationOtherUseCase(data: Any) QualificationOtherUseCase
scaleway_async.account.v3.marshalling.unmarshal_QualificationSetScalewayEnvironment(data: Any) QualificationSetScalewayEnvironment
scaleway_async.account.v3.marshalling.unmarshal_QualificationShareData(data: Any) QualificationShareData

scaleway_async.account.v3.types module

class scaleway_async.account.v3.types.CheckContractSignatureResponse(created: 'bool', validated: 'bool')

Bases: object

created: bool

Whether a signature has been requested for this contract.

validated: bool

Whether the signature for this contract has been validated.

class scaleway_async.account.v3.types.Contract(id: 'str', type_: 'ContractType', name: 'str', version: 'int', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

The creation date of the contract.

id: str

ID of the contract.

name: str

The name of the contract.

type_: ContractType

The type of the contract.

updated_at: Optional[datetime]

The last modification date of the contract.

version: int

The version of the contract.

class scaleway_async.account.v3.types.ContractApiCheckContractSignatureRequest(contract_name: 'str', organization_id: 'Optional[str]', contract_type: 'Optional[ContractType]')

Bases: object

contract_name: str

Filter on contract name.

contract_type: Optional[ContractType]

Filter on contract type.

organization_id: Optional[str]

ID of the Organization to check the contract signature for.

class scaleway_async.account.v3.types.ContractApiCreateContractSignatureRequest(contract_name: 'str', validated: 'bool', contract_type: 'Optional[ContractType]', organization_id: 'Optional[str]')

Bases: object

contract_name: str

The name of the contract.

contract_type: Optional[ContractType]

The type of the contract.

organization_id: Optional[str]

ID of the Organization.

validated: bool

Whether the contract is validated at creation.

class scaleway_async.account.v3.types.ContractApiDownloadContractSignatureRequest(contract_signature_id: 'str', locale: 'Optional[StdLanguageCode]')

Bases: object

contract_signature_id: str

The contract signature ID.

locale: Optional[LanguageCode]

The locale requested for the content of the contract.

class scaleway_async.account.v3.types.ContractApiListContractSignaturesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListContractSignaturesRequestOrderBy]', organization_id: 'Optional[str]')

Bases: object

order_by: Optional[ListContractSignaturesRequestOrderBy]

How the contracts are ordered in the response.

organization_id: Optional[str]

Filter on Organization ID.

page: Optional[int]

The page number for the returned contracts.

page_size: Optional[int]

The maximum number of contracts per page.

class scaleway_async.account.v3.types.ContractApiValidateContractSignatureRequest(contract_signature_id: 'str')

Bases: object

contract_signature_id: str

The contract linked to your Organization you want to sign.

class scaleway_async.account.v3.types.ContractSignature(id: 'str', organization_id: 'str', created_at: 'Optional[datetime]', signed_at: 'Optional[datetime]', expires_at: 'Optional[datetime]', contract: 'Optional[Contract]')

Bases: object

contract: Optional[Contract]

The contract signed.

created_at: Optional[datetime]

The creation date of the contract signature.

expires_at: Optional[datetime]

The expiration date of the contract signature.

id: str

ID of the contract signature.

organization_id: str

The Organization ID which signed the contract.

signed_at: Optional[datetime]

The signing date of the contract signature.

class scaleway_async.account.v3.types.ContractType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BAREMETAL = 'baremetal'
CONTAINER = 'container'
GLOBAL = 'global'
INSTANCE = 'instance'
K8S = 'k8s'
UNKNOWN_TYPE = 'unknown_type'
class scaleway_async.account.v3.types.ListContractSignaturesRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

EXPIRES_AT_ASC = 'expires_at_asc'
EXPIRES_AT_DESC = 'expires_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
SIGNED_AT_ASC = 'signed_at_asc'
SIGNED_AT_DESC = 'signed_at_desc'
class scaleway_async.account.v3.types.ListContractSignaturesResponse(total_count: 'int', contract_signatures: 'List[ContractSignature]')

Bases: object

contract_signatures: List[ContractSignature]

The paginated returned contract signatures.

total_count: int

The total number of contract signatures.

class scaleway_async.account.v3.types.ListProjectsRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
class scaleway_async.account.v3.types.ListProjectsResponse(total_count: 'int', projects: 'List[Project]')

Bases: object

projects: List[Project]

Paginated returned Projects.

total_count: int

Total number of Projects.

class scaleway_async.account.v3.types.Project(id: 'str', name: 'str', organization_id: 'str', description: 'str', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Creation date of the Project.

description: str

Description of the Project.

id: str

ID of the Project.

name: str

Name of the Project.

organization_id: str

Organization ID of the Project.

updated_at: Optional[datetime]

Update date of the Project.

class scaleway_async.account.v3.types.ProjectApiCreateProjectRequest(description: 'str', name: 'Optional[str]', organization_id: 'Optional[str]')

Bases: object

description: str

Description of the Project.

name: Optional[str]

Name of the Project.

organization_id: Optional[str]

Organization ID of the Project.

class scaleway_async.account.v3.types.ProjectApiDeleteProjectRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

Project ID of the Project.

class scaleway_async.account.v3.types.ProjectApiGetProjectRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

Project ID of the Project.

class scaleway_async.account.v3.types.ProjectApiListProjectsRequest(organization_id: 'Optional[str]', name: 'Optional[str]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListProjectsRequestOrderBy]', project_ids: 'Optional[List[str]]')

Bases: object

name: Optional[str]

Name of the Project.

order_by: Optional[ListProjectsRequestOrderBy]

Sort order of the returned Projects.

organization_id: Optional[str]

Organization ID of the Project.

page: Optional[int]

Page number for the returned Projects.

page_size: Optional[int]

Maximum number of Project per page.

project_ids: Optional[List[str]]

Project IDs to filter for. The results will be limited to any Projects with an ID in this array.

class scaleway_async.account.v3.types.ProjectApiSetProjectQualificationRequest(project_id: 'Optional[str]', qualification: 'Optional[Qualification]')

Bases: object

project_id: Optional[str]

Project ID.

qualification: Optional[Qualification]

Use case chosen for the Project.

class scaleway_async.account.v3.types.ProjectApiUpdateProjectRequest(project_id: 'Optional[str]', name: 'Optional[str]', description: 'Optional[str]')

Bases: object

description: Optional[str]

Description of the Project.

name: Optional[str]

Name of the Project.

project_id: Optional[str]

Project ID of the Project.

class scaleway_async.account.v3.types.ProjectQualification(project_id: 'str', qualification: 'Optional[Qualification]')

Bases: object

project_id: str

Project ID.

qualification: Optional[Qualification]

Qualification of the Project.

class scaleway_async.account.v3.types.Qualification(architecture_type: 'QualificationArchitectureType', host_website: 'Optional[QualificationHostWebsite]', host_application: 'Optional[QualificationHostApplication]', deploy_software: 'Optional[QualificationDeploySoftware]', set_scaleway_environment: 'Optional[QualificationSetScalewayEnvironment]', ai_machine: 'Optional[QualificationAiMachine]', container: 'Optional[QualificationContainer]', archive_data: 'Optional[QualificationArchiveData]', share_data: 'Optional[QualificationShareData]', other_use_case: 'Optional[QualificationOtherUseCase]')

Bases: object

ai_machine: Optional[QualificationAiMachine]
architecture_type: QualificationArchitectureType

Architecture type of the qualification.

archive_data: Optional[QualificationArchiveData]
container: Optional[QualificationContainer]
deploy_software: Optional[QualificationDeploySoftware]
host_application: Optional[QualificationHostApplication]
host_website: Optional[QualificationHostWebsite]
other_use_case: Optional[QualificationOtherUseCase]
set_scaleway_environment: Optional[QualificationSetScalewayEnvironment]
share_data: Optional[QualificationShareData]
class scaleway_async.account.v3.types.QualificationAiMachine

Bases: object

class scaleway_async.account.v3.types.QualificationArchitectureType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

DEDICATED_SERVER = 'dedicated_server'
ELASTIC = 'elastic'
INSTANCE = 'instance'
KUBERNETES = 'kubernetes'
OBJECT_STORAGE = 'object_storage'
OTHER_ARCHITECTURE_TYPE = 'other_architecture_type'
SERVERLESS = 'serverless'
UNKNOWN_ARCHITECTURE_TYPE = 'unknown_architecture_type'
WEB_HOSTING = 'web_hosting'
class scaleway_async.account.v3.types.QualificationArchiveData

Bases: object

class scaleway_async.account.v3.types.QualificationContainer

Bases: object

class scaleway_async.account.v3.types.QualificationDeploySoftware

Bases: object

class scaleway_async.account.v3.types.QualificationHostApplication(sub_use_case: 'QualificationHostApplicationSubUseCase')

Bases: object

sub_use_case: QualificationHostApplicationSubUseCase
class scaleway_async.account.v3.types.QualificationHostApplicationSubUseCase(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

GOVERNMENT_APP = 'government_app'
SAAS_APP = 'saas_app'
UNKNOWN_SUB_USE_CASE = 'unknown_sub_use_case'
class scaleway_async.account.v3.types.QualificationHostWebsite(sub_use_case: 'QualificationHostWebsiteSubUseCase')

Bases: object

sub_use_case: QualificationHostWebsiteSubUseCase
class scaleway_async.account.v3.types.QualificationHostWebsiteSubUseCase(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ECOMMERCE_WEBSITE = 'ecommerce_website'
HIGH_WEBSITE = 'high_website'
INFORMATION_WEBSITE = 'information_website'
OTHER_SUB_USE_CASE = 'other_sub_use_case'
UNKNOWN_SUB_USE_CASE = 'unknown_sub_use_case'
class scaleway_async.account.v3.types.QualificationOtherUseCase

Bases: object

class scaleway_async.account.v3.types.QualificationSetScalewayEnvironment

Bases: object

class scaleway_async.account.v3.types.QualificationShareData

Bases: object

Module contents

class scaleway_async.account.v3.AccountV3ContractAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

The Contract API allows you to manage contracts.

async check_contract_signature(*, contract_name: str, organization_id: Optional[str] = None, contract_type: Optional[ContractType] = None) CheckContractSignatureResponse

Check if a contract is signed for your Organization. :param contract_name: Filter on contract name. :param organization_id: ID of the Organization to check the contract signature for. :param contract_type: Filter on contract type. :return: CheckContractSignatureResponse

Usage:

result = await api.check_contract_signature(
    contract_name="example",
)
async create_contract_signature(*, contract_name: str, validated: bool, contract_type: Optional[ContractType] = None, organization_id: Optional[str] = None) ContractSignature

Create a signature for your Organization for the latest version of the requested contract. :param contract_name: The name of the contract. :param validated: Whether the contract is validated at creation. :param contract_type: The type of the contract. :param organization_id: ID of the Organization. :return: ContractSignature

Usage:

result = await api.create_contract_signature(
    contract_name="example",
    validated=False,
)
async download_contract_signature(*, contract_signature_id: str, locale: Optional[LanguageCode] = None) ScwFile

Download a contract content. :param contract_signature_id: The contract signature ID. :param locale: The locale requested for the content of the contract. :return: ScwFile

Usage:

result = await api.download_contract_signature(
    contract_signature_id="example",
)
async list_contract_signatures(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListContractSignaturesRequestOrderBy] = None, organization_id: Optional[str] = None) ListContractSignaturesResponse

List contract signatures for an Organization. :param page: The page number for the returned contracts. :param page_size: The maximum number of contracts per page. :param order_by: How the contracts are ordered in the response. :param organization_id: Filter on Organization ID. :return: ListContractSignaturesResponse

Usage:

result = await api.list_contract_signatures()
async list_contract_signatures_all(*, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListContractSignaturesRequestOrderBy] = None, organization_id: Optional[str] = None) List[ContractSignature]

List contract signatures for an Organization. :param page: The page number for the returned contracts. :param page_size: The maximum number of contracts per page. :param order_by: How the contracts are ordered in the response. :param organization_id: Filter on Organization ID. :return: List[ContractSignature]

Usage:

result = await api.list_contract_signatures_all()
async validate_contract_signature(*, contract_signature_id: str) ContractSignature

Sign a contract for your Organization. :param contract_signature_id: The contract linked to your Organization you want to sign. :return: ContractSignature

Usage:

result = await api.validate_contract_signature(
    contract_signature_id="example",
)
class scaleway_async.account.v3.AccountV3ProjectAPI(client: Client, *, bypass_validation: bool = False)

Bases: API

This API allows you to manage your Scaleway Projects.

async create_project(*, description: str, name: Optional[str] = None, organization_id: Optional[str] = None) Project

Create a new Project for an Organization. Generate a new Project for an Organization, specifying its configuration including name and description. :param description: Description of the Project. :param name: Name of the Project. :param organization_id: Organization ID of the Project. :return: Project

Usage:

result = await api.create_project(
    description="example",
)
async delete_project(*, project_id: Optional[str] = None) None

Delete an existing Project. Delete an existing Project, specified by its Project ID. The Project needs to be empty (meaning there are no resources left in it) to be deleted effectively. Note that deleting a Project is permanent, and cannot be undone. :param project_id: Project ID of the Project.

Usage:

result = await api.delete_project()
async get_project(*, project_id: Optional[str] = None) Project

Get an existing Project. Retrieve information about an existing Project, specified by its Project ID. Its full details, including ID, name and description, are returned in the response object. :param project_id: Project ID of the Project. :return: Project

Usage:

result = await api.get_project()
async list_projects(*, organization_id: Optional[str] = None, name: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListProjectsRequestOrderBy] = None, project_ids: Optional[List[str]] = None) ListProjectsResponse

List all Projects of an Organization. List all Projects of an Organization. The response will include the total number of Projects as well as their associated Organizations, names, and IDs. Other information includes the creation and update date of the Project. :param organization_id: Organization ID of the Project. :param name: Name of the Project. :param page: Page number for the returned Projects. :param page_size: Maximum number of Project per page. :param order_by: Sort order of the returned Projects. :param project_ids: Project IDs to filter for. The results will be limited to any Projects with an ID in this array. :return: ListProjectsResponse

Usage:

result = await api.list_projects()
async list_projects_all(*, organization_id: Optional[str] = None, name: Optional[str] = None, page: Optional[int] = None, page_size: Optional[int] = None, order_by: Optional[ListProjectsRequestOrderBy] = None, project_ids: Optional[List[str]] = None) List[Project]

List all Projects of an Organization. List all Projects of an Organization. The response will include the total number of Projects as well as their associated Organizations, names, and IDs. Other information includes the creation and update date of the Project. :param organization_id: Organization ID of the Project. :param name: Name of the Project. :param page: Page number for the returned Projects. :param page_size: Maximum number of Project per page. :param order_by: Sort order of the returned Projects. :param project_ids: Project IDs to filter for. The results will be limited to any Projects with an ID in this array. :return: List[Project]

Usage:

result = await api.list_projects_all()
async set_project_qualification(*, project_id: Optional[str] = None, qualification: Optional[Qualification] = None) ProjectQualification

Set project use case. Set the project use case for a new or existing Project, specified by its Project ID. You can customize the use case, sub use case, and architecture type you want to use in the Project. :param project_id: Project ID. :param qualification: Use case chosen for the Project. :return: ProjectQualification

Usage:

result = await api.set_project_qualification()
async update_project(*, project_id: Optional[str] = None, name: Optional[str] = None, description: Optional[str] = None) Project

Update Project. Update the parameters of an existing Project, specified by its Project ID. These parameters include the name and description. :param project_id: Project ID of the Project. :param name: Name of the Project. :param description: Description of the Project. :return: Project

Usage:

result = await api.update_project()
class scaleway_async.account.v3.CheckContractSignatureResponse(created: 'bool', validated: 'bool')

Bases: object

created: bool

Whether a signature has been requested for this contract.

validated: bool

Whether the signature for this contract has been validated.

class scaleway_async.account.v3.Contract(id: 'str', type_: 'ContractType', name: 'str', version: 'int', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

The creation date of the contract.

id: str

ID of the contract.

name: str

The name of the contract.

type_: ContractType

The type of the contract.

updated_at: Optional[datetime]

The last modification date of the contract.

version: int

The version of the contract.

class scaleway_async.account.v3.ContractApiCheckContractSignatureRequest(contract_name: 'str', organization_id: 'Optional[str]', contract_type: 'Optional[ContractType]')

Bases: object

contract_name: str

Filter on contract name.

contract_type: Optional[ContractType]

Filter on contract type.

organization_id: Optional[str]

ID of the Organization to check the contract signature for.

class scaleway_async.account.v3.ContractApiCreateContractSignatureRequest(contract_name: 'str', validated: 'bool', contract_type: 'Optional[ContractType]', organization_id: 'Optional[str]')

Bases: object

contract_name: str

The name of the contract.

contract_type: Optional[ContractType]

The type of the contract.

organization_id: Optional[str]

ID of the Organization.

validated: bool

Whether the contract is validated at creation.

class scaleway_async.account.v3.ContractApiDownloadContractSignatureRequest(contract_signature_id: 'str', locale: 'Optional[StdLanguageCode]')

Bases: object

contract_signature_id: str

The contract signature ID.

locale: Optional[LanguageCode]

The locale requested for the content of the contract.

class scaleway_async.account.v3.ContractApiListContractSignaturesRequest(page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListContractSignaturesRequestOrderBy]', organization_id: 'Optional[str]')

Bases: object

order_by: Optional[ListContractSignaturesRequestOrderBy]

How the contracts are ordered in the response.

organization_id: Optional[str]

Filter on Organization ID.

page: Optional[int]

The page number for the returned contracts.

page_size: Optional[int]

The maximum number of contracts per page.

class scaleway_async.account.v3.ContractApiValidateContractSignatureRequest(contract_signature_id: 'str')

Bases: object

contract_signature_id: str

The contract linked to your Organization you want to sign.

class scaleway_async.account.v3.ContractSignature(id: 'str', organization_id: 'str', created_at: 'Optional[datetime]', signed_at: 'Optional[datetime]', expires_at: 'Optional[datetime]', contract: 'Optional[Contract]')

Bases: object

contract: Optional[Contract]

The contract signed.

created_at: Optional[datetime]

The creation date of the contract signature.

expires_at: Optional[datetime]

The expiration date of the contract signature.

id: str

ID of the contract signature.

organization_id: str

The Organization ID which signed the contract.

signed_at: Optional[datetime]

The signing date of the contract signature.

class scaleway_async.account.v3.ContractType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

BAREMETAL = 'baremetal'
CONTAINER = 'container'
GLOBAL = 'global'
INSTANCE = 'instance'
K8S = 'k8s'
UNKNOWN_TYPE = 'unknown_type'
class scaleway_async.account.v3.ListContractSignaturesRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

EXPIRES_AT_ASC = 'expires_at_asc'
EXPIRES_AT_DESC = 'expires_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
SIGNED_AT_ASC = 'signed_at_asc'
SIGNED_AT_DESC = 'signed_at_desc'
class scaleway_async.account.v3.ListContractSignaturesResponse(total_count: 'int', contract_signatures: 'List[ContractSignature]')

Bases: object

contract_signatures: List[ContractSignature]

The paginated returned contract signatures.

total_count: int

The total number of contract signatures.

class scaleway_async.account.v3.ListProjectsRequestOrderBy(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

CREATED_AT_ASC = 'created_at_asc'
CREATED_AT_DESC = 'created_at_desc'
NAME_ASC = 'name_asc'
NAME_DESC = 'name_desc'
class scaleway_async.account.v3.ListProjectsResponse(total_count: 'int', projects: 'List[Project]')

Bases: object

projects: List[Project]

Paginated returned Projects.

total_count: int

Total number of Projects.

class scaleway_async.account.v3.Project(id: 'str', name: 'str', organization_id: 'str', description: 'str', created_at: 'Optional[datetime]', updated_at: 'Optional[datetime]')

Bases: object

created_at: Optional[datetime]

Creation date of the Project.

description: str

Description of the Project.

id: str

ID of the Project.

name: str

Name of the Project.

organization_id: str

Organization ID of the Project.

updated_at: Optional[datetime]

Update date of the Project.

class scaleway_async.account.v3.ProjectApiCreateProjectRequest(description: 'str', name: 'Optional[str]', organization_id: 'Optional[str]')

Bases: object

description: str

Description of the Project.

name: Optional[str]

Name of the Project.

organization_id: Optional[str]

Organization ID of the Project.

class scaleway_async.account.v3.ProjectApiDeleteProjectRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

Project ID of the Project.

class scaleway_async.account.v3.ProjectApiGetProjectRequest(project_id: 'Optional[str]')

Bases: object

project_id: Optional[str]

Project ID of the Project.

class scaleway_async.account.v3.ProjectApiListProjectsRequest(organization_id: 'Optional[str]', name: 'Optional[str]', page: 'Optional[int]', page_size: 'Optional[int]', order_by: 'Optional[ListProjectsRequestOrderBy]', project_ids: 'Optional[List[str]]')

Bases: object

name: Optional[str]

Name of the Project.

order_by: Optional[ListProjectsRequestOrderBy]

Sort order of the returned Projects.

organization_id: Optional[str]

Organization ID of the Project.

page: Optional[int]

Page number for the returned Projects.

page_size: Optional[int]

Maximum number of Project per page.

project_ids: Optional[List[str]]

Project IDs to filter for. The results will be limited to any Projects with an ID in this array.

class scaleway_async.account.v3.ProjectApiSetProjectQualificationRequest(project_id: 'Optional[str]', qualification: 'Optional[Qualification]')

Bases: object

project_id: Optional[str]

Project ID.

qualification: Optional[Qualification]

Use case chosen for the Project.

class scaleway_async.account.v3.ProjectApiUpdateProjectRequest(project_id: 'Optional[str]', name: 'Optional[str]', description: 'Optional[str]')

Bases: object

description: Optional[str]

Description of the Project.

name: Optional[str]

Name of the Project.

project_id: Optional[str]

Project ID of the Project.

class scaleway_async.account.v3.ProjectQualification(project_id: 'str', qualification: 'Optional[Qualification]')

Bases: object

project_id: str

Project ID.

qualification: Optional[Qualification]

Qualification of the Project.

class scaleway_async.account.v3.Qualification(architecture_type: 'QualificationArchitectureType', host_website: 'Optional[QualificationHostWebsite]', host_application: 'Optional[QualificationHostApplication]', deploy_software: 'Optional[QualificationDeploySoftware]', set_scaleway_environment: 'Optional[QualificationSetScalewayEnvironment]', ai_machine: 'Optional[QualificationAiMachine]', container: 'Optional[QualificationContainer]', archive_data: 'Optional[QualificationArchiveData]', share_data: 'Optional[QualificationShareData]', other_use_case: 'Optional[QualificationOtherUseCase]')

Bases: object

ai_machine: Optional[QualificationAiMachine]
architecture_type: QualificationArchitectureType

Architecture type of the qualification.

archive_data: Optional[QualificationArchiveData]
container: Optional[QualificationContainer]
deploy_software: Optional[QualificationDeploySoftware]
host_application: Optional[QualificationHostApplication]
host_website: Optional[QualificationHostWebsite]
other_use_case: Optional[QualificationOtherUseCase]
set_scaleway_environment: Optional[QualificationSetScalewayEnvironment]
share_data: Optional[QualificationShareData]
class scaleway_async.account.v3.QualificationAiMachine

Bases: object

class scaleway_async.account.v3.QualificationArchitectureType(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

DEDICATED_SERVER = 'dedicated_server'
ELASTIC = 'elastic'
INSTANCE = 'instance'
KUBERNETES = 'kubernetes'
OBJECT_STORAGE = 'object_storage'
OTHER_ARCHITECTURE_TYPE = 'other_architecture_type'
SERVERLESS = 'serverless'
UNKNOWN_ARCHITECTURE_TYPE = 'unknown_architecture_type'
WEB_HOSTING = 'web_hosting'
class scaleway_async.account.v3.QualificationArchiveData

Bases: object

class scaleway_async.account.v3.QualificationContainer

Bases: object

class scaleway_async.account.v3.QualificationDeploySoftware

Bases: object

class scaleway_async.account.v3.QualificationHostApplication(sub_use_case: 'QualificationHostApplicationSubUseCase')

Bases: object

sub_use_case: QualificationHostApplicationSubUseCase
class scaleway_async.account.v3.QualificationHostApplicationSubUseCase(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

GOVERNMENT_APP = 'government_app'
SAAS_APP = 'saas_app'
UNKNOWN_SUB_USE_CASE = 'unknown_sub_use_case'
class scaleway_async.account.v3.QualificationHostWebsite(sub_use_case: 'QualificationHostWebsiteSubUseCase')

Bases: object

sub_use_case: QualificationHostWebsiteSubUseCase
class scaleway_async.account.v3.QualificationHostWebsiteSubUseCase(value: str, names: Optional[Any] = None, *args: Any, **kwargs: Any)

Bases: str, Enum

An enumeration.

ECOMMERCE_WEBSITE = 'ecommerce_website'
HIGH_WEBSITE = 'high_website'
INFORMATION_WEBSITE = 'information_website'
OTHER_SUB_USE_CASE = 'other_sub_use_case'
UNKNOWN_SUB_USE_CASE = 'unknown_sub_use_case'
class scaleway_async.account.v3.QualificationOtherUseCase

Bases: object

class scaleway_async.account.v3.QualificationSetScalewayEnvironment

Bases: object

class scaleway_async.account.v3.QualificationShareData

Bases: object