cURL
curl --request POST \
--url https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"commit_message": "<string>",
"include_paths": [
"<string>"
]
}
'import requests
url = "https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit"
payload = {
"commit_message": "<string>",
"include_paths": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({commit_message: '<string>', include_paths: ['<string>']})
};
fetch('https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'commit_message' => '<string>',
'include_paths' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit"
payload := strings.NewReader("{\n \"commit_message\": \"<string>\",\n \"include_paths\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"commit_message\": \"<string>\",\n \"include_paths\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"commit_message\": \"<string>\",\n \"include_paths\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "example_id",
"failed_paths": [
"<string>"
]
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}Repository Commit Manipulation
Commit workspace
Commit workspace to base branch
POST
/
repos
/
{repo_id}
/
workspaces
/
{workspace_id}
/
commit
cURL
curl --request POST \
--url https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"commit_message": "<string>",
"include_paths": [
"<string>"
]
}
'import requests
url = "https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit"
payload = {
"commit_message": "<string>",
"include_paths": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({commit_message: '<string>', include_paths: ['<string>']})
};
fetch('https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'commit_message' => '<string>',
'include_paths' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit"
payload := strings.NewReader("{\n \"commit_message\": \"<string>\",\n \"include_paths\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"commit_message\": \"<string>\",\n \"include_paths\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.diversion.dev/v0/repos/{repo_id}/workspaces/{workspace_id}/commit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"commit_message\": \"<string>\",\n \"include_paths\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"id": "example_id",
"failed_paths": [
"<string>"
]
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}Authorizations
This API uses OAuth 2 with the implicit grant flow
Path Parameters
The repo ID of the repository. Repo name can be used instead of the ID, but usage of ID for permanent linking and API requests is preferred.
Required string length:
3 - 128Example:
"example_id"
The repo ID of the workspace.
Required string length:
3 - 128Example:
"example_id"
Body
application/json
Inclusion list of modified paths to commit. Other modifications will not be committed. If no list is provided, all modifications will be included.
Response
Workspace contains no changes to commit
⌘I

