---
title: Communication Methods
slug: api-docs-v1/communication-methods
docTags: 
createdAt: 2025-08-27T09:28:45.604Z
---

The Autoscriber SDK and API support the following communication methods:

- [Get](docId\:YrCjRaaAmdwoIQwdCLHkJ)&#x20;
- [Socket.io](docId\:YrCjRaaAmdwoIQwdCLHkJ)&#x20;
- [SSE](docId\:YrCjRaaAmdwoIQwdCLHkJ)&#x20;
- [Webhook](docId\:YrCjRaaAmdwoIQwdCLHkJ)&#x20;

# Get

This is the simplest option but not recommended as you won't get any real-time results.&#x20;

::::CodeDrawer{title="POST API request with the GET method" isResponseExpanded="true" autoGeneratedAnchorSlug="post-api-request-with-the-get-method" legacyHash="nfgO_aT0gJYKkEvPQr0kx"}
:::CodeblockTabsExamples
```json
{
    ... rest of body
    "communication": {
        "method": "get"
    }
}
```
:::

:::CodeblockTabsResponses
```javascript
{
    "id": "<RANDOM ID>",
    "location": "https://io.autoscriber.com/v1/scribe/<RANDOM ID>"
}
```
:::
::::

To retrieve the note, send a Get to the location received in the previous step:

::::CodeDrawer{title="GET Location -> Note" isResponseExpanded="true" autoGeneratedAnchorSlug="get-location-note" legacyHash="Bj_EwHCXR0xFOf67XbrFb"}
:::CodeblockTabsExamples
```json
https://io.autoscriber.com/v1/scribe/<RANDOM ID>
```
:::

:::CodeblockTabsResponses
```javascript
    {
        <NOTE HERE>
    }
```
:::
::::

# Socket.io

This will set up a socket connection for you to send your audio over and it will return resuls in real-time.

::::CodeDrawer{title="POST API request with the socket.io method" isResponseExpanded="true" autoGeneratedAnchorSlug="post-api-request-with-the-socketio-method" legacyHash="zHmlqznWxbF6_Ebqr7MNT"}
:::CodeblockTabsExamples
```json
{
    ... rest of body
    "communication": {
        "method": "socketio"
    }
}
```
:::

:::CodeblockTabsResponses
```javascript
    {
        "id": "<RANDOM ID>",
        "location": "https://io.autoscriber.com/v1/scribe/<RANDOM ID>",
        "endpoint": "https://autoscriber.webpubsub.azure.com",
        "path": "/clients/socketio/hubs/autoscriber-api",
        "token": "eyJhbGci..."
    }
```
:::
::::

::::CodeDrawer{title="POSTing chunks to chunkLocation" isResponseExpanded="true" autoGeneratedAnchorSlug="posting-chunks-to-chunklocation" legacyHash="Q6AOsUfyKzSHyoQGD_kwz"}
:::CodeblockTabsExamples
```json
{
  "index": 0,
  "base64": "<STRING>",
  "final": false
}
```
:::

:::CodeblockTabsResponses
```javascript
    {
        <NOTE HERE>
    }
```
:::
::::

Once you have sent the "final": <font color="#EF4444">`true`</font> audio chunk, you will receive the final note via the socket established (seen in the response of the above POST).

# SSE

Using server-sent events the response with contain a keep-alive header and sends back results in real-time.

::::CodeDrawer{title="POST API request with the SSE method" isResponseExpanded="true" autoGeneratedAnchorSlug="post-api-request-with-the-sse-method" legacyHash="IC-6ra6ZWhJsRqI7YmQr3"}
:::CodeblockTabsExamples
```json
{
    ... rest of body
    "communication": {
        "method": "sse"
    }
}
```
:::

:::CodeblockTabsResponses
```javascript
    {
        "id": "<RANDOM ID>",
        "location": "https://io.autoscriber.com/v1/scribe/<RANDOM ID>"
        "chunklocation": "https://io.autoscriber.com/v1/scribe/<RANDOM ID>"
    }
```
:::
::::

::::CodeDrawer{title="POSTing chunks to chunkLocation" isResponseExpanded="true" autoGeneratedAnchorSlug="posting-chunks-to-chunklocation-1" legacyHash="OeKMvV2lBvyHdRlSE4J4A"}
:::CodeblockTabsExamples
```json
{
  "index": 0,
  "base64": "<STRING>",
  "final": false
}
```
:::

:::CodeblockTabsResponses
```javascript
    {
        <NOTE HERE>
    }
```
:::
::::

Once you have sent the "final": <font color="#EF4444">`true`</font> audio chunk, you will receive the resultant summary and transcript via the connection established with the location (seen in the response of the above POST).

# Webhook

You provide a webhook which we'll call (in real-time) with the results. This does require that you have an endpoint that is available over the internet .

::::CodeDrawer{title="POST API request with the webhook method" isResponseExpanded="true" autoGeneratedAnchorSlug="post-api-request-with-the-webhook-method" legacyHash="aXjmESqNrpBUyI2UuCfzH"}
:::CodeblockTabsExamples
```json
{
    ... rest of body
    "communication": {
        "method": "webhook",
        "webhook": {
            "url": "https://YOUR_ENDPOINT",
            "headers": {"Authorization": "Basic ..."}
        }
    }
}
```
:::

:::CodeblockTabsResponses
```javascript
    {
        "id": "<RANDOM ID>",
        "chunklocation": "https://io.autoscriber.com/v1/scribe/<RANDOM ID>"
    }
```
:::
::::

