# ANTConnect Python

Tags:

Modelleur

# Samenvatting

Welkom! Dit is de plugin die jou python script verbind met de API's van ANT. We hebben deze library speciaal gemaakt om het eenvoudig te houden, maar mocht je zelf direct verbinding willen maken met de api's van ANT, ga dan naar: https://developer.antcde.io (opens new window)

# Installatie

Informatie over de package kan hier (opens new window) gevonden worden.

# Vereisten

Om de plugin te gebruiken wordt geadviseerd om python 3.7 of hoger te gebruiken. Met daarbij pip geinstalleerd.

Om ANTConnect voor Python te installeren, voer de volgende code uit:

pip install ANTConnect

Let op

Mocht uw computer het commando pip niet herkennen, dan moet u deze toevoegen aan de $path variable op uw computer.

# Eerste start

To start with python, import ANTConnect and initiate the object:

#Import
import antconnect

#Initiate
ant = antconnect.API()

Then, login with your client credentials, which can be generated at the apps.antcde.io (opens new window) settings page.


#Login
ant.login(client_id,client_secret,username,password)

#Go with it!
ant.project_create('My First Project!') 
..

# Documentatie

De bestaande functies binnen ANTConnect zijn hieronder te vinden:

Tip

* is optioneel

# Initieren

Om de ANT module in te laden, gebruik je de volgende code

#Import
import antconnect

#Initiate
ant = antconnect.API()

Hierbij kunnen 2 parameters meegegeven worden ter aanpassing

Parameter Type Standaard waarde Beschrijving
host text https://api.antcde.io/ De host waarmee u wilt verbinden
logging boolean False Geeft meer console log output

Voorbeeeld van dit gebruik:

#Import
import antconnect

#Initiate
ant = antconnect.API(host='https://api.antcde.io/',logging=True)

# Parameters

Bij het inloggen krijgt het ant object een aantal eigenschappen.

Parameter Type Voorbeeld Beschrijving
_authenticated boolean False Geeft aan of u successvol ingelogd bent
_expires_at datestamp [datetime object] datetime object wanneer de accesstoken verloopt

# Refreshing tokens

Als je ANT voor een langere tijd gebruikt in een sessie, zal ANT automatisch een refresh token aanvragen. Bij het aanroepen van een API aanvraag, zal ANT controleren of de access_token al vervallen is, en zodoende een token aanvragen. Dit betekend dat jij je geen zorgen hoeft te maken over het opnieuw inloggen en/of tokens aanvragen!

# API Rate Limiter

Daarnaast heeft ANT een API Rate limit. Dit limiet geeft aan hoeveel calls je per minuut mag uitsturen naar de server. Als ANT vind dat je te veel API calls in een minuut gebruikt, krijg je dat te horen en moet je even wachten.

ANTConnect heeft een automatische API Rate Limiter ingebouwd, die er voor zorgt dat de API calls in de wachtrij gezet worden alvorens ze de server overvragen. Het script gaat tijdelijk in slaapmodus totdat het weer oke is om verder te gaan. Zo hoef jij je geen zorgen te maken over te veel API Calls.

Tip

Als er buiten het script nog andere sessies lopen, zoals via de browser, heb je kans dat alsnog het limiet wordt overschreden. Als dat het geval is, bouw een fallback scenario in, in je script voor deze situatie

# Login

Om in te loggen in ANT, gebruik je de volgende code:

ant.login(clientId, clientSecret, username, password)
Parameter Type Voorbeeld Beschrijving
clientId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De clientID van uw App
clientSecret GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 de clientSecret van uw App
username text [email protected] Uw emailadres
password text John007Loves2ANT! Uw wachtwoord

# Projecten

In ANT begint het met een project. Alle tabellen en functionaliteiten zitten in de projecten.

# Alle projecten

ant.projects_read()

Om een project uit te lijsten. Response is een JSON met een lijst, met daar in de project details

Voorbeeld response
[
    {
        "id": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
        "license": "00af065e-8a4c-45b5-8a6a-fad76c1c7ee1",
        "name": "Project 1",
        "number": "001",
        "description": "Mijn eerste project",
        "image": "f4c5603a-2d98-4506-b192-45d051306368.jpg"
    },
    {
        "id": "2c61230f-7b90-4f4c-ac60-52d272c44a92",
        "license": "00af065e-8a4c-45b5-8a6a-fad76c1c7ee1",
        "name": "A1",
        "number": "A1 - Apeldoorn",
        "description": "Herbeoordeling brug 12",
        "image": "a66b7e85-9d37-48c8-a177-9e81973a60fd.jpg"
    },
]

# Project details

ant.project_read(projectId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Voorbeeld response
{
    "id": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "license": "00af065e-8a4c-45b5-8a6a-fad76c1c7ee1",
    "name": "Project 1",
    "number": "001",
    "description": "Mijn eerste project",
    "image": "f4c5603a-2d98-4506-b192-45d051306368.jpg"
}

# Nieuw project

ant.project_create(licenseId, name, number, description, imageName, imageExtension, imageData)
Parameter Type Voorbeeld Beschrijving
licenseId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van uw licentie
name Text Verbreding N201 Naam van uw project
number Text IM_01321 Uw eigen projectnummer
Description Text Verbreding N201 ter hoogte van hmp 12 beschrijving van uw project
imageName* Text arialoverview naam van afbeelding tbv projectoverzicht
imageExtension* Text png extentie van afbeelding
imageData* base64 HfhjgHfsdfewfsd ruwe base64 inhoud van afbeelding, UTF-8 gecodeerd
Voorbeeld response
{
    "id": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "license": "00af065e-8a4c-45b5-8a6a-fad76c1c7ee1",
    "name": "Project 1",
    "number": "001",
    "description": "Mijn eerste project",
    "image": "f4c5603a-2d98-4506-b192-45d051306368.jpg"
}

# Update een project

ant.project_Update(projectId, name, number, description, imageName, imageExtension, imageData)

U kan een van de waarden gebruiken om het project te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
name* Text Verbreding N201 Naam van uw project
number* Text IM_01321 Uw eigen projectnummer
Description* Text Verbreding N201 ter hoogte van hmp 12 beschrijving van uw project
imageName* Text arialoverview naam van afbeelding tbv projectoverzicht
imageExtension* Text png extentie van afbeelding
imageData* base64 HfhjgHfsdfewfsd ruwe base64 inhoud van afbeelding, UTF-8 gecodeerd

Waarschuwing

In versie 2020.12.1 kan alleen name geupdate worden

Voorbeeld response
{
    "id": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "license": "00af065e-8a4c-45b5-8a6a-fad76c1c7ee1",
    "name": "Project 1",
    "number": "001",
    "description": "Mijn eerste project",
    "image": "f4c5603a-2d98-4506-b192-45d051306368.jpg"
}

# Verwijder een project

ant.project_delete(projectId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# Tables

In de projecten kunnen tabellen aangemaakt worden.

# Alle tabellen

ant.tables_read(projectId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project

Om de tabellen uit te lijsten. Response is een JSON met een lijst, met daar in de tabeleigenschappen

Voorbeeld response
[
    {
        "id": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
        "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
        "name": "AL1_Coordinaten"
    },
    {
        "id": "561dd0c8-e9aa-4b27-8fc6-936494944d95",
        "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
        "name": "Kunstwerken"
    }
]

# Tabel eigenschappen

ant.table_read(projectId,TableId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
Voorbeeld response
{
    "id": "561dd0c8-e9aa-4b27-8fc6-936494944d95",
    "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "name": "Kunstwerken"
}

# Nieuwe tabel

ant.table_create(projectId,name)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
name Text AL1_Coordinaten Naam van de tabel
Voorbeeld response
{
    "id": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
    "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "name": "AL1_Coordinaten"
}

# Update een tabel

ant.table_update(projectId, tableId, name)

U kan een van de waarden gebruiken om het project te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
name Text AL2_Coordinaten Naam van de tabel
Voorbeeld response
{
    "id": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
    "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "name": "AL2_Coordinaten"
}

# Verwijder een tabel

ant.table_delete(projectId, tableId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# Kolommen

De kolommen van de tabellen kunnen als volgt gedefinieerd worden:

# Alle Kolommen

ant.columns_read()

Om de kolommen van een tabel uit te lijsten. Response is een JSON met een lijst, met daar in de kolomeigenschappen

Voorbeeld response
[
    {
        "id": "2ac1f174-6519-4462-8f9f-0dd2b50f29b1",
        "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
        "name": "Station",
        "type": "text",
        "default_value": "1",
        "options_value": "[]",
        "required": 1,
        "order": 10
    },
    {
        "id": "915c8e6e-a910-41af-87f1-4c92db7f20fd",
        "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
        "name": "Offset",
        "type": "text",
        "default_value": "1",
        "options_value": "[]",
        "required": 1,
        "order": 20
    }
]

# Kolom eigenschappen

ant.column_read(projectId,TableId, columnId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
columnId GUID 2ac1f174-6519-4462-8f9f-0dd2b50f29b1 De GUID van de kolom
Voorbeeld response
{
    "id": "2ac1f174-6519-4462-8f9f-0dd2b50f29b1",
    "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
    "name": "Station",
    "type": "text",
    "default_value": "1",
    "options_value": "[]",
    "required": 1,
    "order": 10
}

# Nieuwe kolom

ant.column_create(projectId,tableId, name, fieldType, defaultValue, options, required)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
name Text Station Naam van de kolom
fieldType Text integer kolom type. Zie tabel hieronder voor beschikbare types
defaultValue Text 0 Standaard waarde als deze niet wordt meegegeven
options list ["A","B","C"] Een lijst met dropdown waarden
required Boolean True True/False of deze kolom verplicht ingevuld moet worden bij het aanmaken van een record
ordinal* Integer 30 Volgorde (laag naar hoog)

# Kolom types

Type gebruik
integer integer (hele getallen)
float getallen met een komma
text UTF-8 karakters
date Datum
email text in email format @ domeinnaam verplicht
dropdown Geeft een validatie op de invoervelden. Opties te definieren in options
sbscode UTF-8 karakters, met daarin de SBSCode van het stuk data
Voorbeeld response
    {
        "id": "915c8e6e-a910-41af-87f1-4c92db7f20fd",
        "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
        "name": "Offset",
        "type": "text",
        "default_value": "1",
        "options_value": "[]",
        "required": 1,
        "order": 20
    }

# Update een kolom

ant.column_update(projectId, tableId, columnId, name)

U kan een van de waarden gebruiken om het project te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
columnId GUID 2ac1f174-6519-4462-8f9f-0dd2b50f29b1 De GUID van de kolom
name Text OffsetLinks Naam van de kolom
options* list ["A","B","C"] Een lijst met dropdown waarden
required* Boolean True True/False of deze kolom verplicht ingevuld moet worden bij het aanmaken van een record
default* String OffsetLinks Standaard waarde
ordinal* Integer 30 Volgorde (laag naar hoog)

* parameters zijn optioneel

Waarschuwing

In versie 2020.12.1 kan alleen name geupdate worden

Voorbeeld response
    {
        "id": "915c8e6e-a910-41af-87f1-4c92db7f20fd",
        "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445",
        "name": "OffsetLinks",
        "type": "text",
        "default_value": "1",
        "options_value": "[]",
        "required": 1,
        "order": 20
    }

# Verwijder een kolom

ant.column_delete(projectId, tableId, columnId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
columnId GUID 2ac1f174-6519-4462-8f9f-0dd2b50f29b1 De GUID van de kolom
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# Records

Tabellen worden gevuld met records. Dit kan rij per rij, maar ook in een batch.

# Alle records

ant.records_read(projectId, tableId, limit, offset,session,chunk_size)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
limit* integer 1000 Maximaal aantal records die je wilt ontvangen
offset* integer 1000 Vanaf welk record nummer je de waarden wilt ontvangen
session* GUID 6362e608-8c7a-4769-a324-06a420857ae1 GUID van een sessie wat je wilt filteren
chunk_size* integer 10000 Aantal records per blok (reduceren bij veel kolommen)

* Is optioneel

De combinatie Offset en limit geeft de mogelijkheid om pagination te doen.

[
    {
        "id": "2ed76181-6ac3-4784-82dd-d6489058d71b",
        "Station": "12",
        "OffsetLinks": "10.1"
    },
    {
        "id": "a95f8806-8ae4-4e67-8c5c-634a5d84ba1f",
        "Station": "11",
        "OffsetLinks": "10.3"
    },
    {
        "id": "b50226e6-969e-499f-a734-e44b250a3768",
        "Station": "10",
        "OffsetLinks": "10.2"
    },
    {
        "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
        "Station": "9",
        "OffsetLinks": "10.5"
    }
]

# Records bij revisie

ant.records_by_revision(projectId, tableId, revisionId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
revisionId GUID 7b2c365d-1f5a-49eb-951b-2123bfbd01445 De GUID van de revisie
[
    {
        "id": "2ed76181-6ac3-4784-82dd-d6489058d71b",
        "Station": "12",
        "OffsetLinks": "10.1"
    },
    {
        "id": "a95f8806-8ae4-4e67-8c5c-634a5d84ba1f",
        "Station": "11",
        "OffsetLinks": "10.3"
    },
    {
        "id": "b50226e6-969e-499f-a734-e44b250a3768",
        "Station": "10",
        "OffsetLinks": "10.2"
    },
    {
        "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
        "Station": "9",
        "OffsetLinks": "10.5"
    }
]

# Zoeken in records

Om een zoekterm te vinden in een set van kolom(men).

ant.records_search(projectId, tableId, searchFields, searchPrase, offset, limit, session)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
searchFields list ['SBS', 'Name'] De lijst van kolomnamen waar in te zoeken
searchPhrase* string Goedgekeurd door Geeft alle rijen terug waar deze waarde in voor komt
offset* integer Vanaf welk record nummer je de waarden wilt ontvangen
limit* integer maximaal aantal records die je wilt ontvangen
session* GUID 6362e608-8c7a-4769-a324-06a420857ae1 GUID van een sessie wat je wilt filteren
chunk_size* integer 10000 Aantal records per blok (reduceren bij veel kolommen)

* is optioneel, een van de parameters searchPhrase, searchExact of searchRange kan per keer gebruikt worden.

[
    {
        "id": "2ed76181-6ac3-4784-82dd-d6489058d71b",
        "Station": "12",
        "OffsetLinks": "10.1"
    },
    {
        "id": "a95f8806-8ae4-4e67-8c5c-634a5d84ba1f",
        "Station": "11",
        "OffsetLinks": "10.3"
    },
    {
        "id": "b50226e6-969e-499f-a734-e44b250a3768",
        "Station": "10",
        "OffsetLinks": "10.2"
    },
    {
        "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
        "Station": "9",
        "OffsetLinks": "10.5"
    }
]

# Exact zoeken in records

ant.records_search_exact(projectId, tableId, searchFields, searchExact, searchExact, searchRange, session)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
searchFields list ['SBS', 'Name'] De lijst van kolomnamen waar in te zoeken
searchExact* string ANT Exacte zoekterm, geeft alleen de rijen terug waar de cell exact overeenkomt
offset* integer 2000 Vanaf welk record nummer je de waarden wilt ontvangen
limit* integer 1000 maximaal aantal records die je wilt ontvangen
session* GUID 6362e608-8c7a-4769-a324-06a420857ae1 GUID van een sessie wat je wilt filteren
chunk_size* integer 10000 Aantal records per blok (reduceren bij veel kolommen)

* is optioneel, een van de parameters searchPhrase, searchExact of searchRange kan per keer gebruikt worden.

[
    {
        "id": "2ed76181-6ac3-4784-82dd-d6489058d71b",
        "Station": "12",
        "OffsetLinks": "10.1"
    },
    {
        "id": "a95f8806-8ae4-4e67-8c5c-634a5d84ba1f",
        "Station": "11",
        "OffsetLinks": "10.3"
    },
    {
        "id": "b50226e6-969e-499f-a734-e44b250a3768",
        "Station": "10",
        "OffsetLinks": "10.2"
    },
    {
        "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
        "Station": "9",
        "OffsetLinks": "10.5"
    }
]

# Zoeken in records met een range

Zoeken in een kolom met getallen binnen een bepaalde range. Alleen, min en/of max is ook mogelijk.

ant.records_search_by_range(projectId, tableId, searchFields, searchExact, minimalValue, maximalValue, session)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
searchFields list ['SBS', 'Name'] De lijst van kolomnamen waar in te zoeken
minimalValue* integer 10 Minimale waarde van de zoekopdracht
maximalValue* integer 25 maximale waarde van de zoekopdracht
offset* integer 2000 Vanaf welk record nummer je de waarden wilt ontvangen
limit* integer 1000 maximaal aantal records die je wilt ontvangen
session* GUID 6362e608-8c7a-4769-a324-06a420857ae1 GUID van een sessie wat je wilt filteren
chunk_size* integer 10000 Aantal records per blok (reduceren bij veel kolommen)

* is optioneel, een van de parameters searchPhrase, searchExact of searchRange kan per keer gebruikt worden.

[
    {
        "id": "2ed76181-6ac3-4784-82dd-d6489058d71b",
        "Station": "12",
        "OffsetLinks": "10.1"
    },
    {
        "id": "a95f8806-8ae4-4e67-8c5c-634a5d84ba1f",
        "Station": "11",
        "OffsetLinks": "10.3"
    },
    {
        "id": "b50226e6-969e-499f-a734-e44b250a3768",
        "Station": "10",
        "OffsetLinks": "10.2"
    },
    {
        "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
        "Station": "9",
        "OffsetLinks": "10.5"
    }
]

# Record detail

ant.record_read(projectId, tableId, recordId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
recordId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de record
Voorbeeld response
{
    "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
    "Station": "9",
    "OffsetLinks": "10.5"
}

# Record(s) aanmaken

Een record toevoegen aan een tabel kan op de volgende manier:

ant.records_create(project_id, table_id, records, session)

In de dictionary van records kan een of meerdere records in een lijst meegegeven worden.
Een voorbeeld van een record is:

records = [
    {
        "Station": "112",
        "OffsetLinks": "9,1"
    }
]
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
record list [{"Station": "9", "OffsetLinks": "10.5"}] Een lijst met de records (dictionaries), waarbij de keys de exacte kolomnamen bevatten
session* GUID 6362e608-8c7a-4769-a324-06a420857ae1 GUID van een sessie waaar je de data van wilt wegschrijven
Voorbeeld response
{
    "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
    "Station": "9",
    "OffsetLinks": "10.5"
}

# Records verifieren

Het importeren van grote datasets kan veel tijd vergen. Voodat de dat ingeladen wordt, is het verstandig om de structuur en waarden te controleren aan de hand van de verifier.

Om dit te doen, kan de volgende functie gebruikt worden:

ant.records_verify(project_id, table_id, records)

In de dictionary van records kan een of meerdere records in een lijst meegegeven worden.
Een voorbeeld van een record is:

records = [
    {
        "Station": "112",
        "OffsetLinks": "9,1"
    }
]
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
record list [{"Station": "9", "OffsetLinks": "10.5"}] Een lijst met de records (dictionaries), waarbij de keys de exacte kolomnamen bevatten
Voorbeeld response
{
  "message": "Verified 123 items in 10 seconds.",
  "status": "ok",
  "errors": []
}

# Record Update

ant.record_update(projectId, tableId, recordId, updatedValues, session)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
recordId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de record
updatedValues dictionary {"Station": "9", "OffsetLinks": "10.5"} Een dictionary met de records, waarbij de keys de exacte kolomnamen bevatten
session* GUID 6362e608-8c7a-4769-a324-06a420857ae1 GUID van een sessie waaar je de data van wilt wegschrijven
Voorbeeld response
{
    "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
    "Station": "9",
    "OffsetLinks": "10.5"
}

# Record verwijderen

ant.record_delete(projectId, tableId, recordId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
recordId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de record
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# Record geschiedenis

Om de geschiedenis van een record terug te halen, gebruik dan:

ant.record_history(projectId, tableId, recordId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
recordId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de record
Voorbeeld response
[
  {
    "id": "994bc576-27ed-4bfc-aea7-b32ca8541a88",
    "revisioned": "2019-12-13 15:01:46",
    "user_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "user_name": "Johanna Smith",
    "user_email": "[email protected]",
    "Station": "9",
    "OffsetLinks": "10.5"
  }
]

# Records op een gegeven moment

Om te kijken hoe een record op een gegeven moment er uit zag, kan deze functie gebruikt worden:

records_at_moment(projectId, tableId, timestamp, session, offset, limit, chunk_size)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
timestamp Unix timestamp (opens new window) 1673509407 Unix tijd stempel van het moment dat de tabel gerendert moet worden
offset* integer 1000 Vanaf welk record nummer je de waarden wilt ontvangen
limit* integer 1000 Maximaal aantal records die je wilt ontvangen
session* GUID 6362e608-8c7a-4769-a324-06a420857ae1 GUID van een sessie wat je wilt filteren
chunk_size* integer 10000 Aantal records per blok (reduceren bij veel kolommen)

* is optioneel, een van de parameters searchPhrase, searchExact of searchRange kan per keer gebruikt worden.

# Een document toevoegen

Voor het toevoegen van documenten in kolommen met het type document, moet het document meegegeven worden. Dit kan in de normale records_create en record_update scripts.

Om een document toe te voegen, geef je niet een string mee als cel waarde, maar een documentObject. Om dit object te maken kan je gebruik maken van:

ant.parse_document(documentLocation, documentTitle)
Parameter Type Voorbeeld Beschrijving
documentLocation text C://project/assets/uploads/specifications.pdf Het absolute pad tot het document
documentTitle* text Specifications_NL_0132 Mocht u de titel willen overschrijven, kan dat in deze parameter

Het document wordt nu geparsed en kan als object ingesloten worden in diverse API functionaliteiten.

# Een document downloaden

ant.download_document(projectId, tableId, documentId, fileLocation, fileName)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
documentId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van het document
fileLocation text ./downloads/ de locatie waar het script het document opslaat
fileName text specifications de bestandsnaam van het op te slaan document

Het document wordt na het uitvoeren van het script op de door u aangewezen locatie geplaatst.

# Revisies

Alle wijzigingen in de tabellen worden bijgehouden door het systeem. Om de staat van een tabel vast te zetten is het mogelijk om een revisie te maken. Vervolgens kan de data van een tabel teruggehaald worden van een specifieke revisie (dus tijdsstempel)

# Alle Revisies

ant.revisions_read()

Geeft een lijst met revisies terug die gemaakt zijn voor de tabel

Voorbeeld response
[
    {
        "id": "1278e71c-3592-4fa8-a09b-902f0f9a7633",
        "name": "Voorlopig Ontwerp Week 2",
        "timestamp": "2019-05-13 10:11:11",
        "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
        "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445"
    }
]

# Revisie eigenschappen

ant.revision_read(projectId, tableId, revisionId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
revisionId GUID 1278e71c-3592-4fa8-a09b-902f0f9a7633 De GUID van de revisie
Voorbeeld response
{
    "id": "1278e71c-3592-4fa8-a09b-902f0f9a7633",
    "name": "Voorlopig Ontwerp Week 2",
    "timestamp": "2019-05-13 10:11:11",
    "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445"
}

# Nieuwe revisie

ant.revision_create(projectId, tableId, name)

Maakt een revisie aan met de huidige tijd als tijdsstempel

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
name Text Voorlopig Ontwerp Week 2 Naam van de revisie
Voorbeeld response
{
    "id": "1278e71c-3592-4fa8-a09b-902f0f9a7633",
    "name": "Voorlopig Ontwerp Week 2",
    "timestamp": "2019-05-13 10:11:11",
    "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445"
}

# Update een revisie

ant.revision_update(projectId, tableId, revisionId, name)

U kan een van de waarden gebruiken om het project te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
revisionId GUID 1278e71c-3592-4fa8-a09b-902f0f9a7633 De GUID van de revisie
name Text Voorlopig Ontwerp Week 2a Nieuwe naam van de revisie
Voorbeeld response
{
    "id": "1278e71c-3592-4fa8-a09b-902f0f9a7633",
    "name": "Voorlopig Ontwerp Week 2a",
    "timestamp": "2019-05-13 10:11:11",
    "project": "6d50e6ea-3349-48c2-be4e-e4457c4e3cf1",
    "table": "7b2c365d-1f5a-49eb-951b-2b3bfbd01445"
}

# Verwijder een revisie

ant.revision_delete(projectId, tableId, revisionId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
tableId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
revisionId GUID 1278e71c-3592-4fa8-a09b-902f0f9a7633 De GUID van de revisie
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# Taken

Binnen ANT is het mogelijk om taken aan te maken.

# Alle taken

ant.tasks_read()

Geeft een lijst met taken voor de gebruiker

Voorbeeld response
[
    {
        "id": "3439c20e-a9f9-41b0-98a0-62cf1bd5d707",
        "project": "855922ca-fb2a-4cf2-9f32-db6c9ac8cf6f",
        "created_by": "a7e38c80-7936-448e-8881-35bc728eeedf",
        "name": "Nieuwe taak",
        "description": "Test beschrijving",
        "start_date": "2021-02-01 10:22:12",
        "due_date": "2020-12-17 17:12:13",
        "assigned_user": "a7e38c80-7936-448e-8881-35bc728eeedf",
        "response": "Ik heb de taak gelezen.",
        "appendix": {
            "name": "document",
            "extension": "txt",
            "size": 9,
            "mimetype": "text/plain",
            "id": "4728d8cc-67b6-476d-a96b-2a5772b1f9ee"
        },
        "status": "open"
    }
]

# Detail van een taak

ant.task_read(task_id)

Leest de details van een taak

Voorbeeld response
{
    "id": "ec4c39af-b601-486d-aa15-876b88fc844b",
    "project": "855922ca-fb2a-4cf2-9f32-db6c9ac8cf6f",
    "created_by": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "name": "test",
    "description": "Test beschrijving",
    "assigned_user": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "response": "update JWK",
    "appendix": {
        "name": "test",
        "extension": "txt",
        "size": 9,
        "mimetype": "text/plain",
        "id": "88b28e4f-70a5-47ea-873a-c526e22e36ab"
    },
    "status": "completed",
    "start_date": "2021-02-02 18:07:15",
    "due_date": "2021-02-12 00:00:00",
    "log": [
        {
            "changes": [
                {
                    "previous": "2021-12-20 00:00:00",
                    "next": "2021-02-12 00:00:00",
                    "field": "due_date"
                },
                {
                    "previous": "update!",
                    "next": "update",
                    "field": "response"
                },
                {
                    "previous": "open",
                    "next": "completed",
                    "field": "status"
                }
            ],
            "date": "2021-02-02 18:07:15",
            "user": "a7e38c80-7936-448e-8881-35bc728eeedf"
        }
    ]
}

# Nieuwe taak

ant.task_create(project_id, name, description, status, due_date, assigned_user, start_date) 
Parameter Type Voorbeeld Beschrijving
taskId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
name Text Nieuwe Taak De naam van de tabel
description Text Je moet deze documentatie goed lezen De beschrijving van de taak
status Text open Status van taak, kan zijn: open, completed, failed, cancelled
due_date Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
start_date Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
assigned_user GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 GUID van de gebruiker
appendix* document Document Object, gebruik ant.parse_document() Het document ter ondersteuning van de taak
Voorbeeld response
{
    "id": "3fb15f37-64c4-4732-99bb-acfac5047d83",
    "project": "286af2f7-a46d-4871-b0fa-8498b3438089",
    "created_by": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "created_at": "2021-02-02 19:14:40",
    "name": "test",
    "response": "test",
    "description": "Test beschrijving",
    "status": "open",
    "due_date": "2020-12-17 17:12:13",
    "assigned_user": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "start_date": "2020-12-19 17:12:13",
    "appendix": "bbb23f12-1352-4d8b-a6b7-7e19f214996f"
}

# Update een taak

ant.task_update_name(task_update, name)

U kan een van de waarden gebruiken om de basis gegevens van een taak aan te passen:

Parameter Type Voorbeeld Beschrijving
name* Text Nieuwe Taak De naam van de tabel
description* Text Je moet deze documentatie goed lezen De beschrijving van de taak
start_date* Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
Voorbeeld response
{
    "id": "310cbc12-c7e7-43b5-b03c-cc815b599a9c",
    "project": "286af2f7-a46d-4871-b0fa-8498b3438089",
    "created_by": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "name": "Goede naam",
    "description": "Test beschrijving",
    "assigned_user": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "response": "test",
    "appendix": "f7a59545-287d-4887-adf3-aed275562f44",
    "status": "open",
    "start_date": "2020-12-19 17:12:13",
    "due_date": "2020-12-17 17:12:13"
}

# Nieuw bericht

ant.task_respond(taskId, response, assigned_user, status, due_date) 
Parameter Type Voorbeeld Beschrijving
response Text Je moet deze documentatie goed lezen De beschrijving van de taak
status Text open Status van taak, kan zijn: open, completed, failed, cancelled
assigned_user GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 GUID van de gebruiker
due_date Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
appendix* document Document Object, gebruik ant.parse_document() Het document ter ondersteuning van de taak
Voorbeeld response
{
    "id": "3fb15f37-64c4-4732-99bb-acfac5047d83",
    "project": "286af2f7-a46d-4871-b0fa-8498b3438089",
    "created_by": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "created_at": "2021-02-02 19:14:40",
    "name": "test",
    "response": "test",
    "description": "Test beschrijving",
    "status": "open",
    "due_date": "2020-12-17 17:12:13",
    "assigned_user": "a7e38c80-7936-448e-8881-35bc728eeedf",
    "start_date": "2020-12-19 17:12:13",
    "appendix": "bbb23f12-1352-4d8b-a6b7-7e19f214996f"
}

# Verwijder een taak

ant.task_delete(taskId)
Parameter Type Voorbeeld Beschrijving
taskId GUID 310cbc12-c7e7-43b5-b03c-cc815b599a9c De GUID van de taak
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# Download een bestand van een taak

ant.task_download(taskId, documentId, fileLocation, fileName)
Parameter Type Voorbeeld Beschrijving
taskId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de tabel
documentId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van het document
fileLocation text ./downloads/ de locatie waar het script het document opslaat
fileName text specifications de bestandsnaam van het op te slaan document

Het document wordt na het uitvoeren van het script op de door u aangewezen locatie geplaatst.

# Verkrijg de workflow data van een taak

ant.task_getJob(projectId, taskId)

Gebruik deze functie om job informatie op te halen uit een taak.

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
taskId GUID 310cbc12-c7e7-43b5-b03c-cc815b599a9c De GUID van de taak
Voorbeeld response
{
    "id": "48da7e99-e07e-4807-8d14-c8cd360ce645",
    "parent": "7ca66014-f8ec-4142-a0ad-df7dab621d60",
    "session": "6166946f-115a-4db4-86c3-39af333174ed",
    "node": "d866d929-3afe-41e1-87e7-5a4af8c852fd",
    "task": {
        "id": "613c7b65-b68d-4509-b5be-9f08b4766565",
        "project": "77fd0d06-a50d-47b9-8b60-09665084b0d2",
        "created_by": "9473154a-f175-4a39-afb9-0b30d6c59a76",
        "name": "New Task",
        "description": "Job for workflow: set and block: Calculating",
        "assigned_user": "9473154a-f175-4a39-afb9-0b30d6c59a76",
        "response": "Calculating Task is created",
        "appendix": null,
        "status": "open",
        "type": "workflow",
        "start_date": "2021-05-05 13:30:25",
        "due_date": "2021-05-15 13:30:25"
    },
    "status": "assigned",
    "config": {
        "id": "448b65f1-02f9-42e7-824e-d4228f6e9535",
        "block": "65fec1ce-c1a7-4cd9-8384-c001fc2215c9",
        "name": "config",
        "extension": "json",
        "size": 7,
        "mimetype": "text/plain",
        "file": "ew0KICAicGFuZW"
    }
}

# Sluit een taak af

ant.job_finish(projectId, JobId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Job GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de job
Voorbeeld response
{
    "message": "Job successfully finished"
}

DANGER

Nieuwe functies hieronder

# Taken lezen

tasks_read(license, project_id, status, user, today)
Parameter Type Voorbeeld Beschrijving
license* GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van de licentie
project_id* GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Status* Text open Status van taak, kan zijn: open, completed, failed, cancelled
user* GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 GUID van de gebruiker
today* bool False True or False

* parameters zijn optioneel

Voorbeeld response
[
  {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "license": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "project": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "parent": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "title": "Task 1",
    "description": "description",
    "number": "1",
    "planned_start": "2023-01-24T12:28:04.309Z",
    "planned_end": "2023-01-24T12:28:04.309Z",
    "due": "2023-01-24T12:28:04.309Z",
    "status": [
      "open",
      "closed"
    ],
    "priority": [
      "low",
      "normal",
      "high",
      "urgent"
    ],
    "task_type": {
      "type": "ANT task",
      "executable": false,
      "custom_1": "1",
      "custom_2": "2",
      "custom_3": "3",
      "custom_4": "4",
      "custom_5": "5",
      "metadata": ""
    },
    "task_project": {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "name": "Project 1",
      "number": "1"
    },
    "sbscode": {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "code": "002",
      "parent": "001",
      "label": "Code 2"
    },
    "assigned_to": {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "first_name": "John",
      "last_name": "Doe",
      "email": "[email protected]"
    },
    "relations": [
      {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "previous_task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "type": "BLOCKED_BY"
      }
    ],
    "created_by": {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "first_name": "John",
      "last_name": "Doe",
      "email": "[email protected]"
    },
    "created_at": "2023-01-24T12:28:04.309Z"
  }
]

# Taak lezen

task_read(task_id)
Parameter Type Voorbeeld Beschrijving
task_id GUID 310cbc12-c7e7-43b5-b03c-cc815b599a9c De GUID van de taak
Voorbeeld response
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "license": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "project": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "parent": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "title": "Task 1",
  "description": "description",
  "number": "1",
  "planned_start": "2023-01-24T12:34:58.816Z",
  "planned_end": "2023-01-24T12:34:58.816Z",
  "due": "2023-01-24T12:34:58.816Z",
  "status": [
    "open",
    "closed"
  ],
  "priority": [
    "low",
    "normal",
    "high",
    "urgent"
  ],
  "task_type": {
    "type": "ANT task",
    "executable": false,
    "custom_1": "1",
    "custom_2": "2",
    "custom_3": "3",
    "custom_4": "4",
    "custom_5": "5",
    "metadata": ""
  },
  "task_project": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "Project 1",
    "number": "1"
  },
  "sbscode": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "code": "002",
    "parent": "001",
    "label": "Code 2"
  },
  "assigned_to": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "first_name": "John",
    "last_name": "Doe",
    "email": "[email protected]"
  },
  "relations": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "previous_task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "type": "BLOCKED_BY"
    }
  ],
  "created_by": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "first_name": "John",
    "last_name": "Doe",
    "email": "[email protected]"
  },
  "created_at": "2023-01-24T12:34:58.816Z"
}

# Taaknaam updaten

task_update_name(task_id, name)
Parameter Type Voorbeeld Beschrijving
task_id GUID 310cbc12-c7e7-43b5-b03c-cc815b599a9c De GUID van de taak
name Text Python programeren De nieuwe naam van de taak
Voorbeeld response
{
  "project": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "assigned_to": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "title": "Task 1",
  "description": "description",
  "number": "1",
  "planned_start": "2023-01-24T12:34:37.343Z",
  "planned_end": "2023-01-24T12:34:37.343Z",
  "due": "2023-01-24T12:34:37.343Z",
  "sbscode": "string",
  "priority": [
    "low",
    "normal",
    "high",
    "urgent"
  ]
}

# Reageren op taak

task_respond(task_id, response, assigned_user, status, due_date, appendix)
Parameter Type Voorbeeld Beschrijving
task_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
response Text Je moet deze documentatie goed lezen De reactie op de taak
assigned_user* GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 GUID van de gebruiker
status* Text open Status van taak, kan zijn: open, completed, failed, cancelled
due_date* Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
appendix* document Document Object, gebruik ant.parse_document() Het document ter ondersteuning van de taak

* parameters zijn optioneel

Let op!

assigned_user, status, due_date en appendix wordt in de toekomst niet meer ondersteund

Voorbeeld response
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "license": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "project": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "parent": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "title": "Task 1",
  "description": "description",
  "number": "1",
  "planned_start": "2023-01-24T12:33:56.196Z",
  "planned_end": "2023-01-24T12:33:56.196Z",
  "due": "2023-01-24T12:33:56.196Z",
  "status": [
    "open",
    "closed"
  ],
  "priority": [
    "low",
    "normal",
    "high",
    "urgent"
  ],
  "task_type": {
    "type": "ANT task",
    "executable": false,
    "custom_1": "1",
    "custom_2": "2",
    "custom_3": "3",
    "custom_4": "4",
    "custom_5": "5",
    "metadata": ""
  },
  "task_project": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "Project 1",
    "number": "1"
  },
  "sbscode": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "code": "002",
    "parent": "001",
    "label": "Code 2"
  },
  "assigned_to": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "first_name": "John",
    "last_name": "Doe",
    "email": "[email protected]"
  },
  "relations": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "previous_task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "type": "BLOCKED_BY"
    }
  ],
  "created_by": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "first_name": "John",
    "last_name": "Doe",
    "email": "[email protected]"
  },
  "created_at": "2023-01-24T12:33:56.197Z"
}

# Updaten taak

update_task(task_id, title, description, priority, planned_start, planned_end, assigned_to, due_date, sbs_code)
Parameter Type Voorbeeld Beschrijving
task_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het taak
title* Text Formulier invullen Voer hier de titel van de taak in
description* Text Je moet deze documentatie goed lezen De beschrijving van de taak
priority* Text normal Prioriteit van de taak kan zijn: low, normal, high of urgent
planned_start* Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
planned_end* Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
assigned_to* GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 GUID van de gebruiker
due_date* Date 2021-02-21 23:52:41 Datum + Tijd, tijd is optioneel
sbs_code* SBS LB-01 SBS code

* parameters zijn optioneel

Voorbeeld response
{
  "project": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "assigned_to": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "title": "Task 1",
  "description": "description",
  "number": "1",
  "planned_start": "2023-01-24T12:31:11.316Z",
  "planned_end": "2023-01-24T12:31:11.316Z",
  "due": "2023-01-24T12:31:11.316Z",
  "sbscode": "string",
  "priority": [
    "low",
    "normal",
    "high",
    "urgent"
  ]
}

# Document uploaden

task_upload_appendix(task_id, appendix)
Parameter Type Voorbeeld Beschrijving
task_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
appendix document Document Object, gebruik ant.parse_document() Het document ter ondersteuning van de taak
Voorbeeld response
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "license": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "project": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "parent": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "title": "Task 1",
  "description": "description",
  "number": "1",
  "planned_start": "2023-01-24T12:35:38.530Z",
  "planned_end": "2023-01-24T12:35:38.530Z",
  "due": "2023-01-24T12:35:38.530Z",
  "status": [
    "open",
    "closed"
  ],
  "priority": [
    "low",
    "normal",
    "high",
    "urgent"
  ],
  "task_type": {
    "type": "ANT task",
    "executable": false,
    "custom_1": "1",
    "custom_2": "2",
    "custom_3": "3",
    "custom_4": "4",
    "custom_5": "5",
    "metadata": ""
  },
  "task_project": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "Project 1",
    "number": "1"
  },
  "sbscode": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "code": "002",
    "parent": "001",
    "label": "Code 2"
  },
  "assigned_to": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "first_name": "John",
    "last_name": "Doe",
    "email": "[email protected]"
  },
  "relations": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "previous_task": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "type": "BLOCKED_BY"
    }
  ],
  "created_by": {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "first_name": "John",
    "last_name": "Doe",
    "email": "[email protected]"
  },
  "created_at": "2023-01-24T12:35:38.530Z"
}

# Verwijderen taak

task_delete(stask_id)
Parameter Type Voorbeeld Beschrijving
task_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# SBS Boom

# Alle SBS Codes

ant.sbs_codes(projectId)

Geeft een lijst met SBSCodes binnen het project

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Voorbeeld response
[
  {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "version": 1,
    "code": "LB-01",
    "name": "LB-01",
    "parent": "LB",
    "label": "eerste verdieping",
    "type": "object"
  }
]

# SBS Boom

ant.sbs_getTree(projectId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Voorbeeld response
[
  {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "version": 1,
    "code": "LB-01",
    "name": "LB-01",
    "parent": "LB",
    "label": "eerste verdieping",
    "type": "object",
    "children": [
      {
        "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        "version": 1,
        "code": "LB-01",
        "name": "LB-01",
        "parent": "LB",
        "label": "eerste verdieping",
        "type": "object"
      }
    ]
  }
]

# Nieuwe SBS Code

ant.sbs_addCode(projectId, code, parentCode)

Maakt een revisie aan met de huidige tijd als tijdsstempel

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
code Text LB-01 SBS Code
parentCode Text LB Naam/label van de SBSCode
Voorbeeld response
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "version": 1,
  "code": "LB-01",
  "name": "LB-01",
  "parent": "LB",
  "label": "eerste verdieping",
  "type": "object"
}

# Update een SBS Parent

ant.sbs_updateParent(projectId, sbsId, parentId)

U kan een van de waarden gebruiken om de sbs code te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
sbsId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de sbs record
parentCode Text LB Naam/label van de SBSCode
Voorbeeld response
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "version": 1,
  "code": "LB-01",
  "name": "LB-01",
  "parent": "LB",
  "label": "eerste verdieping",
  "type": "object"
}

# Update een SBS Label

ant.sbs_updateLabel(projectId, sbsId, label)

U kan een van de waarden gebruiken om de label van de SBS te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
sbsId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de sbs record
label Text LB Naam/label van de SBSCode
Voorbeeld response
{
  "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "version": 1,
  "code": "LB-01",
  "name": "LB-01",
  "parent": "LB",
  "label": "eerste verdieping",
  "type": "object"
}

# Verwijder een SBS Code

ant.sbs_removeCode(projectId, sbsId)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
sbsId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de sbs record
Voorbeeld response
{
    "message": "Resource deleted successfully"
}

# Workflow Sessions

# Alle Sessies van project

ant.project_sessions(projectId)

Geeft een lijst met sessies binnen het project

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
Voorbeeld response
[
  {
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "workflow": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "run1",
    "sbs_code": "LB"
  }
]

# Specifieke sessie

ant.workflow_session(project_id, session_id)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
session_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van de sessie
Voorbeeld response
{
    "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "workflow": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "name": "run1",
    "sbs_code": "LB"
}

# Nieuwe sessie

ant.workflow_createSession(projectId, name, sbs_id, workflow_id)

Maakt een revisie aan met de huidige tijd als tijdsstempel

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
session_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van de sessie
sbs_id Text LB-01 SBS Code
name Text LB Naam van de sessie
Voorbeeld response
{
  "name": "run1",
  "sbs_code": "LB"
}

# Update een sessie naam

ant.workflow_sessionUpdateName(projectId, sessionId, name)

U kan een van de waarden gebruiken om de sbs code te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
session_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van de sessie
name Text LB Naam van de sessie
Voorbeeld response
{
  "name": "run1",
  "sbs_code": "LB"
}

# Update een sessie SBS

ant.workflow_sessionUpdateSBS(projectId, sessionId, sbs_code)

U kan een van de waarden gebruiken om de sbs code te updaten:

Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
session_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van de sessie
sbs_code Text LB SBSCode
Voorbeeld response
{
  "name": "run1",
  "sbs_code": "LB"
}

# Verwijder een Sessie

ant.workflow_sessionDelete(projectId, session_id)
Parameter Type Voorbeeld Beschrijving
projectId GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van het project
session_id GUID 6d50e6ea-3349-48c2-be4e-e4457c4e3cf1 De GUID van de sessie
sbsId GUID 7b2c365d-1f5a-49eb-951b-2b3bfbd01445 De GUID van de sbs record
Voorbeeld response
{
    "message": "Resource deleted successfully"
}