diff --git a/ApiServices/generated/docs/openapi.json b/ApiServices/generated/docs/openapi.json index a97943d0..18d3e1ba 100644 --- a/ApiServices/generated/docs/openapi.json +++ b/ApiServices/generated/docs/openapi.json @@ -1 +1 @@ -{"openapi":"3.0.2","info":{"title":"SAIL","description":"All the private and public APIs for the Secure AI Labs","version":"0.1.0"},"paths":{"/login":{"post":{"summary":"Login For Access Token","description":"User login with email and password","operationId":"login","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_login"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginSuccess_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Incorrect username or password","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}}}},"/refresh-token":{"post":{"summary":"Refresh For Access Token","description":"Refresh the JWT token for the user","operationId":"get_refresh_token","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RefreshToken_In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginSuccess_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Could not validate credentials.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}}}},"/me":{"get":{"summary":"Get Current User Info","description":"Get the current user information","operationId":"get_current_user_info","responses":{"200":{"description":"The current user information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInfo_Out"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/organizations":{"get":{"summary":"Get All Organizations","description":"Get list of all the organizations","operationId":"get_all_organizations","responses":{"200":{"description":"List of organizations","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleOrganizations_Out"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Organization","description":"Register new organization and the admin user","operationId":"register_organization","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterOrganization_In"}}},"required":true},"responses":{"201":{"description":"Organization Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterOrganization_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"409":{"description":"User already registered","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}}}},"/organizations/{organization_id}":{"get":{"summary":"Get Organization","description":"Get the information about a organization","operationId":"get_organization","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrganizations_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Organization","description":"Update organization information","operationId":"update_organization","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateOrganization_In"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Organization","description":"Disable the organization and all the users","operationId":"soft_delete_organization","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/organizations/{organization_id}/users":{"get":{"summary":"Get Users","description":"Get all users in the organization","operationId":"get_users","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleUsers_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"User organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register User","description":"Add new user to organization","operationId":"register_user","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterUser_In"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterUser_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"409":{"description":"User already exists","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/organizations/{organization_id}/users/{user_id}":{"get":{"summary":"Get User","description":"Get information about a user","operationId":"get_user","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"},{"required":true,"schema":{"title":"User Id","type":"string","format":"uuid"},"name":"user_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetUsers_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update User Info","description":"Update user information","operationId":"update_user_info","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"},{"required":true,"schema":{"title":"User Id","type":"string","format":"uuid"},"name":"user_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateUser_In"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete User","description":"Soft Delete user","operationId":"soft_delete_user","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"},{"required":true,"schema":{"title":"User Id","type":"string","format":"uuid"},"name":"user_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations":{"get":{"summary":"Get All Data Federations","description":"Get list of all the data federations","operationId":"get_all_data_federations","parameters":[{"required":false,"schema":{"title":"Data Submitter Id","type":"string","format":"uuid"},"name":"data_submitter_id","in":"query"},{"required":false,"schema":{"title":"Researcher Id","type":"string","format":"uuid"},"name":"researcher_id","in":"query"},{"required":false,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"query"}],"responses":{"200":{"description":"List of data federations","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDataFederation_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Access denied","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Data Federation","description":"Register new data federation","operationId":"register_data_federation","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataFederation_In"}}},"required":true},"responses":{"201":{"description":"DataFederation Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataFederation_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}":{"get":{"summary":"Get Data Federation","description":"Get the information about a data federation","operationId":"get_data_federation","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDataFederation_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Data Federation","description":"Update data federation information","operationId":"update_data_federation","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateDataFederation_In"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Data Federation","description":"Disable the data federation","operationId":"soft_delete_data_federation","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/researcher/{researcher_organization_id}":{"put":{"summary":"Invite Researcher","description":"Invite a researcher to join a data federation","operationId":"invite_researcher","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Researcher Organization Id","type":"string","format":"uuid"},"name":"researcher_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"554":{"description":"Server unexpectedly disconnected or an attempt is made to use the SMTP instance before connecting it to a server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"510":{"description":"The command or option is not supported by the SMTP server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Researcher","description":"Automatically add a researcher to the data federation, bypassing an invite path","operationId":"register_researcher","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Researcher Organization Id","type":"string","format":"uuid"},"name":"researcher_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/data-submitter/{data_submitter_organization_id}":{"put":{"summary":"Invite Data Submitter","description":"Invite a data submitter to join a data federation","operationId":"invite_data_submitter","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Data Submitter Organization Id","type":"string","format":"uuid"},"name":"data_submitter_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"554":{"description":"Server unexpectedly disconnected or an attempt is made to use the SMTP instance before connecting it to a server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"510":{"description":"The command or option is not supported by the SMTP server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Data Submitter","description":"Automatically add a data submitter to the data federation, bypassing an invite path","operationId":"register_data_submitter","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Data Submitter Organization Id","type":"string","format":"uuid"},"name":"data_submitter_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{organization_id}/invites":{"get":{"summary":"Get All Invites","description":"Get list of all the pending invites received. Only ADMIN roles have access.","operationId":"get_all_invites","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"200":{"description":"List of pending invites received","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleInvite_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{organization_id}/invites/{invite_id}":{"get":{"summary":"Get Invite","description":"Get the information about an invite","operationId":"get_invite","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"},{"required":true,"schema":{"title":"Invite Id","type":"string","format":"uuid"},"name":"invite_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetInvite_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Invite not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"patch":{"summary":"Accept Or Reject Invite","description":"Accept or reject an invite","operationId":"accept_or_reject_invite","parameters":[{"required":true,"schema":{"title":"Organization Id","type":"string","format":"uuid"},"name":"organization_id","in":"path"},{"required":true,"schema":{"title":"Invite Id","type":"string","format":"uuid"},"name":"invite_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PatchInvite_In"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Invite not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"410":{"description":"Invite expired","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/datasets/{dataset_id}":{"put":{"summary":"Add Dataset","description":"Add a dataset to a data federation","operationId":"add_dataset","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Remove Dataset","description":"Remove a dataset from a data federation","operationId":"remove_dataset","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/dataset_key/{dataset_id}":{"get":{"summary":"Get Existing Dataset Key","description":"Return a dataset encryption key by either retrieving and unwrapping","operationId":"get_existing_dataset_key","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetEncryptionKey_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Get Dataset Key","description":"Return a dataset encryption key by either retrieving and unwrapping, or creating","operationId":"get_dataset_key","parameters":[{"required":true,"schema":{"title":"Data Federation Id","type":"string","format":"uuid"},"name":"data_federation_id","in":"path"},{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"path"},{"required":false,"schema":{"title":"Create If Not Found","type":"boolean","default":true},"name":"create_if_not_found","in":"query"}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetEncryptionKey_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provisions":{"post":{"summary":"Provision Data Federation","description":"Provision data federation SCNs","operationId":"register_data_federation_provision","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataFederationProvision_In"}}},"required":true},"responses":{"201":{"description":"Data Federation Provision Id and list of SCNs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataFederationProvision_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Data Federation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Organization must be one of the the data federation researcher","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"400":{"description":"Invalid secure computation node type","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provsions/{provision_id}":{"get":{"summary":"Get Data Federation Provision Info","description":"Get data federation provision SCNs","operationId":"get_data_federation_provision_info","parameters":[{"required":true,"schema":{"title":"Provision Id","type":"string","format":"uuid"},"name":"provision_id","in":"path"}],"responses":{"200":{"description":"Data Federation Provision information and list of SCNs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDataFederationProvision"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Data Federation Provision not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provsions":{"get":{"summary":"Get All Data Federation Provision Info","description":"Get all data federation provision SCNs","operationId":"get_all_data_federation_provision_info","responses":{"200":{"description":"All Data Federation Provision information and list of SCNs for the current organization","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDataFederationProvision_Out"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provisions/{provision_id}":{"delete":{"summary":"Deprovision Data Federation","description":"Deprovision data federation SCNs","operationId":"deprovision_data_federation","parameters":[{"required":true,"schema":{"title":"Provision Id","type":"string","format":"uuid"},"name":"provision_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/datasets":{"get":{"summary":"Get All Datasets","description":"Get list of all the datasets for the current organization","operationId":"get_all_datasets","responses":{"200":{"description":"List of datasets","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDataset_Out"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Dataset","description":"Register new dataset","operationId":"register_dataset","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataset_In"}}},"required":true},"responses":{"201":{"description":"Dataset Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataset_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/datasets/{dataset_id}":{"get":{"summary":"Get Dataset","description":"Get the information about a dataset","operationId":"get_dataset","parameters":[{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDataset_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Dataset","description":"Update dataset information","operationId":"update_dataset","parameters":[{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateDataset_In"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Dataset","description":"Disable the dataset","operationId":"soft_delete_dataset","parameters":[{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/dataset-versions":{"get":{"summary":"Get All Dataset Versions","description":"Get list of all the dataset-versions for the dataset","operationId":"get_all_dataset_versions","parameters":[{"required":true,"schema":{"title":"Dataset Id","type":"string","format":"uuid"},"name":"dataset_id","in":"query"}],"responses":{"200":{"description":"List of dataset-versions for the dataset","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDatasetVersion_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Dataset Version","description":"Register new dataset-version","operationId":"register_dataset_version","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDatasetVersion_In"}}},"required":true},"responses":{"201":{"description":"Dataset Version Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDatasetVersion_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/dataset-versions/{dataset_version_id}":{"get":{"summary":"Get Dataset Version","description":"Get the information about a dataset","operationId":"get_dataset_version","parameters":[{"required":true,"schema":{"title":"Dataset Version Id","type":"string","format":"uuid"},"name":"dataset_version_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDatasetVersion_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset version not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Dataset Version","description":"Update dataset information","operationId":"update_dataset_version","parameters":[{"required":true,"schema":{"title":"Dataset Version Id","type":"string","format":"uuid"},"name":"dataset_version_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateDatasetVersion_In"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Dataset Version","description":"Disable a dataset version","operationId":"soft_delete_dataset_version","parameters":[{"required":true,"schema":{"title":"Dataset Version Id","type":"string","format":"uuid"},"name":"dataset_version_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/dataset-versions/{dataset_version_id}/connection-string":{"get":{"summary":"Get Dataset Version Connection String","description":"Get the write only connection string for the dataset version upload","operationId":"get_dataset_version_connection_string","parameters":[{"required":true,"schema":{"title":"Dataset Version Id","type":"string","format":"uuid"},"name":"dataset_version_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDatasetVersionConnectionString_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset version not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"409":{"description":"Dataset version is already uploaded or in progress","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/secure-computation-node":{"get":{"summary":"Get All Secure Computation Nodes","description":"Get list of all the secure_computation_node for the current user and federation provision","operationId":"get_all_secure_computation_nodes","parameters":[{"required":true,"schema":{"title":"Data Federation Provision Id","type":"string","format":"uuid"},"name":"data_federation_provision_id","in":"query"}],"responses":{"200":{"description":"List of secure_computation_nodes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleSecureComputationNode_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset version not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/secure-computation-node/{secure_computation_node_id}":{"get":{"summary":"Get Secure Computation Node","description":"Get the information about a secure computation node","operationId":"get_secure_computation_node","parameters":[{"required":true,"schema":{"title":"Secure Computation Node Id","type":"string","format":"uuid"},"name":"secure_computation_node_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSecureComputationNode_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Secure Computation Node not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Secure Computation Node","description":"Update secure computation node information","operationId":"update_secure_computation_node","parameters":[{"required":true,"schema":{"title":"Secure Computation Node Id","type":"string","format":"uuid"},"name":"secure_computation_node_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSecureComputationNode_In"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Secure Computation Node not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Access denied","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/database":{"delete":{"summary":"Register Dataset","description":"Drop the database","operationId":"register_dataset_database_delete","responses":{"204":{"description":"Successful Response"}}}}},"components":{"schemas":{"BasicObjectInfo":{"title":"BasicObjectInfo","required":["id","name"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"},"name":{"title":"Name","type":"string"}}},"Body_login":{"title":"Body_login","required":["username","password"],"type":"object","properties":{"grant_type":{"title":"Grant Type","pattern":"password","type":"string"},"username":{"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"scope":{"title":"Scope","type":"string","default":""},"client_id":{"title":"Client Id","type":"string"},"client_secret":{"title":"Client Secret","type":"string"}}},"DataFederationDataFormat":{"title":"DataFederationDataFormat","enum":["CSV","FHIR"],"description":"An enumeration."},"DataFederationState":{"title":"DataFederationState","enum":["ACTIVE","INACTIVE"],"description":"An enumeration."},"DatasetEncryptionKey_Out":{"title":"DatasetEncryptionKey_Out","required":["dataset_key"],"type":"object","properties":{"dataset_key":{"title":"Dataset Key","type":"string"}}},"DatasetFormat":{"title":"DatasetFormat","enum":["FHIR","CSV"],"description":"An enumeration."},"DatasetState":{"title":"DatasetState","enum":["CREATING_STORAGE","ACTIVE","INACTIVE","ERROR"],"description":"An enumeration."},"DatasetVersionState":{"title":"DatasetVersionState","enum":["ACTIVE","INACTIVE","CREATING_DIRECTORY","NOT_UPLOADED","ERROR"],"description":"An enumeration."},"GetDataFederationProvision":{"title":"GetDataFederationProvision","required":["data_federation_id","secure_computation_nodes_size","id","organization_id","smart_broker_id"],"type":"object","properties":{"data_federation_id":{"title":"Data Federation Id","type":"string","format":"uuid"},"secure_computation_nodes_size":{"$ref":"#/components/schemas/SecureComputationNodeSize"},"id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization_id":{"title":"Organization Id","type":"string","format":"uuid"},"smart_broker_id":{"title":"Smart Broker Id","type":"string","format":"uuid"},"secure_computation_nodes_id":{"title":"Secure Computation Nodes Id","type":"array","items":{"type":"string","format":"uuid"}}}},"GetDataFederation_Out":{"title":"GetDataFederation_Out","required":["name","description","data_format","id","organization","state","data_submitter_organizations","research_organizations","datasets"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"data_format":{"$ref":"#/components/schemas/DataFederationDataFormat"},"id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/DataFederationState"},"data_submitter_organizations":{"title":"Data Submitter Organizations","type":"array","items":{"$ref":"#/components/schemas/BasicObjectInfo"}},"research_organizations":{"title":"Research Organizations","type":"array","items":{"$ref":"#/components/schemas/BasicObjectInfo"}},"datasets":{"title":"Datasets","type":"array","items":{"$ref":"#/components/schemas/BasicObjectInfo"}},"data_submitter_organizations_invites_id":{"title":"Data Submitter Organizations Invites Id","type":"array","items":{"type":"string","format":"uuid"}},"research_organizations_invites_id":{"title":"Research Organizations Invites Id","type":"array","items":{"type":"string","format":"uuid"}}}},"GetDatasetVersionConnectionString_Out":{"title":"GetDatasetVersionConnectionString_Out","required":["id","connection_string"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"},"connection_string":{"title":"Connection String","type":"string"}}},"GetDatasetVersion_Out":{"title":"GetDatasetVersion_Out","required":["dataset_id","description","name","id","dataset_version_created_time","organization","state","note"],"type":"object","properties":{"dataset_id":{"title":"Dataset Id","type":"string","format":"uuid"},"description":{"title":"Description","type":"string"},"name":{"title":"Name","maxLength":255,"type":"string"},"id":{"title":" Id","type":"string","format":"uuid"},"dataset_version_created_time":{"title":"Dataset Version Created Time","type":"string","format":"date-time"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/DatasetVersionState"},"note":{"title":"Note","type":"string"}}},"GetDataset_Out":{"title":"GetDataset_Out","required":["name","description","tags","format","id","organization","state"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"tags":{"title":"Tags","type":"string"},"format":{"$ref":"#/components/schemas/DatasetFormat"},"id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/DatasetState"},"note":{"title":"Note","type":"string"}}},"GetInvite_Out":{"title":"GetInvite_Out","required":["id","data_federation","inviter_user","inviter_organization","state","created_time","expiry_time","type"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"},"data_federation":{"$ref":"#/components/schemas/BasicObjectInfo"},"inviter_user":{"$ref":"#/components/schemas/BasicObjectInfo"},"inviter_organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/InviteState"},"created_time":{"title":"Created Time","type":"string","format":"date-time"},"expiry_time":{"title":"Expiry Time","type":"string","format":"date-time"},"type":{"$ref":"#/components/schemas/InviteType"}}},"GetMultipleDataFederationProvision_Out":{"title":"GetMultipleDataFederationProvision_Out","required":["data_federation_provisions"],"type":"object","properties":{"data_federation_provisions":{"title":"Data Federation Provisions","type":"array","items":{"$ref":"#/components/schemas/GetDataFederationProvision"}}}},"GetMultipleDataFederation_Out":{"title":"GetMultipleDataFederation_Out","type":"object","properties":{"data_federations":{"title":"Data Federations","type":"array","items":{"$ref":"#/components/schemas/GetDataFederation_Out"}}}},"GetMultipleDatasetVersion_Out":{"title":"GetMultipleDatasetVersion_Out","required":["dataset_versions"],"type":"object","properties":{"dataset_versions":{"title":"Dataset Versions","type":"array","items":{"$ref":"#/components/schemas/GetDatasetVersion_Out"}}}},"GetMultipleDataset_Out":{"title":"GetMultipleDataset_Out","type":"object","properties":{"datasets":{"title":"Datasets","type":"array","items":{"$ref":"#/components/schemas/GetDataset_Out"}}}},"GetMultipleInvite_Out":{"title":"GetMultipleInvite_Out","required":["invites"],"type":"object","properties":{"invites":{"title":"Invites","type":"array","items":{"$ref":"#/components/schemas/GetInvite_Out"}}}},"GetMultipleOrganizations_Out":{"title":"GetMultipleOrganizations_Out","required":["organizations"],"type":"object","properties":{"organizations":{"title":"Organizations","type":"array","items":{"$ref":"#/components/schemas/GetOrganizations_Out"}}}},"GetMultipleSecureComputationNode_Out":{"title":"GetMultipleSecureComputationNode_Out","required":["secure_computation_nodes"],"type":"object","properties":{"secure_computation_nodes":{"title":"Secure Computation Nodes","type":"array","items":{"$ref":"#/components/schemas/GetSecureComputationNode_Out"}}}},"GetMultipleUsers_Out":{"title":"GetMultipleUsers_Out","required":["users"],"type":"object","properties":{"users":{"title":"Users","type":"array","items":{"$ref":"#/components/schemas/GetUsers_Out"}}}},"GetOrganizations_Out":{"title":"GetOrganizations_Out","required":["name","description","id"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"avatar":{"title":"Avatar","type":"string"},"id":{"title":" Id","type":"string","format":"uuid"}}},"GetSecureComputationNode_Out":{"title":"GetSecureComputationNode_Out","required":["id","data_federation","dataset","dataset_version","researcher_user","type","timestamp","state"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"},"data_federation":{"$ref":"#/components/schemas/BasicObjectInfo"},"dataset":{"$ref":"#/components/schemas/BasicObjectInfo"},"dataset_version":{"$ref":"#/components/schemas/BasicObjectInfo"},"researcher":{"$ref":"#/components/schemas/BasicObjectInfo"},"data_owner":{"$ref":"#/components/schemas/BasicObjectInfo"},"researcher_user":{"title":"Researcher User","type":"string","format":"uuid"},"type":{"$ref":"#/components/schemas/SecureComputationNodeType"},"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"state":{"$ref":"#/components/schemas/SecureComputationNodeState"},"detail":{"title":"Detail","type":"string"},"ipaddress":{"title":"Ipaddress","type":"string","format":"ipv4"}}},"GetUsers_Out":{"title":"GetUsers_Out","required":["name","email","job_title","role","avatar","id","organization"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"email":{"title":"Email","type":"string","format":"email"},"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"avatar":{"title":"Avatar","type":"string"},"id":{"title":" Id","type":"string","format":"uuid"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"}}},"HTTPValidationError":{"title":"ValidationError","type":"object","properties":{"error":{"title":"Error","type":"string","default":"Invalid Schema"}}},"InviteState":{"title":"InviteState","enum":["PENDING","ACCEPTED","REJECTED"],"description":"An enumeration."},"InviteType":{"title":"InviteType","enum":["DF_RESEARCHER","DF_SUBMITTER"],"description":"An enumeration."},"LoginSuccess_Out":{"title":"LoginSuccess_Out","required":["access_token","refresh_token","token_type"],"type":"object","properties":{"access_token":{"title":"Access Token","type":"string"},"refresh_token":{"title":"Refresh Token","type":"string"},"token_type":{"title":"Token Type","type":"string"}}},"PatchInvite_In":{"title":"PatchInvite_In","required":["state"],"type":"object","properties":{"state":{"$ref":"#/components/schemas/InviteState"}}},"RefreshToken_In":{"title":"RefreshToken_In","required":["refresh_token"],"type":"object","properties":{"refresh_token":{"title":"Refresh Token","type":"string"}}},"RegisterDataFederationProvision_In":{"title":"RegisterDataFederationProvision_In","required":["data_federation_id","secure_computation_nodes_size"],"type":"object","properties":{"data_federation_id":{"title":"Data Federation Id","type":"string","format":"uuid"},"secure_computation_nodes_size":{"$ref":"#/components/schemas/SecureComputationNodeSize"}}},"RegisterDataFederationProvision_Out":{"title":"RegisterDataFederationProvision_Out","required":["data_federation_id","secure_computation_nodes_size","id","creation_time","organization_id","smart_broker_id","secure_computation_nodes_id"],"type":"object","properties":{"data_federation_id":{"title":"Data Federation Id","type":"string","format":"uuid"},"secure_computation_nodes_size":{"$ref":"#/components/schemas/SecureComputationNodeSize"},"id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization_id":{"title":"Organization Id","type":"string","format":"uuid"},"smart_broker_id":{"title":"Smart Broker Id","type":"string","format":"uuid"},"secure_computation_nodes_id":{"title":"Secure Computation Nodes Id","type":"array","items":{"type":"string","format":"uuid"}}}},"RegisterDataFederation_In":{"title":"RegisterDataFederation_In","required":["name","description","data_format"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"data_format":{"$ref":"#/components/schemas/DataFederationDataFormat"}}},"RegisterDataFederation_Out":{"title":"RegisterDataFederation_Out","required":["id"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterDatasetVersion_In":{"title":"RegisterDatasetVersion_In","required":["dataset_id","description","name"],"type":"object","properties":{"dataset_id":{"title":"Dataset Id","type":"string","format":"uuid"},"description":{"title":"Description","type":"string"},"name":{"title":"Name","maxLength":255,"type":"string"}}},"RegisterDatasetVersion_Out":{"title":"RegisterDatasetVersion_Out","required":["id"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterDataset_In":{"title":"RegisterDataset_In","required":["name","description","tags","format"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"tags":{"title":"Tags","type":"string"},"format":{"$ref":"#/components/schemas/DatasetFormat"}}},"RegisterDataset_Out":{"title":"RegisterDataset_Out","required":["id"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterOrganization_In":{"title":"RegisterOrganization_In","required":["name","description","admin_name","admin_job_title","admin_email","admin_password"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"avatar":{"title":"Avatar","type":"string"},"admin_name":{"title":"Admin Name","type":"string"},"admin_job_title":{"title":"Admin Job Title","type":"string"},"admin_email":{"title":"Admin Email","type":"string","format":"email"},"admin_password":{"title":"Admin Password","type":"string"},"admin_avatar":{"title":"Admin Avatar","type":"string"}}},"RegisterOrganization_Out":{"title":"RegisterOrganization_Out","required":["id"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterUser_In":{"title":"RegisterUser_In","required":["name","email","job_title","role","password"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"email":{"title":"Email","type":"string","format":"email"},"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"avatar":{"title":"Avatar","type":"string"},"password":{"title":"Password","type":"string"}}},"RegisterUser_Out":{"title":"RegisterUser_Out","required":["id"],"type":"object","properties":{"id":{"title":" Id","type":"string","format":"uuid"}}},"SecureComputationNodeSize":{"title":"SecureComputationNodeSize","enum":["Standard_D4s_v4","Standard_DC4ads_v5"],"description":"An enumeration."},"SecureComputationNodeState":{"title":"SecureComputationNodeState","enum":["REQUESTED","CREATING","INITIALIZING","WAITING_FOR_DATA","FAILED","READY","IN_USE","DELETED","DELETING","DELETE_FAILED"],"description":"An enumeration."},"SecureComputationNodeType":{"title":"SecureComputationNodeType","enum":["SCN","SMART_BROKER"],"description":"An enumeration."},"UpdateDataFederation_In":{"title":"UpdateDataFederation_In","type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"}}},"UpdateDatasetVersion_In":{"title":"UpdateDatasetVersion_In","type":"object","properties":{"description":{"title":"Description","type":"string"},"state":{"$ref":"#/components/schemas/DatasetVersionState"}}},"UpdateDataset_In":{"title":"UpdateDataset_In","type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"tag":{"title":"Tag","type":"string"}}},"UpdateOrganization_In":{"title":"UpdateOrganization_In","required":["name","description","avatar"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"avatar":{"title":"Avatar","type":"string"}}},"UpdateSecureComputationNode_In":{"title":"UpdateSecureComputationNode_In","type":"object","properties":{"state":{"$ref":"#/components/schemas/SecureComputationNodeState"}}},"UpdateUser_In":{"title":"UpdateUser_In","required":["job_title","role","account_state","avatar"],"type":"object","properties":{"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"account_state":{"$ref":"#/components/schemas/UserAccountState"},"avatar":{"title":"Avatar","type":"string"}}},"UserAccountState":{"title":"UserAccountState","enum":["ACTIVE","INACTIVE"],"description":"An enumeration."},"UserInfo_Out":{"title":"UserInfo_Out","required":["name","email","job_title","role","id","organization"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"email":{"title":"Email","type":"string","format":"email"},"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"avatar":{"title":"Avatar","type":"string"},"id":{"title":" Id","type":"string","format":"uuid"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"}}},"UserRole":{"title":"UserRole","enum":["ADMIN","AUDITOR","USER","DIGITAL_CONTRACT_ADMIN","DATASET_ADMIN","SAIL_ADMIN"],"description":"An enumeration."},"ValidationError":{"title":"ValidationError","required":["loc","msg","type"],"type":"object","properties":{"loc":{"title":"Location","type":"array","items":{"anyOf":[{"type":"string"},{"type":"integer"}]}},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}}},"HTTPException":{"title":"HTTPExceptionObj","type":"object","properties":{"detail":{"title":"Error Detail","type":"string"}}}},"securitySchemes":{"OAuth2PasswordBearer":{"type":"oauth2","flows":{"password":{"scopes":{},"tokenUrl":"login"}}}}}} \ No newline at end of file +{"openapi":"3.0.2","info":{"title":"SAIL","description":"All the private and public APIs for the Secure AI Labs","version":"0.1.0"},"paths":{"/audit-logs":{"get":{"summary":"Audit Incidents Query","description":"query by logQL","operationId":"audit_incidents_query","parameters":[{"required":true,"schema":{"title":"Label","type":"string"},"name":"label","in":"query"},{"description":"query events related to a specific user id","required":false,"schema":{"title":"User Id","type":"string","description":"query events related to a specific user id"},"name":"user_id","in":"query"},{"description":"query events related to a specific data id","required":false,"schema":{"title":"Data Id","type":"string","description":"query events related to a specific data id"},"name":"data_id","in":"query"},{"description":"starting timestamp of the query range","required":false,"schema":{"title":"Start","anyOf":[{"type":"integer"},{"type":"number"}],"description":"starting timestamp of the query range"},"name":"start","in":"query"},{"description":"ending timestamp of the query range","required":false,"schema":{"title":"End","anyOf":[{"type":"integer"},{"type":"number"}],"description":"ending timestamp of the query range"},"name":"end","in":"query"},{"description":"query events number limit","required":false,"schema":{"title":"Limit","type":"integer","description":"query events number limit"},"name":"limit","in":"query"},{"description":"query events time interval","required":false,"schema":{"title":"Step","type":"string","description":"query events time interval"},"name":"step","in":"query"},{"description":"query events order","required":false,"schema":{"title":"Direction","type":"string","description":"query events order"},"name":"direction","in":"query"}],"responses":{"200":{"description":"audit log by stream","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QueryResult"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/login":{"post":{"summary":"Login For Access Token","description":"User login with email and password","operationId":"login","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_login"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginSuccess_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Incorrect username or password","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}}}},"/refresh-token":{"post":{"summary":"Refresh For Access Token","description":"Refresh the JWT token for the user","operationId":"get_refresh_token","requestBody":{"content":{"application/json":{"schema":{"title":"Refresh Token Request","allOf":[{"$ref":"#/components/schemas/RefreshToken_In"}],"description":"Refresh token request"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LoginSuccess_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Could not validate credentials.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}}}},"/me":{"get":{"summary":"Get Current User Info","description":"Get the current user information","operationId":"get_current_user_info","responses":{"200":{"description":"The current user information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserInfo_Out"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/unlock-account/{user_id}":{"put":{"summary":"Unlock User Account","description":"Unlock the user account","operationId":"unlock_user_account","parameters":[{"description":"The user id to unlock the account for","required":true,"schema":{"title":"User Id","type":"string","description":"The user id to unlock the account for","format":"uuid"},"name":"user_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/organizations":{"get":{"summary":"Get All Organizations","description":"Get list of all the organizations","operationId":"get_all_organizations","responses":{"200":{"description":"List of organizations","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleOrganizations_Out"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Organization","description":"Register new organization and the admin user","operationId":"register_organization","requestBody":{"content":{"application/json":{"schema":{"title":"Organization","allOf":[{"$ref":"#/components/schemas/RegisterOrganization_In"}],"description":"Organization details"}}},"required":true},"responses":{"201":{"description":"Organization Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterOrganization_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"409":{"description":"User already registered","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}}}},"/organizations/{organization_id}":{"get":{"summary":"Get Organization","description":"Get the information about a organization","operationId":"get_organization","parameters":[{"description":"UUID of the requested organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the requested organization","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetOrganizations_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Organization","description":"Update organization information","operationId":"update_organization","parameters":[{"description":"UUID of the requested organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the requested organization","format":"uuid"},"name":"organization_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Update Organization Info","allOf":[{"$ref":"#/components/schemas/UpdateOrganization_In"}],"description":"Organization details to update"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Organization","description":"Disable the organization and all the users","operationId":"soft_delete_organization","parameters":[{"description":"UUID of the organization to be deleted","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the organization to be deleted","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/organizations/{organization_id}/users":{"get":{"summary":"Get Users","description":"Get all users in the organization","operationId":"get_users","parameters":[{"description":"UUID of the organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the organization","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleUsers_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"User organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register User","description":"Add new user to organization","operationId":"register_user","parameters":[{"description":"UUID of the organization to add the user to","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the organization to add the user to","format":"uuid"},"name":"organization_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"User","allOf":[{"$ref":"#/components/schemas/RegisterUser_In"}],"description":"User details to register with the organization"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterUser_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"409":{"description":"User already exists","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/organizations/{organization_id}/users/{user_id}":{"get":{"summary":"Get User","description":"Get information about a user","operationId":"get_user","parameters":[{"description":"UUID of the organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the organization","format":"uuid"},"name":"organization_id","in":"path"},{"description":"UUID of the user","required":true,"schema":{"title":"User Id","type":"string","description":"UUID of the user","format":"uuid"},"name":"user_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetUsers_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update User Info","description":"\n Update user information.\n Only organization admin can update the user role and account state for a user.\n Only the account owner can update the job title and avatar.\n ","operationId":"update_user_info","parameters":[{"description":"UUID of the organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the organization","format":"uuid"},"name":"organization_id","in":"path"},{"description":"UUID of the user","required":true,"schema":{"title":"User Id","type":"string","description":"UUID of the user","format":"uuid"},"name":"user_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Update User Info","allOf":[{"$ref":"#/components/schemas/UpdateUser_In"}],"description":"User information to update"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete User","description":"Soft Delete user","operationId":"soft_delete_user","parameters":[{"description":"UUID of the organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the organization","format":"uuid"},"name":"organization_id","in":"path"},{"description":"UUID of the user","required":true,"schema":{"title":"User Id","type":"string","description":"UUID of the user","format":"uuid"},"name":"user_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"User not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations":{"get":{"summary":"Get All Data Federations","description":"Get list of all the data federations","operationId":"get_all_data_federations","parameters":[{"description":"UUID of Data Submitter in the data federation","required":false,"schema":{"title":"Data Submitter Id","type":"string","description":"UUID of Data Submitter in the data federation","format":"uuid"},"name":"data_submitter_id","in":"query"},{"description":"UUID of Researcher in the data federation","required":false,"schema":{"title":"Researcher Id","type":"string","description":"UUID of Researcher in the data federation","format":"uuid"},"name":"researcher_id","in":"query"},{"description":"UUID of Dataset in the data federation","required":false,"schema":{"title":"Dataset Id","type":"string","description":"UUID of Dataset in the data federation","format":"uuid"},"name":"dataset_id","in":"query"}],"responses":{"200":{"description":"List of data federations","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDataFederation_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Access denied","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Data Federation","description":"Register new data federation","operationId":"register_data_federation","requestBody":{"content":{"application/json":{"schema":{"title":"Data Federation Req","allOf":[{"$ref":"#/components/schemas/RegisterDataFederation_In"}],"description":"Data Federation details to be registered"}}},"required":true},"responses":{"201":{"description":"DataFederation Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataFederation_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}":{"get":{"summary":"Get Data Federation","description":"Get the information about a data federation","operationId":"get_data_federation","parameters":[{"description":"UUID of the data federation","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation","format":"uuid"},"name":"data_federation_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDataFederation_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Data Federation","description":"Update data federation information","operationId":"update_data_federation","parameters":[{"description":"UUID of the data federation","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation","format":"uuid"},"name":"data_federation_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Updated Data Federation Info","allOf":[{"$ref":"#/components/schemas/UpdateDataFederation_In"}],"description":"Updated Data federation information"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Data Federation","description":"Disable the data federation","operationId":"soft_delete_data_federation","parameters":[{"description":"UUID of the data federation to be deprovisioned","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation to be deprovisioned","format":"uuid"},"name":"data_federation_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/researcher/{researcher_organization_id}":{"put":{"summary":"Invite Researcher","description":"Invite a researcher to join a data federation","operationId":"invite_researcher","parameters":[{"description":"UUID of the data federation","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the researcher organization to be invited","required":true,"schema":{"title":"Researcher Organization Id","type":"string","description":"UUID of the researcher organization to be invited","format":"uuid"},"name":"researcher_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"554":{"description":"Server unexpectedly disconnected or an attempt is made to use the SMTP instance before connecting it to a server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"510":{"description":"The command or option is not supported by the SMTP server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Researcher","description":"Automatically add a researcher to the data federation, bypassing an invite path","operationId":"register_researcher","parameters":[{"description":"UUID of the data federation","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the researcher organization to be added","required":true,"schema":{"title":"Researcher Organization Id","type":"string","description":"UUID of the researcher organization to be added","format":"uuid"},"name":"researcher_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/data-submitter/{data_submitter_organization_id}":{"put":{"summary":"Invite Data Submitter","description":"Invite a data submitter to join a data federation","operationId":"invite_data_submitter","parameters":[{"description":"UUID of the data federation","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the data submitter organization to be invited","required":true,"schema":{"title":"Data Submitter Organization Id","type":"string","description":"UUID of the data submitter organization to be invited","format":"uuid"},"name":"data_submitter_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"554":{"description":"Server unexpectedly disconnected or an attempt is made to use the SMTP instance before connecting it to a server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"510":{"description":"The command or option is not supported by the SMTP server","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Data Submitter","description":"Automatically add a data submitter to the data federation, bypassing an invite path","operationId":"register_data_submitter","parameters":[{"description":"UUID of the data federation","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the data submitter organization to be invited","required":true,"schema":{"title":"Data Submitter Organization Id","type":"string","description":"UUID of the data submitter organization to be invited","format":"uuid"},"name":"data_submitter_organization_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/data-models":{"put":{"summary":"Add Data Model","description":"Add a data model to a data federation","operationId":"add_data_model","parameters":[{"description":"UUID of the data federation","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the data federation","format":"uuid"},"name":"data_federation_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Data Model","type":"object","description":"Data model(json) to be added"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"400":{"description":"Data model is empty","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"DataFederation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{organization_id}/invites":{"get":{"summary":"Get All Invites","description":"Get list of all the pending invites received. Only ADMIN roles have access.","operationId":"get_all_invites","parameters":[{"description":"UUID of the organization for which to list all the invited","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the organization for which to list all the invited","format":"uuid"},"name":"organization_id","in":"path"}],"responses":{"200":{"description":"List of pending invites received","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleInvite_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{organization_id}/invites/{invite_id}":{"get":{"summary":"Get Invite","description":"Get the information about an invite","operationId":"get_invite","parameters":[{"description":"UUID of the invired organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the invired organization","format":"uuid"},"name":"organization_id","in":"path"},{"description":"UUID of the invite to be fetched","required":true,"schema":{"title":"Invite Id","type":"string","description":"UUID of the invite to be fetched","format":"uuid"},"name":"invite_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetInvite_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Invite not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"patch":{"summary":"Accept Or Reject Invite","description":"Accept or reject an invite","operationId":"accept_or_reject_invite","parameters":[{"description":"UUID of the invited organization","required":true,"schema":{"title":"Organization Id","type":"string","description":"UUID of the invited organization","format":"uuid"},"name":"organization_id","in":"path"},{"description":"UUID of the invite to be approved to rejected","required":true,"schema":{"title":"Invite Id","type":"string","description":"UUID of the invite to be approved to rejected","format":"uuid"},"name":"invite_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Updated Invite","allOf":[{"$ref":"#/components/schemas/PatchInvite_In"}],"description":"The accpet or reject information"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Invite not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"410":{"description":"Invite expired","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/datasets/{dataset_id}":{"put":{"summary":"Add Dataset","description":"Add a dataset to a data federation","operationId":"add_dataset","parameters":[{"description":"UUID of the Data federation to which the dataset is being added","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the Data federation to which the dataset is being added","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the dataset that is being added to the data federation","required":true,"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset that is being added to the data federation","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"401":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Remove Dataset","description":"Remove a dataset from a data federation","operationId":"remove_dataset","parameters":[{"description":"UUID of the Data federation from which the dataset is being removed","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the Data federation from which the dataset is being removed","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the dataset that is being removed from the data federation","required":true,"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset that is being removed from the data federation","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations/{data_federation_id}/dataset_key/{dataset_id}":{"get":{"summary":"Get Existing Dataset Key","description":"Return a dataset encryption key by either retrieving and unwrapping","operationId":"get_existing_dataset_key","parameters":[{"description":"UUID of the Data federation to which the dataset belongs","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the Data federation to which the dataset belongs","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the dataset for which the key is being requested","required":true,"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset for which the key is being requested","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetEncryptionKey_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Get Dataset Key","description":"Return a dataset encryption key by either retrieving and unwrapping, or creating","operationId":"get_dataset_key","parameters":[{"description":"UUID of the Data federation to which the dataset belongs","required":true,"schema":{"title":"Data Federation Id","type":"string","description":"UUID of the Data federation to which the dataset belongs","format":"uuid"},"name":"data_federation_id","in":"path"},{"description":"UUID of the dataset for which the key is being requested","required":true,"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset for which the key is being requested","format":"uuid"},"name":"dataset_id","in":"path"},{"required":false,"schema":{"title":"Create If Not Found","type":"boolean","default":true},"name":"create_if_not_found","in":"query"}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DatasetEncryptionKey_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Unauthorised","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provisions":{"post":{"summary":"Provision Data Federation","description":"Provision data federation SCNs","operationId":"register_data_federation_provision","requestBody":{"content":{"application/json":{"schema":{"title":"Provision Req","allOf":[{"$ref":"#/components/schemas/RegisterDataFederationProvision_In"}],"description":"Information required for provsioning"}}},"required":true},"responses":{"201":{"description":"Data Federation Provision Id and list of SCNs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataFederationProvision_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Data Federation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Organization must be one of the the data federation researcher","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"400":{"description":"Invalid secure computation node type","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provsions/{provision_id}":{"get":{"summary":"Get Data Federation Provision Info","description":"Get data federation provision SCNs","operationId":"get_data_federation_provision_info","parameters":[{"description":"Data Federation Provision Id","required":true,"schema":{"title":"Provision Id","type":"string","description":"Data Federation Provision Id","format":"uuid"},"name":"provision_id","in":"path"}],"responses":{"200":{"description":"Data Federation Provision information and list of SCNs","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDataFederationProvision"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provsions":{"get":{"summary":"Get All Data Federation Provision Info","description":"Get all data federation provision SCNs","operationId":"get_all_data_federation_provision_info","responses":{"200":{"description":"All Data Federation Provision information and list of SCNs for the current organization","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDataFederationProvision_Out"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/data-federations-provisions/{provision_id}":{"delete":{"summary":"Deprovision Data Federation","description":"Deprovision data federation SCNs","operationId":"deprovision_data_federation","parameters":[{"description":"Data Federation Provision Id to deprovision","required":true,"schema":{"title":"Provision Id","type":"string","description":"Data Federation Provision Id to deprovision","format":"uuid"},"name":"provision_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/datasets":{"get":{"summary":"Get All Datasets","description":"Get list of all the datasets for the current organization","operationId":"get_all_datasets","responses":{"200":{"description":"List of datasets","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDataset_Out"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Dataset","description":"Register new dataset","operationId":"register_dataset","requestBody":{"content":{"application/json":{"schema":{"title":"Dataset Req","allOf":[{"$ref":"#/components/schemas/RegisterDataset_In"}],"description":"information required to register a dataset"}}},"required":true},"responses":{"201":{"description":"Dataset Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDataset_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/datasets/{dataset_id}":{"get":{"summary":"Get Dataset","description":"Get the information about a dataset","operationId":"get_dataset","parameters":[{"description":"UUID of the dataset being fetched","required":true,"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset being fetched","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDataset_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Dataset","description":"Update dataset information","operationId":"update_dataset","parameters":[{"description":"UUID of the dataset being updated","required":true,"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset being updated","format":"uuid"},"name":"dataset_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Updated Dataset Info","allOf":[{"$ref":"#/components/schemas/UpdateDataset_In"}],"description":"Updated dataset information"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Dataset","description":"Disable the dataset","operationId":"soft_delete_dataset","parameters":[{"description":"UUID of the dataset being soft deleted","required":true,"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset being soft deleted","format":"uuid"},"name":"dataset_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/dataset-versions":{"get":{"summary":"Get All Dataset Versions","description":"Get list of all the dataset-versions for the dataset","operationId":"get_all_dataset_versions","requestBody":{"content":{"application/json":{"schema":{"title":"Dataset Id","type":"string","description":"UUID of the dataset","format":"uuid"}}},"required":true},"responses":{"200":{"description":"List of dataset-versions for the dataset","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleDatasetVersion_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"post":{"summary":"Register Dataset Version","description":"Register new dataset-version","operationId":"register_dataset_version","requestBody":{"content":{"application/json":{"schema":{"title":"Dataset Version Req","allOf":[{"$ref":"#/components/schemas/RegisterDatasetVersion_In"}],"description":"Dataset Version information to register"}}},"required":true},"responses":{"201":{"description":"Dataset Version Id","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegisterDatasetVersion_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"403":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"404":{"description":"Organization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/dataset-versions/{dataset_version_id}":{"get":{"summary":"Get Dataset Version","description":"Get the information about a dataset","operationId":"get_dataset_version","parameters":[{"description":"UUID of the dataset version","required":true,"schema":{"title":"Dataset Version Id","type":"string","description":"UUID of the dataset version","format":"uuid"},"name":"dataset_version_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDatasetVersion_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset version not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Dataset Version","description":"Update dataset information","operationId":"update_dataset_version","parameters":[{"description":"UUID of the dataset version","required":true,"schema":{"title":"Dataset Version Id","type":"string","description":"UUID of the dataset version","format":"uuid"},"name":"dataset_version_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Updated Dataset Version Info","allOf":[{"$ref":"#/components/schemas/UpdateDatasetVersion_In"}],"description":"Object containing the information to be updated"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"delete":{"summary":"Soft Delete Dataset Version","description":"Disable a dataset version","operationId":"soft_delete_dataset_version","parameters":[{"description":"UUID of the dataset version","required":true,"schema":{"title":"Dataset Version Id","type":"string","description":"UUID of the dataset version","format":"uuid"},"name":"dataset_version_id","in":"path"}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/dataset-versions/{dataset_version_id}/connection-string":{"get":{"summary":"Get Dataset Version Connection String","description":"Get the write only connection string for the dataset version upload","operationId":"get_dataset_version_connection_string","parameters":[{"description":"UUID of the dataset version","required":true,"schema":{"title":"Dataset Version Id","type":"string","description":"UUID of the dataset version","format":"uuid"},"name":"dataset_version_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetDatasetVersionConnectionString_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset version not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"409":{"description":"Dataset version is already uploaded or in progress","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/secure-computation-node":{"get":{"summary":"Get All Secure Computation Nodes","description":"Get list of all the secure_computation_node for the current user and federation provision","operationId":"get_all_secure_computation_nodes","parameters":[{"description":"Data federation provision id","required":true,"schema":{"title":"Data Federation Provision Id","type":"string","description":"Data federation provision id","format":"uuid"},"name":"data_federation_provision_id","in":"query"}],"responses":{"200":{"description":"List of secure_computation_nodes","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMultipleSecureComputationNode_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Dataset version not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/secure-computation-node/{secure_computation_node_id}":{"get":{"summary":"Get Secure Computation Node","description":"Get the information about a secure computation node","operationId":"get_secure_computation_node","parameters":[{"description":"UUID of Secure Computation Node","required":true,"schema":{"title":"Secure Computation Node Id","type":"string","description":"UUID of Secure Computation Node","format":"uuid"},"name":"secure_computation_node_id","in":"path"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSecureComputationNode_Out"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Secure Computation Node not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]},"put":{"summary":"Update Secure Computation Node","description":"Update secure computation node information","operationId":"update_secure_computation_node","parameters":[{"description":"UUID of Secure Computation Node","required":true,"schema":{"title":"Secure Computation Node Id","type":"string","description":"UUID of Secure Computation Node","format":"uuid"},"name":"secure_computation_node_id","in":"path"}],"requestBody":{"content":{"application/json":{"schema":{"title":"Updated Secure Computation Node Info","allOf":[{"$ref":"#/components/schemas/UpdateSecureComputationNode_In"}],"description":"Updated Secure Computation Node information"}}},"required":true},"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"404":{"description":"Secure Computation Node not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}},"403":{"description":"Access denied","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPException"}}}}},"security":[{"OAuth2PasswordBearer":[]}]}},"/database":{"delete":{"summary":"Register Dataset","description":"Drop the database","operationId":"drop_database","responses":{"204":{"description":"Successful Response"}}}}},"components":{"schemas":{"BasicObjectInfo":{"title":"BasicObjectInfo","required":["id","name"],"type":"object","properties":{"id":{"title":"Id","type":"string","format":"uuid"},"name":{"title":"Name","type":"string"}}},"Body_login":{"title":"Body_login","required":["username","password"],"type":"object","properties":{"grant_type":{"title":"Grant Type","pattern":"password","type":"string"},"username":{"title":"Username","type":"string"},"password":{"title":"Password","type":"string"},"scope":{"title":"Scope","type":"string","default":""},"client_id":{"title":"Client Id","type":"string"},"client_secret":{"title":"Client Secret","type":"string"}}},"DataFederationDataFormat":{"title":"DataFederationDataFormat","enum":["CSV","FHIR"],"description":"An enumeration."},"DataFederationProvisionState":{"title":"DataFederationProvisionState","enum":["CREATING","CREATED","CREATION_FAILED","DELETING","DELETED","DELETION_FAILED"],"description":"An enumeration."},"DataFederationState":{"title":"DataFederationState","enum":["ACTIVE","INACTIVE"],"description":"An enumeration."},"DatasetEncryptionKey_Out":{"title":"DatasetEncryptionKey_Out","required":["dataset_key"],"type":"object","properties":{"dataset_key":{"title":"Dataset Key","type":"string"}}},"DatasetFormat":{"title":"DatasetFormat","enum":["FHIR","CSV"],"description":"An enumeration."},"DatasetState":{"title":"DatasetState","enum":["CREATING_STORAGE","ACTIVE","INACTIVE","ERROR"],"description":"An enumeration."},"DatasetVersionState":{"title":"DatasetVersionState","enum":["ACTIVE","INACTIVE","CREATING_DIRECTORY","NOT_UPLOADED","ERROR"],"description":"An enumeration."},"GetDataFederationProvision":{"title":"GetDataFederationProvision","required":["data_federation_id","secure_computation_nodes_size","_id","organization_id","smart_broker_id","state"],"type":"object","properties":{"data_federation_id":{"title":"Data Federation Id","type":"string","format":"uuid"},"secure_computation_nodes_size":{"$ref":"#/components/schemas/SecureComputationNodeSize"},"_id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization_id":{"title":"Organization Id","type":"string","format":"uuid"},"smart_broker_id":{"title":"Smart Broker Id","type":"string","format":"uuid"},"state":{"$ref":"#/components/schemas/DataFederationProvisionState"},"secure_computation_nodes_id":{"title":"Secure Computation Nodes Id","type":"array","items":{"type":"string","format":"uuid"}}}},"GetDataFederation_Out":{"title":"GetDataFederation_Out","required":["name","description","data_format","data_model","_id","organization","state","data_submitter_organizations","research_organizations","datasets"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"data_format":{"$ref":"#/components/schemas/DataFederationDataFormat"},"data_model":{"title":"Data Model","type":"string"},"_id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/DataFederationState"},"data_submitter_organizations":{"title":"Data Submitter Organizations","type":"array","items":{"$ref":"#/components/schemas/BasicObjectInfo"}},"research_organizations":{"title":"Research Organizations","type":"array","items":{"$ref":"#/components/schemas/BasicObjectInfo"}},"datasets":{"title":"Datasets","type":"array","items":{"$ref":"#/components/schemas/BasicObjectInfo"}},"data_submitter_organizations_invites_id":{"title":"Data Submitter Organizations Invites Id","type":"array","items":{"type":"string","format":"uuid"}},"research_organizations_invites_id":{"title":"Research Organizations Invites Id","type":"array","items":{"type":"string","format":"uuid"}}}},"GetDatasetVersionConnectionString_Out":{"title":"GetDatasetVersionConnectionString_Out","required":["_id","connection_string"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"},"connection_string":{"title":"Connection String","type":"string"}}},"GetDatasetVersion_Out":{"title":"GetDatasetVersion_Out","required":["dataset_id","description","name","_id","dataset_version_created_time","organization","state","note"],"type":"object","properties":{"dataset_id":{"title":"Dataset Id","type":"string","format":"uuid"},"description":{"title":"Description","type":"string"},"name":{"title":"Name","maxLength":255,"type":"string"},"_id":{"title":" Id","type":"string","format":"uuid"},"dataset_version_created_time":{"title":"Dataset Version Created Time","type":"string","format":"date-time"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/DatasetVersionState"},"note":{"title":"Note","type":"string"}}},"GetDataset_Out":{"title":"GetDataset_Out","required":["name","description","tags","format","_id","organization","state"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"tags":{"title":"Tags","type":"string"},"format":{"$ref":"#/components/schemas/DatasetFormat"},"_id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/DatasetState"},"note":{"title":"Note","type":"string"}}},"GetInvite_Out":{"title":"GetInvite_Out","required":["_id","data_federation","inviter_user","inviter_organization","state","created_time","expiry_time","type"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"},"data_federation":{"$ref":"#/components/schemas/BasicObjectInfo"},"inviter_user":{"$ref":"#/components/schemas/BasicObjectInfo"},"inviter_organization":{"$ref":"#/components/schemas/BasicObjectInfo"},"state":{"$ref":"#/components/schemas/InviteState"},"created_time":{"title":"Created Time","type":"string","format":"date-time"},"expiry_time":{"title":"Expiry Time","type":"string","format":"date-time"},"type":{"$ref":"#/components/schemas/InviteType"}}},"GetMultipleDataFederationProvision_Out":{"title":"GetMultipleDataFederationProvision_Out","required":["data_federation_provisions"],"type":"object","properties":{"data_federation_provisions":{"title":"Data Federation Provisions","type":"array","items":{"$ref":"#/components/schemas/GetDataFederationProvision"}}}},"GetMultipleDataFederation_Out":{"title":"GetMultipleDataFederation_Out","type":"object","properties":{"data_federations":{"title":"Data Federations","type":"array","items":{"$ref":"#/components/schemas/GetDataFederation_Out"}}}},"GetMultipleDatasetVersion_Out":{"title":"GetMultipleDatasetVersion_Out","required":["dataset_versions"],"type":"object","properties":{"dataset_versions":{"title":"Dataset Versions","type":"array","items":{"$ref":"#/components/schemas/GetDatasetVersion_Out"}}}},"GetMultipleDataset_Out":{"title":"GetMultipleDataset_Out","type":"object","properties":{"datasets":{"title":"Datasets","type":"array","items":{"$ref":"#/components/schemas/GetDataset_Out"}}}},"GetMultipleInvite_Out":{"title":"GetMultipleInvite_Out","required":["invites"],"type":"object","properties":{"invites":{"title":"Invites","type":"array","items":{"$ref":"#/components/schemas/GetInvite_Out"}}}},"GetMultipleOrganizations_Out":{"title":"GetMultipleOrganizations_Out","required":["organizations"],"type":"object","properties":{"organizations":{"title":"Organizations","type":"array","items":{"$ref":"#/components/schemas/GetOrganizations_Out"}}}},"GetMultipleSecureComputationNode_Out":{"title":"GetMultipleSecureComputationNode_Out","required":["secure_computation_nodes"],"type":"object","properties":{"secure_computation_nodes":{"title":"Secure Computation Nodes","type":"array","items":{"$ref":"#/components/schemas/GetSecureComputationNode_Out"}}}},"GetMultipleUsers_Out":{"title":"GetMultipleUsers_Out","required":["users"],"type":"object","properties":{"users":{"title":"Users","type":"array","items":{"$ref":"#/components/schemas/GetUsers_Out"}}}},"GetOrganizations_Out":{"title":"GetOrganizations_Out","required":["name","description","_id"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"avatar":{"title":"Avatar","type":"string"},"_id":{"title":" Id","type":"string","format":"uuid"}}},"GetSecureComputationNode_Out":{"title":"GetSecureComputationNode_Out","required":["_id","data_federation","dataset","dataset_version","researcher_user","type","timestamp","state"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"},"data_federation":{"$ref":"#/components/schemas/BasicObjectInfo"},"dataset":{"$ref":"#/components/schemas/BasicObjectInfo"},"dataset_version":{"$ref":"#/components/schemas/BasicObjectInfo"},"researcher":{"$ref":"#/components/schemas/BasicObjectInfo"},"data_owner":{"$ref":"#/components/schemas/BasicObjectInfo"},"researcher_user":{"title":"Researcher User","type":"string","format":"uuid"},"type":{"$ref":"#/components/schemas/SecureComputationNodeType"},"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"state":{"$ref":"#/components/schemas/SecureComputationNodeState"},"detail":{"title":"Detail","type":"string"},"ipaddress":{"title":"Ipaddress","type":"string","format":"ipv4"}}},"GetUsers_Out":{"title":"GetUsers_Out","required":["name","email","job_title","role","avatar","_id","organization"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"email":{"title":"Email","type":"string","format":"email"},"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"avatar":{"title":"Avatar","type":"string"},"_id":{"title":" Id","type":"string","format":"uuid"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"}}},"HTTPValidationError":{"title":"ValidationError","type":"object","properties":{"error":{"title":"Error","type":"string","default":"Invalid Schema"}}},"InviteState":{"title":"InviteState","enum":["PENDING","ACCEPTED","REJECTED"],"description":"An enumeration."},"InviteType":{"title":"InviteType","enum":["DF_RESEARCHER","DF_SUBMITTER"],"description":"An enumeration."},"LoginSuccess_Out":{"title":"LoginSuccess_Out","required":["access_token","refresh_token","token_type"],"type":"object","properties":{"access_token":{"title":"Access Token","type":"string"},"refresh_token":{"title":"Refresh Token","type":"string"},"token_type":{"title":"Token Type","type":"string"}}},"PatchInvite_In":{"title":"PatchInvite_In","required":["state"],"type":"object","properties":{"state":{"$ref":"#/components/schemas/InviteState"}}},"QueryResult":{"title":"QueryResult","required":["status","data"],"type":"object","properties":{"status":{"title":"Status","type":"string"},"data":{"title":"Data","type":"object"}}},"RefreshToken_In":{"title":"RefreshToken_In","required":["refresh_token"],"type":"object","properties":{"refresh_token":{"title":"Refresh Token","type":"string"}}},"RegisterDataFederationProvision_In":{"title":"RegisterDataFederationProvision_In","required":["data_federation_id","secure_computation_nodes_size"],"type":"object","properties":{"data_federation_id":{"title":"Data Federation Id","type":"string","format":"uuid"},"secure_computation_nodes_size":{"$ref":"#/components/schemas/SecureComputationNodeSize"}}},"RegisterDataFederationProvision_Out":{"title":"RegisterDataFederationProvision_Out","required":["data_federation_id","secure_computation_nodes_size","_id","creation_time","organization_id","smart_broker_id","state","secure_computation_nodes_id"],"type":"object","properties":{"data_federation_id":{"title":"Data Federation Id","type":"string","format":"uuid"},"secure_computation_nodes_size":{"$ref":"#/components/schemas/SecureComputationNodeSize"},"_id":{"title":" Id","type":"string","format":"uuid"},"creation_time":{"title":"Creation Time","type":"string","format":"date-time"},"organization_id":{"title":"Organization Id","type":"string","format":"uuid"},"smart_broker_id":{"title":"Smart Broker Id","type":"string","format":"uuid"},"state":{"$ref":"#/components/schemas/DataFederationProvisionState"},"secure_computation_nodes_id":{"title":"Secure Computation Nodes Id","type":"array","items":{"type":"string","format":"uuid"}}}},"RegisterDataFederation_In":{"title":"RegisterDataFederation_In","required":["name","description","data_format","data_model"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"data_format":{"$ref":"#/components/schemas/DataFederationDataFormat"},"data_model":{"title":"Data Model","type":"string"}}},"RegisterDataFederation_Out":{"title":"RegisterDataFederation_Out","required":["_id"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterDatasetVersion_In":{"title":"RegisterDatasetVersion_In","required":["dataset_id","description","name"],"type":"object","properties":{"dataset_id":{"title":"Dataset Id","type":"string","format":"uuid"},"description":{"title":"Description","type":"string"},"name":{"title":"Name","maxLength":255,"type":"string"}}},"RegisterDatasetVersion_Out":{"title":"RegisterDatasetVersion_Out","required":["_id"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterDataset_In":{"title":"RegisterDataset_In","required":["name","description","tags","format"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"tags":{"title":"Tags","type":"string"},"format":{"$ref":"#/components/schemas/DatasetFormat"}}},"RegisterDataset_Out":{"title":"RegisterDataset_Out","required":["_id"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterOrganization_In":{"title":"RegisterOrganization_In","required":["name","description","admin_name","admin_job_title","admin_email","admin_password"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"avatar":{"title":"Avatar","type":"string"},"admin_name":{"title":"Admin Name","type":"string"},"admin_job_title":{"title":"Admin Job Title","type":"string"},"admin_email":{"title":"Admin Email","type":"string","format":"email"},"admin_password":{"title":"Admin Password","type":"string"},"admin_avatar":{"title":"Admin Avatar","type":"string"}}},"RegisterOrganization_Out":{"title":"RegisterOrganization_Out","required":["_id"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"}}},"RegisterUser_In":{"title":"RegisterUser_In","required":["name","email","job_title","role","password"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"email":{"title":"Email","type":"string","format":"email"},"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"avatar":{"title":"Avatar","type":"string"},"password":{"title":"Password","type":"string"}}},"RegisterUser_Out":{"title":"RegisterUser_Out","required":["_id"],"type":"object","properties":{"_id":{"title":" Id","type":"string","format":"uuid"}}},"SecureComputationNodeSize":{"title":"SecureComputationNodeSize","enum":["Standard_D4s_v4","Standard_DC4ads_v5"],"description":"An enumeration."},"SecureComputationNodeState":{"title":"SecureComputationNodeState","enum":["REQUESTED","CREATING","INITIALIZING","WAITING_FOR_DATA","FAILED","READY","IN_USE","DELETED","DELETING","DELETE_FAILED"],"description":"An enumeration."},"SecureComputationNodeType":{"title":"SecureComputationNodeType","enum":["SCN","SMART_BROKER"],"description":"An enumeration."},"UpdateDataFederation_In":{"title":"UpdateDataFederation_In","type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"}}},"UpdateDatasetVersion_In":{"title":"UpdateDatasetVersion_In","type":"object","properties":{"description":{"title":"Description","type":"string"},"state":{"$ref":"#/components/schemas/DatasetVersionState"}}},"UpdateDataset_In":{"title":"UpdateDataset_In","type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"tag":{"title":"Tag","type":"string"}}},"UpdateOrganization_In":{"title":"UpdateOrganization_In","required":["name","description","avatar"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"description":{"title":"Description","type":"string"},"avatar":{"title":"Avatar","type":"string"}}},"UpdateSecureComputationNode_In":{"title":"UpdateSecureComputationNode_In","type":"object","properties":{"state":{"$ref":"#/components/schemas/SecureComputationNodeState"}}},"UpdateUser_In":{"title":"UpdateUser_In","required":["job_title","role","account_state","avatar"],"type":"object","properties":{"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"account_state":{"$ref":"#/components/schemas/UserAccountState"},"avatar":{"title":"Avatar","type":"string"}}},"UserAccountState":{"title":"UserAccountState","enum":["ACTIVE","INACTIVE","LOCKED"],"description":"An enumeration."},"UserInfo_Out":{"title":"UserInfo_Out","required":["name","email","job_title","role","_id","organization"],"type":"object","properties":{"name":{"title":"Name","type":"string"},"email":{"title":"Email","type":"string","format":"email"},"job_title":{"title":"Job Title","type":"string"},"role":{"$ref":"#/components/schemas/UserRole"},"avatar":{"title":"Avatar","type":"string"},"_id":{"title":" Id","type":"string","format":"uuid"},"organization":{"$ref":"#/components/schemas/BasicObjectInfo"}}},"UserRole":{"title":"UserRole","enum":["ADMIN","AUDITOR","USER","DIGITAL_CONTRACT_ADMIN","DATASET_ADMIN","SAIL_ADMIN","ORGANIZATION_ADMIN"],"description":"An enumeration."},"ValidationError":{"title":"ValidationError","required":["loc","msg","type"],"type":"object","properties":{"loc":{"title":"Location","type":"array","items":{"anyOf":[{"type":"string"},{"type":"integer"}]}},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}}},"HTTPException":{"title":"HTTPExceptionObj","type":"object","properties":{"detail":{"title":"Error Detail","type":"string"}}}},"securitySchemes":{"OAuth2PasswordBearer":{"type":"oauth2","flows":{"password":{"scopes":{},"tokenUrl":"login"}}}}}} \ No newline at end of file diff --git a/ApiServices/generated/docs/index.html b/docs/index.html similarity index 84% rename from ApiServices/generated/docs/index.html rename to docs/index.html index c8d6d721..94693472 100644 --- a/ApiServices/generated/docs/index.html +++ b/docs/index.html @@ -1850,14 +1850,15 @@ .iUxAWq:before{content:'';width:15px;height:15px;background-size:contain;background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==');opacity:0.5;visibility:hidden;display:inline-block;vertical-align:middle;}/*!sc*/ h1:hover > .sc-crzoAE::before,h2:hover > .iUxAWq::before,.iUxAWq:hover::before{visibility:visible;}/*!sc*/ data-styled.g14[id="sc-crzoAE"]{content:"iUxAWq,"}/*!sc*/ +.iPqByX{height:1.3em;width:1.3em;min-width:1.3em;vertical-align:middle;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/ +.hGHhhO{height:18px;width:18px;min-width:18px;vertical-align:middle;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/ .dqYXmg{height:1.5em;width:1.5em;min-width:1.5em;vertical-align:middle;float:left;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/ .dqYXmg polygon{fill:#1d8127;}/*!sc*/ .dVWHLw{height:1.5em;width:1.5em;min-width:1.5em;vertical-align:middle;float:left;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/ .dVWHLw polygon{fill:#d41f1c;}/*!sc*/ .bRmrKA{height:20px;width:20px;min-width:20px;vertical-align:middle;float:right;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(0);-ms-transform:rotateZ(0);transform:rotateZ(0);}/*!sc*/ .bRmrKA polygon{fill:white;}/*!sc*/ -.iPqByX{height:1.3em;width:1.3em;min-width:1.3em;vertical-align:middle;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/ -data-styled.g15[id="sc-dIsUp"]{content:"dqYXmg,dVWHLw,bRmrKA,iPqByX,"}/*!sc*/ +data-styled.g15[id="sc-dIsUp"]{content:"iPqByX,hGHhhO,dqYXmg,dVWHLw,bRmrKA,"}/*!sc*/ .iwcKgn{border-left:1px solid #7c7cbb;box-sizing:border-box;position:relative;padding:10px 10px 10px 0;}/*!sc*/ @media screen and (max-width:50rem){.iwcKgn{display:block;overflow:hidden;}}/*!sc*/ tr:first-of-type > .sc-hBMUJo,tr.last > .iwcKgn{border-left-width:0;background-position:top left;background-repeat:no-repeat;background-size:1px 100%;}/*!sc*/ @@ -2032,6 +2033,11 @@ data-styled.g54[id="sc-Arkif"]{content:"jojbRz,"}/*!sc*/ .dSaTNC{margin-top:15px;}/*!sc*/ data-styled.g57[id="sc-jgPyTC"]{content:"dSaTNC,"}/*!sc*/ +.hTttpy button{background-color:transparent;border:0;outline:0;font-size:13px;font-family:Courier,monospace;cursor:pointer;padding:0;color:#333333;}/*!sc*/ +.hTttpy button:focus{font-weight:600;}/*!sc*/ +.hTttpy .sc-dIsUp{height:1.1em;width:1.1em;}/*!sc*/ +.hTttpy .sc-dIsUp polygon{fill:#666;}/*!sc*/ +data-styled.g58[id="sc-gSYDnn"]{content:"hTttpy,"}/*!sc*/ .jWaWWE{vertical-align:middle;font-size:13px;line-height:20px;}/*!sc*/ data-styled.g59[id="sc-laZMeE"]{content:"jWaWWE,"}/*!sc*/ .jrLlAa{color:rgba(102,102,102,0.9);}/*!sc*/ @@ -2118,12 +2124,12 @@ .ilvUMs ..sc-jXcxbT{color:#ffffff;}/*!sc*/ .ilvUMs:focus{box-shadow:inset 0 2px 2px rgba(0,0,0,0.45),0 2px 0 rgba(128,128,128,0.25);}/*!sc*/ data-styled.g114[id="sc-eEVmNe"]{content:"ilvUMs,"}/*!sc*/ -.ldMUmp{font-size:0.929em;line-height:20px;background-color:#186FAF;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/ .ihNycv{font-size:0.929em;line-height:20px;background-color:#2F8132;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/ +.ldMUmp{font-size:0.929em;line-height:20px;background-color:#186FAF;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/ .blNLGm{font-size:0.929em;line-height:20px;background-color:#95507c;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/ .bJzUtf{font-size:0.929em;line-height:20px;background-color:#cc3333;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/ .cDAiVX{font-size:0.929em;line-height:20px;background-color:#bf581d;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/ -data-styled.g115[id="sc-fmdNqN"]{content:"ldMUmp,ihNycv,blNLGm,bJzUtf,cDAiVX,"}/*!sc*/ +data-styled.g115[id="sc-fmdNqN"]{content:"ihNycv,ldMUmp,blNLGm,bJzUtf,cDAiVX,"}/*!sc*/ .flIrdF{position:absolute;width:100%;z-index:100;background:#fafafa;color:#263238;box-sizing:border-box;box-shadow:0px 0px 6px rgba(0,0,0,0.33);overflow:hidden;border-bottom-left-radius:4px;border-bottom-right-radius:4px;-webkit-transition:all 0.25s ease;transition:all 0.25s ease;visibility:hidden;-webkit-transform:translateY(-50%) scaleY(0);-ms-transform:translateY(-50%) scaleY(0);transform:translateY(-50%) scaleY(0);}/*!sc*/ data-styled.g116[id="sc-ljsmAU"]{content:"flIrdF,"}/*!sc*/ .fQkroN{padding:10px;}/*!sc*/ @@ -2179,7 +2185,7 @@
-