Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
81 changes: 81 additions & 0 deletions deduplicate-sidebars.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
const fs = require("fs");
const path = require("path");

const files = [
path.join(__dirname, "docs/datamarketplace-api/sidebar.ts"),
path.join(__dirname, "docs/disp-api/sidebar.ts"),
];

// Global registry for labels to ensure uniqueness across ALL files
const globalLabelCounts = {};

files.forEach((file) => {
if (!fs.existsSync(file)) {
return;
}
console.log(`Processing ${file}...`);
let content = fs.readFileSync(file, "utf8");

const knownIds = new Set();
let duplicateIds = 0;
let intros = 0;
let uniqueLabels = 0;

// Regex for Doc blocks
// Matches { type: "doc" ... } with optional trailing comma
const blockRegex = /\{\s*type:\s*"doc"[\s\S]*?\s*\}(,)?/g;

const newContent = content.replace(blockRegex, (match) => {
// Extract ID
const idMatch = match.match(/id:\s*"([^"]+)"/);
if (!idMatch) return match;
const id = idMatch[1];

// 1. Remove Intro Pages
if (
id === "datamarketplace-api/dataspace-backend-api" ||
id === "disp-api/disp-api-documentation"
) {
intros++;
return "";
}

// 2. Remove Duplicate IDs (within this file)
if (knownIds.has(id)) {
duplicateIds++;
return "";
}
knownIds.add(id);

// 3. Uniquify Labels
const labelMatch = match.match(/label:\s*"([^"]+)"/);
if (labelMatch) {
const originalLabel = labelMatch[1];

// Increment count
if (!globalLabelCounts[originalLabel]) {
globalLabelCounts[originalLabel] = 1;
} else {
globalLabelCounts[originalLabel]++;
// Modify label in the match string
const newLabel = `${originalLabel} (${globalLabelCounts[originalLabel]})`;
match = match.replace(
`label: "${originalLabel}"`,
`label: "${newLabel}"`,
);
uniqueLabels++;
}
}

return match;
});

if (duplicateIds > 0 || intros > 0 || uniqueLabels > 0) {
console.log(
`Modified ${file}: Removed ${duplicateIds} duplicates, ${intros} intros. Uniquified ${uniqueLabels} labels.`,
);
fs.writeFileSync(file, newContent, "utf8");
} else {
console.log(`No changes needed for ${file}`);
}
});
64 changes: 64 additions & 0 deletions docs/datamarketplace-api/config-admin-reset.api.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
id: config-admin-reset
title: "Reset connections and verifications"
description: "Delete all connections and verifications (admin reset)"
sidebar_label: "Reset connections and verifications"
hide_title: true
hide_table_of_contents: true
api: eJylVMFu2zgQ/ZXBnLqAIqVuTzrVadMiRbENmhZ7SH2YUCOJCE1yScqOK+jfF0OpjRMXu4c92SJn5r3HmXkjJuoi1reonG11h5sCG44qaJ+0s1jjOzacGMgYUM5aVnIegWwDOw661YrmkxfUbLWFwJHTH1ig8xzy1VWD9VJ+LSFfJAILjKyGoNMB69sRL5gCh/WQeqxvN9OmwMDROxs5Yj3i6vxcfp5Sy4UgDkpxjO1gcCrw9e8CL0NwAZxSQwjc4DQVuOXUOyHmXRQyngQZq5lnlbVUWUuVqYYdh5iZDsFgjX1KPtZVRV6X9qEpWzfYJsvF5y/4Se8Y5goown7qvlE9b2d5x+pHTAfPC4Rg5zCs8S4HYbH8ee/ClhLW+PGvryeY6/wmkNw9W/AUIzew16mHGQl84FY/gLYgoC7oH5k79EyN0CzwgqJW/8VIYk6wcybQkHq2aRkPaF2Az1JuBcpotglU4EYCyERojdvntmjbugyokxGEd5QoelIMF6Tu2Tawvr46QXzrtj5P6fr6Chqnhi3b9IibeobTQmdA0FAi4AfVk+34ZKZz07Ri8MHtdMOh/G6/RY4Q2bRn0e04sO4s6KwjHYolm+4MH8srcuVGdzqRgT0ZwwkSq9464zrNMbPMXAJ3g5nBlYjSZBWX32WoZABnuavz1evyVfkSC1mrRCrJk1nKPdEfAtlUaocF8pa0DGscvHchvdHd493TMX68mQo0WrGNfFR07Un1DKvy/CRzv9+XlK9LF7pqyY3Vp6u3l3/eXJ5JjnRW9mxL9qjovL7/airPOz1mwWzT/zGmZZgTP6TKG9JWNGdR42IDv9ywwJyL2Y2yaYlB9mIZ9S2O4x1F/hbMNMnx3wMHMbNNgTsKeQqylx2ZzfXnG9lVerpWzxY7u8xyRfYgrSczyNc4zhFfZa2nCQu854NIkW+cNtM0/QPwMQUh
sidebar_class_name: "post api-method"
info_path: docs/datamarketplace-api/dataspace-backend-api
custom_edit_url: null
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";
import Translate from "@docusaurus/Translate";

<Heading
as={"h1"}
className={"openapi__heading"}
children={"Reset connections and verifications"}
>
</Heading>

<MethodEndpoint
method={"post"}
path={"/config/admin/reset/"}
context={"endpoint"}
>

</MethodEndpoint>



Delete all connections and verifications (admin reset)

<ParamsDetails
parameters={undefined}
>

</ParamsDetails>

<RequestSchema
title={"Body"}
body={undefined}
>

</RequestSchema>

<StatusCodes
id={undefined}
label={undefined}
responses={{"200":{"description":"Reset successful"},"400":{"description":"Error occurred"}}}
>

</StatusCodes>



64 changes: 64 additions & 0 deletions docs/datamarketplace-api/config-create-connection.api.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
id: config-create-connection
title: "Create connection"
description: "Establish connection with data intermediary"
sidebar_label: "Create connection"
hide_title: true
hide_table_of_contents: true
api: eJyVVU1z20YM/Ss7ONOUq/bEkz/iZNx6mkwdTw+ODtASJBGTu9vdpWRVw/+ewZLWh6WZNidyCOABIN4DthCxDlA8g7am4hoWGZQUtGcX2Roo4C5EXLYcGqWtMaTls1pzbFSJERWbSL6jktFvIAPryKO43JdQTJi3njDS7S4aMgike89xA8XzFm4IPfnrPjZQPC+GRQaegrMmUIBiC/PLS3kcV7VHUzrBl5BJukgmijc617JOlcy+BwnZQtANdShvceMICrDL76QjZOC81B15TLjv82d8peGdd4ieTQ1DBmxWHPH/gV2N5jMoV3wePZBfsaY7UzrLY+cnPi0uqT1fW4c1PfnzRk+aHZOJf9AmHHig9yiT5khdOBM5DEddn4cXn4o9LTHQh43BjvUDm5dznhlEjq18es+jvyaWpJxDBh3FxgrtnA3p56IwCmYjC2f7Uc1g/HPkQyJgLzVCE6MLxWyGjnPzWuaV7U2JE2GP2ffAK1IjAghf3+j8KAwbZ3lI6l1TkkJyJzcoYJmcIJtePlrfYYQCfv/760nOa60pBBXtCxnlMAQqRxmOmZTzVPGrYqMkqfX8b6pdNYSllJnBDQbW/1WR+JzkTpEK+9iQiZOsVGW9+ixwc6VbIYoosRQHbIOqWruGkQqVTQmnKX7AiMGhJnWD+oVMqa6/3J9kvLWdaymSGFVpdd+Rifu8sSF1CnShcFxK9KobNDUpNKVakefqrehJMMp5u+KSfP7NPAUKKlBbXQS7Ik9cG8Wpj7jJpmhctnTYXpaQS645YqvW2LYUVSTdGNvamimkKlMtnuq+HZNraYrRaMq/CamEgGO788v5b/mv+S/TEkOdpGwwzYQ/eTQxZwsZUIcsZA29c9bHK673tmMa7y2yA1iTKGUPeu1QN6Tm+eVJ5Hq9zjGZc+vr2RQbZg/3t3d/Pt5dSIxMVmTWoTkAHRV6cCjez3W739E/eVgmvkZ6jTPXIhtpqx+Xyyj03QnL4KgAOWmNbITiGbZb2ThPvh0G+fxPT15u0CKDFfo05XSCMphUI9vhhTaT/JxslRW2fdqD7y+MLILdCvry+VEkjMdqe6f3BP+2Vs3mAHy7HT2+itqHAbKpiqR+GBbDMPwA6zCzVw==
sidebar_class_name: "post api-method"
info_path: docs/datamarketplace-api/dataspace-backend-api
custom_edit_url: null
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";
import Translate from "@docusaurus/Translate";

<Heading
as={"h1"}
className={"openapi__heading"}
children={"Create connection"}
>
</Heading>

<MethodEndpoint
method={"post"}
path={"/config/connection/"}
context={"endpoint"}
>

</MethodEndpoint>



Establish connection with data intermediary

<ParamsDetails
parameters={undefined}
>

</ParamsDetails>

<RequestSchema
title={"Body"}
body={undefined}
>

</RequestSchema>

<StatusCodes
id={undefined}
label={undefined}
responses={{"200":{"description":"Connection created","content":{"application/json":{"schema":{"type":"object","properties":{"connection":{"type":"object","properties":{"connectionId":{"type":"string"},"invitation":{"type":"object","properties":{"@type":{"type":"string"},"@id":{"type":"string"},"serviceEndpoint":{"type":"string"},"label":{"type":"string"},"imageUrl":{"type":"string"},"recipientKeys":{"type":"array","items":{"type":"string"}}}},"invitationUrl":{"type":"string"}}},"firebaseDynamicLink":{"type":"string"}},"title":"CreateConnectionResponse"}}}}}}
>

</StatusCodes>



72 changes: 72 additions & 0 deletions docs/datamarketplace-api/config-create-data-source.api.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
id: config-create-data-source
title: "Create data source"
description: "Create a new data source"
sidebar_label: "Create data source"
hide_title: true
hide_table_of_contents: true
api: eJzFVktTIzcQ/isqncc2ITnNKYYlKVJUoHgkB9aHttQzo0UjaSWNjeOa/77V0mAP2GFJDgkHCqa/fqr7697yCHXg5SMX1lSq5ouCSwzCKxeVNbzk5x4hIgNmcM0kRGDBdl4gL7h16IFgl5KXg4EM/wQR7l5gAUXnVdzw8nHLzxA8+nkXG14+LvpFwT1+7TDEMys3vNymf5VHycvoOyzIbEQTSQTOaSWSx9mXQNFteRANtkB/xY1DXnK7/IIi8oI7T/FFhYGkch/Rd7EG2jEqRK9MzfuCa5u9HxW+KtsRubNaic2D10ekww8VIzhrQo7j9OQkhX7kPeSbp/gfqqTkYSIFr6xvIfKSd52SlPbfFjOgiNb/p3Ueh+cVgYVdob9socYPKmhb2w9CrUMzd+qD6BV6VQ3vdptH4uH26sZjpZ6P5ik8SjRRgb6uKvQXRjqrcgscYEEIDOGG5O/inFcrEJtPEJqlBS+PdyuVTeJ1dW6N7MTY0tJajWCG8KhP50ccjZKXEHESVYuk0jn5z1T6gkcVNeGufQ1Ghdw2b8r573qZWm03DpfHAc5jQBOTl4tn0YCpPwK9ixCPD8UYdYvCenkY/DjtP8Zp7likxdhY4mRnQ0oWiG75LFP0jNKaZOqYJX72K/Qh0XNHD86bGF0oZzNwamqe5bSynZHZx9v1cKVWyLIFTmz+QvZ3xDi5uGPK3+VCLsh3glHnJBAvhj9+eXnt3/68P/A5T93Mon1CwxyEgJKtVWxY9sRcGhqmDCOn1qu/UuysQZAUZsHPICjxvYgIc+A7aTLoYkOzlwvPKuvZNZk7ZUIrNJHthzOwStt1ejRi49v9trt4htZpPOTdTJn71t/T4f7b66h2n0fkt18uBVemsinVoW1oPwcHAtkZiCc0ks1vLg+snluKLyIJmbSia19aM2UcG2SHhiYM8m7CYR4YGMnG45jaRQlkztuVkuinn81DwMAC6moSiJFR1YapVMG4KQZtWGocF7ZIlqWqVQTN1qA1RhZRNMZqWysMKcoUi8e609m5oKQUGIHTz9TO1Po53dOT05+mP05/GNYpZGYbHkP96sHEqbK84NiCSgXunLM+/qzqvez1AO0ltDqUQBPGLzx3IBpkp9OTA831ej2FJJ5aX88G3TC7ujy/+P3uYkI6fdp2IbZgRkaHg+31ffBmae7OhffOu2EuIj7HmdOgEq92eSNkRtldjZkqJztVOiMb4p7ykW+3Swi0XvuePn/t0NMpuCj4Cnx61HQJFnwYT6KhJ9yk/ktRTu4pEILrjgI6OHD64kWDmMHFd7GLET3eXN8RuyyH07O1knQ8rHmRfpc8XbmknZgsfdtyDabuoCZstkkPAa/Z5A2fpawGEZjNKMLtNiPuic36nhdDKondeL/o+/4bodkNzw==
sidebar_class_name: "post api-method"
info_path: docs/datamarketplace-api/dataspace-backend-api
custom_edit_url: null
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";
import Translate from "@docusaurus/Translate";

<Heading
as={"h1"}
className={"openapi__heading"}
children={"Create data source"}
>
</Heading>

<MethodEndpoint
method={"post"}
path={"/config/data-source/"}
context={"endpoint"}
>

</MethodEndpoint>



Create a new data source

<Heading
id={"request"}
as={"h2"}
className={"openapi-tabs__heading"}
>
<Translate id="theme.openapi.request.title">Request</Translate>
</Heading>

<ParamsDetails
parameters={undefined}
>

</ParamsDetails>

<RequestSchema
title={"Body"}
body={{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"dataSource":{"type":"object","properties":{"name":{"type":"string"},"location":{"type":"string"},"description":{"type":"string"},"policyUrl":{"type":"string"}}}}}}}}}
>

</RequestSchema>

<StatusCodes
id={undefined}
label={undefined}
responses={{"200":{"description":"Created data source","content":{"application/json":{"schema":{"type":"object","properties":{"dataSource":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"sector":{"type":"string"},"location":{"type":"string"},"description":{"type":"string"},"policyUrl":{"type":"string","format":"uri"},"coverImageUrl":{"type":"string","format":"uri"},"logoUrl":{"type":"string","format":"uri"},"openApiUrl":{"type":"string","format":"uri"},"verificationRequestURLPrefix":{"type":"string"},"credentialOfferEndpoint":{"type":"string"},"accessPointEndpoint":{"type":"string"},"privacyDashboardUrl":{"type":"string"},"codeOfConduct":{"type":"boolean"},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"}},"title":"Organisation"},"verification":{"type":"object","properties":{"id":{"type":"string"},"dataSourceId":{"type":"string"},"presentationExchangeId":{"type":"string"},"presentationState":{"type":"string"},"presentationRecord":{"type":"object"}},"title":"Verification"}}}}}}}}
>

</StatusCodes>



64 changes: 64 additions & 0 deletions docs/datamarketplace-api/config-create-verification.api.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
id: config-create-verification
title: "Create verification"
description: "Send verification request to connected wallet"
sidebar_label: "Create verification"
hide_title: true
hide_table_of_contents: true
api: eJyVVcFy2zYQ/RXMnmnSVXviqbbrdtzJNJkqaQ+OD2twRSKGAARYSlY5/PfMgrRNWZ1xoos4xO6+Xby3jwMwtgnqW9DebUwLdwU0lHQ0gY13UMOaXKN2FM3GaJR3KtLXnhIr9kp750gzNWqP1hJDAT5QzHE3DdRz1atIyPTPoggUkEj30fAB6tsBLgkjxYueO6hv78a7AiKl4F2iBPUAq/Nz+TvubFlP6QzRQCGQTI4lHkOwc0D1JUnSAEl3tEV54kMgqMHffyEtnYcovbOZIJcjvx1tmkVM4mhcC2MBDTKufR813fx/QIiUyHFGuX7UHbr2e0LXjExvRv1N2sfmtPlxLIANW3p1iTBOvwK2xJ0X/oJPeVgUYqCa6KxkrLOU56qW91RlWuOOYsqs9tFCDR1zSHVVYTCle2zKje9d86SCY0rfmR2pqQKICJ40shbSppteKuV5MIEQ7BwGNdznICjmh9993CJDDX/++/EE80JrSkmxfyCnAqYkajbcqQlJhUgb86iMUwLqo/lvUlxH2EibBVxiMvqtjiTmBDtnKuy5I8dPUt74qN5LuZXS1pBjEXcjAWiT2li/zwwat/EZcGbyN2RMATWpS9QPsrUXH25OEK/8NlhikkPVeN1vn9SScbkjdVroTKESzhXNElX42hSENKNJheh3pqFYfnafEiWVyG7Okt9RJNM6ZfIcfCjmbLy3tByvyJUb0xpGO5uKYtKd89a3hlLuMvcSqe3tvPwylEGnqfwsohIBTuOuzle/lD+XP82+gDr7gsPMifkjouPSeCiAtmhErKkPwUf+1bQvZ8cyfjkZC7BGk0u0KHoRUHekVuX5SeZ+vy8xH5c+ttWcm6p3N1fXf62vzyRHmJWl26JbFJ0M9OjGXzM7vBjfD3v2rFmmR66CReNktNz7MK/+8/dh8rR5+aerXrYk349OPKO+hWG4x0Sfoh1Hef21pyhmf1fADmNmPnt9AfMmiWM80GFeySCN7dD20tmJkYs5PJvUh/drWWs83sBXHpDLz0foDoviwzBFfBQHGEco5i6yI8B4N47jN0t0gTg=
sidebar_class_name: "post api-method"
info_path: docs/datamarketplace-api/dataspace-backend-api
custom_edit_url: null
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";
import Translate from "@docusaurus/Translate";

<Heading
as={"h1"}
className={"openapi__heading"}
children={"Create verification"}
>
</Heading>

<MethodEndpoint
method={"post"}
path={"/config/data-source/verification/"}
context={"endpoint"}
>

</MethodEndpoint>



Send verification request to connected wallet

<ParamsDetails
parameters={undefined}
>

</ParamsDetails>

<RequestSchema
title={"Body"}
body={undefined}
>

</RequestSchema>

<StatusCodes
id={undefined}
label={undefined}
responses={{"200":{"description":"Verification created","content":{"application/json":{"schema":{"type":"object","properties":{"verification":{"type":"object","properties":{"id":{"type":"string"},"dataSourceId":{"type":"string"},"presentationExchangeId":{"type":"string"},"presentationState":{"type":"string"},"presentationRecord":{"type":"object"}},"title":"Verification"}}}}}}}}
>

</StatusCodes>



Loading