# APIs

## Request APIs

Request APIs provide ability to communicate with micro-services, where an executor responsible for the given channel sends the request and returns response to the caller.

The method of request (e.g. GET vs POST) is used only by some executors (e.g. CRUDExecutor), whereas the others treat all methods the same (e.g. KafkaExecutor).

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/{channel}/{path}" method="get" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/full/{channel}/{path}" method="get" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/full/e/{channel}/{path}" method="get" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/{channel}/{path}" method="post" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/full/{channel}/{path}" method="post" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/full/e/{channel}/{path}" method="post" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/{channel}/{path}" method="put" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/{channel}/{path}" method="patch" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

{% openapi src="/files/XaEy8mllvnT0AU5eYSaj" path="/api/request/{channel}/{path}" method="delete" %}
[Request APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FIjagtJNrhny9OZ7HCOmf%2FRequest%20APIs.yml?alt=media\&token=94b212d0-ba89-45f0-83eb-656ec9f179ca)
{% endopenapi %}

## Auth APIs

Auth APIs coordinate authentication flows with authentication servers across different gateway channels.

{% openapi src="/files/UwS2C9Se7xnucw0jpbWg" path="/api/auth/register/{channel}/{type}" method="post" %}
[Auth APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FpjjUyS33OlV3lUM6fox9%2FAuth%20APIs.yml?alt=media\&token=0e0de3b4-0bf2-4c70-af11-0008313cb8a5)
{% endopenapi %}

{% openapi src="/files/UwS2C9Se7xnucw0jpbWg" path="/api/auth/login/{channel}/{type}" method="post" %}
[Auth APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FpjjUyS33OlV3lUM6fox9%2FAuth%20APIs.yml?alt=media\&token=0e0de3b4-0bf2-4c70-af11-0008313cb8a5)
{% endopenapi %}

{% openapi src="/files/UwS2C9Se7xnucw0jpbWg" path="/api/auth/refresh/{channel}/{type}" method="post" %}
[Auth APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FpjjUyS33OlV3lUM6fox9%2FAuth%20APIs.yml?alt=media\&token=0e0de3b4-0bf2-4c70-af11-0008313cb8a5)
{% endopenapi %}

{% openapi src="/files/UwS2C9Se7xnucw0jpbWg" path="/api/auth/logout/{channel}/{type}" method="post" %}
[Auth APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FpjjUyS33OlV3lUM6fox9%2FAuth%20APIs.yml?alt=media\&token=0e0de3b4-0bf2-4c70-af11-0008313cb8a5)
{% endopenapi %}

{% openapi src="/files/UwS2C9Se7xnucw0jpbWg" path="/api/auth/delete/{channel}/{type}" method="post" %}
[Auth APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FpjjUyS33OlV3lUM6fox9%2FAuth%20APIs.yml?alt=media\&token=0e0de3b4-0bf2-4c70-af11-0008313cb8a5)
{% endopenapi %}

## Tracker APIs

Tracker APIs provide ability to post front-end traffic data, in case back-end tracking is not possible for a specific use case. Example uses include front-end or CDN caching of API responses, front-end events that do not require API calls (such as widget interactions) or Rierino platform integration with other back-end modules that do not provide tracking capabilities.

{% openapi src="/files/pZccveJYydDLQBqiEd2B" path="/api/track/{channel}/{path}" method="post" %}
[Tracker APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FuwqBoGOO0mhQSDevYD8w%2FTracker%20APIs.yml?alt=media\&token=3189108b-8678-4e8b-b8b6-58d1589878a2)
{% endopenapi %}

## File APIs

File APIs provide ability to interact with file system services, listing, uploading and deleting files, typically used for export/import operations. For all APIs, user authentication is done using headers and cookies similar to other gateway APIs. All APIs also have a api/file/sudo/\* version, which allows root level access to a file system for admin users.

{% openapi src="/files/Pz3ijO8CAWoAQySqwQDZ" path="/api/file/{service}" method="get" %}
[File APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2F7ZjkkgBEhxvbUGo4N9FA%2FFile%20APIs.yml?alt=media\&token=7888e389-63dc-4d3e-80dd-c5474814bf1b)
{% endopenapi %}

{% openapi src="/files/Pz3ijO8CAWoAQySqwQDZ" path="/api/file/{service}/{filePath}" method="get" %}
[File APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2F7ZjkkgBEhxvbUGo4N9FA%2FFile%20APIs.yml?alt=media\&token=7888e389-63dc-4d3e-80dd-c5474814bf1b)
{% endopenapi %}

{% openapi src="/files/Pz3ijO8CAWoAQySqwQDZ" path="/api/file/{service}" method="post" %}
[File APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2F7ZjkkgBEhxvbUGo4N9FA%2FFile%20APIs.yml?alt=media\&token=7888e389-63dc-4d3e-80dd-c5474814bf1b)
{% endopenapi %}

{% openapi src="/files/Pz3ijO8CAWoAQySqwQDZ" path="/api/file/{service}/{filePath}" method="post" %}
[File APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2F7ZjkkgBEhxvbUGo4N9FA%2FFile%20APIs.yml?alt=media\&token=7888e389-63dc-4d3e-80dd-c5474814bf1b)
{% endopenapi %}

{% openapi src="/files/Pz3ijO8CAWoAQySqwQDZ" path="/api/file/{service}/{filePath}" method="delete" %}
[File APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2F7ZjkkgBEhxvbUGo4N9FA%2FFile%20APIs.yml?alt=media\&token=7888e389-63dc-4d3e-80dd-c5474814bf1b)
{% endopenapi %}

## Control APIs

Control APIs provide ability to query and refresh gateway components (system, channel, service, token) in real-time.

{% openapi src="/files/VuJepeMbHsc3xBpglWrO" path="/api/control/{component}/{id}" method="get" %}
[Control APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2Fir4E4s9nGE9SDAnE6cj1%2FControl%20APIs.yml?alt=media\&token=ccd45e1d-1c65-4b05-b644-a4cedbe96e8e)
{% endopenapi %}

{% openapi src="/files/VuJepeMbHsc3xBpglWrO" path="/api/control/{component}/{id}" method="post" %}
[Control APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2Fir4E4s9nGE9SDAnE6cj1%2FControl%20APIs.yml?alt=media\&token=ccd45e1d-1c65-4b05-b644-a4cedbe96e8e)
{% endopenapi %}

{% openapi src="/files/VuJepeMbHsc3xBpglWrO" path="/api/control" method="post" %}
[Control APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2Fir4E4s9nGE9SDAnE6cj1%2FControl%20APIs.yml?alt=media\&token=ccd45e1d-1c65-4b05-b644-a4cedbe96e8e)
{% endopenapi %}

## Command APIs

Command APIs provide ability to centrally issue commands to all runners for their administration. All commands are processed and responded to in an async manner, so their acknowledgement and results are typically reported using a separate API request.

Similar to events, commands also have request metadata, which is enriched using same approach as gateway APIs, with headers and cookies for authentication. Users need to have roles specified for gateway services used by commands to be able to issue them.

{% openapi src="/files/OHqjcRpg3z65gtcwDd1X" path="/api/command/" method="post" %}
[Command APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FidJ68sJu8YUkidCF69fY%2FCommand%20APIs.yml?alt=media\&token=9e4ad23f-9dea-4151-aaa4-3a8fc2d4891a)
{% endopenapi %}

{% openapi src="/files/OHqjcRpg3z65gtcwDd1X" path="/api/command/{path}" method="post" %}
[Command APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FidJ68sJu8YUkidCF69fY%2FCommand%20APIs.yml?alt=media\&token=9e4ad23f-9dea-4151-aaa4-3a8fc2d4891a)
{% endopenapi %}

## Message APIs

Message APIs provide ability to send messages to any Kafka service and topic for adhoc use cases.

Messages are authenticated using request metadata generated from headers and cookies of the request. Users need to have roles specified for the gateway service specified to be able to send messages.

{% openapi src="/files/8YIMY2yiToSyK5eH8ayP" path="/api/send/{service}/{topic}/{key}" method="post" %}
[Message APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FVEQsqNJ3Q9WwBriTRG1x%2FMessage%20APIs.yml?alt=media\&token=b22b8d63-4d5f-439c-83ec-5e990e116039)
{% endopenapi %}

{% openapi src="/files/8YIMY2yiToSyK5eH8ayP" path="/api/send/{service}/{topic}/mod/{mod}/{key}" method="post" %}
[Message APIs.yml](https://1659095931-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcnDk3J1AzTgg2NFrGPlh%2Fuploads%2FVEQsqNJ3Q9WwBriTRG1x%2FMessage%20APIs.yml?alt=media\&token=b22b8d63-4d5f-439c-83ec-5e990e116039)
{% endopenapi %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rierino.com/devops/api-gateway-and-security/apis.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
