Connection bootstrapper service#
Nominal periodically scrapes connected databases (Connections) in order to maintain a database of all series that can be read from that database. This service is responsible for executing the scrape, and can be used manually to trigger a rescrape for any reason (for example, when updating a schema).
OpenAPI file: ConnectionBootstrapperService.json
Endpoints#
Populate series#
POST /data-source/connection/v1/{rid}/populateSeries
Populates the connection with series, by querying within the requested time range. If start or end are both omitted, will query the last 7 days by default. If one of start or end is omitted, will query a 7 day range from the provided start or end. Will throw if the requested range is larger than 30 days.
Path parameters
ridstring (RID) required
Body
startTimestring (date-time)
endTimestring (date-time)
Response
No content (HTTP 204).
Request
curl -X POST "https://api.gov.nominal.io/api/data-source/connection/v1/<rid>/populateSeries" \
-H "Authorization: Bearer <api key>" \
-H "Content-Type: application/json" \
--data '{
"startTime": "2026-01-01T00:00:00Z",
"endTime": "2026-01-01T00:00:00Z"
}'
import requests
response = requests.post(
"https://api.gov.nominal.io/api/data-source/connection/v1/<rid>/populateSeries",
headers={"Authorization": "Bearer <api key>"},
json={"startTime": "2026-01-01T00:00:00Z", "endTime": "2026-01-01T00:00:00Z"},
)
response.raise_for_status()
import httpx
response = httpx.post(
"https://api.gov.nominal.io/api/data-source/connection/v1/<rid>/populateSeries",
headers={"Authorization": "Bearer <api key>"},
json={"startTime": "2026-01-01T00:00:00Z", "endTime": "2026-01-01T00:00:00Z"},
)
response.raise_for_status()
import asyncio
import aiohttp
async def main() -> None:
async with aiohttp.ClientSession() as session:
async with session.post(
"https://api.gov.nominal.io/api/data-source/connection/v1/<rid>/populateSeries",
headers={"Authorization": "Bearer <api key>"},
json={
"startTime": "2026-01-01T00:00:00Z",
"endTime": "2026-01-01T00:00:00Z",
},
) as response:
response.raise_for_status()
asyncio.run(main())
Response: 204
No content.
Errors#
Errors shows how these errors are sent.
Each error’s errorName is Connection: followed by its name below.
Status |
Name |
Notes |
|---|---|---|
400 |
|
Cannot manually add tags to a Nominal connection. |
400 |
|
|
400 |
|
|
403 |
|
|
404 |
|
|
404 |
|
|
404 |
|
|
404 |
|
|
500 |
|
Page design based on Scalar, MIT License.