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) (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) (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 |
original_filename | string |
object or null (ImportMetaData) |
Responses
Request samples
- Payload
Content type
application/json
{- "schema_id": "94187d21-9820-420f-b08c-a80cbbf52604",
- "original_filename": "user.csv",
- "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
}