OpenVibe.Network API

Generated at from openvibe-contracts v0.53.0 and openvibe-sdk v0.11.0.

Server https://openvibe.network. 11 routes performing 10 capabilities. OpenAPI 3.1 document.

GET /api/v1/staff/moderators

List the network's staff (global moderators, admins and the owner) with their roles and staff capabilities from the staff map, as an owning service: to show who moderates, or to route a report.

Capabilities
network.staff.read
Visibility
first-party
Response
application/json network.staff-list-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.staff.read</strong> (first-party): List the network&#39;s staff (global moderators, admins and the owner) with their roles and staff capabilities from the staff map, as an owning service: to show who moderates, or to route a report. Never grantable to apps.</p>

GET /internal/blocks?subject=usr_…

Read who a person has blocked and who has blocked them (subjects only), as an owning service honouring platform blocks: Chat for DMs and mentions, Community for replies, notification senders.

Capabilities
network.blocks.read
Visibility
first-party
Response
application/json network.blocks-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.blocks.read</strong> (first-party): Read who a person has blocked and who has blocked them (subjects only), as an owning service honouring platform blocks: Chat for DMs and mentions, Community for replies, notification senders. Never grantable to apps.</p>

POST /internal/coins/credit

Credit OpenCoins (loyalty, never money) to a Network user.

Capabilities
network.coins.credit
Visibility
internal
Request body
application/json network.coins-change-request@1
Response
application/json network.coins-balance-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.coins.credit</strong> (internal): Credit OpenCoins (loyalty, never money) to a Network user. Idempotent by idempotency_key. A token may only act for its own app_id.</p>

POST /internal/coins/debit

Debit OpenCoins; 409 insufficient_funds.

Capabilities
network.coins.debit
Visibility
internal
Request body
application/json network.coins-change-request@1
Response
application/json network.coins-balance-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.coins.debit</strong> (internal): Debit OpenCoins; 409 insufficient_funds. A token may only act for its own app_id.</p>

POST /internal/coins/transfer

Atomically move OpenCoins between two Network users.

Capabilities
network.coins.transfer
Visibility
internal
Request body
application/json network.coins-transfer-request@1
Response
application/json network.coins-transfer-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.coins.transfer</strong> (internal): Atomically move OpenCoins between two Network users. A token may only act for its own app_id.</p>

GET /internal/identity/resolve

Resolve a subject (or a legacy service-local id) to its canonical SubjectRef and display projection.

Capabilities
identity.subject.resolve
Visibility
first-party
Input
identity.resolve-request@1
Response
application/json identity.resolve-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>identity.subject.resolve</strong> (first-party): Resolve a subject (or a legacy service-local id) to its canonical SubjectRef and display projection.</p>

POST /internal/identity/resolve-batch

Resolve a subject (or a legacy service-local id) to its canonical SubjectRef and display projection.

Capabilities
identity.subject.resolve
Visibility
first-party
Request body
application/json identity.resolve-request@1
Response
application/json identity.resolve-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>identity.subject.resolve</strong> (first-party): Resolve a subject (or a legacy service-local id) to its canonical SubjectRef and display projection.</p>

GET /internal/integrations/github-token

Read the network's GitHub API token (read-only, public repositories), which the owner sets in Network's admin panel or in GITHUB_TOKEN.

Capabilities
network.integration.github.read
Visibility
first-party
Response
application/json network.github-token-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.integration.github.read</strong> (first-party): Read the network&#39;s GitHub API token (read-only, public repositories), which the owner sets in Network&#39;s admin panel or in GITHUB_TOKEN. Used by OpenVibe.Blog&#39;s network changelog so its GitHub calls do not share the host&#39;s anonymous rate limit. Never granted to apps or mods.</p>

GET /internal/modules/{namespace}/{subject}

Read a subject's user-module record in a granted namespace.

Capabilities
network.modules.read
Visibility
first-party
Parameters
  • namespace (path, required)
  • subject (path, required)
Response
application/json modules.module-record@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.modules.read</strong> (first-party): Read a subject&#39;s user-module record in a granted namespace.</p>

PUT /internal/modules/{namespace}/{subject}

Write a subject's record in a namespace the service owns (If-Match revision).

Capabilities
network.modules.write
Visibility
first-party
Parameters
  • namespace (path, required)
  • subject (path, required)
Request body
application/json network.module-write-request@1
Response
application/json modules.module-record@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.modules.write</strong> (first-party): Write a subject&#39;s record in a namespace the service owns (If-Match revision).</p>

POST /internal/notifications/*

Create a notification for Network users (ids already translated).

Capabilities
network.notifications.push
Visibility
internal
Request body
application/json network.notification-push-request@1
Response
application/json network.notification-push-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>network.notifications.push</strong> (internal): Create a notification for Network users (ids already translated).</p>