> ## Documentation Index
> Fetch the complete documentation index at: https://forge.laravel.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Create server

> Create a new server in the organization. Supports both standard cloud providers
and custom VPS configurations.

Processing mode: <small><code>async</code></small>



## OpenAPI

````yaml https://forge.laravel.com/api/docs.openapi post /orgs/{organization}/servers
openapi: 3.1.0
info:
  title: Forge
  version: 0.0.1
  description: Laravel Forge - API Documentation
servers:
  - url: https://forge.laravel.com/api
security:
  - http: []
  - oauth2: []
tags:
  - name: Roles
  - name: Sites
  - name: Organizations
  - name: Storage Providers
  - name: Recipes
  - name: Servers
  - name: Background Processes
  - name: Nginx
  - name: Databases
  - name: Backups
  - name: Monitors
  - name: Firewall Rules
  - name: Logs
  - name: SSH Keys
  - name: Scheduled Jobs
  - name: Security Rules
  - name: Redirect Rules
  - name: Integrations
  - name: Deployments
  - name: Commands
  - name: Teams
  - name: Server Credentials
  - name: User
  - name: Providers
paths:
  /orgs/{organization}/servers:
    post:
      tags:
        - Servers
      summary: Create server
      description: >-
        Create a new server in the organization. Supports both standard cloud
        providers

        and custom VPS configurations.


        Processing mode: <small><code>async</code></small>
      operationId: organizations.servers.store
      parameters:
        - name: organization
          in: path
          required: true
          description: The organization slug
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              allOf:
                - $ref: '#/components/schemas/CreateServerRequest'
                - type: object
                  properties:
                    add_key_to_source_control:
                      type: boolean
                      default: true
                    database:
                      type: string
                    laravel:
                      type: object
                      properties:
                        vpc_uuid:
                          type: string
                    hetzner:
                      type: object
                      properties:
                        enable_weekly_backups:
                          type: boolean
                          default: false
      responses:
        '202':
          description: '`ServerResource`'
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ServerResource'
                  included:
                    type: array
                    items:
                      $ref: '#/components/schemas/TagResource'
                required:
                  - data
        '403':
          $ref: '#/components/responses/AuthorizationException'
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
        '422':
          $ref: '#/components/responses/ValidationException'
      security:
        - oauth2:
            - server:create
components:
  schemas:
    CreateServerRequest:
      type: object
      properties:
        name:
          type: string
          maxLength: 30
        provider:
          type: string
        credential_id:
          type: integer
        team_id:
          type:
            - integer
            - 'null'
        type:
          $ref: '#/components/schemas/ServerType'
        ubuntu_version:
          type: string
          enum:
            - '22.04'
            - '24.04'
        php_version:
          $ref: '#/components/schemas/PhpVersion'
        database_type:
          $ref: '#/components/schemas/DatabaseType'
        recipe_id:
          type:
            - integer
            - 'null'
        tags:
          type:
            - array
            - 'null'
          items:
            type: string
        aws:
          type: object
          properties:
            region_id:
              type: string
            size_id:
              type: string
            vpc_uuid:
              type: string
            subnet_uuid:
              type: string
            disk_size:
              type: integer
              minimum: 20
              maximum: 2000
        ocean2:
          type: object
          properties:
            region_id:
              type: string
            size_id:
              type: string
            vpc_uuid:
              type: string
            enable_weekly_backups:
              type: boolean
        hetzner:
          type: object
          properties:
            region_id:
              type: string
            size_id:
              type: string
            network_id:
              type: integer
            enable_daily_backups:
              type: boolean
        vultr:
          type: object
          properties:
            region_id:
              type: string
            size_id:
              type: string
            network_id:
              type: string
              format: uuid
        akamai:
          type: object
          properties:
            region_id:
              type: string
            size_id:
              type: string
        laravel:
          type: object
          properties:
            region_id:
              type: string
            size_id:
              type: string
        custom:
          type: object
          properties:
            ip_address:
              type: string
            private_ip_address:
              type:
                - string
                - 'null'
            ssh_port:
              type: integer
            behind_nat:
              type: boolean
            nat_ssh_port:
              type:
                - integer
                - 'null'
      required:
        - name
        - provider
        - type
        - ubuntu_version
      title: CreateServerRequest
    ServerResource:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
            - servers
        attributes:
          type: object
          properties:
            id:
              type: integer
            credential_id:
              type:
                - integer
                - 'null'
            name:
              type: string
            slug:
              type: string
            type:
              $ref: '#/components/schemas/ServerType'
              description: The type of server.
              examples:
                - app
            ubuntu_version:
              type:
                - string
                - 'null'
            ssh_port:
              type: integer
            provider:
              type: string
            identifier:
              type:
                - string
                - 'null'
            size:
              type: string
            region:
              type: string
            php_version:
              type:
                - string
                - 'null'
            php_cli_version:
              type:
                - string
                - 'null'
            opcache_status:
              type:
                - string
                - 'null'
            database_type:
              type:
                - string
                - 'null'
            db_status:
              type:
                - string
                - 'null'
            redis_status:
              type:
                - string
                - 'null'
            ip_address:
              type:
                - string
                - 'null'
            private_ip_address:
              type:
                - string
                - 'null'
            revoked:
              type: boolean
            created_at:
              type: string
              format: date-time
              description: The date and time the server was created.
              examples:
                - '2025-07-29T09:00:00Z'
            updated_at:
              type: string
              format: date-time
              description: The date and time the server was last updated.
              examples:
                - '2025-07-30T09:00:00Z'
            connection_status:
              type: string
            timezone:
              type: string
            local_public_key:
              type:
                - string
                - 'null'
            is_ready:
              type: boolean
          required:
            - id
            - credential_id
            - name
            - slug
            - type
            - ubuntu_version
            - ssh_port
            - provider
            - identifier
            - size
            - region
            - php_version
            - php_cli_version
            - opcache_status
            - database_type
            - db_status
            - redis_status
            - ip_address
            - private_ip_address
            - revoked
            - created_at
            - updated_at
            - connection_status
            - timezone
            - local_public_key
            - is_ready
        relationships:
          type: object
          properties:
            tags:
              type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/TagResourceIdentifier'
              required:
                - data
        links:
          type: object
          properties:
            self:
              $ref: '#/components/schemas/Link'
          required:
            - self
      required:
        - id
        - type
        - links
      title: ServerResource
    TagResource:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
            - tags
        attributes:
          type: object
          properties:
            name:
              type: string
            created_at:
              type: string
              format: date-time
              description: The date and time the tag was created.
              examples:
                - '2025-07-29T09:00:00Z'
            updated_at:
              type: string
              format: date-time
              description: The date and time the tag was last updated.
              examples:
                - '2025-07-30T09:00:00Z'
          required:
            - name
            - created_at
            - updated_at
      required:
        - id
        - type
      title: TagResource
    ServerType:
      type: string
      enum:
        - app
        - web
        - loadbalancer
        - database
        - cache
        - worker
        - meilisearch
        - openclaw
      title: ServerType
    PhpVersion:
      type: string
      enum:
        - php5
        - php56-old
        - php56
        - php70
        - php71
        - php72
        - php73
        - php74
        - php80
        - php81
        - php82
        - php83
        - php84
        - php85
      title: PhpVersion
    DatabaseType:
      type: string
      enum:
        - mysql
        - mysql8
        - mysql84
        - mysql9
        - mariadb
        - mariadb106
        - mariadb1011
        - mariadb114
        - postgres
        - postgres13
        - postgres14
        - postgres15
        - postgres16
        - postgres17
        - postgres18
      title: DatabaseType
    TagResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
            - tags
        id:
          type: string
      required:
        - type
        - id
      title: TagResourceIdentifier
    Link:
      type: object
      properties:
        href:
          type: string
          format: uri
        rel:
          type: string
        describedby:
          type: string
        title:
          type: string
        type:
          type: string
        hreflang:
          anyOf:
            - type: string
            - type: array
              items:
                type: string
        meta:
          type: object
      required:
        - href
      title: Link
  responses:
    AuthorizationException:
      description: Authorization error
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Error overview.
            required:
              - message
    ModelNotFoundException:
      description: Not found
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Error overview.
            required:
              - message
    ValidationException:
      description: Validation error
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
                description: Errors overview.
              errors:
                type: object
                description: A detailed description of each field that failed validation.
                additionalProperties:
                  type: array
                  items:
                    type: string
            required:
              - message
              - errors
  securitySchemes:
    http:
      type: http
      scheme: bearer
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://forge.laravel.com/oauth/authorize
          tokenUrl: https://forge.laravel.com/oauth/token
          scopes:
            organization:view: Allow members to view the organization
            organization:manage: Allow members to manage the organization
            organization:delete: Allow members to delete the organization
            server:view: Allow members to view servers
            server:create: Allow members to create servers
            server:delete: Allow members to delete servers
            server:archive: Allow members to archive servers
            server:transfer: Allow members to transfer servers to another Forge account
            server:manage-meta: >-
              Allow members to change server settings such as name and IP
              address
            server:manage-packages: >-
              Allow members to configure and remove server and site package
              authentication
            server:manage-php: Allow members to install and change PHP installations
            server:manage-logs: Allow members to clear server and site logs
            server:manage-network: Allow members to change the server‘s firewall
            server:manage-nginx-templates: Allow members to manage Nginx templates
            server:manage-services: Allow members to start, stop and restart services
            server:manage-password: Allow members to reset the sudo password
            server:create-keys: Allow members to add SSH keys to servers
            server:delete-keys: Allow members to remove SSH keys from servers
            server:create-monitors: Allow members to create server monitors
            server:delete-monitors: Allow members to delete server monitors
            server:create-databases: Allow members to create databases and database users
            server:delete-databases: Allow members to delete databases and database users
            server:create-backups: Allow members to create database backup configurations
            server:delete-backups: Allow members to delete database backup configurations
            server:create-daemons: Allow members to create daemons
            server:delete-daemons: Allow members to delete daemons
            server:create-schedulers: Allow members to create scheduled jobs
            server:delete-schedulers: Allow members to delete scheduled jobs
            server:web-terminal: Allow members to start web terminal sessions
            site:create: Allow members to create sites
            site:delete: Allow members to delete sites
            site:meta: >-
              Allow members to update site meta data such as domain name and
              aliases
            site:manage-commands: >-
              Allow members to run arbitrary commands from the site‘s root
              directory
            site:manage-deploys: Allow members to deploy the site and update the deployment script
            site:manage-nginx: Allow members to manage the site‘s Nginx configuration file
            site:manage-project: >-
              Allow members to install Git repositories, phpMyAdmin and
              WordPress applications
            site:manage-environment: Allow members to update the site‘s environment file
            site:manage-notifications: Allow members to configure deployment notifications
            site:manage-queues: Allow members to configure queue workers
            site:manage-redirects: Allow members to configure URL redirects
            site:manage-security: Allow members to configure HTTP Basic Authentication
            site:manage-ssl: Allow members to configure SSL and Let‘s Encrypt certificates
            site:manage-integrations: Allow members to manage site integrations
            site:manage-heartbeats: Allow members to manage heartbeats
            credential:view: Allow members to view credentials
            credential:manage: Allow members to manage credentials
            team:view: Allow members to view teams
            team:create: Allow members to create teams
            team:delete: Allow members to delete teams and team members
            recipe:view: Allow members to view recipes
            recipe:manage: Allow members to manage recipes
            billing:manage: Allow members to manage the organization's subscription
            storage:manage: Allow members to manage the organization's storage providers.
            integrations:manage: Allow members to manage the organization's integrations
            user:view: Allow members to view user details
            resources:view: Allow members to view resources
            resources:create-databases: Allow members to create managed database & cache clusters
            resources:delete-databases: Allow members to delete managed database & cache clusters
            resources:manage-databases: Allow members to manage managed database & cache clusters settings
            resources:create-buckets: Allow members to create object storage buckets
            resources:delete-buckets: Allow members to delete object storage buckets
            resources:manage-buckets: >-
              Allow members to manage object storage buckets and their access
              keys

````