Appwrite VCS API

The VCS service allows you to interact with providers like GitHub, GitLab etc. 11 operations across 9 paths in the Appwrite 2.0.0 OpenAPI.

Operations 11

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

POST /vcs/github/installations/{installationId}/detections Detect a repository's language and runtime · Create repository detection #
Ask an LLM
“Can Appwrite work out which runtime a GitHub repository needs before I deploy it?”
“How does runtime detection decide the language of a connected repo?”
Tell an agent
Detect the runtime for repository {providerRepositoryId} on installation {installationId} as a {type}.
Scan the {providerRootDirectory} folder of repo {providerRepositoryId} via installation {installationId} and tell me its language, treating it as a {type}.
GET /vcs/github/installations/{installationId}/providerRepositories List GitHub repositories on an installation · List repositories #
Ask an LLM
“Which GitHub repositories can my Appwrite installation see?”
“Can I search the repositories available to an installation by name?”
Tell an agent
List the repositories available through installation {installationId} for a {type}.
Search repositories on installation {installationId} for {search}, for a {type}.
POST /vcs/github/installations/{installationId}/providerRepositories Create a new GitHub repository · Create repository #
Ask an LLM
“Can I create a brand-new GitHub repository straight from Appwrite?”
“Is it possible to make the new repo private or put it under an organization?”
Tell an agent
Create a GitHub repository named {name} through installation {installationId}, private set to {private}.
Create repo {name} under the {providerNamespace} organization using installation {installationId}, private: {private}.
GET /vcs/github/installations/{installationId}/providerRepositories/{providerRepositoryId} Get one GitHub repository's details · Get repository #
Ask an LLM
“How do I check the visibility and latest push date of one connected repository?”
“What details can I pull for a single GitHub repo on my installation?”
Tell an agent
Show repository {providerRepositoryId} from installation {installationId}.
Get the name, owner and visibility of repo {providerRepositoryId} on installation {installationId}.
GET /vcs/github/installations/{installationId}/providerRepositories/{providerRepositoryId}/branches List a repository's branches · List repository branches #
Ask an LLM
“Which branches exist in a GitHub repo connected to my project?”
“Can I search a repository's branch names and page through them?”
Tell an agent
List the branches of repo {providerRepositoryId} on installation {installationId}.
Find branches matching {search} in repository {providerRepositoryId} via installation {installationId}.
GET /vcs/github/installations/{installationId}/providerRepositories/{providerRepositoryId}/contents Browse files and folders in a repository · Get files and directories of a VCS repository #
Ask an LLM
“How can I see the files and folders inside a connected GitHub repo?”
“Can I browse a specific directory at a given branch or commit?”
Tell an agent
Show the files at the root of repo {providerRepositoryId} on installation {installationId}.
List the contents of {providerRootDirectory} at {providerReference} in repo {providerRepositoryId} via installation {installationId}.
PATCH /vcs/github/installations/{installationId}/repositories/{repositoryId} Authorize deployments for an outside pull request · Update external deployment (authorize) #
Ask an LLM
“How do I allow a pull request from an external contributor to get a preview deployment?”
“Can I authorize a pull request that was already approved once before?”
Tell an agent
Authorize pull request {providerPullRequestId} in repository {repositoryId} on installation {installationId} for deployment.
Approve the external contribution in PR {providerPullRequestId} so it builds a preview for repo {repositoryId} via installation {installationId}.
GET /vcs/installations List the project's VCS installations · List installations #
Ask an LLM
“What version control installations are connected to my Appwrite project?”
“Can I search my VCS installations by organization?”
Tell an agent
List all VCS installations in this project.
Search VCS installations for {search}.
GET /vcs/installations/{installationId} Get one VCS installation · Get installation #
Ask an LLM
“Which provider and organization is a particular VCS installation tied to?”
“How do I view the configuration of one installation by ID?”
Tell an agent
Show VCS installation {installationId}.
Get the provider and organization for installation {installationId}.
DELETE /vcs/installations/{installationId} Remove a VCS installation · Delete installation #
Ask an LLM
“How do I disconnect a GitHub installation from my project?”
“Does removing an installation also drop its linked repositories from the project?”
Tell an agent destructive · confirm first
Delete VCS installation {installationId}.
Disconnect installation {installationId} and its repositories from this project.
GET /vcs/installations/{installationId}/namespaces List namespaces an installation can use · List namespaces #
Ask an LLM
“Which organizations or groups can my VCS installation browse?”
“Does the namespace list include my personal account as well as organizations?”
Tell an agent
List the namespaces available to installation {installationId}.
Search namespaces on installation {installationId} for {search}.

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/appwrite:appwrite-vcs-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

appwrite-vcs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.0.0
  title: Appwrite VCS API
  description: Appwrite backend as a service cuts up to 70% of the time and costs required for building a modern application. We abstract and simplify common development tasks behind a REST APIs, to help you develop your app in a fast and secure way. For full API documentation and tutorials go to https://appwrite.io/docs
  termsOfService: https://appwrite.io/policy/terms
  contact:
    name: Appwrite Team
    url: https://appwrite.io/support
    email: team@appwrite.io
  license:
    name: BSD-3-Clause
    url: https://raw.githubusercontent.com/appwrite/appwrite/master/LICENSE
servers:
- url: https://cloud.appwrite.io/v1
  description: Appwrite Cloud endpoint.
- url: https://{region}.cloud.appwrite.io/v1
  description: Appwrite Cloud regional endpoint. Replace `{region}` with your project region.
  variables:
    region:
      default: fra
      description: Appwrite Cloud region.
tags:


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