Laravel Applications API

The Applications API from Laravel — 3 operation(s) for applications.

OpenAPI Specification

laravel-applications-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Laravel Cloud Applications API
  version: 0.0.1
servers:
- url: https://cloud.laravel.com/api
security:
- http: []
tags:
- name: Applications
paths:
  /applications:
    get:
      operationId: public.applications.index
      description: Get a list of all applications for the authenticated organization.
      summary: List applications
      tags:
      - Applications
      parameters:
      - name: filter[name]
        in: query
        schema:
          type: string
      - name: filter[region]
        in: query
        schema:
          type: string
      - name: filter[slug]
        in: query
        schema:
          type: string
      - name: include
        in: query
        schema:
          type: array
          items:
            type: string
            enum:
            - organization
            - environments
            - defaultEnvironment
        explode: false
      responses:
        '200':
          description: Paginated set of `ApplicationResource`
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApplicationResource'
                  links:
                    type: object
                    properties:
                      first:
                        type: string
                      last:
                        type: string
                      prev:
                        type: string
                      next:
                        type: string
                  meta:
                    type: object
                    properties:
                      current_page:
                        type: integer
                        minimum: 1
                      from:
                        type:
                        - integer
                        - 'null'
                        minimum: 1
                      last_page:
                        type: integer
                        minimum: 1
                      links:
                        type: array
                        description: Generated paginator links.
                        items:
                          type: object
                          properties:
                            url:
                              type:
                              - string
                              - 'null'
                            label:
                              type: string
                            active:
                              type: boolean
                          required:
                          - url
                          - label
                          - active
                      path:
                        type:
                        - string
                        - 'null'
                        description: Base path for paginator generated URLs.
                      per_page:
                        type: integer
                        description: Number of items shown per page.
                        minimum: 0
                      to:
                        type:
                        - integer
                        - 'null'
                        description: Number of the last item in the slice.
                        minimum: 1
                      total:
                        type: integer
                        description: Total number of items being paginated.
                        minimum: 0
                    required:
                    - current_page
                    - from
                    - last_page
                    - links
                    - path
                    - per_page
                    - to
                    - total
                  included:
                    type: array
                    items:
                      anyOf:
                      - $ref: '#/components/schemas/RepositoryResource'
                      - $ref: '#/components/schemas/OrganizationResource'
                      - $ref: '#/components/schemas/EnvironmentResource'
                      - $ref: '#/components/schemas/DeploymentResource'
                required:
                - data
                - links
                - meta
        '401':
          description: An error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error overview.
                    examples:
                    - ''
                required:
                - message
        '403':
          $ref: '#/components/responses/AuthorizationException'
    post:
      operationId: public.applications.store
      description: Create a new application.
      summary: Create application
      tags:
      - Applications
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateApplicationRequest'
      responses:
        '201':
          description: '`ApplicationResource`'
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ApplicationResource'
                  included:
                    type: array
                    items:
                      anyOf:
                      - $ref: '#/components/schemas/RepositoryResource'
                      - $ref: '#/components/schemas/OrganizationResource'
                      - $ref: '#/components/schemas/EnvironmentResource'
                      - $ref: '#/components/schemas/DeploymentResource'
                required:
                - data
        '401':
          description: An error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error overview.
                    examples:
                    - ''
                required:
                - message
        '403':
          $ref: '#/components/responses/AuthorizationException'
        '422':
          $ref: '#/components/responses/ValidationException'
  /applications/{application}:
    get:
      operationId: public.applications.show
      description: Get a specific application.
      summary: Get application
      tags:
      - Applications
      parameters:
      - name: application
        in: path
        required: true
        description: The application identifier
        schema:
          type: string
      - name: include
        in: query
        schema:
          type: array
          items:
            type: string
            enum:
            - organization
            - environments
            - defaultEnvironment
        explode: false
      responses:
        '200':
          description: '`ApplicationResource`'
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ApplicationResource'
                  included:
                    type: array
                    items:
                      anyOf:
                      - $ref: '#/components/schemas/RepositoryResource'
                      - $ref: '#/components/schemas/OrganizationResource'
                      - $ref: '#/components/schemas/EnvironmentResource'
                      - $ref: '#/components/schemas/DeploymentResource'
                required:
                - data
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
        '403':
          $ref: '#/components/responses/AuthorizationException'
    patch:
      operationId: public.applications.update
      description: Update an application.
      summary: Update application
      tags:
      - Applications
      parameters:
      - name: application
        in: path
        required: true
        description: The application identifier
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateApplicationRequest'
      responses:
        '200':
          description: '`ApplicationResource`'
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ApplicationResource'
                  included:
                    type: array
                    items:
                      anyOf:
                      - $ref: '#/components/schemas/RepositoryResource'
                      - $ref: '#/components/schemas/OrganizationResource'
                      - $ref: '#/components/schemas/EnvironmentResource'
                      - $ref: '#/components/schemas/DeploymentResource'
                required:
                - data
        '401':
          description: An error
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error overview.
                    examples:
                    - ''
                required:
                - message
        '422':
          $ref: '#/components/responses/ValidationException'
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
        '403':
          $ref: '#/components/responses/AuthorizationException'
    delete:
      operationId: public.applications.destroy
      description: Delete an application and all of its environments.
      summary: Delete application
      tags:
      - Applications
      parameters:
      - name: application
        in: path
        required: true
        description: The application identifier
        schema:
          type: string
      responses:
        '204':
          description: No content
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
        '403':
          $ref: '#/components/responses/AuthorizationException'
  /applications/{application}/avatar:
    post:
      operationId: public.applications.avatar.store
      description: Upload or replace the avatar for an application.
      summary: Upload application avatar
      tags:
      - Applications
      parameters:
      - name: application
        in: path
        required: true
        description: The application identifier
        schema:
          type: string
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                avatar:
                  type: string
                  format: binary
                  contentMediaType: application/octet-stream
                  description: 'Maximum file size: 3072 kilobytes.'
              required:
              - avatar
      responses:
        '200':
          description: '`ApplicationResource`'
          content:
            application/vnd.api+json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ApplicationResource'
                  included:
                    type: array
                    items:
                      anyOf:
                      - $ref: '#/components/schemas/RepositoryResource'
                      - $ref: '#/components/schemas/OrganizationResource'
                      - $ref: '#/components/schemas/EnvironmentResource'
                      - $ref: '#/components/schemas/DeploymentResource'
                required:
                - data
        '422':
          $ref: '#/components/responses/ValidationException'
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
        '403':
          $ref: '#/components/responses/AuthorizationException'
    delete:
      operationId: public.applications.avatar.destroy
      description: Remove the avatar from an application.
      summary: Delete application avatar
      tags:
      - Applications
      parameters:
      - name: application
        in: path
        required: true
        description: The application identifier
        schema:
          type: string
      responses:
        '204':
          description: No content
        '404':
          $ref: '#/components/responses/ModelNotFoundException'
        '403':
          $ref: '#/components/responses/AuthorizationException'
components:
  schemas:
    CloudRegion:
      type: string
      enum:
      - us-east-2
      - us-east-1
      - ca-central-1
      - eu-central-1
      - eu-west-1
      - eu-west-2
      - me-central-1
      - ap-southeast-1
      - ap-southeast-2
      - ap-northeast-1
      title: CloudRegion
    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
    BranchResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - branches
        id:
          type: string
      required:
      - type
      - id
      title: BranchResourceIdentifier
    UserResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - users
        id:
          type: string
      required:
      - type
      - id
      title: UserResourceIdentifier
    ApplicationResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - applications
        id:
          type: string
      required:
      - type
      - id
      title: ApplicationResourceIdentifier
    RepositoryResource:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
          - repositories
        attributes:
          type: object
          properties:
            name:
              type: string
          required:
          - name
      required:
      - id
      - type
      title: RepositoryResource
    FilesystemResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - filesystems
        id:
          type: string
      required:
      - type
      - id
      title: FilesystemResourceIdentifier
    RepositoryResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - repositories
        id:
          type: string
      required:
      - type
      - id
      title: RepositoryResourceIdentifier
    EnvironmentResource:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
          - environments
        attributes:
          type: object
          properties:
            name:
              type: string
            slug:
              type: string
            status:
              $ref: '#/components/schemas/EnvironmentStatus'
            created_from_automation:
              type: boolean
            vanity_domain:
              type: string
            php_major_version:
              type: string
              enum:
              - '8.2'
              - '8.3'
              - '8.4'
              - '8.5'
            build_command:
              type:
              - string
              - 'null'
            node_version:
              $ref: '#/components/schemas/NodeVersion'
            deploy_command:
              type:
              - string
              - 'null'
            uses_octane:
              type: boolean
            uses_hibernation:
              type: boolean
            hibernation_wake_up_interval:
              type:
              - integer
              - 'null'
            uses_push_to_deploy:
              type: boolean
            uses_deploy_hook:
              type: boolean
            ? ''
            : anyOf:
              - type: object
                properties:
                  environment_variables:
                    type: array
                    items:
                      type: object
                      properties:
                        key:
                          type: string
                        value:
                          type: string
                      required:
                      - key
                      - value
                required:
                - environment_variables
              - type: array
                items:
                  type: string
                minItems: 0
                maxItems: 0
                additionalItems: false
            network_settings:
              type: object
              properties:
                cache:
                  type: object
                  properties:
                    strategy:
                      type: string
                  required:
                  - strategy
                response_headers:
                  type: object
                  properties:
                    frame:
                      type: string
                    content_type:
                      type: string
                    hsts:
                      type: object
                      properties:
                        max_age:
                          type: integer
                        include_subdomains:
                          type: boolean
                        preload:
                          type: boolean
                      required:
                      - max_age
                      - include_subdomains
                      - preload
                  required:
                  - frame
                  - content_type
                  - hsts
                firewall:
                  type: object
                  properties:
                    bot_categories:
                      type: array
                      items:
                        $ref: '#/components/schemas/BotControlCategory'
                    rate_limit:
                      type: object
                      properties:
                        level:
                          $ref: '#/components/schemas/RateLimitLevel'
                        per_minute:
                          $ref: '#/components/schemas/RateLimitPerMinute'
                        4xx:
                          type: boolean
                        '429':
                          type: boolean
                      required:
                      - level
                      - per_minute
                      - 4xx
                      - '429'
                    under_attack_mode_started_at:
                      type: string
                    block_path:
                      type: boolean
                  required:
                  - bot_categories
                  - rate_limit
                  - under_attack_mode_started_at
                  - block_path
                content_converter:
                  type: boolean
              required:
              - cache
              - response_headers
              - firewall
              - content_converter
            created_at:
              type:
              - string
              - 'null'
              format: date-time
          required:
          - name
          - slug
          - status
          - created_from_automation
          - vanity_domain
          - php_major_version
          - build_command
          - node_version
          - deploy_command
          - uses_octane
          - uses_hibernation
          - hibernation_wake_up_interval
          - uses_push_to_deploy
          - uses_deploy_hook
          - null
          - network_settings
          - created_at
        relationships:
          type: object
          properties:
            application:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/ApplicationResourceIdentifier'
                  - type: 'null'
              required:
              - data
            branch:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/BranchResourceIdentifier'
                  - type: 'null'
              required:
              - data
            deployments:
              type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/DeploymentResourceIdentifier'
              required:
              - data
            currentDeployment:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/DeploymentResourceIdentifier'
                  - type: 'null'
              required:
              - data
            domains:
              type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/DomainResourceIdentifier'
              required:
              - data
            primaryDomain:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/DomainResourceIdentifier'
                  - type: 'null'
              required:
              - data
            instances:
              type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/InstanceResourceIdentifier'
              required:
              - data
            database:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/DatabaseSchemaResourceIdentifier'
                  - type: 'null'
              required:
              - data
            cache:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/CacheResourceIdentifier'
                  - type: 'null'
              required:
              - data
            buckets:
              type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/FilesystemResourceIdentifier'
              required:
              - data
            websocketApplication:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/WebsocketApplicationResourceIdentifier'
                  - type: 'null'
              required:
              - data
        links:
          type: object
          properties:
            self:
              $ref: '#/components/schemas/Link'
          required:
          - self
      required:
      - id
      - type
      - links
      title: EnvironmentResource
    InstanceResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - instances
        id:
          type: string
      required:
      - type
      - id
      title: InstanceResourceIdentifier
    CacheResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - caches
        id:
          type: string
      required:
      - type
      - id
      title: CacheResourceIdentifier
    RateLimitLevel:
      type: string
      enum:
      - challenge
      - throttle
      - ban
      title: RateLimitLevel
    WebsocketApplicationResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - websocketApplications
        id:
          type: string
      required:
      - type
      - id
      title: WebsocketApplicationResourceIdentifier
    EnvironmentStatus:
      type: string
      enum:
      - deploying
      - running
      - hibernating
      - stopped
      title: EnvironmentStatus
    DatabaseSchemaResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - databaseSchemas
        id:
          type: string
      required:
      - type
      - id
      title: DatabaseSchemaResourceIdentifier
    OrganizationResource:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
          - organizations
        attributes:
          type: object
          properties:
            name:
              type: string
            slug:
              type: string
          required:
          - name
          - slug
      required:
      - id
      - type
      title: OrganizationResource
    SourceControlProviderType:
      type: string
      enum:
      - github
      - gitlab
      - bitbucket
      title: SourceControlProviderType
    DeploymentResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - deployments
        id:
          type: string
      required:
      - type
      - id
      title: DeploymentResourceIdentifier
    DomainResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - domains
        id:
          type: string
      required:
      - type
      - id
      title: DomainResourceIdentifier
    DeploymentStatus:
      type: string
      enum:
      - pending
      - build.pending
      - build.created
      - build.queued
      - build.running
      - build.succeeded
      - build.failed
      - cancelled
      - failed
      - deployment.pending
      - deployment.created
      - deployment.queued
      - deployment.running
      - deployment.succeeded
      - deployment.failed
      title: DeploymentStatus
    OrganizationResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - organizations
        id:
          type: string
      required:
      - type
      - id
      title: OrganizationResourceIdentifier
    CreateApplicationRequest:
      type: object
      properties:
        source_control_provider_type:
          description: The source control provider. This parameter will be required starting March 9, 2026.
          $ref: '#/components/schemas/SourceControlProviderType'
        repository:
          type: string
        name:
          type: string
          pattern: ^[\p{Latin}0-9 _.,'\-&()!#+:@]+$
          minLength: 3
          maxLength: 40
        region:
          $ref: '#/components/schemas/CloudRegion'
        cluster_id:
          type:
          - string
          - 'null'
          description: The identifier of a dedicated cluster to deploy to. Only fill it if your organization has a dedicated cluster and you want to use it for this application.
      required:
      - repository
      - name
      - region
      title: CreateApplicationRequest
    BotControlCategory:
      type: string
      enum:
      - academic_research
      - accessibility
      - advertising_and_marketing
      - aggregator
      - ai_assistant
      - ai_crawler
      - ai_search
      - feed_fetcher
      - monitoring_and_analytics
      - page_preview
      - search_engine_crawler
      - search_engine_optimization
      - security
      - social_media_marketing
      - webhooks
      - other
      title: BotControlCategory
    NodeVersion:
      type: string
      enum:
      - '20'
      - '22'
      - '24'
      title: NodeVersion
    RateLimitPerMinute:
      type: integer
      enum:
      - 100
      - 300
      - 500
      - 750
      - 1000
      title: RateLimitPerMinute
    UpdateApplicationRequest:
      type: object
      properties:
        source_control_provider_type:
          description: The source control provider. This parameter will be required starting March 9, 2026.
          $ref: '#/components/schemas/SourceControlProviderType'
        name:
          type: string
          pattern: ^[\p{Latin}0-9 _.'-]+$
          minLength: 3
          maxLength: 40
        slug:
          type: string
          minLength: 3
        default_environment_id:
          type: string
        repository:
          type: string
        slack_channel:
          type:
          - string
          - 'null'
      title: UpdateApplicationRequest
    ApplicationResource:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
          - applications
        attributes:
          type: object
          properties:
            name:
              type: string
            slug:
              type: string
            region:
              $ref: '#/components/schemas/CloudRegion'
            slack_channel:
              type:
              - string
              - 'null'
            avatar_url:
              type: string
            created_at:
              type:
              - string
              - 'null'
              format: date-time
            repository:
              type:
              - object
              - 'null'
              properties:
                full_name:
                  type: string
                default_branch:
                  type: string
              required:
              - full_name
              - default_branch
          required:
          - name
          - slug
          - region
          - slack_channel
          - avatar_url
          - created_at
          - repository
        relationships:
          type: object
          properties:
            repository:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/RepositoryResourceIdentifier'
                  - type: 'null'
              required:
              - data
            organization:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/OrganizationResourceIdentifier'
                  - type: 'null'
              required:
              - data
            environments:
              type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/EnvironmentResourceIdentifier'
              required:
              - data
            deployments:
              type: object
              properties:
                data:
                  type: array
                  items:
                    $ref: '#/components/schemas/DeploymentResourceIdentifier'
              required:
              - data
            defaultEnvironment:
              type: object
              properties:
                data:
                  anyOf:
                  - $ref: '#/components/schemas/EnvironmentResourceIdentifier'
                  - type: 'null'
              required:
              - data
      required:
      - id
      - type
      title: ApplicationResource
    EnvironmentResourceIdentifier:
      type: object
      properties:
        type:
          type: string
          enum:
          - environments
        id:
          type: string
      required:
      - type
      - id
      title: EnvironmentResourceIdentifier
    DeploymentResource:
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          enum:
          - deployments
        attributes:
          type: object
          properties:
            status:
              $ref: '#/components/schemas/DeploymentStatus'
            branch_name:
              type: string
            commit_hash:
              type: string
            commit_messa

# --- truncated at 32 KB (35 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/laravel/refs/heads/main/openapi/laravel-applications-api-openapi.yml