Категории, доступные вызывающему для присвоения операции
Именно эту ручку используйте для формы разметки, а не общий список категорий: она учитывает гранты и доступ к адресу операции
curl -X GET "https://policy-engine-rest.ezig.workers.dev/api/v1/vaults/demo_vault/operations/transfer/example_string/categories/available" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"
import requests
import json
url = "https://policy-engine-rest.ezig.workers.dev/api/v1/vaults/demo_vault/operations/transfer/example_string/categories/available"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://policy-engine-rest.ezig.workers.dev/api/v1/vaults/demo_vault/operations/transfer/example_string/categories/available", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://policy-engine-rest.ezig.workers.dev/api/v1/vaults/demo_vault/operations/transfer/example_string/categories/available", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://policy-engine-rest.ezig.workers.dev/api/v1/vaults/demo_vault/operations/transfer/example_string/categories/available')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
response = http.request(request)
puts response.body
{
"items": [
{
"id": "cmr3f41z20001psp7phmyapw3",
"vaultId": "example_string",
"key": "example_string",
"name": "John Doe",
"description": "example_string",
"emoji": "example_string",
"color": "example_string",
"appliesTo": "transfer",
"viewScope": "owner_only",
"assignScope": "owner_only",
"editScope": "owner_only",
"approvalScope": "none",
"approvalThreshold": 42,
"allowInitiatorApproval": true,
"isSystem": true,
"archived": true,
"version": 42,
"createdById": "example_string",
"updatedById": "example_string",
"createdAt": "2026-07-02T11:25:15.134Z",
"updatedAt": "2026-07-02T11:25:15.134Z",
"fields": [
{
"id": "cmr3f41z20001psp7phmyapw3",
"categoryId": "example_string",
"key": "example_string",
"label": "example_string",
"type": "text",
"required": true,
"optionsJson": [
{
"value": "example_string",
"label": "example_string"
}
],
"scale": 42,
"currencyFieldKey": "example_string",
"unit": "example_string",
"defaultJson": "null",
"helpText": "example_string",
"sensitive": true,
"orderIndex": 42,
"archived": true,
"createdAt": "2026-07-02T11:25:15.134Z",
"updatedAt": "2026-07-02T11:25:15.134Z"
}
],
"grants": [
{
"id": "cmr3f41z20001psp7phmyapw3",
"vaultId": "example_string",
"categoryId": "example_string",
"subjectType": "user",
"subjectUserId": "example_string",
"subjectGroupId": "example_string",
"canView": true,
"canAssign": true,
"canEdit": true,
"grantorId": "example_string",
"status": "example_string",
"createdAt": "2026-07-02T11:25:15.134Z"
}
],
"approvers": [
{
"id": "cmr3f41z20001psp7phmyapw3",
"categoryId": "example_string",
"kind": "user",
"userId": "example_string",
"groupId": "example_string",
"createdAt": "2026-07-02T11:25:15.134Z"
}
]
}
]
}
{
"error": "Unauthorized",
"message": "Authentication required. Please provide a valid API token",
"code": 401
}
{
"error": "Not Found",
"message": "The requested resource was not found",
"code": 404
}
{
"error": "Internal Server Error",
"message": "An unexpected error occurred on the server",
"code": 500,
"requestId": "req_1234567890"
}
GET
/api/v1/vaults/{code}/operations/{type}/{id}/categories/availableGET
Base URLstring
Target server for requests. Edit to use your own host.
Bearer Token
Bearer Tokenstring
Requiredbetter-auth session token. Мобилка/сервисы. Веб использует cookie.
better-auth session token. Мобилка/сервисы. Веб использует cookie.
API Key (cookie: better-auth.session_token)
better-auth.session_tokenstring
RequiredAPI key (sent in cookie)
path
codestring
RequiredУникальный код Vault'а (slug)
path
typestring
RequiredOptions: transfer, deposit
Request Preview
Response
Response will appear here after sending the request
Authentication
header
Authorizationstring
RequiredBearer token. better-auth session token. Мобилка/сервисы. Веб использует cookie.
path
parameterstring
RequiredAPI Key for authentication. Provide your API key in the cookie.
Path Parameters
typestring
RequiredAllowed values:
transferdepositResponses
itemsarray
RequiredWas this page helpful?