Bulk Create Variables

This endpoint creates one or more new Variable(s) at once.

Request

To create multiple new Variables please make a POST request to the following URL:

HTTP Method

URL

POST

https://industrial.api.ubidots.com/api/v2.0/variables/_/bulk/create/

To create multiple new Variables in a Device please make a POST request to the following URL:

HTTP Method

URL

POST

https://industrial.api.ubidots.com/api/v2.0/devices/<device_key>/variables/_/bulk/create

Query Parameters

Parameter

Type

Use

Description

token

String

Authentication

Authentication Token can optionally be sent as a query parameter.

Body Parameters

The body is an Array containing Variable JSON objects. Each Variable object can contain the following body parameters:

Parameter

Type

Required?

Default Value

Description

label

String

Yes

N/A (required)

API label of Variable

name

String

No

Same as label

Name of Variable

description

String

No

""

Description of Variable

device

<device_key>

Yes

N/A (required)

Key of Device (id or label)

tags

String Array

No

[]

Variable tags

properties

Object

No

{}

Variable properties. Allowed attributes: _icon, _color, minimum_value, maximum_value, isLocationVariable, _position, _scale, _offset

type

String

No

raw

Variable type. Allowed values raw (default) and synthetic

unit

String

No

""

Variable unit

syntheticExpression

String

No

""

Synthetic Expression of Variable

Header

Parameter

Type

Description

X-Auth-Token

String

Authentication Token of account

X-Bulk-Operation

Boolean

Need to be set to True for the bulk operation to work

Content-Type

String (application/json)

Content type of body

curl -X POST 'https://industrial.api.ubidots.com/api/v2.0/variables/_/bulk/create/' \
 -H 'Content-Type: application/json' \
 -H 'X-Auth-Token: oaXBo6ODhIjPsusNRPUGIK4d72bc73' \
 -H 'X-Bulk-Operation: True' \
 -d '[
    {
        "label": "first-variable",
        "device": "~first-device"
    },
    {
        "label": "second-variable",
        "device": "~first-device"
    },
    {
        "label": "third-variable",
        "device": "~first-device"
    },
    {
        "label": "fourth-variable",
        "device": "~first-device"
    }
]'
{
    "task": {
        "id": "5e1794561a9ca5651e6b59ec"
    }
}
{
    "code": 400001,
    "message": "Validation Error.",
    "detail": {
        ....
    }
}
{
    "code": 401001,
    "message": "Authentication credentials were not provided.",
    "detail": "Authentication credentials were not provided."
}
{
    "detail": "Header `X-BULK-OPERATION` should be provided for bulk operation."
}

Response

Returns a Task Id of the asynchronous process.