HydraCore
API by router

Sheet import

Import Sheet To Entities

POST
/internal/v1/instances/{instance_id}/import/sheet-to-entities

Path Parameters

instance_id*Instance Id
Formatuuid

Request Body

application/json
  1. body
column_map*

Map column letters/indices to data fields. E.g. {'A': 'name', 'B': 'client', 'C': 'location'}

connection_name?string|null
customer_id*Customer Id
Formatuuid
definition_slug*Definition Slug

Entity definition slug (e.g. 'site')

has_header?Has Header
Defaulttrue
range?Range
Default"Sheet1"
spreadsheet_id*Spreadsheet Id
tags?array<string>|null

Response Body

Successful Response

application/json
  1. response
errors*array<string>
imported*Imported
skipped*Skipped
Example Request
curl -X POST 'https://example.com/internal/v1/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08/import/sheet-to-entities' \  -H 'Content-Type: application/json' \  -d '{  "column_map": {},  "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e",  "definition_slug": "string",  "spreadsheet_id": "string"}'
Example Response
{  "errors": [    "string"  ],  "imported": 0,  "skipped": 0}

Import Sheet To Staff

POST
/internal/v1/instances/{instance_id}/import/sheet-to-staff

Path Parameters

instance_id*Instance Id
Formatuuid

Request Body

application/json
  1. body
column_map*

Map column letters/indices to staff fields. E.g. {'A': 'name', 'B': 'phone', 'C': 'email', 'D': 'skills'}

connection_name?string|null
customer_id*Customer Id
Formatuuid
has_header?Has Header

First row is header (skip it)

Defaulttrue
range?Range

A1 notation range

Default"Sheet1"
spreadsheet_id*Spreadsheet Id

Response Body

Successful Response

application/json
  1. response
errors*array<string>
imported*Imported
skipped*Skipped
Example Request
curl -X POST 'https://example.com/internal/v1/instances/497f6eca-6276-4993-bfeb-53cbbbba6f08/import/sheet-to-staff' \  -H 'Content-Type: application/json' \  -d '{  "column_map": {},  "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e",  "spreadsheet_id": "string"}'
Example Response
{  "errors": [    "string"  ],  "imported": 0,  "skipped": 0}

Csv Import Entities

POST
/v1/customers/{customer_id}/import/csv-to-entities

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

customer_id*Customer Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
column_map*
Propertiesproperties <= 26
definition_slug*Definition Slug
has_header?Has Header
Defaulttrue
rows*array<array<string>>

2D array (max 10K rows)

Itemsitems <= 10000
tags?array<string>|null

Response Body

Successful Response

application/json
  1. response
errors*array<string>
imported*Imported
skipped*Skipped
Example Request
curl -X POST 'https://example.com/v1/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/import/csv-to-entities' \  -H 'Content-Type: application/json' \  -d '{  "column_map": {},  "definition_slug": "string",  "rows": [    [      "string"    ]  ]}'
Example Response
{  "errors": [    "string"  ],  "imported": 0,  "skipped": 0}

Csv Import Staff

POST
/v1/customers/{customer_id}/import/csv-to-staff

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

customer_id*Customer Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
column_map*

Map column indices to staff fields (max 26 columns). E.g. {'0': 'name', '1': 'phone'}

Propertiesproperties <= 26
has_header?Has Header
Defaulttrue
rows*array<array<string>>

2D array of row data (max 10K rows)

Itemsitems <= 10000

Response Body

Successful Response

application/json
  1. response
errors*array<string>
imported*Imported
skipped*Skipped
Example Request
curl -X POST 'https://example.com/v1/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/import/csv-to-staff' \  -H 'Content-Type: application/json' \  -d '{  "column_map": {},  "rows": [    [      "string"    ]  ]}'
Example Response
{  "errors": [    "string"  ],  "imported": 0,  "skipped": 0}
POST
/v1/customers/{customer_id}/import/sheet-to-entities

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

customer_id*Customer Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
column_map*
connection_name?string|null
definition_slug*Definition Slug
has_header?Has Header
Defaulttrue
range?Range
Default"Sheet1"
spreadsheet_id*Spreadsheet Id
tags?array<string>|null

Response Body

Successful Response

application/json
  1. response
errors*array<string>
imported*Imported
skipped*Skipped
Example Request
curl -X POST 'https://example.com/v1/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/import/sheet-to-entities' \  -H 'Content-Type: application/json' \  -d '{  "column_map": {},  "definition_slug": "string",  "spreadsheet_id": "string"}'
Example Response
{  "errors": [    "string"  ],  "imported": 0,  "skipped": 0}
POST
/v1/customers/{customer_id}/import/sheet-to-staff

Authorization

HTTPBearer
headerAuthorizationBearer <token>

Path Parameters

customer_id*Customer Id
Formatuuid

Header Parameters

X-Api-Key?string|null

Request Body

application/json
  1. body
column_map*
connection_name?string|null
has_header?Has Header
Defaulttrue
range?Range
Default"Sheet1"
spreadsheet_id*Spreadsheet Id

Response Body

Successful Response

application/json
  1. response
errors*array<string>
imported*Imported
skipped*Skipped
Example Request
curl -X POST 'https://example.com/v1/customers/497f6eca-6276-4993-bfeb-53cbbbba6f08/import/sheet-to-staff' \  -H 'Content-Type: application/json' \  -d '{  "column_map": {},  "spreadsheet_id": "string"}'
Example Response
{  "errors": [    "string"  ],  "imported": 0,  "skipped": 0}