Get Started with Data Intake API

Everything you need to know to get started with the Data Intake API.

Prerequisites: Have a Visier tenant that contains sources you want to load data into. If you don't already have a Visier tenant, try Visier now by signing up for the trial.

Get a Visier account

To use the APIs, you must have a Visier account with a profile that has the API capability. If you don't have an account, contact your administrator. They will create an account for you with permissions that allow you to view data.

In addition to an API profile, your API user must have a profile with the following capabilities:

  • Data: Write (access level), Simple (view level)
  • Model: Write (access level), Simple (view level)
  • Manage Jobs
  • Data Upload

Generate your API key and security token

To make an API request, you will need an API key and a security token. For more information about how to get an API key and request a security token, see API Authentication.

Note: If using Postman to send requests, you can request a security token directly in the tool, see Use Postman to Call Visier APIs.

Choose your tool

To use Visier APIs, you need to choose a tool to make your first request. This can be Postman or whichever method you usually use to make HTTP requests. For more information about using Postman for your first request, see Use Postman to Call Visier APIs.

Put your data files in the right place

To send data files using the API, the data files must be in a location that your API application can access. If using Postman, the data files you want to upload must be in Postman's files folder on your local device. For more information, see "Working directory" in Setting up Postman.

Make your first request

To test that you have everything set up correctly, we'll make a request to the Retrieve a list of sources endpoint. For a complete list of available endpoints, see "Data Intake" in API Reference.

Replace {vanity_name} with your tenant name. The API key is expected as a header, while the security token is expected as a cookie.

Tip:  

To find your vanity name:

  1. In Visier, in the global workspace, click Settings > Single Sign-On.
  2. Under Single Sign-On, find your service provider endpoint; for example, https://jupiter.visier.com/VServer/auth. In this example, jupiter is the vanity name.
Copy
cURL sample request: Retrieve all sources
curl -X GET --url 'https://{vanity_name}.api.visier.io/v1/op/data-sources' \
-H 'apikey:{api_key}' \
-H 'Cookie:VisierASIDToken={security_token}'

If everything was set up correctly and the request was successful, you should see a similar response:

Copy
Sample response
{
    "sources": [
        {
            "sourceId": "3fc392f9-1af3-49c1-a80b-4cc31b9d6609"
            "name": "Compensation_Budgeted",
            "columns": [
                {
                    "columnName": "TenantCode"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "EventDate"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "EmployeeID"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "Attribute"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "Value"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                } ],
            "isInherited": true 
        },
        {
            "sourceId": "4cfa10e5-4a9a-45a3-930a-35ed8004a7fc"
            "name": "Employee_Starts",
            "columns": [
                {
                    "columnName": "TenantCode"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "EffectiveDate"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "EmployeeID"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "HireType"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                }, {
                    "columnName": "Action"
                    "dataType": "TEXT"
                    "isMandatory": true
                    "allowEmpty": true
                } ],
        "isInherited": true 
    }
]

Note:  

  • All fields specify the required data type and name. For example, Employee_Starts has a field called EmployeeID. Its data type must be TEXT and it must contain a value in the data file. If you try to load Employee_Starts without a field called Employee-ID, it will fail.
  • Fields with "dataType": "DATE" specify acceptable date formats.
  • "isMandatory": true indicates the field must contain a value. If a mandatory field is empty, the data load will fail.
  • "allowEmpty": true indicates the value is optional and may be empty.

Next steps

Now that you've successfully authenticated and completed your first API request, you can call more Visier APIs!

To learn more: