Fix API page generator and add missing integration nav entries (#680)

This commit is contained in:
Bethuel Mmbaga
2026-04-02 19:08:28 +03:00
committed by GitHub
parent a210d44736
commit 4bc28ac346
9 changed files with 8535 additions and 105 deletions

View File

@@ -45,13 +45,18 @@ export const apiNavigation = [
title: 'Cloud Resources',
links: [
{ title: 'Ingress Ports', href: '/api/resources/ingress-ports' },
{ title: 'IDP (SCIM)', href: '/api/resources/idp' },
{ title: 'IDP (Azure API)', href: '/api/resources/idp-azure-integrations' },
{ title: 'IDP (Google API)', href: '/api/resources/idp-google-integrations' },
{ title: 'IDP (Okta SCIM)', href: '/api/resources/idp-okta-scim-integrations' },
{ title: 'IDP (SCIM Generic)', href: '/api/resources/idp-scim-integrations' },
{ title: 'Event Streaming', href: '/api/resources/event-streaming-integrations' },
{ title: 'EDR Peers', href: '/api/resources/edr-peers' },
{ title: 'EDR Falcon', href: '/api/resources/edr-falcon-integrations' },
{ title: 'EDR FleetDM', href: '/api/resources/edr-fleetdm-integrations' },
{ title: 'EDR Huntress', href: '/api/resources/edr-huntress-integrations' },
{ title: 'EDR Intune', href: '/api/resources/edr-intune-integrations' },
{ title: 'EDR SentinelOne', href: '/api/resources/edr-sentinelone-integrations' },
{ title: 'Notifications', href: '/api/resources/notifications' },
{ title: 'MSP', href: '/api/resources/msp' },
{ title: 'Invoice', href: '/api/resources/invoice' },
{ title: 'Usage', href: '/api/resources/usage' },

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
export const title = 'IDP'
export const title = 'IDP SCIM Integrations'
@@ -10,17 +10,7 @@ export const title = 'IDP'
### Request-Body Parameters
<Properties><Property name="prefix" type="string" required={true}>
The connection prefix used for the SCIM provider
</Property>
<Property name="provider" type="string" required={true}>
Name of the SCIM identity provider
</Property>
<Property name="group_prefixes" type="string[]" required={false}>
<Properties><Property name="group_prefixes" type="string[]" required={false}>
List of start_with string patterns for groups to sync
@@ -29,6 +19,16 @@ export const title = 'IDP'
List of start_with string patterns for groups which users to sync
</Property>
<Property name="prefix" type="string" required={true}>
The connection prefix used for the SCIM provider
</Property>
<Property name="provider" type="string" required={true}>
Name of the SCIM identity provider
</Property>
</Properties>
@@ -43,6 +43,13 @@ curl -X POST https://api.netbird.io/api/integrations/scim-idp \
-H 'Content-Type: application/json' \
-H 'Authorization: Token <TOKEN>' \
--data-raw '{
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
@@ -50,20 +57,20 @@ curl -X POST https://api.netbird.io/api/integrations/scim-idp \
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
]
}
}'
```
```js
const axios = require('axios');
let data = JSON.stringify({
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
@@ -71,14 +78,7 @@ let data = JSON.stringify({
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
]
}
});
let config = {
method: 'post',
@@ -107,6 +107,13 @@ import json
url = "https://api.netbird.io/api/integrations/scim-idp"
payload = json.dumps({
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
@@ -114,14 +121,7 @@ payload = json.dumps({
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
]
}
})
headers = {
'Content-Type': 'application/json',
@@ -150,6 +150,13 @@ func main() {
method := "POST"
payload := strings.NewReader(`{
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
@@ -157,14 +164,7 @@ func main() {
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
]
}
}`)
client := &http.Client {
}
@@ -211,6 +211,13 @@ request["Accept"] = "application/json"
request["Authorization"] = "Token <TOKEN>"
request.body = JSON.dump({
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
@@ -218,14 +225,7 @@ request.body = JSON.dump({
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
]
}
})
response = https.request(request)
puts response.read_body
@@ -236,6 +236,13 @@ OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, '{
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
@@ -243,14 +250,7 @@ RequestBody body = RequestBody.create(mediaType, '{
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
]
}
}');
Request request = new Request.Builder()
.url("https://api.netbird.io/api/integrations/scim-idp")
@@ -277,6 +277,13 @@ curl_setopt_array($curl, array(
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => '{
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
@@ -284,14 +291,7 @@ curl_setopt_array($curl, array(
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
],
"user_group_prefixes": [
"Users"
]
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
@@ -312,12 +312,7 @@ echo $response;
<CodeGroup title="Response">
```json {{ title: 'Example' }}
{
"id": 123,
"enabled": true,
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
@@ -325,21 +320,31 @@ echo $response;
"user_group_prefixes": [
"Users"
],
"id": 123,
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
},
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"auth_token": "nbs_abc***********************************",
"last_synced_at": "2023-05-15T10:30:00Z"
}
```
```json {{ title: 'Schema' }}
{
"id": "integer",
"enabled": "boolean",
"provider": "string",
"group_prefixes": [
"string"
],
"user_group_prefixes": [
"string"
],
"id": "integer",
"prefix": "string",
"provider": "string",
"auth_token": "string",
"last_synced_at": "string"
}
@@ -513,12 +518,7 @@ echo $response;
```json {{ title: 'Example' }}
[
{
"id": 123,
"enabled": true,
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
@@ -526,6 +526,15 @@ echo $response;
"user_group_prefixes": [
"Users"
],
"id": 123,
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
},
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"auth_token": "nbs_abc***********************************",
"last_synced_at": "2023-05-15T10:30:00Z"
}
@@ -534,15 +543,16 @@ echo $response;
```json {{ title: 'Schema' }}
[
{
"id": "integer",
"enabled": "boolean",
"provider": "string",
"group_prefixes": [
"string"
],
"user_group_prefixes": [
"string"
],
"id": "integer",
"prefix": "string",
"provider": "string",
"auth_token": "string",
"last_synced_at": "string"
}
@@ -716,12 +726,7 @@ echo $response;
<CodeGroup title="Response">
```json {{ title: 'Example' }}
{
"id": 123,
"enabled": true,
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
@@ -729,21 +734,31 @@ echo $response;
"user_group_prefixes": [
"Users"
],
"id": 123,
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
},
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"auth_token": "nbs_abc***********************************",
"last_synced_at": "2023-05-15T10:30:00Z"
}
```
```json {{ title: 'Schema' }}
{
"id": "integer",
"enabled": "boolean",
"provider": "string",
"group_prefixes": [
"string"
],
"user_group_prefixes": [
"string"
],
"id": "integer",
"prefix": "string",
"provider": "string",
"auth_token": "string",
"last_synced_at": "string"
}
@@ -767,7 +782,7 @@ echo $response;
<Properties><Property name="enabled" type="boolean" required={false}>
Indicates whether the integration is enabled
Whether the integration is enabled
</Property>
<Property name="group_prefixes" type="string[]" required={false}>
@@ -779,6 +794,11 @@ echo $response;
List of start_with string patterns for groups which users to sync
</Property>
<Property name="prefix" type="string" required={false}>
The connection prefix used for the SCIM provider
</Property>
</Properties>
@@ -800,7 +820,11 @@ curl -X PUT https://api.netbird.io/api/integrations/scim-idp/{id} \
],
"user_group_prefixes": [
"Users"
]
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
}
}'
```
@@ -814,7 +838,11 @@ let data = JSON.stringify({
],
"user_group_prefixes": [
"Users"
]
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
}
});
let config = {
method: 'put',
@@ -850,7 +878,11 @@ payload = json.dumps({
],
"user_group_prefixes": [
"Users"
]
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
}
})
headers = {
'Content-Type': 'application/json',
@@ -886,7 +918,11 @@ func main() {
],
"user_group_prefixes": [
"Users"
]
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
}
}`)
client := &http.Client {
}
@@ -940,7 +976,11 @@ request.body = JSON.dump({
],
"user_group_prefixes": [
"Users"
]
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
}
})
response = https.request(request)
puts response.read_body
@@ -958,7 +998,11 @@ RequestBody body = RequestBody.create(mediaType, '{
],
"user_group_prefixes": [
"Users"
]
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
}
}');
Request request = new Request.Builder()
.url("https://api.netbird.io/api/integrations/scim-idp/{id}")
@@ -992,7 +1036,11 @@ curl_setopt_array($curl, array(
],
"user_group_prefixes": [
"Users"
]
],
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
@@ -1013,12 +1061,7 @@ echo $response;
<CodeGroup title="Response">
```json {{ title: 'Example' }}
{
"id": 123,
"enabled": true,
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"group_prefixes": [
"Engineering",
"Sales"
@@ -1026,21 +1069,31 @@ echo $response;
"user_group_prefixes": [
"Users"
],
"id": 123,
"prefix": {
"type": "string",
"description": "The connection prefix used for the SCIM provider"
},
"provider": {
"type": "string",
"description": "Name of the SCIM identity provider"
},
"auth_token": "nbs_abc***********************************",
"last_synced_at": "2023-05-15T10:30:00Z"
}
```
```json {{ title: 'Schema' }}
{
"id": "integer",
"enabled": "boolean",
"provider": "string",
"group_prefixes": [
"string"
],
"user_group_prefixes": [
"string"
],
"id": "integer",
"prefix": "string",
"provider": "string",
"auth_token": "string",
"last_synced_at": "string"
}

File diff suppressed because it is too large Load Diff

View File

@@ -373,6 +373,7 @@ echo $response;
}
],
"enabled": true,
"terminated": false,
"pass_host_header": false,
"rewrite_redirects": false,
"auth": {
@@ -461,6 +462,7 @@ echo $response;
}
],
"enabled": "boolean",
"terminated": "boolean",
"pass_host_header": "boolean",
"rewrite_redirects": "boolean",
"auth": {
@@ -1488,6 +1490,7 @@ echo $response;
}
],
"enabled": true,
"terminated": false,
"pass_host_header": false,
"rewrite_redirects": false,
"auth": {
@@ -1574,6 +1577,7 @@ echo $response;
}
],
"enabled": "boolean",
"terminated": "boolean",
"pass_host_header": "boolean",
"rewrite_redirects": "boolean",
"auth": {
@@ -1828,6 +1832,7 @@ echo $response;
}
],
"enabled": true,
"terminated": false,
"pass_host_header": false,
"rewrite_redirects": false,
"auth": {
@@ -1914,6 +1919,7 @@ echo $response;
}
],
"enabled": "boolean",
"terminated": "boolean",
"pass_host_header": "boolean",
"rewrite_redirects": "boolean",
"auth": {
@@ -2948,6 +2954,7 @@ echo $response;
}
],
"enabled": true,
"terminated": false,
"pass_host_header": false,
"rewrite_redirects": false,
"auth": {
@@ -3034,6 +3041,7 @@ echo $response;
}
],
"enabled": "boolean",
"terminated": "boolean",
"pass_host_header": "boolean",
"rewrite_redirects": "boolean",
"auth": {
@@ -3686,6 +3694,7 @@ echo $response;
}
],
"enabled": true,
"terminated": false,
"pass_host_header": false,
"rewrite_redirects": false,
"auth": {
@@ -3772,6 +3781,7 @@ echo $response;
}
],
"enabled": "boolean",
"terminated": "boolean",
"pass_host_header": "boolean",
"rewrite_redirects": "boolean",
"auth": {