From 1bac9bccbaba1807676a7f0f3598115132e7fdb7 Mon Sep 17 00:00:00 2001 From: bidi Date: Fri, 22 May 2026 12:21:05 +0300 Subject: [PATCH 1/2] added Bruno collection, updated readme Signed-off-by: bidi --- documentation/Dotkernel_API.zip | Bin 0 -> 18927 bytes documentation/README.md | 60 +++++++++++++++++++------------- 2 files changed, 35 insertions(+), 25 deletions(-) create mode 100644 documentation/Dotkernel_API.zip diff --git a/documentation/Dotkernel_API.zip b/documentation/Dotkernel_API.zip new file mode 100644 index 0000000000000000000000000000000000000000..577e008821364a634100e4495995b7cdbc118539 GIT binary patch literal 18927 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 literal 0 HcmV?d00001 diff --git a/documentation/README.md b/documentation/README.md index a49bbe44..48ef4626 100644 --- a/documentation/README.md +++ b/documentation/README.md @@ -5,45 +5,55 @@ You can access Dotkernel API documentation by importing the provided collection ## Requirements * [Postman](https://www.postman.com/downloads/) +* [Bruno](https://www.usebruno.com/) ## Setup -At this point, we assume you already have Postman installed. -The following steps will be performed in Postman. +At this point, we assume you already have an API client installed (Postman or Bruno). +The following steps will be performed in the API client. ### Import project files +For Postman: + * click **File** -> **Import** -> **Upload Files** * navigate to the [documentation](/documentation) directory * select both [Dotkernel_API.postman_collection.json](/documentation/Dotkernel_API.postman_collection.json) and [Dotkernel_API.postman_environment.json](/documentation/Dotkernel_API.postman_environment.json) * click **Import** +For Bruno: + +- Open the `My Workspace` dropdown and select `Import workspace`. +- Either click-and-drag the `Dotkernel_API.zip` over the form or navigate to it via the `choose a file` link. +- Click the `Import` button. + You should see a new collection (`Dotkernel_API`) added to your collection list, containing the documentation of all Dotkernel API endpoints. Also, you should see a new environment (`Dotkernel_API`) added to your environments. -This contains a variable, called `APPLICATION_URL` set to `http://0.0.0.0:8080`. -If your application runs on a different URL/port, modify this variable accordingly. +This contains a variable, called `APPLICATION_URL` set to `http://api.dotkernel.localhost` by default. +If your application runs on a different URL/port (virtualhost), modify this variable accordingly. ## Usage -Dotkernel API Endpoints are secured with OAuth2, this means that calling an endpoint requires an access token being sent via the `Authorization` header (edit collection root directory and look under `Authorization` tab). - -### Add a new request - -* right-click on the parent directory you want to create the request inside, then click **Add Request** -* enter name and description for your request -* select the proper request method: - * **DELETE**: if you are deleting an item - * **GET**: if you are viewing an item or a list of items - * **PATCH**: if you are (partially) updating an item - * **PUT**: depending on if it exists or not, update or create an item - * **POST**: if you are creating an item -* if needed, add query parameters (`Params` tab) -* enter request URL (eg: `{{APPLICATION_URL}}/example`): you can use the existing `APPLICATION_URL` environment variable by placing it between double curly braces -* select body (`Body` tab) format based on the data your endpoint expects: - * use **none** if no data will be sent to this endpoint - * use **form-data** if besides form data, this endpoint accepts file attachments as well - * use **raw** (also, set Content-Type to **JSON**) for creating/updating items - -New requests added to the collection will not require adding the `Authorization` header because by default it is inherited from parent directories (under `Authorization` tab: `Type` is set to `Inherit auth from parent`). -If your request should be accessible by guest users, you need to set `Type` to `No Auth`. +Dotkernel API Endpoints are secured with OAuth2. +Calling an endpoint must include an access token sent via the `Authorization` header (see the `Authorization` or `Auth` tab in the collection). + +### Add a new request (endpoint) + +* Right-click on the parent directory you want to create the request inside, then click **Add Request**. +* Enter the request name and description. +* Select the proper request method: + * **DELETE**: if you are deleting an item. + * **GET**: if you are viewing an item or a list of items. + * **PATCH**: if you are (partially) updating an item. + * **PUT**: depending on if it exists or not, update or create an item. + * **POST**: if you are creating an item. +* If needed, add query parameters (`Params` tab). +* Enter request URL (eg: `{{APPLICATION_URL}}/example`): you can use the existing `APPLICATION_URL` environment variable by placing it between double curly braces. +* Select body (`Body` tab) format based on the data your endpoint expects: + * Use **none** if no data will be sent to this endpoint. + * Use **form-data** if besides form data, this endpoint accepts file attachments as well. + * Use **raw** (also, set Content-Type to **JSON**) for creating/updating items. + +The `Authorization` header will be included automatically for new requests (under `Authorization` tab: `Type` is set to `Inherit auth from parent`). +If your request needs to be public (accessible by guest users), you need to set `Type` to `No Auth`. From 1fd8a17026d529bd013e09e82fe4cf9b3a0ded5e Mon Sep 17 00:00:00 2001 From: bidi Date: Fri, 22 May 2026 13:28:46 +0300 Subject: [PATCH 2/2] updated readme Signed-off-by: bidi --- ...kernel_API.zip => Dotkernel_API_Bruno.zip} | Bin documentation/README.md | 73 +++++++++++------- 2 files changed, 45 insertions(+), 28 deletions(-) rename documentation/{Dotkernel_API.zip => Dotkernel_API_Bruno.zip} (100%) diff --git a/documentation/Dotkernel_API.zip b/documentation/Dotkernel_API_Bruno.zip similarity index 100% rename from documentation/Dotkernel_API.zip rename to documentation/Dotkernel_API_Bruno.zip diff --git a/documentation/README.md b/documentation/README.md index 48ef4626..d7cca4bc 100644 --- a/documentation/README.md +++ b/documentation/README.md @@ -4,34 +4,50 @@ You can access Dotkernel API documentation by importing the provided collection ## Requirements -* [Postman](https://www.postman.com/downloads/) -* [Bruno](https://www.usebruno.com/) +- [Postman](https://www.postman.com/downloads/) +- [Bruno](https://www.usebruno.com/) ## Setup At this point, we assume you already have an API client installed (Postman or Bruno). The following steps will be performed in the API client. -### Import project files +### Import the Collection and Environment -For Postman: +#### For Postman -* click **File** -> **Import** -> **Upload Files** -* navigate to the [documentation](/documentation) directory -* select both [Dotkernel_API.postman_collection.json](/documentation/Dotkernel_API.postman_collection.json) and [Dotkernel_API.postman_environment.json](/documentation/Dotkernel_API.postman_environment.json) -* click **Import** +- Click **File** -> **Import** -> **Upload Files**. +- Navigate to the [documentation](/documentation) directory. +- Select **both** [Dotkernel_API.postman_collection.json](/documentation/Dotkernel_API.postman_collection.json) and [Dotkernel_API.postman_environment.json](/documentation/Dotkernel_API.postman_environment.json). +- Click **Import**. -For Bruno: +#### For Bruno using the Bruno Export Zip - Open the `My Workspace` dropdown and select `Import workspace`. -- Either click-and-drag the `Dotkernel_API.zip` over the form or navigate to it via the `choose a file` link. +- Either click-and-drag the [Dotkernel_API_Bruno.zip](/documentation/Dotkernel_API_Bruno.zip) file over the form or navigate to it via the `choose a file` link. - Click the `Import` button. -You should see a new collection (`Dotkernel_API`) added to your collection list, containing the documentation of all Dotkernel API endpoints. +#### For Bruno using Postman Files -Also, you should see a new environment (`Dotkernel_API`) added to your environments. -This contains a variable, called `APPLICATION_URL` set to `http://api.dotkernel.localhost` by default. -If your application runs on a different URL/port (virtualhost), modify this variable accordingly. +> Bruno also supports the Postman files we used for the Postman import. +> If you have already imported the collection using the `.zip` file, you can skip this step. + +**Alternatively** import the collection by following these steps: + +- Click on `+` next to `Collection` and select `Import Collection`. +- Import [Dotkernel_API.postman_collection.json](/documentation/Dotkernel_API.postman_collection.json) to save the endpoints. +- Select the new collection, then click on `0 collection environments`. +- Either click-and-drag the [Dotkernel_API.postman_environment.json](/documentation/Dotkernel_API.postman_environment.json) file over the form or navigate to it via the `Import your environments` link to save it to the collection. + +### Collection Contents + +If the import process completed successfully, you should have: + +- A new collection (`Dotkernel_API`) containing the documentation of all Dotkernel API endpoints. +- A new environment (`Dotkernel_API`) with the Application URL and OAuth2 tokens (empty by default, then overwritten by the API client). + +> The environment contains a variable, called `APPLICATION_URL` set to `http://api.dotkernel.localhost` by default. +> If your application runs on a different URL/port (virtualhost), modify this variable accordingly. ## Usage @@ -40,20 +56,21 @@ Calling an endpoint must include an access token sent via the `Authorization` he ### Add a new request (endpoint) -* Right-click on the parent directory you want to create the request inside, then click **Add Request**. -* Enter the request name and description. -* Select the proper request method: - * **DELETE**: if you are deleting an item. - * **GET**: if you are viewing an item or a list of items. - * **PATCH**: if you are (partially) updating an item. - * **PUT**: depending on if it exists or not, update or create an item. - * **POST**: if you are creating an item. -* If needed, add query parameters (`Params` tab). -* Enter request URL (eg: `{{APPLICATION_URL}}/example`): you can use the existing `APPLICATION_URL` environment variable by placing it between double curly braces. -* Select body (`Body` tab) format based on the data your endpoint expects: - * Use **none** if no data will be sent to this endpoint. - * Use **form-data** if besides form data, this endpoint accepts file attachments as well. - * Use **raw** (also, set Content-Type to **JSON**) for creating/updating items. +- Right-click on the parent directory you want to create the request inside, then click `Add Request` (or `New Request`). +- Enter the request name and the description, if available. +- Select the request method: + - `DELETE` if you are deleting an item. + - `GET` if you are viewing an item or a list of items. + - `PATCH` if you are (partially) updating an item. + - `PUT` depending on if it exists or not, update or create an item. + - `POST` if you are creating an item. +- Enter request URL (eg: `{{APPLICATION_URL}}/example`): you can use the existing `APPLICATION_URL` environment variable by placing it between double curly braces. +- If needed, add query parameters (`Params` tab). +- Select body (`Body` tab) format based on the data your endpoint expects: + - Use `none` or `no body` if no data will be sent to this endpoint. + - Use `form-data` or `Multipart Form` if besides form data, this endpoint accepts file attachments as well. + - Use `raw`, then `JSON` for creating/updating items in a JSON format. +- Click `Send` to send the request. The `Authorization` header will be included automatically for new requests (under `Authorization` tab: `Type` is set to `Inherit auth from parent`). If your request needs to be public (accessible by guest users), you need to set `Type` to `No Auth`.