post forwarding.md

For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to page URLs; this page is available as Markdown.

(POST) Forwarding of Data

Set up optional custom delivery endpoints to get a POST request any time one of your Spotters generates new data.

You can configure and manage your delivery endpoints in the Spotter Dashboard. To add a new delivery endpoint, click the menu icon ☰ and select Sofar API, then under Delivery Endpoints, enter the URL path in the New Delivery Endpoint field and click the Add Endpoint button. All of your delivery endpoints will be listed there. To remove one, click the corresponding Remove button.

Any new data will be included in the JSON body of the POST request. The content and structure vary based on the Spotter's operating mode and configuration. See the example request bodies below for more details.

Example POST requests

{% tabs %} {% tab title="Example Waves Mode Data" %}

{
    "data": {
        "spotterId": "SPOT-0018",
        "spotterName": "Mavericks 2",
        "payloadType": "waves",
        "batteryVoltage": 4.07,
        "batteryPower": -0.41,
        "solarVoltage": 0.0,
        "humidity": 32.8,
        "waves": [
            {
                "significantWaveHeight": 1.14,
                "peakPeriod": 9.3,
                "meanPeriod": 8.3,
                "peakDirection": 302.3,
                "peakDirectionalSpread": 42.11,
                "meanDirection": 286.2,
                "meanDirectionalSpread": 56.16,
                "timestamp": "2017-11-08T07:06:57.000Z",
                "latitude": 34.30115,
                "longitude": -120.6133
            },
            {
                "significantWaveHeight": 1.14,
                "peakPeriod": 10.24,
                "meanPeriod": 8.44,
                "peakDirection": 312.28,
                "peakDirectionalSpread": 37.07,
                "meanDirection": 284.18,
                "meanDirectionalSpread": 57.4,
                "timestamp": "2017-11-08T07:36:57.000Z",
                "latitude": 34.29883,
                "longitude": -120.61127
            }
        ],
        "track": [
            {
                "timestamp": "2017-11-08T07:06:57.000Z",
                "latitude": 34.30115,
                "longitude": -120.6133
            },
            {
                "timestamp": "2017-11-08T07:36:57.000Z",
                "latitude": 34.2988333,
                "longitude": -120.6112667
            }
        ],
        "frequencyData": [
            {
                "frequency": [0.02930,0.03906,0.04883,...],
                "df": [0.00977, 0.00977, 0.00977,...],
                "a1": [-0.097752, -0.095797, -0.054741,...],
                "b1": [-0.054741, 0.021505, 0.073314,...],
                "a2": [0.120235, 0.115347, -0.018573,...],
                "b2": [0.414467, 0.180841, 0.184751,...],
                "varianceDensity": [0.7111054247697032, 0.6186233367451381, 0.6411207778915046,...],
                "direction": [335.6588548979852, 338.1985905136482, 269.8174396209903,...],
                "directionalSpread": [79.181787169671, 74.12281945451112, 67.45630665882223,...],
                "timestamp": "2017-10-12T13:28:40.000Z",
                "latitude": 35.19229,
                "longitude": -120.86748
            }
        ],
        "partitionData": [
            {
                "partitions": [
                    {
                        "startFrequency": 0.025,
                        "endFrequency": 0.078125,
                        "significantWaveHeight": 0.69,
                        "meanPeriod": 15.38,
                        "meanDirection": 240.014,
                        "meanDirectionalSpread": 29.828
                    },
                    {
                        "startFrequency": 0.078125,
                        "endFrequency": 0.8,
                        "significantWaveHeight": 0.97,
                        "meanPeriod": 8.58,
                        "meanDirection": 251.647,
                        "meanDirectionalSpread": 29.645
                    }
                ],
                "location": {
                    "latitude": 35.19229,
                    "longitude": -120.86748,
                    "timestamp": "2017-10-12T13:28:40.000Z"
                }
            }
        ],
        "wind": [
          {
            'speed': 1, // in m/s
            'direction': 171,  // in degrees
            'location': {
                'latitude': 37.8973,
                'longitude': -122.6868833,
                'timestamp': '2019-08-09T20:14:54.000Z'
              },
              'seasurfaceId': 1 // 1: glassy, 2: choppy, 3: rough
          }
        ],
        "surfaceTemp": [
            {
                "degrees": 14.44,
                "location": {
                    "latitude": 37.7733,
                    "longitude": -122.3861833,
                    "timestamp": "2019-11-05T19:34:31.000Z"
                }
            }
        ],
        ...
    }
}

{% endtab %}

{% tab title="Example Track Mode Data" %}

{
    "data": {
        "spotterId": "SPOT-0018",
        "spotterName": "Mavericks 2",
        "payloadType": "track",
        "batteryVoltage": 4.13,
        "batteryPower": -0.03,
        "solarVoltage": 7,
        "humidity": 9.6,
        "waves": [],
        "track": [
            {
                timestamp: "2017-09-27T22:41:27.000Z",
                latitude: 34.777083,
                longitude: -120.7396172
            },
            { 
                timestamp: "2017-09-27T22:44:27.000Z",
                latitude: 34.7769077,
                longitude: -120.7390585
            },
            { 
                timestamp: "2017-09-27T22:47:27.000Z",
                latitude: 34.776726,
                longitude: -120.7385352
            },
            { 
                timestamp: "2017-09-27T22:50:27.000Z",
                latitude: 34.7765415,
                longitude: -120.7380058
            },
            { 
                timestamp: "2017-09-27T22:53:27.000Z",
                latitude: 34.7763545,
                longitude: -120.7375838
            }
        ],
        "frequencyData": [],
        "partitionData": [],
        "wind": [],
    }
}

{% endtab %}

{% tab title="Example Smart Mooring Data" %}

{
    "data": {
        "spotterId": "SPOT-0018",
        "spotterName": "Mavericks 2",
        "payloadType": "sensorData",
        "batteryVoltage": 4.13,
        "batteryPower": -0.03,
        "solarVoltage": 7,
        "humidity": 9.6,
        "sensorData": [
            {
                "latitude": 37.7733833,
                "longitude": -122.38715,
                "timestamp": "2020-12-01T23:46:43.000Z",
                "sensorPosition": 2,
                "units": "μbar",
                "value": 1020490,
                "unit_type": "pressure",
                "data_type_name": "rbrcoda3_meanpressure_21bits"
            },
            {
                "latitude": 37.7733833,
                "longitude": -122.38715,
                "timestamp": "2020-12-01T23:46:43.000Z",
                "sensorPosition": 2,
                "units": "μbar",
                "value": 100,
                "unit_type": "pressure",
                "data_type_name": "rbrcoda3_stdevpressure_15bits"
            },
            {
                "latitude": 37.7733833,
                "longitude": -122.38715,
                "timestamp": "2020-12-01T23:46:43.000Z",
                "sensorPosition": 2,
                "units": "°C",
                "value": 13.426700000000004,
                "unit_type": "temperature",
                "data_type_name": "rbrcoda3_meantemperature_20bits"
            },
            {
                "latitude": 37.7733833,
                "longitude": -122.38715,
                "timestamp": "2020-12-02T00:01:43.000Z",
                "sensorPosition": 2,
                "units": "μbar",
                "value": 1020390,
                "unit_type": "pressure",
                "data_type_name": "rbrcoda3_meanpressure_21bits"
            },
            {
                "latitude": 37.7733833,
                "longitude": -122.38715,
                "timestamp": "2020-12-02T00:01:43.000Z",
                "sensorPosition": 2,
                "units": "μbar",
                "value": 50,
                "unit_type": "pressure",
                "data_type_name": "rbrcoda3_stdevpressure_15bits"
            },
            {
                "latitude": 37.7733833,
                "longitude": -122.38715,
                "timestamp": "2020-12-02T00:01:43.000Z",
                "sensorPosition": 2,
                "units": "°C",
                "value": 15.081299999999999,
                "unit_type": "temperature",
                "data_type_name": "rbrcoda3_meantemperature_20bits"
            }
        ]
    }
}

{% endtab %}

{% endtabs %}