Aller au contenu principal

Avatars API (11.34.0)

Download OpenAPI specification:Download

Setup and run avatars-based anonymization jobs

jobs

Start and retrieve different kinds of jobs

Create Full Avatarization Job

Create an avatarization job, then calculate metrics.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
kind
string (JobKind)
Default: "avatarization"
Enum: "avatarization" "privacy_metrics" "signal_metrics" "avatarization_with_time_series" "avatarization_multi_table" "privacy_metrics_with_time_series" "privacy_metrics_multi_table" "signal_metrics_with_time_series" "privacy_metrics_geolocation" "generic" "advice"
required
object (AvatarizationParameters)

Parameters to create an anonymization job.

It contains the seed parameter.

Responses

Request samples

Content type
application/json
{
  • "kind": "avatarization",
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Find All Jobs By User

Retrieve all jobs executed by the current user.

Jobs are filtered by execution date, by default only the last 5 days are displayed, a parameter can be provided to go further back in time.

Authorizations:
OAuth2PasswordBearer
query Parameters
Nb Days (integer) or Nb Days (null) (Nb Days)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Cancel Job

Cancel any kind of job.

If the job hadn't been started yet, revoke it. If the job is ongoing, gently kill it. If the job is done, do nothing.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": { },
  • "parameters": { },
  • "current_progress": {
    }
}

Create Avatarization Job

Create an avatarization job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
kind
string (JobKind)
Default: "avatarization"
Enum: "avatarization" "privacy_metrics" "signal_metrics" "avatarization_with_time_series" "avatarization_multi_table" "privacy_metrics_with_time_series" "privacy_metrics_multi_table" "signal_metrics_with_time_series" "privacy_metrics_geolocation" "generic" "advice"
required
object (AvatarizationParameters)

Parameters to create an anonymization job.

It contains the seed parameter.

Responses

Request samples

Content type
application/json
{
  • "kind": "avatarization",
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Avatarization With Time Series Job

Create an avatarization with time series job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (AvatarizationWithTimeSeriesParameters)

Parameters to create an time series anonymization job.

It contains the seed parameter.

dataset_id
required
string <uuid> (Dataset Id)
Column Weights (object) or Column Weights (null) (Column Weights)
Ncp (integer) or Ncp (null) (Ncp)
ImputationParameters (object) or null
Use Categorical Reduction (boolean) or Use Categorical Reduction (null) (Use Categorical Reduction)
ExcludeVariablesParameters (object) or null
Vanilla Dataset Id (string) or Vanilla Dataset Id (null) (Vanilla Dataset Id)

Dataset identifier of the vanilla data.

required
Array of objects (Time Series)

Parameters of the time series. Each time series can have a different set of parameters.

Seed (integer) or Seed (null) (Seed)
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Avatarization Multi Table Job

Create an avatarization for relational data.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (AvatarizationMultiTableParameters)

Parameters to create a multi table anonymization job.

There are a few rules to follow to make sure that the parameters are consistent:

  • Every dataset_id in table_parameters must be referenced in table_links.

  • Every dataset_id in table_links must also be referenced in table_parameters.

  • Every TableReference with the same dataset_id must be identical in other fields.

  • There can't be a cycle in the table_links e.g. A -> B -> C -> A is not allowed.

  • Each table needs to have N+1 identifier columns (id, patient_id, visit_id, etc.), where N is the number of direct predecessors of each table. A direct predecessor is a table that has a direct link (depth=1) between itself and another table.

    For example, if a table has 2 direct predecessors, it needs to have 3 identifier columns.

    Examples:

    • A -> B <- C , A and C need to have 1 identifier column, and B needs to have 3 identifier columns.
    • A -> B -> C <- D , A and D need to have 1 identifier column, B needs to have 2, and C needs to only have 3 and not 4, because C only has 2 direct predecessors (B and D). There is not a direct link from C to A, so it is not a direct predecessor.
  • Each table can only be linked to the same variable once. This means that if A -> B <- C , A and C need to link to two different columns in B.

  • Every table can only reference another table once. This means that A -> B <- A is not possible.

  • Top level tables need to be individual_level tables. For example, A -> B <- C , A and C need to be individual_level tables.

required
Array of objects (Table Links) non-empty

Description of each relational link between tables.

required
Array of BaseAvatarizationParameters (object) or BaseAvatarizationWithTimeSeriesParameters (object) (Table Parameters) non-empty

Avatarization parameters for each table.

Seed (integer) or Seed (null) (Seed)

Seed used to generate the random numbers.If not provided, a random seed will be generated.

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Signal Metrics Job

Create a signal metrics job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (SignalMetricsParameters)

Parameters to configure a SignalMetricsJob.

original_id
required
string <uuid> (Original Id)
Avatarization Job Id (string) or Avatarization Job Id (null) (Avatarization Job Id)
avatars_id
required
string <uuid> (Avatars Id)
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Privacy Metrics Job

Create a privacy metrics job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (PrivacyMetricsParameters)

Parameters to configure a PrivacyMetricsJob.

original_id
required
string <uuid> (Original Id)
Avatarization Job Id (string) or Avatarization Job Id (null) (Avatarization Job Id)
Closest Rate Percentage Threshold (number) or Closest Rate Percentage Threshold (null) (Closest Rate Percentage Threshold)

Threshold of closest original individuals to define a distance threshold. Any avatar data generated closer from an original than the distance threshold, is considered at risk.

Closest Rate Ratio Threshold (number) or Closest Rate Ratio Threshold (null) (Closest Rate Ratio Threshold)

Closest distance ratio threshold below which an avatar data is considered too close to an original and too isolated from the rest to be safe.

ImputationParameters (object) or null

Imputation parameters used to preprocess avatars data for metrics computation.

Ncp (integer) or Ncp (null) (Ncp)

Number of components used for distance based metrics computation. Default behavior similar to avatarization. If unspecified, ncp is set to the minimum value between 5 and the number of variables after one hot encoding. Note: we recommend using to use the same ncp as during the avatarization to check the worst-case scenario.

Use Categorical Reduction (boolean) or Use Categorical Reduction (null) (Use Categorical Reduction)

Parameter to vectorize categorical variables using cat2vec. See :class:AvatarizationParameters for more details. Note: we recommend using the same parameter as during the avatarization.

Array of Known Variables (strings) or Known Variables (null) (Known Variables)

Variables considered to be known by the attacker. Used to measure some specific privacy metrics. Note: we recommend using demographic variables as they are the most likely to be known by an attacker.

Target (string) or Target (null) (Target)

The target variable to be inferred. Used to measure some specific privacy metrics. Must be used together with known_variables. Note: we recommend using a sensitive variable

Array of Categorical Hidden Rate Variables (strings) or Categorical Hidden Rate Variables (null) (Categorical Hidden Rate Variables)
Default: []

List of categorical variables to compute the categorical hidden rate.

unshuffled_avatars_id
required
string <uuid> (Unshuffled Avatars Id)
Seed (integer) or Seed (null) (Seed)

Seed used to generate the random state.

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Privacy Metrics Time Series Job

Create a privacy metrics with time series job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (PrivacyMetricsWithTimeSeriesParameters)
Closest Rate Percentage Threshold (number) or Closest Rate Percentage Threshold (null) (Closest Rate Percentage Threshold)

Threshold of closest original individuals to define a distance threshold. Any avatar data generated closer from an original than the distance threshold, is considered at risk.

Closest Rate Ratio Threshold (number) or Closest Rate Ratio Threshold (null) (Closest Rate Ratio Threshold)

Closest distance ratio threshold below which an avatar data is considered too close to an original and too isolated from the rest to be safe.

ImputationParameters (object) or null

Imputation parameters used to preprocess avatars data for metrics computation.

Ncp (integer) or Ncp (null) (Ncp)

Number of components used for distance based metrics computation. Default behavior similar to avatarization. If unspecified, ncp is set to the minimum value between 5 and the number of variables after one hot encoding. Note: we recommend using to use the same ncp as during the avatarization to check the worst-case scenario.

Use Categorical Reduction (boolean) or Use Categorical Reduction (null) (Use Categorical Reduction)

Parameter to vectorize categorical variables using cat2vec. See :class:AvatarizationParameters for more details. Note: we recommend using the same parameter as during the avatarization.

Array of Known Variables (strings) or Known Variables (null) (Known Variables)

Variables considered to be known by the attacker. Used to measure some specific privacy metrics. Note: we recommend using demographic variables as they are the most likely to be known by an attacker.

Target (string) or Target (null) (Target)

The target variable to be inferred. Used to measure some specific privacy metrics. Must be used together with known_variables. Note: we recommend using a sensitive variable

Array of Categorical Hidden Rate Variables (strings) or Categorical Hidden Rate Variables (null) (Categorical Hidden Rate Variables)
Default: []

List of categorical variables to compute the categorical hidden rate.

required
Vanilla Original Id (string) or Vanilla Original Id (null) (Vanilla Original Id)

Identifier of the original vanilla dataset.

required
Vanilla Unshuffled Avatars Id (string) or Vanilla Unshuffled Avatars Id (null) (Vanilla Unshuffled Avatars Id)

Identifier of the avatar vanilla dataset.

required
Array of objects (Time Series)

Privacy metrics parameters of the time series. Each time series can have a different set of parameters.

Seed (integer) or Seed (null) (Seed)

Seed used to generate the random state.

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Signal Metrics Time Series Job

Create a signal metrics with time series job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (SignalMetricsWithTimeSeriesParameters)
required
Vanilla Original Id (string) or Vanilla Original Id (null) (Vanilla Original Id)

Identifier of the original vanilla dataset.

required
Vanilla Avatars Id (string) or Vanilla Avatars Id (null) (Vanilla Avatars Id)

Identifier of the avatar vanilla dataset.

required
Array of objects (Time Series)

Privacy metrics parameters of the time series. Each time series can have a different set of parameters.

Seed (integer) or Seed (null) (Seed)

Seed used to generate the random state.

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Privacy Metrics Multi Table Job

Create a privacy metrics job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (PrivacyMetricsMultiTableParameters)

Parameters to create a multi table privacy metrics job.

There are a few rules to follow to make sure that the parameters are consistent. The following ones are the same as the ones for the avatarization job. Other rules specific to privacy metrics are down below.

  • Every dataset_id in table_parameters must be referenced in table_links.

  • Every dataset_id in table_links must also be referenced in table_parameters.

  • Every TableReference with the same dataset_id must be identical in other fields.

  • There can't be a cycle in the table_links e.g. A -> B -> C -> A is not allowed.

  • Each table needs to have N+1 identifier columns (id, patient_id, visit_id, etc.), where N is the number of direct predecessors of each table. A direct predecessor is a table that has a direct link (depth=1) between itself and another table.

    For example, if a table has 2 direct predecessors, it needs to have 3 identifier columns.

    Examples:

    • A -> B <- C , A and C need to have 1 identifier column, and B needs to have 3 identifier columns.
    • A -> B -> C <- D , A and D need to have 1 identifier column, B needs to have 2, and C needs to only have 3 and not 4, because C only has 2 direct predecessors (B and D). There is not a direct link from C to A, so it is not a direct predecessor.
  • Each table can only be linked to the same variable once. This means that if A -> B <- C , A and C need to link to two different columns in B.

  • Every table can only reference another table once. This means that A -> B <- A is not possible.

  • Top level tables need to be individual_level tables. For example, A -> B <- C , A and C need to be individual_level tables.

    Privacy Metrics specific

    • The avatar datasets referenced by the avatars_id in table_parameters need to be identical in columns, shape, and dtype to their corresponding original dataset.
required
Array of objects (Table Links) non-empty

Description of each relational link between tables.

required
Array of BasePrivacyMetricsParameters (object) or BasePrivacyMetricsWithTimeSeriesParameters (object) (Table Parameters) non-empty

Privacy metrics parameters for each table.

Seed (integer) or Seed (null) (Seed)

Seed used to generate the random state.

property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Privacy Metrics Geolocation Job

Create a geolocation privacy metrics job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (PrivacyMetricsGeolocationParameters)

Parameters to configure a PrivacyMetricsGeolocationJob.

It enables to compute privacy metrics for multiple scenarios (with no limit in number).

original_dataset_id
required
string <uuid> (Original Dataset Id)
unshuffled_avatar_dataset_id
required
string <uuid> (Unshuffled Avatar Dataset Id)
required
Array of objects (Scenarios)
parameter_type
string (Parameter Type)
Default: "privacy_metrics_geolocation"
Value: "privacy_metrics_geolocation"
Value: "privacy_metrics_geolocation"
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Privacy Metrics Geolocation Job

Get a geolocation privacy metrics job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Avatarization Job

Get an avatarization job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Avatarization Time Series Job

Get an avatarization time series job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Avatarization Multi Table Job

Get a multi table avatarization job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Signal Metrics

Get a signal metrics job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Signal Metrics Time Series Job

Get a signal metrics time series job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Privacy Metrics

Get a privacy metrics job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Privacy Metrics Time Series Job

Get a privacy metrics time series job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Privacy Metrics Multi Table Job

Get a privacy metrics multi table job.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Create Advice

Create advice on anonymization parameters.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
required
object (AdviceParameters)

Parameters for advice job.

dataset_id
required
string <uuid> (Dataset Id)
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "parameters": {
    }
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

Get Advice

Get advice result.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "kind": "avatarization",
  • "created_at": "2019-08-24T14:15:22Z",
  • "status": "pending",
  • "error_message": "string",
  • "traceback": "string",
  • "result": {
    },
  • "parameters": {
    },
  • "current_progress": {
    }
}

datasets

Create, modify and configure datasets

Create Dataset From Stream

Create a dataset by streaming chunks of the dataset.

Authorizations:
OAuth2PasswordBearer
query Parameters
Name (string) or Name (null) (Name)
FileType (string) or Filetype (null) (Filetype)
Request Body schema: multipart/form-data
required
any (File)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "string",
  • "name": "string",
  • "columns": [
    ],
  • "download_url": "string",
  • "analysis_status": "started",
  • "analysis_duration": 0,
  • "nb_lines": 0,
  • "nb_dimensions": 0,
  • "summary": {
    },
  • "filetype": "csv"
}

Create Dataset

Create a dataset from file upload.

Authorizations:
OAuth2PasswordBearer
Request Body schema: multipart/form-data
required
file
required
string <binary> (File)
Name (string) or Name (null) (Name)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "string",
  • "name": "string",
  • "columns": [
    ],
  • "download_url": "string",
  • "analysis_status": "started",
  • "analysis_duration": 0,
  • "nb_lines": 0,
  • "nb_dimensions": 0,
  • "summary": {
    },
  • "filetype": "csv"
}

Find All Datasets By User

List all datasets of the current_user.

Authorizations:
OAuth2PasswordBearer

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Dataset

Get a dataset.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "string",
  • "name": "string",
  • "columns": [
    ],
  • "download_url": "string",
  • "analysis_status": "started",
  • "analysis_duration": 0,
  • "nb_lines": 0,
  • "nb_dimensions": 0,
  • "summary": {
    },
  • "filetype": "csv"
}

Patch Dataset

Modify a dataset.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)
Request Body schema: application/json
required
required
Array of Columns (objects) or Columns (null) (Columns)
Any of
Array
type
required
string (ColumnType)
Enum: "int" "bool" "category" "float" "datetime"
label
required
string (Label)
is_identifier
boolean (Is Identifier)
Default: false

Responses

Request samples

Content type
application/json
{
  • "columns": [
    ]
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "string",
  • "name": "string",
  • "columns": [
    ],
  • "download_url": "string",
  • "analysis_status": "started",
  • "analysis_duration": 0,
  • "nb_lines": 0,
  • "nb_dimensions": 0,
  • "summary": {
    },
  • "filetype": "csv"
}

Analyze Dataset

Start the analysis of a dataset.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "hash": "string",
  • "name": "string",
  • "columns": [
    ],
  • "download_url": "string",
  • "analysis_status": "started",
  • "analysis_duration": 0,
  • "nb_lines": 0,
  • "nb_dimensions": 0,
  • "summary": {
    },
  • "filetype": "csv"
}

Get Dataset Correlations

Get a dataset's correlations.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "property1": {
    },
  • "property2": {
    }
}

Download Dataset As Stream

Download a dataset by streaming chunks of it.

Parameters

id The identifier of the dataset to download. filetype The filetype of the data you which to receive.

Returns

The dataset contents
Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)
query Parameters
filetype
required
string (FileType)
Enum: "csv" "parquet"

Responses

Response samples

Content type
application/json
null

Download Dataset Deprecated

Download a dataset.

This is only advised for small datasets. Use /datasets/{id}/download/stream for larger datasets.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)
query Parameters
FileType (string) or Filetype (null) (Filetype)

Responses

Response samples

Content type
application/json
null

compatibility

Verify compatibility between client and server

Is Client Compatible

Verify if the client is compatible with the API.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "most_recent_compatible_client": "string",
  • "status": "compatible"
}

health

Verify health of the server and it's components

Get Root

Verify server health.

Responses

Response samples

Content type
application/json
null

Get Health

Verify server health.

Responses

Response samples

Content type
application/json
null

Get Health Db

Verify connection to the db health.

Responses

Response samples

Content type
application/json
null

auth

Handle login and authentication

Login

Login the user.

Request Body schema: application/x-www-form-urlencoded
required
Grant Type (string) or Grant Type (null) (Grant Type)
username
required
string (Username)
password
required
string (Password)
scope
string (Scope)
Default: ""
Client Id (string) or Client Id (null) (Client Id)
Client Secret (string) or Client Secret (null) (Client Secret)

Responses

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "refresh_token": "string",
  • "token_type": "string"
}

Refresh

query Parameters
token
required
string (Token)

Responses

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "refresh_token": "string",
  • "token_type": "string"
}

Forgotten Password

Request Body schema: application/json
required
email
required
string (Email)

Responses

Request samples

Content type
application/json
{
  • "email": "string"
}

Response samples

Content type
application/json
null

Reset Password

Request Body schema: application/json
required
email
required
string (Email)
new_password
required
string (New Password)
new_password_repeated
required
string (New Password Repeated)
token
required
string <uuid> (Token)

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "new_password": "string",
  • "new_password_repeated": "string",
  • "token": "b5507016-7da2-4777-a161-1e8042a6a377"
}

Response samples

Content type
application/json
null

metrics

Retrieve metrics about the anonymization

Get Job Projections

Get the projections of records and avatars in 3D.

See https://saiph.readthedocs.io/en/latest/ for more information.

Arguments

job_id:
    avatarization or privacy job id used to fit the model
Authorizations:
OAuth2PasswordBearer
path Parameters
job_id
required
string <uuid> (Job Id)

Responses

Response samples

Content type
application/json
{
  • "records": [
    ],
  • "avatars": [
    ]
}

Get Variable Contributions

Get the contributions of the dataset variables within the fitted space.

See https://saiph.readthedocs.io/en/latest for more information.

Arguments

job_id:
    avatarization or privacy job id used to fit the model
Authorizations:
OAuth2PasswordBearer
query Parameters
job_id
required
string <uuid> (Job Id)

Responses

Response samples

Content type
application/json
{
  • "data": {
    }
}

Get Explained Variance

Get the explained variance of records.

See https://saiph.readthedocs.io/en/latest/ for more information.

Arguments

job_id:
    avatarization or privacy job id used to fit the model
Authorizations:
OAuth2PasswordBearer
path Parameters
job_id
required
string <uuid> (Job Id)

Responses

Response samples

Content type
application/json
{
  • "raw": [
    ],
  • "ratio": [
    ]
}

reports

Create and retrieve anonymization reports

Create Report

Create an anonymization report.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
avatarization_job_id
required
string <uuid> (Avatarization Job Id)
privacy_job_id
required
string <uuid> (Privacy Job Id)
signal_job_id
required
string <uuid> (Signal Job Id)

Responses

Request samples

Content type
application/json
{
  • "avatarization_job_id": "1a4e9a82-1b70-4117-b4f4-33e96d917d59",
  • "privacy_job_id": "db2c5e71-c0b7-47a1-a85b-79916b033505",
  • "signal_job_id": "be1c4952-9cc6-4326-ba89-e70c583cf9dc"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
  • "created_at": "2019-08-24T14:15:22Z",
  • "download_url": "string"
}

Get Report

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
  • "created_at": "2019-08-24T14:15:22Z",
  • "download_url": "string"
}

Download Report

Download a report.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
null

Create Report From Data

Create an anonymization report without avatarization job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
dataset_id
required
string <uuid> (Dataset Id)
avatars_dataset_id
required
string <uuid> (Avatars Dataset Id)
privacy_job_id
required
string <uuid> (Privacy Job Id)
signal_job_id
required
string <uuid> (Signal Job Id)

Responses

Request samples

Content type
application/json
{
  • "dataset_id": "8c4c51f1-f6f3-43bc-b65d-7415e8ef22c0",
  • "avatars_dataset_id": "a10bf510-0d0e-47ca-bf5a-9052277932ab",
  • "privacy_job_id": "db2c5e71-c0b7-47a1-a85b-79916b033505",
  • "signal_job_id": "be1c4952-9cc6-4326-ba89-e70c583cf9dc"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
  • "created_at": "2019-08-24T14:15:22Z",
  • "download_url": "string"
}

Create Geolocation Privacy Report

Create an anonymization report without avatarization job.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
dataset_id
required
string <uuid> (Dataset Id)
avatars_dataset_id
required
string <uuid> (Avatars Dataset Id)
privacy_job_id
required
string <uuid> (Privacy Job Id)

Responses

Request samples

Content type
application/json
{
  • "dataset_id": "8c4c51f1-f6f3-43bc-b65d-7415e8ef22c0",
  • "avatars_dataset_id": "a10bf510-0d0e-47ca-bf5a-9052277932ab",
  • "privacy_job_id": "db2c5e71-c0b7-47a1-a85b-79916b033505"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "job_id": "453bd7d7-5355-4d6d-a38e-d9e7eb218c3f",
  • "created_at": "2019-08-24T14:15:22Z",
  • "download_url": "string"
}

stats

Retrieve statistics about the resource usage of the server

Get Cluster Stats

Get insights into the cluster's usage.

Authorizations:
OAuth2PasswordBearer

Responses

Response samples

Content type
application/json
{
  • "n_active_tasks": 0,
  • "available_concurrency": 0,
  • "utilization_rate_100": 0,
  • "status_message": ""
}

users

Create, modify and configure users

Create User

Create a user.

This endpoint is protected with rate limiting.

Authorizations:
OAuth2PasswordBearer
Request Body schema: application/json
required
Username (string) or Username (null) (Username)
Email (string) or Email (null) (Email)
role
string (UserRole)
Default: "user"
Enum: "admin" "user"
Password (string) or Password (null) (Password)

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "email": "string",
  • "role": "admin",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  • "username": "string",
  • "email": "string",
  • "role": "admin"
}

Find Users

Get users, optionally filtering them by username or email.

This endpoint is protected with rate limiting.

Authorizations:
OAuth2PasswordBearer
query Parameters
Email (string) or Email (null) (Email)
Username (string) or Username (null) (Username)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Me

Get my own user.

Authorizations:
OAuth2PasswordBearer

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  • "username": "string",
  • "email": "string",
  • "role": "admin"
}

Get User

Get a user by id.

This endpoint is protected with rate limiting.

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  • "username": "string",
  • "email": "string",
  • "role": "admin"
}

Delete User

Authorizations:
OAuth2PasswordBearer
path Parameters
id
required
string <uuid> (Id)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
  • "username": "string",
  • "email": "string",
  • "role": "admin"
}