diff --git a/.gitignore b/.gitignore
index 9187cef64..c3170dd1d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,4 +7,5 @@ build/**
dist/**
redis-data
redis_data
-.env
\ No newline at end of file
+.env
+.DS_Store
diff --git a/docs/backend-sdk/java.mdx b/docs/backend-sdk/java.mdx
new file mode 100644
index 000000000..65551dfe6
--- /dev/null
+++ b/docs/backend-sdk/java.mdx
@@ -0,0 +1,4 @@
+---
+title: 'Java SDK'
+description: 'Introduction to our Java SDK'
+---
\ No newline at end of file
diff --git a/docs/backend-sdk/python.mdx b/docs/backend-sdk/python.mdx
new file mode 100644
index 000000000..f6cf94bf9
--- /dev/null
+++ b/docs/backend-sdk/python.mdx
@@ -0,0 +1,4 @@
+---
+title: 'Python SDK'
+description: 'Introduction to our Python SDK'
+---
\ No newline at end of file
diff --git a/docs/backend-sdk/typescript.mdx b/docs/backend-sdk/typescript.mdx
new file mode 100644
index 000000000..b3a5ad63e
--- /dev/null
+++ b/docs/backend-sdk/typescript.mdx
@@ -0,0 +1,54 @@
+---
+title: 'TypeScript SDK'
+description: 'Introduction to our Typescript SDK'
+---
+
+
+# Installing & instantiating the Typescript SDK
+Install it with your favorite package manager, e.g.:
+
+```bash
+npm i @panora/typescript-sdk
+```
+
+Instantiate the SDK:
+
+```javascript
+import { PanoraSDK } from '@panora/typescript-sdk';
+
+const sdk = new PanoraSDK('YOUR_API_KEY');
+```
+
+
+Visit your dashboard to create an API Key
+
+
+### List all connections to your app
+
+```javascript
+import { PanoraSDK } from '@panora/typescript-sdk';
+
+const sdk = new PanoraSDK('process.env.PANORA_API_KEY');
+
+(async () => {
+ const result = await sdk.connections.getConnections();
+ console.log(result);
+})();
+```
+
+This will list all the connections available, across all users.
+```json
+{
+ "id_connection": "6cd057cb-39df-44ce-9be8-ax9d167c3940",
+ "status": "valid",
+ "provider_slug": "hubspot",
+ "account_url": null,
+ "token_type": "oauth",
+ "access_token": "904570287538dddf72fd821e4d5cec51:66266ee62310752d4a243c12b133656edd5af42947a832f4439c710334e045e59782107d40e856c27e813b7a6ed068100376b3ff83d1c8237330ba034605dd846650524e6fcfb708e3f62b1401d8a0dc3d90022cdf9ad1c76fc9209f3a5d153f6e33bbb8f6642600a6c9a098e81fb1e2da0fdff0455b7823519fba195b5065b4319a314013e22f934c80e4f60bec4385989c92c2dd9036d19f720e85b10325c42dc8a035c363e279af0e4ab2c4cd016051c5b32bf6009bf0df0aa8565d048856",
+ "refresh_token": "904570287538dddf72fd821e4d5cec51:58d9c1492b908caef83885b467d1ab1ea9fc6994a59ed4392edbb5365b89a02a8a4995347d8ec37037192a96856e2c24",
+ "expiration_timestamp": "2023-12-20T18:44:44.869Z",
+ "created_at": "2023-12-10T18:20:06.275Z",
+ "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
+ "id_linked_user": "d7a0af02-0f9b-40a6-86a9-612dcfe341fe"
+}
+```
diff --git a/docs/connections/api/list.mdx b/docs/connections/api/list.mdx
new file mode 100644
index 000000000..9f7fc07af
--- /dev/null
+++ b/docs/connections/api/list.mdx
@@ -0,0 +1,5 @@
+---
+title: 'List connections'
+description: 'List all connections across all platforms using this endpoint'
+openapi: "GET /connections"
+---
\ No newline at end of file
diff --git a/docs/connections/overview.mdx b/docs/connections/overview.mdx
new file mode 100644
index 000000000..3305e901c
--- /dev/null
+++ b/docs/connections/overview.mdx
@@ -0,0 +1,76 @@
+---
+title: 'The connection object'
+description: "Introduction to Panora's `connection` concept"
+---
+
+## The `connection` object represents an access right to a user's data
+
+
+
+```json JSON
+{
+ "id_connection": "6cd057cb-39df-44ce-9be8-ab9d167c3940",
+ "status": "valid",
+ "provider_slug": "hubspot",
+ "account_url": null,
+ "token_type": "oauth",
+ "access_token": "",
+ "refresh_token": "",
+ "expiration_timestamp": "2023-12-20T18:44:44.869Z",
+ "created_at": "2023-12-10T18:20:06.275Z",
+ "id_project": "801f9ede-c698-4e66-a7fc-48d19eebaa4f",
+ "id_linked_user": "d7a0af02-0f9b-40a6-86a9-612dcfe341fe"
+}
+```
+
+
+
+
+
+
+
+ Panora Defined UUID for this connection
+
+
+
+ The status of the `connection`. Can be `active`, or `expired`
+
+
+
+ The provider slug for this `connection`
+
+
+
+ The account URL for this `connection`. Optionnal.
+
+
+
+ The token type for this `connection`
+
+
+
+ The access token for this `connection`
+
+
+
+ The refresh token for this `connection`
+
+
+
+ The expiration timestamp for this `connection`
+
+
+
+ The creation timestamp for this `connection`
+
+
+
+ The project UUID this `connection` belongs to.
+
+
+
+ The linked user UUID this `connection` belongs to.
+
+
+
+
diff --git a/docs/crm/contacts/api/get.mdx b/docs/crm/contacts/api/get.mdx
index 824562d1c..291a342f8 100644
--- a/docs/crm/contacts/api/get.mdx
+++ b/docs/crm/contacts/api/get.mdx
@@ -1,5 +1,5 @@
---
title: 'Retrieve a contact'
-description: 'Retrieve a contact from connected CRMs'
+description: 'Retrieve a contact by id from connected CRMs'
openapi: "GET /crm/contact/{id}"
---
diff --git a/docs/crm/contacts/overview.mdx b/docs/crm/contacts/overview.mdx
index 0c345855a..c709b0618 100644
--- a/docs/crm/contacts/overview.mdx
+++ b/docs/crm/contacts/overview.mdx
@@ -1,7 +1,6 @@
---
title: 'The Contact Object'
description: 'Introduction to our CRM `contact` Unified Model'
-
---
## The Unified `contact` Object
The `contact` object is used to represent an existing point of contact at a company in a CRM system.
@@ -44,6 +43,7 @@ The `contact` object is used to represent an existing point of contact at a comp
+
Panora Defined UUID for this contact
diff --git a/docs/mint.json b/docs/mint.json
index 81f311227..a03c7a271 100644
--- a/docs/mint.json
+++ b/docs/mint.json
@@ -40,6 +40,11 @@
"url": "https://github.com/panoratech/Panora"
},
"tabs": [
+
+ {
+ "name": "Connections",
+ "url": "connections"
+ },
{
"name": "CRM",
"url": "crm"
@@ -79,6 +84,14 @@
"quick-start"
]
},
+ {
+ "group": "Connections",
+ "pages": [
+ "connections/overview",
+ "connections/api/list"
+ ]
+ }
+ ,
{
"group": "CRM",
"pages": [
@@ -222,6 +235,15 @@
"features/custom-fields"
]
},
+ {
+ "group": "Backend SDKs",
+ "pages": [
+ "backend-sdk/typescript",
+ "backend-sdk/python",
+ "backend-sdk/java"
+ ]
+ }
+ ,
{
"group": "Support",
"pages": [