Dromo (1.0)
Download OpenAPI specification:Download
Dromo: contact@dromo.io Terms of Service
Dromo's APIs provide convenient programmatic access to your uploads and schemas. You can use them to create powerful automated workflows.
Get all uploads
Authorizations:
api_key
query Parameters
start | number Default: 0 start index |
end | number Default: 10000 end index, defaults to max return value, 10000 |
Responses
Response samples
- 200
Content type
application/json
{- "start": 0,
- "end": 0,
- "total_num_uploads": 0,
- "data": [
- {
- "id": "64b07421-f291-4449-a7d4-0f2e6ab912c4",
- "import_identifier": "new products",
- "raw_upload": {
- "filename": "my_file.csv",
- "storage_key": "c82e33b1-cea6-4271-9d21-38140c13fe28-my_file.csv"
}, - "user": {
- "id": "string",
- "name": "string",
- "email": "string",
- "companyId": "string",
- "companyName": "string"
}, - "created_date": "2019-08-24T14:15:22Z",
- "upload_status": "PENDING_UPLOAD",
- "total_num_rows": 0,
- "invalid_row_indexes": [
- 0
], - "errors": [
- { }
], - "storage_key": "64b07421-f291-4449-a7d4-0f2e6ab912c4",
- "field_order": [
- "string"
]
}
]
}
Get upload data
Authorizations:
api_key
path Parameters
id | string <uuid> |
query Parameters
start | number Default: 0 start index |
end | number Default: 10000 end index, defaults to max return value, 10000 |
Responses
Response samples
- 200
Content type
application/json
{- "start": 0,
- "end": 0,
- "total_num_rows": 0,
- "data": [
- {
- "name": "Jack",
- "email_address": "jack@thehill.com"
}, - {
- "name": "Jill",
- "email_address": "jill@thehill.com"
}
]
}
Response samples
- 200
Content type
application/json
{- "id": "64b07421-f291-4449-a7d4-0f2e6ab912c4",
- "import_identifier": "new products",
- "raw_upload": {
- "filename": "my_file.csv",
- "storage_key": "c82e33b1-cea6-4271-9d21-38140c13fe28-my_file.csv",
}, - "user": {
- "id": "string",
- "name": "string",
- "email": "string",
- "companyId": "string",
- "companyName": "string"
}, - "created_date": "2019-08-24T14:15:22Z",
- "upload_status": "PENDING_UPLOAD",
- "total_num_rows": 0,
- "invalid_row_indexes": [
- 0
], - "errors": [
- { }
], - "storage_key": "64b07421-f291-4449-a7d4-0f2e6ab912c4",
- "field_order": [
- "string"
]
}
Response samples
- 200
Content type
application/json
[- {
- "id": "0631f213-ca91-41e0-9a88-7430c7d0ca28",
- "name": "last - email",
- "fields": [
- {
- "key": "lastName",
- "type": "string",
- "label": "last",
- "validators": [
- {
- "validate": "required"
}
]
}, - {
- "key": "email",
- "type": "email",
- "label": "email",
- "validators": [
- {
- "validate": "required"
}
]
}
], - "settings": {
- "styleOverrides": {
- "global": {
- "primaryTextColor": "#394B59",
- "secondaryTextColor": "#667D8D"
}, - "primaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#007BFF"
}, - "secondaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#6C757D"
}
}, - "allowCustomFields": false,
- "invalidDataBehavior": "BLOCK_SUBMIT"
}, - "hooks": {
- "rowHooks": [
- "(record) => { record.row.foo.value = 'bar'; return record }"
]
}
}
]
Create a new import schema
Authorizations:
api_key
Request Body schema: application/json
name required | string |
required | Array of StringFieldSchema (object) or CheckboxFieldSchema (object) or EmailFieldSchema (object) or SelectFieldSchema (object) or NumberFieldSchema (object) or DateTimeFieldSchema (object) or objects or objects or objects or objects or objects or objects or objects or objects (DeveloperFieldSchema) |
required | object (DeveloperSettingsSchema) |
object (HooksSchema) |
Responses
Request samples
- Payload
Content type
application/json
{- "id": "0631f213-ca91-41e0-9a88-7430c7d0ca28",
- "name": "last - email",
- "fields": [
- {
- "key": "lastName",
- "type": "string",
- "label": "last",
- "validators": [
- {
- "validate": "required"
}
]
}, - {
- "key": "email",
- "type": "email",
- "label": "email",
- "validators": [
- {
- "validate": "required"
}
]
}
], - "settings": {
- "styleOverrides": {
- "global": {
- "primaryTextColor": "#394B59",
- "secondaryTextColor": "#667D8D"
}, - "primaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#007BFF"
}, - "secondaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#6C757D"
}
}, - "allowCustomFields": false,
- "invalidDataBehavior": "BLOCK_SUBMIT"
}, - "hooks": {
- "rowHooks": [
- "(record) => { record.row.foo.value = 'bar'; return record }"
]
}
}
Response samples
- 201
Content type
application/json
{- "id": "0631f213-ca91-41e0-9a88-7430c7d0ca28",
- "name": "last - email",
- "fields": [
- {
- "key": "lastName",
- "type": "string",
- "label": "last",
- "validators": [
- {
- "validate": "required"
}
]
}, - {
- "key": "email",
- "type": "email",
- "label": "email",
- "validators": [
- {
- "validate": "required"
}
]
}
], - "settings": {
- "styleOverrides": {
- "global": {
- "primaryTextColor": "#394B59",
- "secondaryTextColor": "#667D8D"
}, - "primaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#007BFF"
}, - "secondaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#6C757D"
}
}, - "allowCustomFields": false,
- "invalidDataBehavior": "BLOCK_SUBMIT"
}, - "hooks": {
- "rowHooks": [
- "(record) => { record.row.foo.value = 'bar'; return record }"
]
}
}
Get an import schema
Authorizations:
api_key
path Parameters
id required | string <uuid> Example: 66d6300d-1414-4655-83b4-8c80fc527315 Headless import ID |
Responses
Response samples
- 200
Content type
application/json
{- "id": "0631f213-ca91-41e0-9a88-7430c7d0ca28",
- "name": "last - email",
- "fields": [
- {
- "key": "lastName",
- "type": "string",
- "label": "last",
- "validators": [
- {
- "validate": "required"
}
]
}, - {
- "key": "email",
- "type": "email",
- "label": "email",
- "validators": [
- {
- "validate": "required"
}
]
}
], - "settings": {
- "styleOverrides": {
- "global": {
- "primaryTextColor": "#394B59",
- "secondaryTextColor": "#667D8D"
}, - "primaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#007BFF"
}, - "secondaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#6C757D"
}
}, - "allowCustomFields": false,
- "invalidDataBehavior": "BLOCK_SUBMIT"
}, - "hooks": {
- "rowHooks": [
- "(record) => { record.row.foo.value = 'bar'; return record }"
]
}
}
Update an import schema
Authorizations:
api_key
path Parameters
id required | string <uuid> Example: 66d6300d-1414-4655-83b4-8c80fc527315 Headless import ID |
Request Body schema: application/json
name required | string |
required | Array of StringFieldSchema (object) or CheckboxFieldSchema (object) or EmailFieldSchema (object) or SelectFieldSchema (object) or NumberFieldSchema (object) or DateTimeFieldSchema (object) or objects or objects or objects or objects or objects or objects or objects or objects (DeveloperFieldSchema) |
required | object (DeveloperSettingsSchema) |
object (HooksSchema) |
Responses
Request samples
- Payload
Content type
application/json
{- "id": "0631f213-ca91-41e0-9a88-7430c7d0ca28",
- "name": "last - email",
- "fields": [
- {
- "key": "lastName",
- "type": "string",
- "label": "last",
- "validators": [
- {
- "validate": "required"
}
]
}, - {
- "key": "email",
- "type": "email",
- "label": "email",
- "validators": [
- {
- "validate": "required"
}
]
}
], - "settings": {
- "styleOverrides": {
- "global": {
- "primaryTextColor": "#394B59",
- "secondaryTextColor": "#667D8D"
}, - "primaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#007BFF"
}, - "secondaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#6C757D"
}
}, - "allowCustomFields": false,
- "invalidDataBehavior": "BLOCK_SUBMIT"
}, - "hooks": {
- "rowHooks": [
- "(record) => { record.row.foo.value = 'bar'; return record }"
]
}
}
Response samples
- 200
Content type
application/json
{- "id": "0631f213-ca91-41e0-9a88-7430c7d0ca28",
- "name": "last - email",
- "fields": [
- {
- "key": "lastName",
- "type": "string",
- "label": "last",
- "validators": [
- {
- "validate": "required"
}
]
}, - {
- "key": "email",
- "type": "email",
- "label": "email",
- "validators": [
- {
- "validate": "required"
}
]
}
], - "settings": {
- "styleOverrides": {
- "global": {
- "primaryTextColor": "#394B59",
- "secondaryTextColor": "#667D8D"
}, - "primaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#007BFF"
}, - "secondaryButton": {
- "textColor": "#FFFFFF",
- "backgroundColor": "#6C757D"
}
}, - "allowCustomFields": false,
- "invalidDataBehavior": "BLOCK_SUBMIT"
}, - "hooks": {
- "rowHooks": [
- "(record) => { record.row.foo.value = 'bar'; return record }"
]
}
}
Retrieve headless import
Authorizations:
api_key
path Parameters
id required | string <uuid> Example: 66d6300d-1414-4655-83b4-8c80fc527315 Headless import ID |
Responses
Response samples
- 200
Content type
application/json
{- "id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "schema_id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "status": "AWAITING_UPLOAD",
- "original_filename": "user_data.csv",
- "created_date": "2019-08-24T14:15:22Z",
- "modified_date": "2019-08-24T14:15:22Z",
- "result_metadata": null,
- "import_errors": null
}
Retrieve headless import result data
Authorizations:
api_key
path Parameters
id required | string <uuid> Example: 66d6300d-1414-4655-83b4-8c80fc527315 Headless import ID |
query Parameters
start | number Default: 0 start index |
end | number Default: 10000 end index, defaults to max return value, 10000 |
Responses
Response samples
- 200
Content type
application/json
{- "data": [
- {
- "last": "Phillips",
- "email": "jason@moxie.xyz"
}
], - "start": 0,
- "end": 0,
- "total_num_rows": 1
}
List headless imports
Authorizations:
api_key
query Parameters
offset | number Default: 0 starting index |
limit | number Default: 100 total number of imports to return, defaults 100 max 1000 |
Responses
Response samples
- 200
Content type
application/json
{- "count": 75,
- "results": [
- {
- "id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "schema_id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "status": "AWAITING_UPLOAD",
- "original_filename": "user_data.csv",
- "created_date": "2019-08-24T14:15:22Z",
- "modified_date": "2019-08-24T14:15:22Z"
}
]
}
Create a new headless import
Authorizations:
api_key
Request Body schema: application/json
schema_id | string |
string or null | |
Array of arrays or null | |
object or null (ImportMetaData) |
Responses
Request samples
- Payload
Content type
application/json
{- "schema_id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "original_filename": "user.csv",
- "initial_data": [
- {
- "name": "Jeff",
- "email": "jeff@dromo.io"
}, - {
- "name": "Sarah",
- "email": "sarah@dromo.io"
}
], - "import_metadata": {
- "user": {
- "id": "jeff_id",
- "name": "Jeff",
- "email": "jeff@dromo.io",
- "companyName": "Dromo",
- "companyId": "dromo_id"
}
}
}
Response samples
- 201
Content type
application/json
{- "id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "schema_id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "status": "AWAITING_UPLOAD",
- "original_filename": "user_data.csv",
- "created_date": "2019-08-24T14:15:22Z",
- "modified_date": "2019-08-24T14:15:22Z",
- "result_metadata": null,
- "import_errors": null
}