mirror of
				https://github.com/avency/Gitea.git
				synced 2025-10-29 18:52:33 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			316 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			316 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # Gitea API Client
 | |
| 
 | |
| This package provides an API client for [Gitea](https://gitea.io) API Version 1.
 | |
| 
 | |
| *Caution! This package is still under development*
 | |
| 
 | |
| ## Getting Started
 | |
| 
 | |
| ### Prerequisites
 | |
| 
 | |
| This package has the following requirements:
 | |
| 
 | |
| * PHP 7.2
 | |
| 
 | |
| ### Installing
 | |
| 
 | |
| Install latest version via composer:
 | |
| 
 | |
| ```
 | |
| composer require avency/gitea
 | |
| ```
 | |
| 
 | |
| ### Basic usage
 | |
| 
 | |
| ```
 | |
| // This file is generated by Composer
 | |
| require_once __DIR__ . '/vendor/autoload.php';
 | |
| 
 | |
| // - - - - -
 | |
| 
 | |
| // Create client and authenticate
 | |
| $giteaClient = new Avency\Gitea\Client(
 | |
|     'https://gitea.yourdomain.com',
 | |
|     [
 | |
|         'type' => Avency\Gitea::AUTH_TOKEN,
 | |
|         'auth' => 'your-auth-token'
 | |
|     ]
 | |
| );
 | |
| 
 | |
| or
 | |
| 
 | |
| $giteaClient = new Avency\Gitea\Client(
 | |
|     'https://gitea.yourdomain.com',
 | |
|     [
 | |
|         'type' => Avency\Gitea::AUTH_BASIC_AUTH,
 | |
|         'auth' => [
 | |
|             'username' => 'your-username',
 | |
|             'password' => 'your-password',
 | |
|         ]
 | |
|     ]
 | |
| );
 | |
| 
 | |
| // - - - - -
 | |
| 
 | |
| // Get a single repository
 | |
| $repository = $giteaClient->repositories()->get('owner', 'repoName');
 | |
| 
 | |
| // Get version
 | |
| $repository = $giteaClient->miscellaneous()->version();
 | |
| ```
 | |
| 
 | |
| ## Versioning
 | |
| 
 | |
| We use [SemVer](http://semver.org/) for versioning. For the versions available,
 | |
| see the [tags on this repository](https://github.com/avency/gitea/contributors).
 | |
| 
 | |
| ## Authors
 | |
| 
 | |
| * Michael Gerdemann - [avency GmbH](https://www.avency.de)
 | |
| 
 | |
| See also the list of [contributors](https://github.com/avency/gitea/graphs/contributors) who
 | |
| participated in this project.
 | |
| 
 | |
| ## License
 | |
| 
 | |
| This project is licensed under the MIT License - see the
 | |
| [LICENSE.md](https://github.com/avency/gitea//blob/master/LICENSE.md) file for details
 | |
| 
 | |
| ## Status of endpoints
 | |
| 
 | |
| #### Admin
 | |
| 
 | |
| Status | Method | Endpoint
 | |
| --- | --- | ---
 | |
| ❌ | GET | /admin/orgs
 | |
| ❌ | POST | /admin/users
 | |
| ❌ | DELETE | /admin/users/{username}
 | |
| ❌ | PATCH | /admin/users/{username}
 | |
| ❌ | POST | /admin/users/{username}/keys
 | |
| ❌ | DELETE | /admin/users/{username}/keys/{id}
 | |
| ❌ | POST | /admin/users/{username}/orgs
 | |
| ❌ | POST | /admin/users/{username}/repos
 | |
| 
 | |
| #### Miscellaneous
 | |
| 
 | |
| Status | Method | Endpoint
 | |
| --- | --- | ---
 | |
| ❌ | POST | /markdown
 | |
| ❌ | POST | /markdown/raw
 | |
| ❌ | GET | /signing-key.gpg
 | |
| ✅ | GET | /version
 | |
| 
 | |
| #### Organization
 | |
| 
 | |
| Status | Method | Endpoint
 | |
| --- | --- | ---
 | |
| ❌ | POST | /org/{org}/repos
 | |
| ❌ | POST | /orgs
 | |
| ❌ | GET | /orgs/{org}
 | |
| ❌ | DELETE | /orgs/{org}
 | |
| ❌ | PATCH | /orgs/{org}
 | |
| ❌ | GET | /orgs/{org}/hooks
 | |
| ❌ | POST | /orgs/{org}/hooks/
 | |
| ❌ | GET | /orgs/{org}/hooks/{id}
 | |
| ❌ | DELETE | /orgs/{org}/hooks/{id}
 | |
| ❌ | PATCH | /orgs/{org}/hooks/{id}
 | |
| ❌ | GET | /orgs/{org}/members
 | |
| ❌ | GET | /orgs/{org}/members/{username}
 | |
| ❌ | DELETE | /orgs/{org}/members/{username}
 | |
| ❌ | GET | /orgs/{org}/public_members
 | |
| ❌ | GET | /orgs/{org}/public_members/{username}
 | |
| ❌ | PUT | /orgs/{org}/public_members/{username}
 | |
| ❌ | DELETE | /orgs/{org}/public_members/{username}
 | |
| ❌ | GET | /orgs/{org}/repos
 | |
| ❌ | GET | /orgs/{org}/teams
 | |
| ❌ | POST | /orgs/{org}/teams
 | |
| ❌ | GET | /orgs/{org}/teams/search
 | |
| ❌ | GET | /teams/{id}
 | |
| ❌ | DELETE | /teams/{id}
 | |
| ❌ | PATCH | /teams/{id}
 | |
| ❌ | GET | /teams/{id}/members
 | |
| ❌ | GET | /teams/{id}/members/{username}
 | |
| ❌ | PUT | /teams/{id}/members/{username}
 | |
| ❌ | DELETE | /teams/{id}/members/{username}
 | |
| ❌ | GET | /teams/{id}/repos
 | |
| ❌ | PUT | /teams/{id}/repos/{org}/{repo}
 | |
| ❌ | DELETE | /teams/{id}/repos/{org}/{repo}
 | |
| ❌ | GET | /user/orgs
 | |
| ❌ | GET | /users/{username}/orgs
 | |
| 
 | |
| #### Issue
 | |
| 
 | |
| Status | Method | Endpoint
 | |
| --- | --- | ---
 | |
| ❌ | GET | /repos/issues/search
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/comments
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/comments/{id}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/issues/comments/{id}
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/comments/{id}/reactions
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/comments/{id}/reactions
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/comments/{id}/reactions
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/{index}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/issues/{index}
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/{index}/comments
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/{index}/comments
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/{index}/deadline
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/{index}/labels
 | |
| ❌ | PUT | /repos/{owner}/{repo}/issues/{index}/labels
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/{index}/labels
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/{index}/labels
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/{index}/labels/{id}
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/{index}/reactions
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/{index}/reactions
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/{index}/reactions
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/{index}/stopwatch/delete
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/{index}/stopwatch/start
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/{index}/stopwatch/stop
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/{index}/subscriptions
 | |
| ❌ | PUT | /repos/{owner}/{repo}/issues/{index}/subscriptions/{user}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/{index}/subscriptions/{user}
 | |
| ❌ | GET | /repos/{owner}/{repo}/issues/{index}/times
 | |
| ❌ | POST | /repos/{owner}/{repo}/issues/{index}/times
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/{index}/times
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/issues/{index}/times/{id}
 | |
| ❌ | GET | /repos/{owner}/{repo}/labels
 | |
| ❌ | POST | /repos/{owner}/{repo}/labels
 | |
| ❌ | GET | /repos/{owner}/{repo}/labels/{id}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/labels/{id}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/labels/{id}
 | |
| ❌ | GET | /repos/{owner}/{repo}/milestones
 | |
| ❌ | POST | /repos/{owner}/{repo}/milestones
 | |
| ❌ | GET | /repos/{owner}/{repo}/milestones/{id}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/milestones/{id}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/milestones/{id}
 | |
| 
 | |
| #### Repository
 | |
| 
 | |
| Status | Method | Endpoint
 | |
| --- | --- | ---
 | |
| ✅ | POST | /repos/migrate
 | |
| ✅ | GET | /repos/search
 | |
| ✅ | GET | /repos/{owner}/{repo}
 | |
| ✅ | DELETE | /repos/{owner}/{repo}
 | |
| ✅ | PATCH | /repos/{owner}/{repo}
 | |
| ❌ | GET | /repos/{owner}/{repo}/archive/{archive}
 | |
| ❌ | GET | /repos/{owner}/{repo}/branches
 | |
| ❌ | GET | /repos/{owner}/{repo}/branches/{branch}
 | |
| ❌ | GET | /repos/{owner}/{repo}/collaborators
 | |
| ❌ | GET | /repos/{owner}/{repo}/collaborators/{collaborator}
 | |
| ❌ | PUT | /repos/{owner}/{repo}/collaborators/{collaborator}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/collaborators/{collaborator}
 | |
| ❌ | GET | /repos/{owner}/{repo}/commits
 | |
| ❌ | GET | /repos/{owner}/{repo}/commits/{ref}/statuses
 | |
| ❌ | GET | /repos/{owner}/{repo}/contents
 | |
| ❌ | GET | /repos/{owner}/{repo}/contents/{filepath}
 | |
| ❌ | PUT | /repos/{owner}/{repo}/contents/{filepath}
 | |
| ❌ | POST | /repos/{owner}/{repo}/contents/{filepath}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/contents/{filepath}
 | |
| ❌ | GET | /repos/{owner}/{repo}/editorconfig/{filepath}
 | |
| ❌ | GET | /repos/{owner}/{repo}/forks
 | |
| ❌ | POST | /repos/{owner}/{repo}/forks
 | |
| ❌ | GET | /repos/{owner}/{repo}/git/blobs/{sha}
 | |
| ❌ | GET | /repos/{owner}/{repo}/git/commits/{sha}
 | |
| ❌ | GET | /repos/{owner}/{repo}/git/refs
 | |
| ❌ | GET | /repos/{owner}/{repo}/git/refs/{ref}
 | |
| ❌ | GET | /repos/{owner}/{repo}/git/tags/{sha}
 | |
| ❌ | GET | /repos/{owner}/{repo}/git/trees/{sha}
 | |
| ❌ | GET | /repos/{owner}/{repo}/hooks
 | |
| ❌ | POST | /repos/{owner}/{repo}/hooks
 | |
| ❌ | GET | /repos/{owner}/{repo}/hooks/git
 | |
| ❌ | GET | /repos/{owner}/{repo}/hooks/git/{id}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/hooks/git/{id}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/hooks/git/{id}
 | |
| ❌ | GET | /repos/{owner}/{repo}/hooks/{id}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/hooks/{id}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/hooks/{id}
 | |
| ❌ | POST | /repos/{owner}/{repo}/hooks/{id}/tests
 | |
| ❌ | GET | /repos/{owner}/{repo}/keys
 | |
| ❌ | POST | /repos/{owner}/{repo}/keys
 | |
| ❌ | GET | /repos/{owner}/{repo}/keys/{id}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/keys/{id}
 | |
| ❌ | POST | /repos/{owner}/{repo}/mirror-sync
 | |
| ❌ | GET | /repos/{owner}/{repo}/pulls
 | |
| ❌ | POST | /repos/{owner}/{repo}/pulls
 | |
| ❌ | GET | /repos/{owner}/{repo}/pulls/{index}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/pulls/{index}
 | |
| ❌ | GET | /repos/{owner}/{repo}/pulls/{index}/merge
 | |
| ❌ | POST | /repos/{owner}/{repo}/pulls/{index}/merge
 | |
| ❌ | GET | /repos/{owner}/{repo}/raw/{filepath}
 | |
| ❌ | GET | /repos/{owner}/{repo}/releases
 | |
| ❌ | POST | /repos/{owner}/{repo}/releases
 | |
| ❌ | GET | /repos/{owner}/{repo}/releases/{id}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/releases/{id}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/releases/{id}
 | |
| ❌ | GET | /repos/{owner}/{repo}/releases/{id}/assets
 | |
| ❌ | POST | /repos/{owner}/{repo}/releases/{id}/assets
 | |
| ❌ | GET | /repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}
 | |
| ❌ | PATCH | /repos/{owner}/{repo}/releases/{id}/assets/{attachment_id}
 | |
| ❌ | GET | /repos/{owner}/{repo}/signing-key.gpg
 | |
| ❌ | GET | /repos/{owner}/{repo}/stargazers
 | |
| ❌ | GET | /repos/{owner}/{repo}/statuses/{sha}
 | |
| ❌ | POST | /repos/{owner}/{repo}/statuses/{sha}
 | |
| ❌ | GET | /repos/{owner}/{repo}/subscribers
 | |
| ❌ | GET | /repos/{owner}/{repo}/subscription
 | |
| ❌ | PUT | /repos/{owner}/{repo}/subscription
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/subscription
 | |
| ❌ | GET | /repos/{owner}/{repo}/tags
 | |
| ❌ | GET | /repos/{owner}/{repo}/times
 | |
| ❌ | GET | /repos/{owner}/{repo}/topics
 | |
| ❌ | PUT | /repos/{owner}/{repo}/topics
 | |
| ❌ | PUT | /repos/{owner}/{repo}/topics/{topic}
 | |
| ❌ | DELETE | /repos/{owner}/{repo}/topics/{topic}
 | |
| ❌ | GET | /repositories/{id}
 | |
| ❌ | GET | /topics/search
 | |
| ❌ | POST | /user/repos
 | |
| 
 | |
| #### User
 | |
| 
 | |
| Status | Method | Endpoint
 | |
| --- | --- | ---
 | |
| ❌ | GET | /repos/{owner}/{repo}/times/{user}
 | |
| ❌ | GET | /user
 | |
| ❌ | GET | /user/emails
 | |
| ❌ | POST | /user/emails
 | |
| ❌ | DELETE | /user/emails
 | |
| ❌ | GET | /user/followers
 | |
| ❌ | GET | /user/following
 | |
| ❌ | GET | /user/following/{username}
 | |
| ❌ | PUT | /user/following/{username}
 | |
| ❌ | DELETE | /user/following/{username}
 | |
| ❌ | GET | /user/gpg_keys
 | |
| ❌ | POST | /user/gpg_keys
 | |
| ❌ | GET | /user/gpg_keys/{id}
 | |
| ❌ | DELETE | /user/gpg_keys/{id}
 | |
| ❌ | GET | /user/keys
 | |
| ❌ | POST | /user/keys
 | |
| ❌ | GET | /user/keys/{id}
 | |
| ❌ | DELETE | /user/keys/{id}
 | |
| ❌ | GET | /user/repos
 | |
| ❌ | POST | /user/repos
 | |
| ❌ | GET | /user/starred
 | |
| ❌ | GET | /user/starred/{owner}/{repo}
 | |
| ❌ | PUT | /user/starred/{owner}/{repo}
 | |
| ❌ | DELETE | /user/starred/{owner}/{repo}
 | |
| ❌ | GET | /user/stopwatches
 | |
| ❌ | GET | /user/subscriptions
 | |
| ❌ | GET | /user/teams
 | |
| ❌ | GET | /user/times
 | |
| ❌ | GET | /users/search
 | |
| ❌ | GET | /users/{follower}/following/{followee}
 | |
| ❌ | GET | /users/{username}
 | |
| ❌ | GET | /users/{username}/followers
 | |
| ❌ | GET | /users/{username}/following
 | |
| ❌ | GET | /users/{username}/gpg_keys
 | |
| ❌ | GET | /users/{username}/heatmap
 | |
| ❌ | GET | /users/{username}/keys
 | |
| ❌ | GET | /users/{username}/repos
 | |
| ❌ | GET | /users/{username}/starred
 | |
| ❌ | GET | /users/{username}/subscriptions
 | |
| ❌ | GET | /users/{username}/tokens
 | |
| ❌ | POST | /users/{username}/tokens
 | |
| ❌ | DELETE | /users/{username}/tokens/{token}
 |