Sevalla Applications API

Deploy and manage applications from Git or Docker.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sevalla-applications-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sevalla-applications-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Sevalla Applications API
  description: The Sevalla API lets you deploy, scale, and manage your entire cloud infrastructure programmatically - applications, deployments, managed databases, static sites, S3-compatible object storage, pipelines, and operational metrics. Sevalla is a Kinsta product built on Google Cloud Platform and Cloudflare. A single API token authenticates every endpoint.
  termsOfService: https://sevalla.com/legal/terms-of-service/
  contact:
    name: Sevalla Support
    url: https://sevalla.com/contact/
  version: v3
servers:
- url: https://api.sevalla.com/v3
  description: Production
security:
- bearerAuth: []
tags:
- name: Applications
  description: Deploy and manage applications from Git or Docker.
paths:
  /applications:
    get:
      operationId: listApplications
      tags:
      - Applications
      summary: List all applications
      parameters:
      - $ref: '#/components/parameters/CompanyId'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Offset'
      responses:
        '200':
          description: A paginated list of applications.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationList'
    post:
      operationId: createApplication
      tags:
      - Applications
      summary: Create a new application
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateApplicationRequest'
      responses:
        '201':
          description: The created application.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
  /applications/{id}:
    parameters:
    - $ref: '#/components/parameters/ResourceId'
    get:
      operationId: getApplication
      tags:
      - Applications
      summary: Retrieve application details
      responses:
        '200':
          description: The application.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
        '404':
          $ref: '#/components/responses/NotFound'
    patch:
      operationId: updateApplication
      tags:
      - Applications
      summary: Update an application
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateApplicationRequest'
      responses:
        '200':
          description: The updated application.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
    delete:
      operationId: deleteApplication
      tags:
      - Applications
      summary: Delete an application
      responses:
        '204':
          description: The application was deleted.
  /applications/{id}/suspend:
    parameters:
    - $ref: '#/components/parameters/ResourceId'
    post:
      operationId: suspendApplication
      tags:
      - Applications
      summary: Suspend a running application
      responses:
        '200':
          description: The application is being suspended.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperationStatus'
  /applications/{id}/activate:
    parameters:
    - $ref: '#/components/parameters/ResourceId'
    post:
      operationId: activateApplication
      tags:
      - Applications
      summary: Activate a suspended application
      responses:
        '200':
          description: The application is being activated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperationStatus'
  /applications/{id}/environment-variables:
    parameters:
    - $ref: '#/components/parameters/ResourceId'
    get:
      operationId: listEnvironmentVariables
      tags:
      - Applications
      summary: List environment variables
      responses:
        '200':
          description: A list of environment variables.
          content:
            application/json:
              schema:
                type: object
                properties:
                  environment_variables:
                    type: array
                    items:
                      $ref: '#/components/schemas/EnvironmentVariable'
    post:
      operationId: createEnvironmentVariable
      tags:
      - Applications
      summary: Create an environment variable
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnvironmentVariable'
      responses:
        '201':
          description: The created environment variable.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnvironmentVariable'
components:
  schemas:
    UpdateApplicationRequest:
      type: object
      properties:
        display_name:
          type: string
        branch:
          type: string
        auto_deploy:
          type: boolean
        pod_size:
          type: string
    EnvironmentVariable:
      type: object
      required:
      - key
      - value
      properties:
        id:
          type: string
        key:
          type: string
        value:
          type: string
        is_available_during_runtime:
          type: boolean
          default: true
        is_available_during_build:
          type: boolean
          default: true
    Application:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        display_name:
          type: string
        status:
          type: string
          enum:
          - active
          - suspended
          - deploying
          - failed
        repo_url:
          type: string
        branch:
          type: string
        auto_deploy:
          type: boolean
        default_url:
          type: string
        cluster:
          type: string
          description: Google Cloud region / cluster the app runs in.
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
    Error:
      type: object
      properties:
        status:
          type: integer
          description: HTTP status code.
        message:
          type: string
          description: Human-readable error message.
        errors:
          type: array
          items:
            type: object
            properties:
              key:
                type: string
              message:
                type: string
      required:
      - status
      - message
    OperationStatus:
      type: object
      properties:
        id:
          type: string
        status:
          type: string
          enum:
          - pending
          - running
          - success
          - failed
        message:
          type: string
    ApplicationList:
      type: object
      properties:
        applications:
          type: array
          items:
            $ref: '#/components/schemas/Application'
        total_count:
          type: integer
    CreateApplicationRequest:
      type: object
      required:
      - name
      - repo_url
      properties:
        name:
          type: string
        repo_url:
          type: string
        branch:
          type: string
          default: main
        auto_deploy:
          type: boolean
          default: true
        build_type:
          type: string
          enum:
          - buildpacks
          - dockerfile
          - nixpacks
        pod_size:
          type: string
          description: Pod size code, e.g. hobby, s1, s2, c1.
        cluster:
          type: string
        env:
          type: object
          additionalProperties:
            type: string
  parameters:
    Limit:
      name: limit
      in: query
      required: false
      description: Maximum number of items to return.
      schema:
        type: integer
        default: 20
        maximum: 100
    CompanyId:
      name: company
      in: query
      required: false
      description: The company (organization) identifier to scope the request.
      schema:
        type: string
    ResourceId:
      name: id
      in: path
      required: true
      description: The unique identifier of the resource.
      schema:
        type: string
    Offset:
      name: offset
      in: query
      required: false
      description: Number of items to skip for pagination.
      schema:
        type: integer
        default: 0
  responses:
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: apiToken
      description: Provide your Sevalla API token as a bearer token in the Authorization header. Create a token from the Sevalla dashboard; one token authenticates every endpoint.