Skip to content
This repository was archived by the owner on Mar 28, 2025. It is now read-only.

Commit 0e2600e

Browse files
authored
Update README.md
1 parent ecbef86 commit 0e2600e

File tree

1 file changed

+1
-212
lines changed

1 file changed

+1
-212
lines changed

README.md

Lines changed: 1 addition & 212 deletions
Original file line numberDiff line numberDiff line change
@@ -1,212 +1 @@
1-
# OpenAPIServer
2-
API for the Catrobat Share Platform
3-
4-
This [Symfony](https://symfony.com/) bundle is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
5-
6-
- API version: v1.6.0
7-
- Generator version: 7.5.0
8-
- Build package: org.openapitools.codegen.languages.PhpSymfonyServerCodegen
9-
For more information, please visit [https://share.catrob.at](https://share.catrob.at)
10-
11-
## Requirements
12-
13-
PHP 8.0 and later
14-
15-
## Installation & Usage
16-
17-
To install the dependencies via [Composer](http://getcomposer.org/), add the following repository to `composer.json` of your Symfony project:
18-
19-
```json
20-
{
21-
"repositories": [{
22-
"type": "path",
23-
"url": "//Path to your generated openapi bundle"
24-
}],
25-
}
26-
```
27-
28-
Then run:
29-
30-
```
31-
composer require GIT_USER_ID/GIT_REPO_ID:dev-master
32-
```
33-
34-
to add the generated openapi bundle as a dependency.
35-
36-
## Tests
37-
38-
To run the unit tests for the generated bundle, first navigate to the directory containing the code, then run the following commands:
39-
40-
```
41-
composer install
42-
./vendor/bin/phpunit
43-
```
44-
45-
46-
## Getting Started
47-
48-
Step 1: Please follow the [installation procedure](#installation--usage) first.
49-
50-
Step 2: Enable the bundle in the bundle configuration:
51-
52-
```php
53-
// app/config/bundles.php
54-
return [
55-
// ...
56-
OpenAPI\Server\OpenAPIServerBundle::class => ['all' => true],
57-
];
58-
```
59-
60-
Step 3: Register the routes:
61-
62-
```yaml
63-
# app/config/routes.yaml
64-
open_api_server:
65-
resource: "@OpenAPIServerBundle/Resources/config/routing.yaml"
66-
```
67-
68-
Step 4: Implement the API calls:
69-
70-
```php
71-
<?php
72-
// src/Acme/MyBundle/Api/AuthenticationApi.php
73-
74-
namespace Acme\MyBundle\Api;
75-
76-
use OpenAPI\Server\Api\AuthenticationApiInterface;
77-
78-
class AuthenticationApi implements AuthenticationApiInterface // An interface is autogenerated
79-
{
80-
81-
/**
82-
* Implementation of AuthenticationApiInterface#authenticationDelete
83-
*/
84-
public function authenticationDelete(string $x_refresh, int &$responseCode, array &$responseHeaders): void
85-
{
86-
// Implement the operation ...
87-
}
88-
89-
// Other operation methods ...
90-
}
91-
```
92-
93-
Step 5: Tag your API implementation:
94-
95-
```yaml
96-
# config/services.yaml
97-
services:
98-
# ...
99-
Acme\MyBundle\Api\AuthenticationApi:
100-
tags:
101-
- { name: "open_api_server.api", api: "authentication" }
102-
# ...
103-
```
104-
105-
Now you can start using the bundle!
106-
107-
108-
## Documentation for API Endpoints
109-
110-
All URIs are relative to *https://share.catrob.at/api*
111-
112-
Class | Method | HTTP request | Description
113-
------------ | ------------- | ------------- | -------------
114-
*AuthenticationApiInterface* | [**authenticationDelete**](docs/Api/AuthenticationApiInterface.md#authenticationdelete) | **DELETE** /authentication | Expires refresh token
115-
*AuthenticationApiInterface* | [**authenticationGet**](docs/Api/AuthenticationApiInterface.md#authenticationget) | **GET** /authentication | Check JWT token validity
116-
*AuthenticationApiInterface* | [**authenticationOauthPost**](docs/Api/AuthenticationApiInterface.md#authenticationoauthpost) | **POST** /authentication/oauth | OAuth Login
117-
*AuthenticationApiInterface* | [**authenticationPost**](docs/Api/AuthenticationApiInterface.md#authenticationpost) | **POST** /authentication | Login - create a new JWT token
118-
*AuthenticationApiInterface* | [**authenticationRefreshPost**](docs/Api/AuthenticationApiInterface.md#authenticationrefreshpost) | **POST** /authentication/refresh | Refresh token
119-
*AuthenticationApiInterface* | [**authenticationUpgradePost**](docs/Api/AuthenticationApiInterface.md#authenticationupgradepost) | **POST** /authentication/upgrade | Upgrade a deprecated token to JWT
120-
*MediaLibraryApiInterface* | [**mediaFileIdGet**](docs/Api/MediaLibraryApiInterface.md#mediafileidget) | **GET** /media/file/{id} | Get the information of a specific media file
121-
*MediaLibraryApiInterface* | [**mediaFilesGet**](docs/Api/MediaLibraryApiInterface.md#mediafilesget) | **GET** /media/files | Get *all* content of the media library.
122-
*MediaLibraryApiInterface* | [**mediaFilesSearchGet**](docs/Api/MediaLibraryApiInterface.md#mediafilessearchget) | **GET** /media/files/search | Search for mediafiles associated with keywords
123-
*MediaLibraryApiInterface* | [**mediaPackageNameGet**](docs/Api/MediaLibraryApiInterface.md#mediapackagenameget) | **GET** /media/package/{name} | Get media-library asstes of a named package
124-
*NotificationsApiInterface* | [**notificationIdReadPut**](docs/Api/NotificationsApiInterface.md#notificationidreadput) | **PUT** /notification/{id}/read | Mark specified notification as read
125-
*NotificationsApiInterface* | [**notificationsCountGet**](docs/Api/NotificationsApiInterface.md#notificationscountget) | **GET** /notifications/count | Count the number of unseen notifications
126-
*NotificationsApiInterface* | [**notificationsGet**](docs/Api/NotificationsApiInterface.md#notificationsget) | **GET** /notifications | Get user notifications -- StatusCode: 501 - Not yet implemented
127-
*NotificationsApiInterface* | [**notificationsReadPut**](docs/Api/NotificationsApiInterface.md#notificationsreadput) | **PUT** /notifications/read | Mark all notifications as read
128-
*ProjectsApiInterface* | [**projectIdCatrobatGet**](docs/Api/ProjectsApiInterface.md#projectidcatrobatget) | **GET** /project/{id}/catrobat | Download the .catrobat (&#x3D;zip) file of a project
129-
*ProjectsApiInterface* | [**projectIdDelete**](docs/Api/ProjectsApiInterface.md#projectiddelete) | **DELETE** /project/{id} | Delete a project
130-
*ProjectsApiInterface* | [**projectIdGet**](docs/Api/ProjectsApiInterface.md#projectidget) | **GET** /project/{id} | Get the information of a project
131-
*ProjectsApiInterface* | [**projectIdPut**](docs/Api/ProjectsApiInterface.md#projectidput) | **PUT** /project/{id} | Update details of a project
132-
*ProjectsApiInterface* | [**projectIdRecommendationsGet**](docs/Api/ProjectsApiInterface.md#projectidrecommendationsget) | **GET** /project/{id}/recommendations | Get recommended projects related to the specific project
133-
*ProjectsApiInterface* | [**projectIdReportPost**](docs/Api/ProjectsApiInterface.md#projectidreportpost) | **POST** /project/{id}/report | Report a project -- StatusCode: 501 - Not yet implemented
134-
*ProjectsApiInterface* | [**projectsCategoriesGet**](docs/Api/ProjectsApiInterface.md#projectscategoriesget) | **GET** /projects/categories | Get default number of projects per category (Most downloaded etc.)
135-
*ProjectsApiInterface* | [**projectsExtensionsGet**](docs/Api/ProjectsApiInterface.md#projectsextensionsget) | **GET** /projects/extensions | Get all possible project extensions. Extensions are automatically added to projects based on their bricks.
136-
*ProjectsApiInterface* | [**projectsFeaturedGet**](docs/Api/ProjectsApiInterface.md#projectsfeaturedget) | **GET** /projects/featured | Get the currently featured projects
137-
*ProjectsApiInterface* | [**projectsGet**](docs/Api/ProjectsApiInterface.md#projectsget) | **GET** /projects | Get projects
138-
*ProjectsApiInterface* | [**projectsPost**](docs/Api/ProjectsApiInterface.md#projectspost) | **POST** /projects | Upload a catrobat project
139-
*ProjectsApiInterface* | [**projectsSearchGet**](docs/Api/ProjectsApiInterface.md#projectssearchget) | **GET** /projects/search | Search for projects associated with a keywords
140-
*ProjectsApiInterface* | [**projectsTagsGet**](docs/Api/ProjectsApiInterface.md#projectstagsget) | **GET** /projects/tags | Get all possible project tags. Some Tags will only be availabe during events.
141-
*ProjectsApiInterface* | [**projectsUserGet**](docs/Api/ProjectsApiInterface.md#projectsuserget) | **GET** /projects/user | Get the projects of the logged in user
142-
*ProjectsApiInterface* | [**projectsUserIdGet**](docs/Api/ProjectsApiInterface.md#projectsuseridget) | **GET** /projects/user/{id} | Get the public projects of a given user
143-
*SearchApiInterface* | [**searchGet**](docs/Api/SearchApiInterface.md#searchget) | **GET** /search | Search for projects, users,..
144-
*StudioApiInterface* | [**studioIdDelete**](docs/Api/StudioApiInterface.md#studioiddelete) | **DELETE** /studio/{id} | Delete a studio (only available to studio admins)
145-
*StudioApiInterface* | [**studioIdGet**](docs/Api/StudioApiInterface.md#studioidget) | **GET** /studio/{id} | Get studio details (private studios are only available to members)
146-
*StudioApiInterface* | [**studioIdPost**](docs/Api/StudioApiInterface.md#studioidpost) | **POST** /studio/{id} | Update a Studio (only available to studio admins)
147-
*StudioApiInterface* | [**studioPost**](docs/Api/StudioApiInterface.md#studiopost) | **POST** /studio | Create a new Studio
148-
*UserApiInterface* | [**userDelete**](docs/Api/UserApiInterface.md#userdelete) | **DELETE** /user | Delete user account
149-
*UserApiInterface* | [**userGet**](docs/Api/UserApiInterface.md#userget) | **GET** /user | Get your private user data
150-
*UserApiInterface* | [**userIdGet**](docs/Api/UserApiInterface.md#useridget) | **GET** /user/{id} | Get public user data
151-
*UserApiInterface* | [**userPost**](docs/Api/UserApiInterface.md#userpost) | **POST** /user | Register
152-
*UserApiInterface* | [**userPut**](docs/Api/UserApiInterface.md#userput) | **PUT** /user | Update User
153-
*UserApiInterface* | [**userResetPasswordPost**](docs/Api/UserApiInterface.md#userresetpasswordpost) | **POST** /user/reset-password | Request email to reset password
154-
*UserApiInterface* | [**usersGet**](docs/Api/UserApiInterface.md#usersget) | **GET** /users | Get users
155-
*UserApiInterface* | [**usersSearchGet**](docs/Api/UserApiInterface.md#userssearchget) | **GET** /users/search | Search for users
156-
*UtilityApiInterface* | [**healthGet**](docs/Api/UtilityApiInterface.md#healthget) | **GET** /health | Health Check
157-
*UtilityApiInterface* | [**surveyLangCodeGet**](docs/Api/UtilityApiInterface.md#surveylangcodeget) | **GET** /survey/{lang_code} | Get survey link for given language code.
158-
159-
160-
## Documentation For Models
161-
162-
- [BaseUser](docs/Model/BaseUser.md)
163-
- [BasicUserDataResponse](docs/Model/BasicUserDataResponse.md)
164-
- [CreateStudioErrorResponse](docs/Model/CreateStudioErrorResponse.md)
165-
- [DryRun](docs/Model/DryRun.md)
166-
- [ExtendedUserDataResponse](docs/Model/ExtendedUserDataResponse.md)
167-
- [ExtensionResponse](docs/Model/ExtensionResponse.md)
168-
- [FeaturedProjectResponse](docs/Model/FeaturedProjectResponse.md)
169-
- [JWTResponse](docs/Model/JWTResponse.md)
170-
- [LoginRequest](docs/Model/LoginRequest.md)
171-
- [MediaCategoryResponse](docs/Model/MediaCategoryResponse.md)
172-
- [MediaFileResponse](docs/Model/MediaFileResponse.md)
173-
- [MediaPackageResponse](docs/Model/MediaPackageResponse.md)
174-
- [NotificationContent](docs/Model/NotificationContent.md)
175-
- [NotificationResponse](docs/Model/NotificationResponse.md)
176-
- [NotificationsCountResponse](docs/Model/NotificationsCountResponse.md)
177-
- [OAuthLoginRequest](docs/Model/OAuthLoginRequest.md)
178-
- [ProjectReportRequest](docs/Model/ProjectReportRequest.md)
179-
- [ProjectResponse](docs/Model/ProjectResponse.md)
180-
- [ProjectsCategory](docs/Model/ProjectsCategory.md)
181-
- [RefreshRequest](docs/Model/RefreshRequest.md)
182-
- [RegisterErrorResponse](docs/Model/RegisterErrorResponse.md)
183-
- [RegisterRequest](docs/Model/RegisterRequest.md)
184-
- [ResetPasswordErrorResponse](docs/Model/ResetPasswordErrorResponse.md)
185-
- [ResetPasswordRequest](docs/Model/ResetPasswordRequest.md)
186-
- [SearchResponse](docs/Model/SearchResponse.md)
187-
- [StudioResponse](docs/Model/StudioResponse.md)
188-
- [SurveyResponse](docs/Model/SurveyResponse.md)
189-
- [TagResponse](docs/Model/TagResponse.md)
190-
- [UpdateProjectErrorResponse](docs/Model/UpdateProjectErrorResponse.md)
191-
- [UpdateProjectFailureResponse](docs/Model/UpdateProjectFailureResponse.md)
192-
- [UpdateProjectRequest](docs/Model/UpdateProjectRequest.md)
193-
- [UpdateStudioErrorResponse](docs/Model/UpdateStudioErrorResponse.md)
194-
- [UpdateUserErrorResponse](docs/Model/UpdateUserErrorResponse.md)
195-
- [UpdateUserRequest](docs/Model/UpdateUserRequest.md)
196-
- [UpgradeTokenRequest](docs/Model/UpgradeTokenRequest.md)
197-
- [UploadErrorResponse](docs/Model/UploadErrorResponse.md)
198-
199-
200-
## Documentation For Authorization
201-
202-
203-
Authentication schemes defined for the API:
204-
### BearerAuth
205-
206-
- **Type**: HTTP Bearer Token authentication (JWT)
207-
208-
209-
## Author
210-
211-
webmaster@catrobat.org
212-
1+
moved to https://github.com/Catrobat/Catroweb || https://developer.catrobat.org/Catroweb/

0 commit comments

Comments
 (0)