Download OpenAPI specification:Download
This is the documentation for Gitlip API generated from OpenAPI spec.
Gitlip offers two forms of authentication:
(1) Firestore ID token - this token is generated each time user signs into the web interface. It can be extracted with the use of browser devtools.
(2) Personal access token - this token can be generated in /settings
page of the web interface.
Either of the above tokens can be supplied via the Authorization
header
for the API calls that require it. Some API endpoints don't require the
token and they're therefore considered public.
Update username for the current user.
username required | string Username for the user |
{- "username": "userfoo"
}
{- "error": {
- "code": 401,
- "message": "Token is invalid"
}
}
Updates the fields in the profile for the current user. Omitted fields are removed.
fullName | string Full name of the user |
{- "fullName": "John"
}
{- "fullName": "John"
}
Get the editor settings for the current user.
{- "highlightDesktop": true,
- "highlightMobile": false,
- "keymapsEnabledDesktop": true,
- "lineNumbersDesktop": true,
- "lineNumbersMobile": false
}
Updates the fields in the editor settings for the current user. Omitted fields are removed.
highlightDesktop | boolean Syntax highlighting in the editor on desktop devices |
highlightMobile | boolean Syntax highlighting in the editor on mobile devices |
keymapsEnabledDesktop | boolean Keyboard shortcuts in the editor on mobile devices |
lineNumbersDesktop | boolean Line numbers shown in the editor on mobile devices |
lineNumbersMobile | boolean Line numbers shown in the editor on mobile devices |
{- "highlightDesktop": true,
- "highlightMobile": false,
- "keymapsEnabledDesktop": true,
- "lineNumbersDesktop": true,
- "lineNumbersMobile": false
}
{- "highlightDesktop": true,
- "highlightMobile": false,
- "keymapsEnabledDesktop": true,
- "lineNumbersDesktop": true,
- "lineNumbersMobile": false
}
Updates the email for the current user. Note that the active login sessions with the old email are invalidated immediately.
email required | string User email |
{- "email": "john.doe@example.com"
}
{- "email": "john.doe@example.com"
}
Update the avatar for the current user. Any existing avatar is overwritten. Avatar needs to be smaller than 1 MB and in any for the following formats: gif, jpg, png .
{- "error": {
- "code": 401,
- "message": "Token is invalid"
}
}
List all Personal access tokens for the current user.
orderBy | string Default: "createdAt" Enum: "createdAt" "label" "tokenId" Field by which the results are ordered |
direction | string Default: "desc" Enum: "asc" "desc" Direction in which the results are ordered |
startAt | string Value of |
startAfter | string Value of |
endAt | string Value of |
endAfter | string Value of |
limit | integer [ 1 .. 100 ] Default: 10 Limits the number of results returned |
{- "tokens": [
- {
- "tokenId": "Tb2mM9zE1HbhSLhKFLhD",
- "label": "Token used in CI",
- "createdAt": "2023-01-03T16:14:55.312Z"
}
]
}
Create a new personal access token that can subsequently be used to authenticate with the API.
label | string Helpful metadata for token |
{- "label": "Token used in CI"
}
{- "tokenId": "Tb2mM9zE1HbhSLhKFLhD",
- "label": "Token used in CI",
- "createdAt": "2023-01-03T16:14:55.312Z",
- "secretValue": "2jrR/oz+UQ3HF5RMlt4pSSQc8FHEXv4HLtdMiRdxYZ2njsyQib2wCmNZUguMmQwh2g2mQjklWDOwkoyajFq6rA=="
}
List all repos for the current user.
orderBy | string Default: "createdAt" Enum: "createdAt" "updatedAt" Field by which the results are ordered |
direction | string Default: "desc" Enum: "asc" "desc" Direction in which the results are ordered |
startAt | string Value of |
startAfter | string Value of |
endAt | string Value of |
endAfter | string Value of |
limit | integer [ 1 .. 100 ] Default: 10 Limits the number of results returned |
{- "repos": [
- {
- "name": "repo-foo",
- "description": "This repo is cool",
- "type": "regular",
- "visibility": "private",
- "featuredFiles": [
- "README.md"
], - "updatedAt": "2023-01-03T16:14:55.312Z"
}
]
}
Create a new git repo.
name | string Name of the repository |
description | string Description of the repository |
type | string Type of the repo |
visibility | string Visibility |
featuredFiles | Array of strings Featured files |
{- "name": "repo-foo",
- "description": "This repo is cool",
- "type": "regular",
- "visibility": "private",
- "featuredFiles": [
- "README.md"
]
}
{- "name": "repo-foo",
- "description": "This repo is cool",
- "type": "regular",
- "visibility": "private",
- "featuredFiles": [
- "README.md"
], - "updatedAt": "2023-01-03T16:14:55.312Z"
}
Get information about the repo.
repoName required | string Name of the repo |
{- "name": "repo-foo",
- "description": "This repo is cool",
- "type": "regular",
- "visibility": "private",
- "featuredFiles": [
- "README.md"
], - "createdAt": "2023-01-03T16:14:55.312Z",
- "updatedAt": "2023-01-03T16:14:55.312Z"
}
Update repo metadata.
repoName required | string Name of the repo |
name | string Name of the repository |
description | string Description of the repository |
type | string Type of the repo |
visibility | string Visibility |
featuredFiles | Array of strings Featured files |
{- "name": "repo-foo",
- "description": "This repo is cool",
- "type": "regular",
- "visibility": "private",
- "featuredFiles": [
- "README.md"
]
}
{- "name": "repo-foo",
- "description": "This repo is cool",
- "type": "regular",
- "visibility": "private",
- "featuredFiles": [
- "README.md"
], - "createdAt": "2023-01-03T16:14:55.312Z",
- "updatedAt": "2023-01-03T16:14:55.312Z"
}
highlightDesktop | boolean Syntax highlighting in the editor on desktop devices |
highlightMobile | boolean Syntax highlighting in the editor on mobile devices |
keymapsEnabledDesktop | boolean Keyboard shortcuts in the editor on mobile devices |
lineNumbersDesktop | boolean Line numbers shown in the editor on mobile devices |
lineNumbersMobile | boolean Line numbers shown in the editor on mobile devices |
{- "highlightDesktop": true,
- "highlightMobile": false,
- "keymapsEnabledDesktop": true,
- "lineNumbersDesktop": true,
- "lineNumbersMobile": false
}