openapi: 3.1.0
info:
  title: Account API
  description: |-
    Scaleway is a complete cloud ecosystem offering a one-stop solution for creating, deploying and scaling your infrastructure. When you create your Scaleway account, you get instant access to the Scaleway console and Scaleway API to effortlessly deploy our products and services.

    The Account API currently allows you to manage **Projects**. Projects are Scaleway's resource management feature. Designed to help you manage your infrastructure and cloud services, you can create multiple Projects within a single Organization. This allows you to group resources into different Projects, providing better resource isolation and organization, which, in turn, leads to improved management efficiency.

    It also increases transparency for users since resources in an invoice are grouped into Projects. Additionally, access for each Scaleway product is managed at Project level: this means a user can be granted Project-specific rights without being given full access to all Projects, allowing for more targeted and controlled access. Read our [dedicated documentation](https://www.scaleway.com/en/docs/iam/reference-content/overview/#background:-organizations-projects-and-resources) to learn more.


    <Message type="tip">
    You may be interested in the following related APIs:
    - [Billing API](https://www.scaleway.com/en/developers/api/billing/)
    - [Identity and Access Management (IAM) API](https://www.scaleway.com/en/developers/api/iam/)
    </Message>


    ## Concepts

    Refer to our [dedicated concepts page](https://www.scaleway.com/en/docs/account/concepts) to find definitions of the different terms related to accounts.




    ## Quickstart

    1. **Configure your environment variables.**

        <Message type="note">
        This is an optional step that seeks to simplify your usage of the APIs.
        </Message>

        ```bash
        export SCW_SECRET_KEY="<API secret key>"
        ```

    2. Edit the **POST** request payload you will use to create a Project.

        Replace the parameters in the following example:

        ```json
            '{
            "name": "Dis-Iz-My-Projekt",
            "organization_id": "b12d5c3g-c612-5674-c1e9-92627f36c5b9",
            "description": "This is the description of my Project",
            }'
        ```

        | Parameter         | Description                                        |
        | :---------------- | :------------------------------------------------- |
        | `name`            | Name for the Project you want to create.        |
        | `organization_id` | ID of the Organization in which to create the Project. It must be in UUID format.   |
        | `description`     | Description for the Project you want to create.  |

    3. **Create a Project**: Run the following command to create a Project.

        Make sure you include the payload you edited in the previous step.

        ```bash
        curl -X POST \
          -H "X-Auth-Token: $SCW_SECRET_KEY" \
          -H "Content-Type: application/json" \
          "https://api.scaleway.com/account/v3/projects" \
          -d '{
            "name": "Dis-Iz-My-Projekt",
            "organization_id": "b12d5c3g-c612-5674-c1e9-92627f36c5b9",
            "type": "This is the description of my Project"
          }'
        ```

        You should get a response like the following:

        <Message type="note">
        This is a response example, the UUIDs displayed are not real.
        </Message>

        ```bash
        {
          "id": "6170692e-7363-616c-6577-61792e636f6d",
          "name": "Dis-Iz-My-Projekt",
          "organization_id": "b12d5c3g-c612-5674-c1e9-92627f36c5b9",
          "created_at": "2023-03-02T22:00:28.888380Z",
          "updated_at": "2023-03-02T22:00:28.888380Z",
          "description": "This is the description of my project"
        }
        ```

    4. **List your Projects**: Run the following command to list your Projects. Replace the Organization ID in the endpoint with your own Organization ID.

        ```bash
        curl -X GET \
          -H "X-Auth-Token: $SCW_SECRET_KEY" \
          -H "Content-Type: application/json" \
          "https://api.scaleway.com/account/v3/projects?organization_id=b12d5c3g-c612-5674-c1e9-92627f36c5b9"
        ```

        You should get a response like the following:

        ```bash
        {
          "total_count": "2",
          "projects": [
            {
              "id": "0fe11800-ddbb-4b62-8906-ed08780cdddb",
              "name": "default",
              "organization_id": "b12d5c3g-c612-5674-c1e9-92627f36c5b9",
              "created_at": "2022-08-31T07:45:53.657735Z",
              "updated_at": "2022-08-31T07:45:53.657735Z",
              "description": "cannot_be_deleted"
            },
            {
                "id":"6170692e-7363-616c-6577-61792e636f6d",
                "name":"Dis-Iz-My-Projekt",
                "organization_id":"b12d5c3g-c612-5674-c1e9-92627f36c5b9",
                "created_at":"2023-03-02T22:00:28.888380Z",
                "updated_at":"2023-03-02T22:00:28.888380Z",
                "description":"This is the description of my Project"
            },
        ]
        }
        ```

    5. **Update a Project**: Run the following command to update a Project's name and description.
        <Message type="note">
        Do not forget to replace the Project ID in the endpoint, and the Organization ID in the payload, with your own. You can retrieve the Project ID from the "List Project" response above.
        </Message>

        ```bash
        curl -X PATCH \
          -H "X-Auth-Token: $SCW_SECRET_KEY" \
          -H "Content-Type: application/json" \
          "https://api.scaleway.com/account/v3/projects/6170692e-7363-616c-6577-61792e636f6d" \
          -d '{
            "name": "Dis-Iz-My-Updated-Projekt",
            "organization_id": "b12d5c3g-c612-5674-c1e9-92627f36c5b9",
            "description": "This is the updated description of my Project"
          }'
        ```


    <Message type="requirement">
    - You have a [Scaleway account](https://console.scaleway.com/) and you know your Organization ID
    - You have created an [API key](https://www.scaleway.com/en/docs/iam/how-to/create-api-keys/) and that the API key has sufficient [IAM permissions](https://www.scaleway.com/en/docs/iam/reference-content/permission-sets/) to perform the actions described on this page
    - You know your [Organization ID](https://console.scaleway.com/organization/settings)
    - You have [installed `curl`](https://curl.se/download.html)
    </Message>


    ## Technical limitations

    On the Scaleway Console, the Account scope covers account and Organization creation as well as personal data configuration and management of Projects. Currently, the public Account API only allows you to manage Projects.

    ## Going further

    For more help using Scaleway Account, check out the following resources:
    - Our [main documentation](https://www.scaleway.com/en/docs/account/)
    - Our [Slack Community](https://www.scaleway-community.slack.com)
    - Our [support ticketing system](https://www.scaleway.com/en/docs/account/how-to/open-a-support-ticket/).
  version: v3
servers:
- url: https://api.scaleway.com
tags:
- name: Projects
  description: Projects act as isolated groupings of Scaleway resources. Every Scaleway
    Organization has a default Project, and you can create new Projects if necessary.
components:
  schemas:
    scaleway.account.v3.ListProjectsResponse:
      type: object
      properties:
        total_count:
          type: integer
          description: Total number of Projects.
          format: uint64
        projects:
          type: array
          description: Paginated returned Projects.
          items:
            $ref: '#/components/schemas/scaleway.account.v3.Project'
      x-properties-order:
      - total_count
      - projects
    scaleway.account.v3.Project:
      type: object
      properties:
        id:
          type: string
          description: ID of the Project. (UUID format)
          example: 6170692e-7363-616c-6577-61792e636f6d
        name:
          type: string
          description: Name of the Project.
        organization_id:
          type: string
          description: Organization ID of the Project. (UUID format)
          example: 6170692e-7363-616c-6577-61792e636f6d
        created_at:
          type: string
          description: Creation date of the Project. (RFC 3339 format)
          format: date-time
          example: "2022-03-22T12:34:56.123456Z"
          nullable: true
        updated_at:
          type: string
          description: Update date of the Project. (RFC 3339 format)
          format: date-time
          example: "2022-03-22T12:34:56.123456Z"
          nullable: true
        description:
          type: string
          description: Description of the Project.
        qualification:
          type: object
          description: Qualification of the Project.
          properties:
            architecture_type:
              type: string
              description: Architecture type of the qualification.
              enum:
              - unknown_architecture_type
              - object_storage
              - web_hosting
              - instance
              - elastic
              - kubernetes
              - serverless
              - dedicated_server
              - other_architecture_type
              x-enum-descriptions:
                values:
                  unknown_architecture_type: Unknown architecture type
                  object_storage: Object Storage architecture
                  web_hosting: Web Hosting architecture
                  instance: Instance architecture
                  elastic: Elastic Metal architecture
                  kubernetes: Kubernetes architecture
                  serverless: Serverless architecture
                  dedicated_server: Dedibox architecture
                  other_architecture_type: Other architecture type
              default: unknown_architecture_type
            host_website:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.HostWebsite.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            host_application:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.HostApplication.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            deploy_software:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.DeploySoftware.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            set_scaleway_environment:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.SetScalewayEnvironment.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            ai_machine:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.AiMachine.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            container:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.Container.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            archive_data:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.ArchiveData.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            share_data:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.ShareData.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            other_use_case:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.OtherUseCase.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
          x-properties-order:
          - architecture_type
          - host_website
          - host_application
          - deploy_software
          - set_scaleway_environment
          - ai_machine
          - container
          - archive_data
          - share_data
          - other_use_case
      x-properties-order:
      - id
      - name
      - organization_id
      - created_at
      - updated_at
      - description
      - qualification
    scaleway.account.v3.ProjectQualification:
      type: object
      properties:
        project_id:
          type: string
          description: Project ID. (UUID format)
          example: 6170692e-7363-616c-6577-61792e636f6d
        qualification:
          type: object
          description: Qualification of the Project.
          properties:
            architecture_type:
              type: string
              description: Architecture type of the qualification.
              enum:
              - unknown_architecture_type
              - object_storage
              - web_hosting
              - instance
              - elastic
              - kubernetes
              - serverless
              - dedicated_server
              - other_architecture_type
              x-enum-descriptions:
                values:
                  unknown_architecture_type: Unknown architecture type
                  object_storage: Object Storage architecture
                  web_hosting: Web Hosting architecture
                  instance: Instance architecture
                  elastic: Elastic Metal architecture
                  kubernetes: Kubernetes architecture
                  serverless: Serverless architecture
                  dedicated_server: Dedibox architecture
                  other_architecture_type: Other architecture type
              default: unknown_architecture_type
            host_website:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.HostWebsite.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            host_application:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.HostApplication.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            deploy_software:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.DeploySoftware.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            set_scaleway_environment:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.SetScalewayEnvironment.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            ai_machine:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.AiMachine.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            container:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.Container.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            archive_data:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.ArchiveData.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            share_data:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.ShareData.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
            other_use_case:
              type: object
              properties:
                sub_use_case:
                  $ref: '#/components/schemas/scaleway.account.v3.Qualification.OtherUseCase.SubUseCase'
              nullable: true
              x-properties-order:
              - sub_use_case
              x-one-of: use_case
          x-properties-order:
          - architecture_type
          - host_website
          - host_application
          - deploy_software
          - set_scaleway_environment
          - ai_machine
          - container
          - archive_data
          - share_data
          - other_use_case
      x-properties-order:
      - project_id
      - qualification
    scaleway.account.v3.Qualification.AiMachine.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.ArchiveData.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.Container.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.DeploySoftware.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.HostApplication.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      - saas_app
      - government_app
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.HostWebsite.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      - information_website
      - ecommerce_website
      - high_website
      - other_sub_use_case
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.OtherUseCase.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.SetScalewayEnvironment.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      default: unknown_sub_use_case
    scaleway.account.v3.Qualification.ShareData.SubUseCase:
      type: string
      enum:
      - unknown_sub_use_case
      default: unknown_sub_use_case
  securitySchemes:
    scaleway:
      in: header
      name: X-Auth-Token
      type: apiKey
paths:
  /account/v3/projects:
    get:
      tags:
      - Projects
      operationId: ListProjects
      summary: List all Projects of an Organization
      description: 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.
      parameters:
      - in: query
        name: organization_id
        description: Organization ID of the Project.
        required: true
        schema:
          type: string
      - in: query
        name: name
        description: Name of the Project.
        schema:
          type: string
      - in: query
        name: page
        description: Page number for the returned Projects.
        schema:
          type: integer
          format: int32
      - in: query
        name: page_size
        description: Maximum number of Project per page.
        schema:
          type: integer
          format: uint32
      - in: query
        name: order_by
        description: Sort order of the returned Projects.
        schema:
          type: string
          enum:
          - created_at_asc
          - created_at_desc
          - name_asc
          - name_desc
          x-enum-descriptions:
            values:
              created_at_asc: Creation date ascending
              created_at_desc: Creation date descending
              name_asc: Name ascending
              name_desc: Name descending
          default: created_at_asc
      - in: query
        name: project_ids
        description: Project IDs to filter for. The results will be limited to any
          Projects with an ID in this array.
        schema:
          type: array
          items:
            type: string
      responses:
        "200":
          description: ""
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/scaleway.account.v3.ListProjectsResponse'
      security:
      - scaleway: []
      x-codeSamples:
      - lang: cURL
        source: |-
          curl -X GET \
            -H "X-Auth-Token: $SCW_SECRET_KEY" \
            "https://api.scaleway.com/account/v3/projects?organization_id=string"
      - lang: HTTPie
        source: |-
          http GET "https://api.scaleway.com/account/v3/projects" \
            X-Auth-Token:$SCW_SECRET_KEY \
            organization_id==string
    post:
      tags:
      - Projects
      operationId: CreateProject
      summary: Create a new Project for an Organization
      description: Generate a new Project for an Organization, specifying its configuration
        including name and description.
      responses:
        "200":
          description: ""
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/scaleway.account.v3.Project'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Name of the Project.
                organization_id:
                  type: string
                  description: Organization ID of the Project.
                description:
                  type: string
                  description: Description of the Project.
              x-properties-order:
              - name
              - organization_id
              - description
      security:
      - scaleway: []
      x-codeSamples:
      - lang: cURL
        source: |-
          curl -X POST \
            -H "X-Auth-Token: $SCW_SECRET_KEY" \
            -H "Content-Type: application/json" \
            -d '{
              "description": "string",
              "name": "string",
              "organization_id": "string"
            }' \
            "https://api.scaleway.com/account/v3/projects"
      - lang: HTTPie
        source: |-
          http POST "https://api.scaleway.com/account/v3/projects" \
            X-Auth-Token:$SCW_SECRET_KEY \
            description="string" \
            name="string" \
            organization_id="string"
  /account/v3/projects/{project_id}:
    get:
      tags:
      - Projects
      operationId: GetProject
      summary: Get an existing Project
      description: 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.
      parameters:
      - in: path
        name: project_id
        description: Project ID of the Project.
        required: true
        schema:
          type: string
      responses:
        "200":
          description: ""
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/scaleway.account.v3.Project'
      security:
      - scaleway: []
      x-codeSamples:
      - lang: cURL
        source: |-
          curl -X GET \
            -H "X-Auth-Token: $SCW_SECRET_KEY" \
            "https://api.scaleway.com/account/v3/projects/{project_id}"
      - lang: HTTPie
        source: |-
          http GET "https://api.scaleway.com/account/v3/projects/{project_id}" \
            X-Auth-Token:$SCW_SECRET_KEY
    patch:
      tags:
      - Projects
      operationId: UpdateProject
      summary: Update Project
      description: Update the parameters of an existing Project, specified by its
        Project ID. These parameters include the name and description.
      parameters:
      - in: path
        name: project_id
        description: Project ID of the Project.
        required: true
        schema:
          type: string
      responses:
        "200":
          description: ""
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/scaleway.account.v3.Project'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: Name of the Project.
                  nullable: true
                description:
                  type: string
                  description: Description of the Project.
                  nullable: true
              x-properties-order:
              - name
              - description
      security:
      - scaleway: []
      x-codeSamples:
      - lang: cURL
        source: |-
          curl -X PATCH \
            -H "X-Auth-Token: $SCW_SECRET_KEY" \
            -H "Content-Type: application/json" \
            -d '{}' \
            "https://api.scaleway.com/account/v3/projects/{project_id}"
      - lang: HTTPie
        source: |-
          http PATCH "https://api.scaleway.com/account/v3/projects/{project_id}" \
            X-Auth-Token:$SCW_SECRET_KEY
    delete:
      tags:
      - Projects
      operationId: DeleteProject
      summary: Delete an existing Project
      description: 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.
      parameters:
      - in: path
        name: project_id
        description: Project ID of the Project.
        required: true
        schema:
          type: string
      responses:
        "204":
          description: ""
      security:
      - scaleway: []
      x-codeSamples:
      - lang: cURL
        source: |-
          curl -X DELETE \
            -H "X-Auth-Token: $SCW_SECRET_KEY" \
            "https://api.scaleway.com/account/v3/projects/{project_id}"
      - lang: HTTPie
        source: |-
          http DELETE "https://api.scaleway.com/account/v3/projects/{project_id}" \
            X-Auth-Token:$SCW_SECRET_KEY
  /account/v3/projects/{project_id}/project-qualification:
    post:
      operationId: SetProjectQualification
      summary: Set project use case
      description: 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.
      parameters:
      - in: path
        name: project_id
        description: Project ID.
        required: true
        schema:
          type: string
      responses:
        "200":
          description: ""
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/scaleway.account.v3.ProjectQualification'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                qualification:
                  type: object
                  description: Use case chosen for the Project.
                  properties:
                    architecture_type:
                      type: string
                      description: Architecture type of the qualification.
                      enum:
                      - unknown_architecture_type
                      - object_storage
                      - web_hosting
                      - instance
                      - elastic
                      - kubernetes
                      - serverless
                      - dedicated_server
                      - other_architecture_type
                      x-enum-descriptions:
                        values:
                          unknown_architecture_type: Unknown architecture type
                          object_storage: Object Storage architecture
                          web_hosting: Web Hosting architecture
                          instance: Instance architecture
                          elastic: Elastic Metal architecture
                          kubernetes: Kubernetes architecture
                          serverless: Serverless architecture
                          dedicated_server: Dedibox architecture
                          other_architecture_type: Other architecture type
                      default: unknown_architecture_type
                    host_website:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.HostWebsite.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    host_application:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.HostApplication.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    deploy_software:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.DeploySoftware.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    set_scaleway_environment:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.SetScalewayEnvironment.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    ai_machine:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.AiMachine.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    container:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.Container.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    archive_data:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.ArchiveData.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    share_data:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.ShareData.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                    other_use_case:
                      type: object
                      properties:
                        sub_use_case:
                          $ref: '#/components/schemas/scaleway.account.v3.Qualification.OtherUseCase.SubUseCase'
                      nullable: true
                      x-properties-order:
                      - sub_use_case
                      x-one-of: use_case
                  x-properties-order:
                  - architecture_type
                  - host_website
                  - host_application
                  - deploy_software
                  - set_scaleway_environment
                  - ai_machine
                  - container
                  - archive_data
                  - share_data
                  - other_use_case
              x-properties-order:
              - qualification
      security:
      - scaleway: []
      x-codeSamples:
      - lang: cURL
        source: |-
          curl -X POST \
            -H "X-Auth-Token: $SCW_SECRET_KEY" \
            -H "Content-Type: application/json" \
            -d '{}' \
            "https://api.scaleway.com/account/v3/projects/{project_id}/project-qualification"
      - lang: HTTPie
        source: |-
          http POST "https://api.scaleway.com/account/v3/projects/{project_id}/project-qualification" \
            X-Auth-Token:$SCW_SECRET_KEY
