swagger: '2.0' info: title: Octopod API version: v1 host: api.galatea.bio schemes: - https basePath: /api/v1 consumes: - application/json produces: - application/json securityDefinitions: Bearer: type: apiKey name: Authorization in: header security: - Bearer: [] paths: /credit/balance: get: operationId: credit_balance_list description: Get credit balances parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: orgs_ids in: query description: Ids of organizations required: false type: array items: type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Credit balances list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: type: object properties: id: title: Id type: string format: uuid readOnly: true org_id: title: Org id type: string readOnly: true balance: title: Balance type: string readOnly: true created_at: title: Created at type: string format: date-time readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true tags: - credit parameters: [] /credit/exchange: get: operationId: credit_exchange_list description: Get credit exchanges parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: orgs_ids in: query description: Ids of organizations required: false type: array items: type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Credit exchanges list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - credit_tariff type: object properties: id: title: Id type: string format: uuid readOnly: true credit_tariff: required: - credit_service type: object properties: id: title: Id type: string format: uuid readOnly: true credit_service: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true rate: title: Rate type: string readOnly: true currency_from: title: Currency from type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit post: operationId: credit_exchange_create description: Create credit exchange parameters: - name: data in: body required: true schema: required: - org_id - price - rate - currency_from type: object properties: org_id: title: Org id type: string format: uuid price: title: Price type: integer rate: title: Rate type: number currency_from: title: Currency from type: string minLength: 1 responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: New credit exchange schema: required: - credit_tariff type: object properties: id: title: Id type: string format: uuid readOnly: true credit_tariff: required: - credit_service type: object properties: id: title: Id type: string format: uuid readOnly: true credit_service: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true rate: title: Rate type: string readOnly: true currency_from: title: Currency from type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit parameters: [] /credit/exchange/{credit_exchange_id}: put: operationId: credit_exchange_update description: Edit credit exchange parameters: - name: data in: body required: true schema: required: - rate - price - currency_from type: object properties: rate: title: Rate type: number price: title: Price type: integer currency_from: title: Currency from type: string minLength: 1 - name: credit_exchange_id in: path description: Id of credit exchange required: true type: string responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Updated credit exchange schema: required: - credit_tariff type: object properties: id: title: Id type: string format: uuid readOnly: true credit_tariff: required: - credit_service type: object properties: id: title: Id type: string format: uuid readOnly: true credit_service: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true rate: title: Rate type: string readOnly: true currency_from: title: Currency from type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit delete: operationId: credit_exchange_delete description: Delete credit exchange parameters: - name: credit_exchange_id in: path description: Id of credit exchange required: true type: string responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: ok tags: - credit parameters: - name: credit_exchange_id in: path required: true type: string /credit/ledger: get: operationId: credit_ledger_list description: Get credit ledger parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: orgs_ids in: query description: Search by ids of organizations required: false type: array items: type: string - name: order_id in: query description: Search by order id required: false type: string - name: credit_service_types in: query description: Search by credit service type required: false type: array items: type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER - name: model_api_names in: query description: Search by model api name required: false type: array items: type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: min_date in: query description: Search by date range required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Search by date range required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: show_full in: query description: Show full ledger required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Credit ledger schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - id - name - transaction_id - order_id - status - type - comment - json_comment - org_id - amount - balance_from - balance_to - created_at type: object properties: id: title: Id type: string format: uuid name: title: Name type: string minLength: 1 transaction_id: title: Transaction id type: string format: uuid order_id: title: Order id type: string format: uuid status: title: Status type: string minLength: 1 type: title: Type type: string minLength: 1 comment: title: Comment type: string minLength: 1 json_comment: title: Json comment type: object additionalProperties: type: string x-nullable: true org_id: title: Org id type: string format: uuid amount: title: Amount type: integer balance_from: title: Balance from type: integer balance_to: title: Balance to type: integer created_at: title: Created at type: string format: date-time tags: - credit parameters: [] /credit/quickbooks_auth: get: operationId: credit_quickbooks_auth_list description: '' parameters: [] responses: '200': description: '' tags: - credit parameters: [] /credit/quickbooks_webhook: post: operationId: credit_quickbooks_webhook_create description: '' parameters: [] responses: '201': description: '' tags: - credit parameters: [] /credit/replenish: post: operationId: credit_replenish_create description: Replenish credits for organization parameters: - name: data in: body required: true schema: required: - org_id - amount type: object properties: org_id: title: Org id type: string format: uuid amount: title: Amount type: integer responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Organization credit balance schema: type: object properties: id: title: Id type: string format: uuid readOnly: true org_id: title: Org id type: string readOnly: true balance: title: Balance type: string readOnly: true created_at: title: Created at type: string format: date-time readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true tags: - credit parameters: [] /credit/service: get: operationId: credit_service_list description: Get credit services parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: model_api_names in: query description: Search by model api name required: false type: array items: type: string enum: - skywalker - hutt - palpatine - vader - mysterio responses: '401': description: unauthorized '403': description: forbidden '200': description: Credit services list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit post: operationId: credit_service_create description: Create credit service parameters: - name: data in: body required: true schema: required: - type type: object properties: named_model_id: title: Named model id type: string format: uuid x-nullable: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: New credit service schema: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit parameters: [] /credit/service/{credit_service_id}: delete: operationId: credit_service_delete description: Delete credit service parameters: - name: credit_service_id in: path description: Id of credit service required: true type: string responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: ok tags: - credit parameters: - name: credit_service_id in: path required: true type: string /credit/tariff: get: operationId: credit_tariff_list description: Get credit tariffs parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: orgs_ids in: query description: Ids of organizations required: false type: array items: type: string - name: credit_service_types in: query description: Search by credit service type required: false type: array items: type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER - name: model_api_names in: query description: Search by model api name required: false type: array items: type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: named_models in: query description: Search by named models required: false type: array items: type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Credit tariffs list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - credit_service type: object properties: id: title: Id type: string format: uuid readOnly: true credit_service: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit post: operationId: credit_tariff_create description: Create credit tariff parameters: - name: data in: body required: true schema: required: - org_id - credit_service_id - price type: object properties: org_id: title: Org id type: string format: uuid credit_service_id: title: Credit service id type: string format: uuid price: title: Price type: integer responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: New credit service schema: required: - credit_service type: object properties: id: title: Id type: string format: uuid readOnly: true credit_service: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit parameters: [] /credit/tariff/{credit_tariff_id}: put: operationId: credit_tariff_update description: Edit credit tariff parameters: - name: data in: body required: true schema: required: - price type: object properties: price: title: Price type: integer - name: credit_tariff_id in: path description: Id of credit tariff required: true type: string responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Updated credit tariff schema: required: - credit_service type: object properties: id: title: Id type: string format: uuid readOnly: true credit_service: required: - type type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER named_model: required: - id - model_name type: object properties: id: title: Id type: string format: uuid model_name: title: Model name type: string minLength: 1 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true org_id: title: Org id type: string readOnly: true price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit delete: operationId: credit_tariff_delete description: Delete credit tariff parameters: - name: credit_tariff_id in: path description: Id of credit tariff required: true type: string responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: ok tags: - credit parameters: - name: credit_tariff_id in: path required: true type: string /credit/template: get: operationId: credit_template_list description: Get credit templates parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: orgs_ids in: query description: Ids of organizations required: false type: array items: type: string - name: credit_service_types in: query description: Search by credit service type required: false type: array items: type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER - name: model_api_names in: query description: Search by model api name required: false type: array items: type: string enum: - skywalker - hutt - palpatine - vader - mysterio responses: '401': description: unauthorized '403': description: forbidden '200': description: Credit tariffs list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - model_api_name - type type: object properties: id: title: Id type: string format: uuid readOnly: true model_api_name: title: Model api name type: string enum: - skywalker - hutt - palpatine - vader - mysterio - check_source org_id: title: Org id type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit parameters: [] /credit/template/{credit_template_id}: put: operationId: credit_template_update description: Edit credit template parameters: - name: data in: body required: true schema: required: - price type: object properties: price: title: Price type: integer - name: credit_template_id in: path description: Id of credit template required: true type: string responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Updated credit template schema: required: - model_api_name - type type: object properties: id: title: Id type: string format: uuid readOnly: true model_api_name: title: Model api name type: string enum: - skywalker - hutt - palpatine - vader - mysterio - check_source org_id: title: Org id type: string readOnly: true type: title: Type type: string enum: - EXECUTE_MODEL_WGS - EXECUTE_MODEL_GNT - REPLENISHMENT - GENERATE_PDF_REPORT_ANCESTRY - GENERATE_PDF_REPORT_PRS_RUO_CARDIO - GENERATE_PDF_REPORT_PRS_RUO_CANCER - GENERATE_PDF_REPORT_PRS_CLINICAL - GENERATE_PDF_REPORT_PRS_CLINICAL_CARDIO - GENERATE_PDF_REPORT_PRS_CLINICAL_CANCER price: title: Price type: string readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true created_at: title: Created at type: string format: date-time readOnly: true tags: - credit parameters: - name: credit_template_id in: path required: true type: string /credit/write_off: post: operationId: credit_write_off_create description: Write off credits for organization parameters: - name: data in: body required: true schema: required: - org_id - amount type: object properties: org_id: title: Org id type: string format: uuid amount: title: Amount type: integer responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Organization credit balance schema: type: object properties: id: title: Id type: string format: uuid readOnly: true org_id: title: Org id type: string readOnly: true balance: title: Balance type: string readOnly: true created_at: title: Created at type: string format: date-time readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true tags: - credit parameters: [] /dashboard/admix: get: operationId: dashboard_admix_list description: Get dashboard data AdmixPlot parameters: - name: sort_by in: query description: Sorting required: false type: string enum: - sp_group - name: group_by in: query description: Grouping required: false type: string enum: - sp_group - name: order_id in: query description: Search by order id required: false type: string - name: tags_ids in: query description: Filter by tags ids required: false type: array items: type: string - name: ancestral_component in: query description: 'Ancestral component, one of item related to the model api Skywalker: AFR, AMR, EAS, EUR, LME, OCE, SAS Vader: AFR, AMR, EAS, EUR, LME, SAS, SEA, OCE, OTHERSHutt: AFR, EUR, EAS, NAM, SAS, OCE, LMEPalpatine: CAS, EAS, NAS, SAS, SEA, WAS, XAS' required: false type: string - name: threshold in: query description: Threshold required: false type: number - name: model_name in: query description: Model name required: false type: string - name: model_api_name in: query description: Model API name required: false type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: all_records in: query description: Show all records required: false type: boolean - name: plot_request_id in: query description: Get already existed backend plot required: false type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Entity list schema: required: - meta - items type: object properties: meta: required: - groups - total_count type: object properties: groups: type: array items: required: - name - count type: object properties: name: title: Name type: string minLength: 1 count: title: Count type: integer total_count: title: Total count type: integer items: type: array items: required: - x - y - series type: object properties: x: title: X type: string minLength: 1 y: title: Y type: number series: title: Series type: string minLength: 1 tags: - dashboard parameters: [] /dashboard/donut: get: operationId: dashboard_donut_list description: Get dashboard data DonutPlot22 parameters: - name: order_id in: query description: Search by order id required: false type: string - name: tags_ids in: query description: Filter by tags ids required: false type: array items: type: string - name: ancestral_component in: query description: 'Ancestral component, one of item related to the model api Skywalker: AFR, AMR, EAS, EUR, LME, OCE, SAS Vader: AFR, AMR, EAS, EUR, LME, SAS, SEA, OCE, OTHERSHutt: AFR, EUR, EAS, NAM, SAS, OCE, LMEPalpatine: CAS, EAS, NAS, SAS, SEA, WAS, XAS' required: false type: string - name: threshold in: query description: Threshold required: false type: number - name: model_name in: query description: Model name required: false type: string - name: model_api_name in: query description: Model API name required: false type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: all_records in: query description: Show all records required: false type: boolean - name: plot_request_id in: query description: Get already existed backend plot required: false type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Entity list schema: required: - children type: object properties: children: type: array items: required: - children - name - value type: object properties: children: type: array items: required: - name - value type: object properties: name: title: Name type: string minLength: 1 value: title: Value type: number name: title: Name type: string minLength: 1 value: title: Value type: number tags: - dashboard parameters: [] /dashboard/plot_request: get: operationId: dashboard_plot_request_list description: Get plot requests parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: model_api_name in: query description: Model API name required: false type: string enum: - skywalker - hutt - palpatine - vader - mysterio responses: '401': description: unauthorized '403': description: forbidden '200': description: Plot requests list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - filter - model_api_name type: object properties: id: title: Id type: string format: uuid readOnly: true user_id: title: User id type: string readOnly: true filter: title: Filter type: string model_api_name: title: Model api name type: string enum: - skywalker - hutt - palpatine - vader - mysterio - check_source items_count: title: Items count type: integer maximum: 2147483647 minimum: -2147483648 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true completed: title: Completed type: string readOnly: true tags: - dashboard parameters: [] /dashboard/table_set: get: operationId: dashboard_table_set_list description: Get table with data for Set labels parameters: - name: sort_by in: query description: Sorting required: false type: string enum: - sp_group - name: group_by in: query description: Grouping required: false type: string enum: - sp_group - name: sample_id in: query description: Search by SampleID required: false type: string - name: order_id in: query description: Search by order id required: false type: string - name: tags_ids in: query description: Filter by tags ids required: false type: array items: type: string - name: ancestral_component in: query description: 'Ancestral component, one of item related to the model api Skywalker: AFR, AMR, EAS, EUR, LME, OCE, SAS Vader: AFR, AMR, EAS, EUR, LME, SAS, SEA, OCE, OTHERSHutt: AFR, EUR, EAS, NAM, SAS, OCE, LMEPalpatine: CAS, EAS, NAS, SAS, SEA, WAS, XAS' required: false type: string - name: threshold in: query description: Threshold required: false type: number - name: model_name in: query description: Model name required: false type: string - name: model_api_name in: query description: Model API name required: false type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: all_records in: query description: Show all records required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Paginated entity list tags: - dashboard parameters: [] /dashboard/table_set/export: get: operationId: dashboard_table_set_export_list description: Export table with data for Set labels parameters: - name: sort_by in: query description: Sorting required: false type: string enum: - sp_group - name: group_by in: query description: Grouping required: false type: string enum: - sp_group - name: sample_id in: query description: Search by SampleID required: false type: string - name: order_id in: query description: Search by order id required: false type: string - name: tags_ids in: query description: Filter by tags ids required: false type: array items: type: string - name: ancestral_component in: query description: 'Ancestral component, one of item related to the model api Skywalker: AFR, AMR, EAS, EUR, LME, OCE, SAS Vader: AFR, AMR, EAS, EUR, LME, SAS, SEA, OCE, OTHERSHutt: AFR, EUR, EAS, NAM, SAS, OCE, LMEPalpatine: CAS, EAS, NAS, SAS, SEA, WAS, XAS' required: false type: string - name: threshold in: query description: Threshold required: false type: number - name: model_name in: query description: Model name required: false type: string - name: model_api_name in: query description: Model API name required: false type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: all_records in: query description: Show all records required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Result file stream tags: - dashboard parameters: [] /dashboard/table_superset: get: operationId: dashboard_table_superset_list description: Get table with data for Superset Group labels parameters: - name: sort_by in: query description: Sorting required: false type: string enum: - sp_group - name: group_by in: query description: Grouping required: false type: string enum: - sp_group - name: sample_id in: query description: Search by SampleID required: false type: string - name: order_id in: query description: Search by order id required: false type: string - name: tags_ids in: query description: Filter by tags ids required: false type: array items: type: string - name: ancestral_component in: query description: 'Ancestral component, one of item related to the model api Skywalker: AFR, AMR, EAS, EUR, LME, OCE, SAS Vader: AFR, AMR, EAS, EUR, LME, SAS, SEA, OCE, OTHERSHutt: AFR, EUR, EAS, NAM, SAS, OCE, LMEPalpatine: CAS, EAS, NAS, SAS, SEA, WAS, XAS' required: false type: string - name: threshold in: query description: Threshold required: false type: number - name: model_name in: query description: Model name required: false type: string - name: model_api_name in: query description: Model API name required: false type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: all_records in: query description: Show all records required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Paginated entity list tags: - dashboard parameters: [] /dashboard/table_superset/export: get: operationId: dashboard_table_superset_export_list description: Export table with data for 7 labels parameters: - name: sort_by in: query description: Sorting required: false type: string enum: - sp_group - name: group_by in: query description: Grouping required: false type: string enum: - sp_group - name: sample_id in: query description: Search by SampleID required: false type: string - name: order_id in: query description: Search by order id required: false type: string - name: tags_ids in: query description: Filter by tags ids required: false type: array items: type: string - name: ancestral_component in: query description: 'Ancestral component, one of item related to the model api Skywalker: AFR, AMR, EAS, EUR, LME, OCE, SAS Vader: AFR, AMR, EAS, EUR, LME, SAS, SEA, OCE, OTHERSHutt: AFR, EUR, EAS, NAM, SAS, OCE, LMEPalpatine: CAS, EAS, NAS, SAS, SEA, WAS, XAS' required: false type: string - name: threshold in: query description: Threshold required: false type: number - name: model_name in: query description: Model name required: false type: string - name: model_api_name in: query description: Model API name required: false type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: all_records in: query description: Show all records required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Result file stream tags: - dashboard parameters: [] /data/files: get: operationId: data_files_list description: Get source files with pagination parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: file in: query description: Search by id or filename required: false type: string - name: only_acceptable in: query description: Search in not deleted and acceptable files required: false type: boolean - name: org_names in: query description: Search by organizations names required: false type: array items: type: string - name: min_date in: query description: Search by date range required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Search by date range required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: show_virtual in: query description: Show virtual/external source files required: false type: boolean - name: files_ids in: query description: List of File IDs for search required: false type: array items: type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Paginated entity list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - id - src_file_name - file_size_bytes type: object properties: id: title: Id type: string format: uuid status: title: Status type: string readOnly: true src_file_name: title: Src file name type: string maxLength: 190 minLength: 1 src_short_file_path: title: Src short file path type: string readOnly: true file_size_bytes: title: File size bytes type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 created_at: title: Created at type: string format: date-time readOnly: true check_sum: title: Check sum type: string maxLength: 128 minLength: 1 x-nullable: true acceptable: title: Acceptable type: boolean purged_from_storage: title: Purged from storage type: boolean orders_count: title: Orders count type: integer readOnly: true default: 0 genome_type: title: Genome type type: string enum: - GNT - WGS amount_of_samples: title: Amount of samples type: integer maximum: 2147483647 minimum: -2147483648 deleted_at: title: Deleted at type: string format: date-time x-nullable: true org_name: title: Org name type: string readOnly: true check_completed: title: Check completed type: boolean sample_alias: title: Sample alias type: string readOnly: true check_information: title: Check information type: string maxLength: 1000 x-nullable: true virtual: title: Virtual type: boolean tags: - data parameters: [] /data/files/upload: post: operationId: data_files_upload_create description: Upload source file parameters: - name: file in: formData description: Source file required: true type: file responses: '401': description: unauthorized '403': description: forbidden '201': description: Source file schema: required: - id - src_file_name - file_size_bytes type: object properties: id: title: Id type: string format: uuid status: title: Status type: string readOnly: true src_file_name: title: Src file name type: string maxLength: 190 minLength: 1 src_short_file_path: title: Src short file path type: string readOnly: true file_size_bytes: title: File size bytes type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 created_at: title: Created at type: string format: date-time readOnly: true check_sum: title: Check sum type: string maxLength: 128 minLength: 1 x-nullable: true acceptable: title: Acceptable type: boolean purged_from_storage: title: Purged from storage type: boolean orders_count: title: Orders count type: integer readOnly: true default: 0 genome_type: title: Genome type type: string enum: - GNT - WGS amount_of_samples: title: Amount of samples type: integer maximum: 2147483647 minimum: -2147483648 deleted_at: title: Deleted at type: string format: date-time x-nullable: true org_name: title: Org name type: string readOnly: true check_completed: title: Check completed type: boolean sample_alias: title: Sample alias type: string readOnly: true check_information: title: Check information type: string maxLength: 1000 x-nullable: true virtual: title: Virtual type: boolean consumes: - multipart/form-data - application/x-www-form-urlencoded tags: - data parameters: [] /data/files/{source_file_id}: put: operationId: data_files_update description: Update source file parameters: - name: data in: body required: true schema: type: object properties: sample_alias: title: Sample alias type: string x-nullable: true - name: source_file_id in: path description: Id of source file required: true type: string responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '201': description: Source file schema: required: - id - src_file_name - file_size_bytes type: object properties: id: title: Id type: string format: uuid status: title: Status type: string readOnly: true src_file_name: title: Src file name type: string maxLength: 190 minLength: 1 src_short_file_path: title: Src short file path type: string readOnly: true file_size_bytes: title: File size bytes type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 created_at: title: Created at type: string format: date-time readOnly: true check_sum: title: Check sum type: string maxLength: 128 minLength: 1 x-nullable: true acceptable: title: Acceptable type: boolean purged_from_storage: title: Purged from storage type: boolean orders_count: title: Orders count type: integer readOnly: true default: 0 genome_type: title: Genome type type: string enum: - GNT - WGS amount_of_samples: title: Amount of samples type: integer maximum: 2147483647 minimum: -2147483648 deleted_at: title: Deleted at type: string format: date-time x-nullable: true org_name: title: Org name type: string readOnly: true check_completed: title: Check completed type: boolean sample_alias: title: Sample alias type: string readOnly: true check_information: title: Check information type: string maxLength: 1000 x-nullable: true virtual: title: Virtual type: boolean tags: - data delete: operationId: data_files_delete description: Delete source file parameters: - name: source_file_id in: path description: Id of source file required: true type: string responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: ok tags: - data parameters: - name: source_file_id in: path required: true type: string /data/files/{source_file_id}/download: get: operationId: data_files_download_list description: Download source file parameters: - name: source_file_id in: path description: Id of source file required: true type: string responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: Source file stream tags: - data parameters: - name: source_file_id in: path required: true type: string /data/pdfdata: get: operationId: data_pdfdata_list description: test view parameters: - name: order_id in: query description: Id of order required: true type: string - name: result_id in: query description: Id of sample result required: true type: string responses: '400': description: '{"detail": "Bad request"}' '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '404': description: '{"detail": "Not found data"}' '200': description: '{"detail": "Data for PDF report"}' tags: - data parameters: [] /data/prsdata: get: operationId: data_prsdata_list description: test view parameters: - name: order_id in: query description: Id of order required: true type: string - name: result_id in: query description: Id of sample result required: true type: string - name: report_type in: query description: report type required: false type: string responses: '400': description: '{"detail": "Bad request"}' '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '404': description: '{"detail": "Not found data"}' '200': description: '{"detail": "Data for PDF report"}' tags: - data parameters: [] /data/results/pdf_report/{pdf_request_id}/change_notice: post: operationId: data_results_pdf_report_change_notice_create description: '' parameters: [] responses: '201': description: '' tags: - data parameters: - name: pdf_request_id in: path required: true type: string /data/results/upload: post: operationId: data_results_upload_create description: Upload result file parameters: - name: file in: formData description: Result file required: true type: file - name: model_api_name in: formData description: Model API name required: true type: string enum: - skywalker - hutt - palpatine - vader - mysterio responses: '401': description: unauthorized '403': description: forbidden '201': description: ok consumes: - multipart/form-data - application/x-www-form-urlencoded tags: - data parameters: [] /data/results/{exec_order_id}/download: get: operationId: data_results_download_list description: Download result file parameters: - name: exec_order_id in: path description: Id of order required: true type: string - name: result_type in: query description: Type of result file required: true type: string enum: - SUMMARY_SUPERSET - SUMMARY_CHROMS - DETAILED_SUPERSET - DETAILED_CHROMS - PDF_REPORT - PRS_JSON_DATA - PRS_IMAGES - EXEC_ERRORS - name: pdf_request_id in: query description: PDF request id required: false type: string responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: Result file stream tags: - data parameters: - name: exec_order_id in: path required: true type: string /data/results/{exec_order_id}/json: get: operationId: data_results_json_list description: Get result as json parameters: - name: exec_order_id in: path description: Id of order required: true type: string - name: result_type in: query description: Type of result file required: true type: string enum: - SUMMARY_CHROMS - SUMMARY_SUPERSET - DETAILED_CHROMS - DETAILED_SUPERSET responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: Result file stream tags: - data parameters: - name: exec_order_id in: path required: true type: string /data/results/{exec_order_id}/pdf_report: get: operationId: data_results_pdf_report_list description: Get pdf reports with pagination parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: exec_order_id in: path description: Search by id or order type: string required: true - name: request_version in: query description: Search report request version required: false type: integer - name: report_version in: query description: Search by report version required: false type: string - name: sample_id in: query description: Search by sample id required: false type: string - name: latest in: query description: Search by latest report request version required: false type: boolean - name: report_type in: query description: Report type required: true type: string enum: - PRS_RUO_CARDIO - PRS_RUO_CANCER - PRS_CLINICAL_CARDIO - PRS_CLINICAL_CANCER - ANCESTRY responses: '401': description: unauthorized '403': description: forbidden '422': description: unprocessable '200': description: Paginated entity list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - id type: object properties: id: title: Id type: string format: uuid status: title: Status type: string enum: - PENDING - COMPLETED - FAILED - QC_FAILED sample_id: title: Sample id type: string maxLength: 300 x-nullable: true order_id: title: Order id type: string readOnly: true result_id: title: Result id type: string readOnly: true org_name: title: Org name type: string readOnly: true report_type: title: Report type type: string enum: - ANCESTRY - PRS_RUO_CARDIO - PRS_RUO_CANCER - PRS_CLINICAL - PRS_CLINICAL_CARDIO - PRS_CLINICAL_CANCER request_type: title: Request type type: string enum: - ORDER - SAMPLE request_version: title: Request version type: integer maximum: 32767 minimum: -32768 report_version: title: Report version type: string maxLength: 300 x-nullable: true pdf_file_name: title: Pdf file name type: string maxLength: 260 x-nullable: true file_size_bytes: title: File size bytes type: integer maximum: 9223372036854775807 minimum: -9223372036854775808 x-nullable: true check_sum: title: Check sum type: string maxLength: 128 minLength: 1 x-nullable: true started_at: title: Started at type: string readOnly: true completed_at: title: Completed at type: string format: date-time x-nullable: true is_signed_by_deprecated_director: title: Is signed by deprecated director type: boolean notice: title: Notice type: string readOnly: true tags: - data parameters: - name: exec_order_id in: path required: true type: string /data/results/{exec_order_id}/request_pdf: post: operationId: data_results_request_pdf_create description: Request regenerate PDF report for order if reports are failed. parameters: [] responses: '400': description: bad request '401': description: unauthorized '403': description: forbidden '422': description: unprocessable '200': description: Request PDF report for order_id tags: - data parameters: - name: exec_order_id in: path required: true type: string /exec/cancel: post: operationId: exec_cancel_create description: Cancel model execution which is in queue parameters: - name: data in: body required: true schema: type: object properties: order_id: description: Execution order ID type: string in: body responses: '400': description: '{"detail": "Bad request"}' '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '200': description: '{"detail": "Request to cancel execution id UUID accepted"}' tags: - exec parameters: [] /exec/model: get: operationId: exec_model_list description: Get Execution models list parameters: - name: model_id in: query description: Model ID for search required: false type: string - name: image_tag in: query description: Search by image tag required: false type: string - name: model_api_names in: query description: Search by model api name required: false type: array items: type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: named_models in: query description: Search by named models required: false type: array items: type: string - name: is_sandbox in: query description: Search for sandbox models required: false type: boolean - name: push_date in: query description: Search by push date required: false type: string format: date example: '2025-01-25' - name: clinical_validated in: query description: Search for clinical validated models required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Execution models list schema: type: array items: required: - model_api_name type: object properties: id: title: Id type: string format: uuid readOnly: true image_tag: title: Image tag type: string readOnly: true full_image_tag: title: Full image tag type: string readOnly: true model_api_name: title: Model api name type: string enum: - skywalker - hutt - palpatine - vader - mysterio - check_source image_pushed_at: title: Image pushed at type: string format: date-time x-nullable: true image_digest: title: Image digest type: string maxLength: 300 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true assigned_name: title: Assigned name type: string readOnly: true git_commit: title: Git commit type: string readOnly: true clinical_validated: title: Clinical validated type: boolean validated_at: title: Validated at type: string format: date-time x-nullable: true validated_by: title: Validated by type: string maxLength: 50 x-nullable: true description: title: Description type: string maxLength: 500 x-nullable: true execution_results: title: Execution results type: string readOnly: true post_execution_results: title: Post execution results type: string readOnly: true is_sandbox: title: Is sandbox type: boolean tags: - exec post: operationId: exec_model_create description: Create model parameters: - name: data in: body required: true schema: required: - ecr_image_id - model_api_name type: object properties: ecr_image_id: title: Ecr image id type: string format: uuid model_api_name: title: Model api name type: string enum: - skywalker - hutt - palpatine - vader - mysterio - check_source description: title: Description type: string minLength: 1 responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: New model schema: required: - model_api_name type: object properties: id: title: Id type: string format: uuid readOnly: true image_tag: title: Image tag type: string readOnly: true full_image_tag: title: Full image tag type: string readOnly: true model_api_name: title: Model api name type: string enum: - skywalker - hutt - palpatine - vader - mysterio - check_source image_pushed_at: title: Image pushed at type: string format: date-time x-nullable: true image_digest: title: Image digest type: string maxLength: 300 x-nullable: true created_at: title: Created at type: string format: date-time readOnly: true assigned_name: title: Assigned name type: string readOnly: true git_commit: title: Git commit type: string readOnly: true clinical_validated: title: Clinical validated type: boolean validated_at: title: Validated at type: string format: date-time x-nullable: true validated_by: title: Validated by type: string maxLength: 50 x-nullable: true description: title: Description type: string maxLength: 500 x-nullable: true execution_results: title: Execution results type: string readOnly: true post_execution_results: title: Post execution results type: string readOnly: true is_sandbox: title: Is sandbox type: boolean tags: - exec parameters: [] /exec/model/api: get: operationId: exec_model_api_list description: Get model's API parameters: [] responses: '401': description: unauthorized '403': description: forbidden '200': description: Model's API list schema: type: array items: required: - label - value - execution_results type: object properties: label: title: Label type: string minLength: 1 value: title: Value type: string minLength: 1 execution_results: title: Execution results type: object additionalProperties: type: string x-nullable: true tags: - exec parameters: [] /exec/model/ecr: get: operationId: exec_model_ecr_list description: Get ECR images parameters: [] responses: '401': description: unauthorized '403': description: forbidden '200': description: ECR images list schema: type: array items: required: - image_registry - image_repository - image_tag - image_digest - image_pushed_at type: object properties: id: title: Id type: string format: uuid readOnly: true image_registry: title: Image registry type: string minLength: 1 image_repository: title: Image repository type: string minLength: 1 image_tag: title: Image tag type: string minLength: 1 image_digest: title: Image digest type: string minLength: 1 image_pushed_at: title: Image pushed at type: string format: date-time image_models: title: Image models type: string readOnly: true tags: - exec post: operationId: exec_model_ecr_create description: Update ECR images list parameters: [] responses: '401': description: unauthorized '403': description: forbidden '200': description: ECR images list schema: type: array items: required: - image_registry - image_repository - image_tag - image_digest - image_pushed_at type: object properties: id: title: Id type: string format: uuid readOnly: true image_registry: title: Image registry type: string minLength: 1 image_repository: title: Image repository type: string minLength: 1 image_tag: title: Image tag type: string minLength: 1 image_digest: title: Image digest type: string minLength: 1 image_pushed_at: title: Image pushed at type: string format: date-time image_models: title: Image models type: string readOnly: true tags: - exec parameters: [] /exec/named_model: get: operationId: exec_named_model_list description: Get named models parameters: - name: hide_deprecated in: query description: Hide deprecated models required: false type: boolean - name: model_api_names in: query description: Search by model api name required: false type: array items: type: string enum: - skywalker - hutt - palpatine - vader - mysterio - name: named_model in: query description: Search by model name required: false type: string - name: exact_search in: query description: search by model name exactly required: false type: boolean - name: image_tag in: query description: Search by image tag required: false type: string - name: is_sandbox in: query description: Search for sandbox models required: false type: boolean - name: clinical_validated in: query description: Search for clinical validated models required: false type: boolean - name: enabled in: query description: Search for enabled models required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Named models list schema: type: array items: required: - model_name type: object properties: id: title: Id type: string format: uuid readOnly: true model_id: title: Model id type: string readOnly: true model_name: title: Model name type: string maxLength: 100 minLength: 1 model_api_name: title: Model api name type: string readOnly: true model_image_tag: title: Model image tag type: string readOnly: true deprecated: title: Deprecated type: boolean clinical_validated: title: Clinical validated type: boolean validated_at: title: Validated at type: string format: date-time x-nullable: true validated_by: title: Validated by type: string maxLength: 50 minLength: 1 x-nullable: true enabled: title: Enabled type: boolean execution_results: title: Execution results type: string readOnly: true post_execution_results: title: Post execution results type: string readOnly: true used_in_orgs: title: Used in orgs type: string readOnly: true is_sandbox: title: Is sandbox type: string readOnly: true comment: title: Comment type: string maxLength: 1000 minLength: 1 x-nullable: true tags: - exec post: operationId: exec_named_model_create description: Create named model parameters: - name: data in: body required: true schema: required: - model_name - model_id - execution_results - post_execution_results - enabled type: object properties: model_name: title: Model name type: string minLength: 1 model_id: title: Model id type: string format: uuid execution_results: type: object properties: result_sub_pop: title: Result sub pop type: boolean result_sub_pop_chrm: title: Result sub pop chrm type: boolean result_super_pop: title: Result super pop type: boolean result_super_pop_chrm: title: Result super pop chrm type: boolean result_svg_data: title: Result svg data type: boolean result_prs_data: title: Result prs data type: boolean result_prs_tech_data: title: Result prs tech data type: boolean result_prs_qc: title: Result prs qc type: boolean post_execution_results: type: object properties: ancestry_pdf_report: title: Ancestry pdf report type: boolean prs_ruo_cardio_pdf_report: title: Prs ruo cardio pdf report type: boolean prs_ruo_cancer_pdf_report: title: Prs ruo cancer pdf report type: boolean prs_clinical_cardio_pdf_report: title: Prs clinical cardio pdf report type: boolean prs_clinical_cancer_pdf_report: title: Prs clinical cancer pdf report type: boolean enabled: title: Enabled type: boolean comment: title: Comment type: string x-nullable: true clinical_validated: title: Clinical validated type: boolean responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: New named model schema: required: - model_name type: object properties: id: title: Id type: string format: uuid readOnly: true model_id: title: Model id type: string readOnly: true model_name: title: Model name type: string maxLength: 100 minLength: 1 model_api_name: title: Model api name type: string readOnly: true model_image_tag: title: Model image tag type: string readOnly: true deprecated: title: Deprecated type: boolean clinical_validated: title: Clinical validated type: boolean validated_at: title: Validated at type: string format: date-time x-nullable: true validated_by: title: Validated by type: string maxLength: 50 minLength: 1 x-nullable: true enabled: title: Enabled type: boolean execution_results: title: Execution results type: string readOnly: true post_execution_results: title: Post execution results type: string readOnly: true used_in_orgs: title: Used in orgs type: string readOnly: true is_sandbox: title: Is sandbox type: string readOnly: true comment: title: Comment type: string maxLength: 1000 minLength: 1 x-nullable: true tags: - exec parameters: [] /exec/named_model/{named_model_id}: put: operationId: exec_named_model_update description: Edit named model parameters: - name: data in: body required: true schema: required: - model_name - model_id - execution_results - post_execution_results - enabled type: object properties: model_name: title: Model name type: string minLength: 1 model_id: title: Model id type: string format: uuid execution_results: type: object properties: result_sub_pop: title: Result sub pop type: boolean result_sub_pop_chrm: title: Result sub pop chrm type: boolean result_super_pop: title: Result super pop type: boolean result_super_pop_chrm: title: Result super pop chrm type: boolean result_svg_data: title: Result svg data type: boolean result_prs_data: title: Result prs data type: boolean result_prs_tech_data: title: Result prs tech data type: boolean result_prs_qc: title: Result prs qc type: boolean post_execution_results: type: object properties: ancestry_pdf_report: title: Ancestry pdf report type: boolean prs_ruo_cardio_pdf_report: title: Prs ruo cardio pdf report type: boolean prs_ruo_cancer_pdf_report: title: Prs ruo cancer pdf report type: boolean prs_clinical_cardio_pdf_report: title: Prs clinical cardio pdf report type: boolean prs_clinical_cancer_pdf_report: title: Prs clinical cancer pdf report type: boolean enabled: title: Enabled type: boolean comment: title: Comment type: string x-nullable: true clinical_validated: title: Clinical validated type: boolean responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: Edit named model schema: required: - model_name type: object properties: id: title: Id type: string format: uuid readOnly: true model_id: title: Model id type: string readOnly: true model_name: title: Model name type: string maxLength: 100 minLength: 1 model_api_name: title: Model api name type: string readOnly: true model_image_tag: title: Model image tag type: string readOnly: true deprecated: title: Deprecated type: boolean clinical_validated: title: Clinical validated type: boolean validated_at: title: Validated at type: string format: date-time x-nullable: true validated_by: title: Validated by type: string maxLength: 50 minLength: 1 x-nullable: true enabled: title: Enabled type: boolean execution_results: title: Execution results type: string readOnly: true post_execution_results: title: Post execution results type: string readOnly: true used_in_orgs: title: Used in orgs type: string readOnly: true is_sandbox: title: Is sandbox type: string readOnly: true comment: title: Comment type: string maxLength: 1000 minLength: 1 x-nullable: true tags: - exec parameters: - name: named_model_id in: path required: true type: string /exec/named_model/{named_model_id}/history: get: operationId: exec_named_model_history_list description: Get named models parameters: [] responses: '401': description: unauthorized '403': description: forbidden '200': description: Named models history list schema: type: array items: required: - history_id - model_name type: object properties: id: title: Id type: string format: uuid readOnly: true history_id: title: History id type: integer maximum: 2147483647 minimum: -2147483648 model_id: title: Model id type: string format: uuid readOnly: true model_name: title: Model name type: string maxLength: 100 minLength: 1 model_api_name: title: Model api name type: string readOnly: true model_image_tag: title: Model image tag type: string readOnly: true deprecated: title: Deprecated type: boolean clinical_validated: title: Clinical validated type: boolean validated_at: title: Validated at type: string format: date-time x-nullable: true validated_by: title: Validated by type: string maxLength: 50 minLength: 1 x-nullable: true enabled: title: Enabled type: boolean execution_results: title: Execution results type: string x-nullable: true post_execution_results: title: Post execution results type: string x-nullable: true is_sandbox: title: Is sandbox type: string readOnly: true used_in_orgs: title: Used in orgs type: integer maximum: 2147483647 minimum: -2147483648 comment: title: Comment type: string maxLength: 1000 minLength: 1 x-nullable: true tags: - exec parameters: - name: named_model_id in: path required: true type: string /exec/orders: get: operationId: exec_orders_list description: Get execution boards with pagination parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: filter in: query description: Source File name or Source File ID or Order ID for search required: false type: string - name: org_names in: query description: Search by organizations names required: false type: array items: type: string - name: status in: query description: Search by order status required: false type: string enum: - Registered - Preparing - Submitted - Running - Model completed - Completed - Failed - Canceled - Canceling - Making report - Collecting report results - Reports failed - QC failed - name: type in: query description: Search by source file type required: false type: string enum: - GNT - WGS - EXTERNAL - name: tags_ids in: query description: Search by tags IDs required: false type: array items: type: string - name: model_name in: query description: Search by model name required: false type: string - name: model_api_name in: query description: Search by model api name required: false type: string - name: min_date in: query description: Search by date range required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Search by date range required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: status_group in: query description: Search by order status group required: false type: string enum: - initializing - running - completed - failed - name: orders_ids in: query description: List of Order IDs for search required: false type: array items: type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Paginated entity list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - id - started_at - can_request_pdf type: object properties: id: title: Id type: string format: uuid status: title: Status type: string readOnly: true src_file_id: title: Src file id type: string readOnly: true src_file_short_path: title: Src file short path type: string readOnly: true src_file_name: title: Src file name type: string readOnly: true started_at: title: Started at type: string format: date-time amount_of_samples: title: Amount of samples type: string readOnly: true execution_time: title: Execution time type: string readOnly: true submitted_by: title: Submitted by type: string readOnly: true model: title: Model type: string readOnly: true type: title: Type type: string readOnly: true org_name: title: Org name type: string readOnly: true tags: title: Tags type: string readOnly: true result_types: title: Result types type: string readOnly: true can_request_pdf: title: Can request pdf type: boolean virtual: title: Virtual type: boolean tags: - exec post: operationId: exec_orders_create description: Submit model execution for source file parameters: - name: data in: body required: true schema: required: - source_file_id type: object properties: source_file_id: title: Source file id type: string format: uuid model_name: title: Model name type: string minLength: 1 tags_ids: type: array items: type: string format: uuid pdf_metadata: title: Pdf metadata type: object additionalProperties: type: string minLength: 1 pdf_report_types: type: array items: type: string minLength: 1 x-nullable: true responses: '400': description: '{"detail": "Bad request"}' '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '422': description: '{"detail": "Request cannot be processed"}' '201': description: '[{"status": "Registered", "source_file_id": "uuid", "order_id": "uuid"}]' '200': description: '[{"status": "Registered", "source_file_id": "uuid", "order_id": "uuid"}]' tags: - exec parameters: [] /exec/orders/{order_id}: patch: operationId: exec_orders_partial_update description: Edit order's tags parameters: - name: data in: body required: true schema: type: object properties: tags_ids: type: array items: type: string format: uuid responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Order details schema: required: - id - started_at - can_request_pdf type: object properties: id: title: Id type: string format: uuid status: title: Status type: string readOnly: true src_file_id: title: Src file id type: string readOnly: true src_file_short_path: title: Src file short path type: string readOnly: true src_file_name: title: Src file name type: string readOnly: true started_at: title: Started at type: string format: date-time amount_of_samples: title: Amount of samples type: string readOnly: true execution_time: title: Execution time type: string readOnly: true submitted_by: title: Submitted by type: string readOnly: true model: title: Model type: string readOnly: true type: title: Type type: string readOnly: true org_name: title: Org name type: string readOnly: true tags: title: Tags type: string readOnly: true result_types: title: Result types type: string readOnly: true can_request_pdf: title: Can request pdf type: boolean virtual: title: Virtual type: boolean tags: - exec parameters: - name: order_id in: path required: true type: string /exec/tags: get: operationId: exec_tags_list description: Get execution tags with pagination parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: name in: query description: Tag name for search required: false type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Paginated entity list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - id - name - org_id type: object properties: id: title: Id type: string format: uuid name: title: Name type: string minLength: 1 org_id: title: Org id type: string format: uuid tags: - exec post: operationId: exec_tags_create description: Create tag parameters: - name: data in: body required: true schema: required: - name type: object properties: name: title: Name type: string minLength: 1 responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: New tag schema: required: - id - name - org_id type: object properties: id: title: Id type: string format: uuid name: title: Name type: string minLength: 1 org_id: title: Org id type: string format: uuid tags: - exec parameters: [] /exec/tags/{tag_id}: get: operationId: exec_tags_read description: Tag details parameters: [] responses: '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Tag details schema: required: - id - name - org_id type: object properties: id: title: Id type: string format: uuid name: title: Name type: string minLength: 1 org_id: title: Org id type: string format: uuid tags: - exec put: operationId: exec_tags_update description: Edit tag parameters: - name: data in: body required: true schema: required: - name type: object properties: name: title: Name type: string minLength: 1 responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Tag details schema: required: - id - name - org_id type: object properties: id: title: Id type: string format: uuid name: title: Name type: string minLength: 1 org_id: title: Org id type: string format: uuid tags: - exec delete: operationId: exec_tags_delete description: Delete tag parameters: [] responses: '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Success tags: - exec parameters: - name: tag_id in: path required: true type: string /internal/check_err: get: operationId: internal_check_err_list description: '' parameters: [] responses: '200': description: '' tags: - internal parameters: [] /internal/health-check: get: operationId: internal_health-check_list description: '' parameters: [] responses: '200': description: '' tags: - internal parameters: [] /internal/refresh_sfsc: post: operationId: internal_refresh_sfsc_create description: '' parameters: [] responses: '201': description: '' tags: - internal parameters: [] /internal/status: get: operationId: internal_status_list description: '' parameters: [] responses: '200': description: '' tags: - internal parameters: [] /notification: get: operationId: notification_list description: Get user notifications parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: watched in: query description: Show watched/unwatched notifications required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '200': description: Notifications list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - message_type - message type: object properties: id: title: Id type: string format: uuid readOnly: true user_id: title: User id type: string readOnly: true type: title: Type type: string enum: - WEBSOCKET - SLACK - ALL message_type: title: Message type type: string enum: - plot_completed - plot_failed - upload_result_file_completed - upload_result_file_failed - order_execution_failed - critical_processing_error - monitoring_alert - send_webhook_failed message: title: Message type: string created_at: title: Created at type: string format: date-time readOnly: true watched: title: Watched type: boolean tags: - notification parameters: [] /notification/watch: put: operationId: notification_watch_update description: Watch notification parameters: - name: notification_id in: query description: Id of notification required: false type: string - name: watch_all in: query description: Watch all notifications required: false type: boolean responses: '401': description: unauthorized '403': description: forbidden '404': description: not found '200': description: ok tags: - notification parameters: [] /notification/webhook-actions: get: operationId: notification_webhook-actions_list description: Get possible webhook actions parameters: [] responses: '401': description: unauthorized '403': description: forbidden '200': description: Webhook actions list schema: type: array items: required: - name - value type: object properties: name: title: Name type: string minLength: 1 value: title: Value type: string minLength: 1 tags: - notification parameters: [] /organizations: get: operationId: organizations_list description: Get organizations parameters: - name: named_models in: query description: Search by named models required: false type: array items: type: string - name: model_api_names in: query description: Search by model api name required: false type: array items: type: string enum: - skywalker - hutt - palpatine - vader - mysterio responses: '401': description: unauthorized '403': description: forbidden '200': description: Organizations list schema: type: array items: required: - name - home_folder_name type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string maxLength: 100 minLength: 1 domains: description: comma separated list type: array items: title: Domains type: string maxLength: 50 minLength: 1 home_folder_name: title: Home folder name type: string maxLength: 128 minLength: 1 result_summary_group_set: title: Result summary group set type: string readOnly: true result_summary_chroms: title: Result summary chroms type: string readOnly: true result_detailed_group_set: title: Result detailed group set type: string readOnly: true result_detailed_chroms: title: Result detailed chroms type: string readOnly: true report_ancestry_enabled: title: Report ancestry enabled type: string readOnly: true report_prs_ruo_cardio_enabled: title: Report prs ruo cardio enabled type: string readOnly: true report_prs_ruo_cancer_enabled: title: Report prs ruo cancer enabled type: string readOnly: true report_prs_clinical_cardio_enabled: title: Report prs clinical cardio enabled type: string readOnly: true report_prs_clinical_cancer_enabled: title: Report prs clinical cancer enabled type: string readOnly: true mfa_enabled: title: Mfa enabled type: boolean web_users_count: title: Web users count type: string readOnly: true sftp_users_count: title: Sftp users count type: string readOnly: true use_own_batch_queue: title: Use own batch queue type: boolean batch_max_vcpu: title: Batch max vcpu type: integer maximum: 2147483647 minimum: -2147483648 x-nullable: true batch_job_queue: title: Batch job queue type: string readOnly: true quickbooks_enabled: title: Quickbooks enabled type: boolean quickbooks_customer_id: title: Quickbooks customer id type: string x-nullable: true quickbooks_email: title: Quickbooks email type: string x-nullable: true webhooks_enabled: title: Webhooks enabled type: string readOnly: true webhooks_secret: title: Webhooks secret type: string readOnly: true tags: - organizations post: operationId: organizations_create description: '' parameters: [] responses: '201': description: '' tags: - organizations parameters: [] /organizations/sftp_users_sync: get: operationId: organizations_sftp_users_sync_list description: Sync sftp users parameters: [] responses: '401': description: unauthorized '403': description: forbidden '200': description: OK tags: - organizations parameters: [] /organizations/{organization_id}: put: operationId: organizations_update description: '' parameters: [] responses: '200': description: '' tags: - organizations parameters: - name: organization_id in: path required: true type: string /organizations/{organization_id}/generate-api-key: post: operationId: organizations_generate-api-key_create description: '' parameters: [] responses: '201': description: '' tags: - organizations parameters: - name: organization_id in: path required: true type: string /organizations/{organization_id}/generate-webhooks-secret: post: operationId: organizations_generate-webhooks-secret_create description: Generate new webhooks secret key parameters: - name: organization_id in: path description: Organization Id required: true type: string responses: '401': description: Unauthorized request '403': description: Forbidden '200': description: New webhooks secret key tags: - organizations parameters: - name: organization_id in: path required: true type: string /organizations/{organization_id}/models: get: operationId: organizations_models_list description: Get available models for organization parameters: - name: organization_id in: path description: Organization Id required: true type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Entity list schema: type: array items: type: object properties: model_name: title: Model name type: string readOnly: true model_api_name: title: Model api name type: string readOnly: true tags: - organizations post: operationId: organizations_models_create description: '' parameters: [] responses: '201': description: '' tags: - organizations parameters: - name: organization_id in: path required: true type: string /organizations/{organization_id}/models_permissions: post: operationId: organizations_models_permissions_create description: Edit model permission of accessed named model by org parameters: - name: data in: body required: true schema: required: - models_permissions type: object properties: models_permissions: type: array items: required: - model_name - execution_results - post_execution_results type: object properties: model_name: title: Model name type: string minLength: 1 execution_results: type: object properties: result_sub_pop: title: Result sub pop type: boolean result_sub_pop_chrm: title: Result sub pop chrm type: boolean result_super_pop: title: Result super pop type: boolean result_super_pop_chrm: title: Result super pop chrm type: boolean result_svg_data: title: Result svg data type: boolean result_prs_data: title: Result prs data type: boolean result_prs_tech_data: title: Result prs tech data type: boolean result_prs_qc: title: Result prs qc type: boolean x-nullable: true post_execution_results: type: object properties: ancestry_pdf_report: title: Ancestry pdf report type: boolean prs_ruo_cardio_pdf_report: title: Prs ruo cardio pdf report type: boolean prs_ruo_cancer_pdf_report: title: Prs ruo cancer pdf report type: boolean prs_clinical_cardio_pdf_report: title: Prs clinical cardio pdf report type: boolean prs_clinical_cancer_pdf_report: title: Prs clinical cancer pdf report type: boolean x-nullable: true responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: Named model permissions are updated schema: required: - execution_results - post_execution_results type: object properties: model_name: title: Model name type: string readOnly: true model_api_name: title: Model api name type: string readOnly: true execution_results: type: object properties: result_sub_pop: title: Result sub pop type: boolean result_sub_pop_chrm: title: Result sub pop chrm type: boolean result_super_pop: title: Result super pop type: boolean result_super_pop_chrm: title: Result super pop chrm type: boolean result_svg_data: title: Result svg data type: boolean result_prs_data: title: Result prs data type: boolean result_prs_tech_data: title: Result prs tech data type: boolean result_prs_qc: title: Result prs qc type: boolean post_execution_results: type: object properties: ancestry_pdf_report: title: Ancestry pdf report type: boolean prs_ruo_cardio_pdf_report: title: Prs ruo cardio pdf report type: boolean prs_ruo_cancer_pdf_report: title: Prs ruo cancer pdf report type: boolean prs_clinical_cardio_pdf_report: title: Prs clinical cardio pdf report type: boolean prs_clinical_cancer_pdf_report: title: Prs clinical cancer pdf report type: boolean tags: - organizations parameters: - name: organization_id in: path required: true type: string /organizations/{organization_id}/sftp_users: get: operationId: organizations_sftp_users_list description: Get SFTP users of organization parameters: - name: organization_id in: path description: Organization ID required: true type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Entity list schema: type: array items: required: - id - user_name - user_home_folder type: object properties: id: title: Id type: string format: uuid user_name: title: User name type: string minLength: 1 user_home_folder: title: User home folder type: string minLength: 1 connection_hint: title: Connection hint type: string readOnly: true ssh_keys: title: Ssh keys type: string readOnly: true tags: - organizations post: operationId: organizations_sftp_users_create description: Create sftp user for organization parameters: - name: data in: body required: true schema: type: object properties: ssh_public_body_key: title: Ssh public body key type: string default: '' minLength: 1 responses: '400': description: '{"detail": "Bad request"}' '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '422': description: '{"detail": "Request cannot be processed"}' '200': description: Entity item schema: required: - id - user_name - user_home_folder type: object properties: id: title: Id type: string format: uuid user_name: title: User name type: string minLength: 1 user_home_folder: title: User home folder type: string minLength: 1 connection_hint: title: Connection hint type: string readOnly: true ssh_keys: title: Ssh keys type: string readOnly: true tags: - organizations parameters: - name: organization_id in: path required: true type: string /organizations/{organization_id}/sftp_users/{sftp_user_id}: delete: operationId: organizations_sftp_users_delete description: Delete SFTP user of organization parameters: - name: organization_id in: path description: Organization ID required: true type: string - name: sftp_user_id in: path description: SFTP user ID required: true type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Success tags: - organizations parameters: - name: organization_id in: path required: true type: string - name: sftp_user_id in: path required: true type: string /organizations/{organization_id}/sftp_users/{sftp_user_id}/ssh_keys: post: operationId: organizations_sftp_users_ssh_keys_create description: Add ssh key to sftp user parameters: - name: data in: body required: true schema: type: object properties: ssh_public_body_key: title: Ssh public body key type: string default: '' minLength: 1 responses: '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Entity item schema: required: - id - user_name - user_home_folder type: object properties: id: title: Id type: string format: uuid user_name: title: User name type: string minLength: 1 user_home_folder: title: User home folder type: string minLength: 1 connection_hint: title: Connection hint type: string readOnly: true ssh_keys: title: Ssh keys type: string readOnly: true tags: - organizations parameters: - name: organization_id in: path required: true type: string - name: sftp_user_id in: path required: true type: string /organizations/{organization_id}/sftp_users/{sftp_user_id}/ssh_keys/{ssh_key_id}: delete: operationId: organizations_sftp_users_ssh_keys_delete description: Delete ssh key from sftp user parameters: [] responses: '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Entity item schema: required: - id - user_name - user_home_folder type: object properties: id: title: Id type: string format: uuid user_name: title: User name type: string minLength: 1 user_home_folder: title: User home folder type: string minLength: 1 connection_hint: title: Connection hint type: string readOnly: true ssh_keys: title: Ssh keys type: string readOnly: true tags: - organizations parameters: - name: organization_id in: path required: true type: string - name: sftp_user_id in: path required: true type: string - name: ssh_key_id in: path required: true type: string /organizations/{organization_id}/webhooks-info: get: operationId: organizations_webhooks-info_list description: Get organization webhooks information parameters: - name: organization_id in: path description: Organization Id required: true type: string responses: '401': description: unauthorized '403': description: forbidden '200': description: Webhooks information schema: type: array items: required: - webhook_action - remote_endpoint type: object properties: id: title: Id type: string format: uuid readOnly: true org_id: title: Org id type: string readOnly: true webhook_action: title: Webhook action type: string enum: - order_moved_to_completed_state - source_file_validation_completed remote_endpoint: title: Remote endpoint type: string minLength: 1 max_retries_count: title: Max retries count type: string readOnly: true save_error_in_notifications: title: Save error in notifications type: boolean created_at: title: Created at type: string format: date-time readOnly: true tags: - organizations post: operationId: organizations_webhooks-info_create description: Edit organization webhooks information parameters: - name: data in: body required: true schema: type: array items: required: - id - webhook_action - remote_endpoint - max_retries_count - save_error_in_notifications type: object properties: id: title: Id type: string format: uuid x-nullable: true webhook_action: title: Webhook action type: string enum: - order_moved_to_completed_state - source_file_validation_completed remote_endpoint: title: Remote endpoint type: string minLength: 1 max_retries_count: title: Max retries count type: integer maximum: 10 minimum: 1 save_error_in_notifications: title: Save error in notifications type: boolean - name: organization_id in: path description: Organization Id required: true type: string responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '202': description: Webhooks information schema: type: array items: required: - webhook_action - remote_endpoint type: object properties: id: title: Id type: string format: uuid readOnly: true org_id: title: Org id type: string readOnly: true webhook_action: title: Webhook action type: string enum: - order_moved_to_completed_state - source_file_validation_completed remote_endpoint: title: Remote endpoint type: string minLength: 1 max_retries_count: title: Max retries count type: string readOnly: true save_error_in_notifications: title: Save error in notifications type: boolean created_at: title: Created at type: string format: date-time readOnly: true tags: - organizations parameters: - name: organization_id in: path required: true type: string /organizations/{organization_id}/webhooks/{webhook_id}/test: post: operationId: organizations_webhooks_test_create description: Test organization webhooks parameters: - name: organization_id in: path description: Organization Id required: true type: string - name: webhook_id in: path description: Webhook Id required: true type: string responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '202': description: Webhooks information tags: - organizations parameters: - name: organization_id in: path required: true type: string - name: webhook_id in: path required: true type: string /statistics: get: operationId: statistics_list description: Get statistics parameters: - name: org_names in: query description: Search by organizations names required: false type: array items: type: string - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' responses: '401': description: unauthorized '403': description: forbidden '200': description: Statistics data schema: required: - source_files_statistics - result_files_statistics - orders_statistics - credit_statistics - resource_statistics type: object properties: source_files_statistics: required: - amount - file_size_bytes - valid - not_valid - check_in_process - single_sample - multi_sample - gnt - wgs - web_upload - sftp_upload type: object properties: amount: title: Amount type: integer file_size_bytes: title: File size bytes type: integer valid: title: Valid type: integer not_valid: title: Not valid type: integer check_in_process: title: Check in process type: integer single_sample: title: Single sample type: integer multi_sample: title: Multi sample type: integer gnt: title: Gnt type: integer wgs: title: Wgs type: integer web_upload: title: Web upload type: integer sftp_upload: title: Sftp upload type: integer result_files_statistics: required: - amount - file_size_bytes type: object properties: amount: title: Amount type: integer file_size_bytes: title: File size bytes type: integer orders_statistics: type: array items: required: - amount - completed - failed - in_progress - reports_failed - gnt - wgs type: object properties: amount: title: Amount type: integer completed: title: Completed type: integer failed: title: Failed type: integer in_progress: title: In progress type: integer reports_failed: title: Reports failed type: integer gnt: title: Gnt type: integer wgs: title: Wgs type: integer model_api_name: title: Model api name type: string minLength: 1 x-nullable: true credit_statistics: required: - orders_amount - pdf_reports_amount - replenishment_amount type: object properties: orders_amount: title: Orders amount type: integer pdf_reports_amount: title: Pdf reports amount type: integer replenishment_amount: title: Replenishment amount type: integer resource_statistics: required: - current_amount_ce_aws - current_amount_ce_app - current_queues - org_queues type: object properties: current_amount_ce_aws: title: Current amount ce aws type: integer current_amount_ce_app: title: Current amount ce app type: integer current_queues: type: array items: required: - queue_name - queue_type - owner type: object properties: queue_name: title: Queue name type: string minLength: 1 queue_type: title: Queue type type: string minLength: 1 owner: title: Owner type: string minLength: 1 org_queues: type: array items: required: - org_name - orders_total - queues type: object properties: org_name: title: Org name type: string minLength: 1 orders_total: title: Orders total type: integer queues: type: array items: required: - orders_total - queue_name type: object properties: orders_total: title: Orders total type: integer queue_name: title: Queue name type: string minLength: 1 tags: - statistics parameters: [] /statistics/orders_plot: get: operationId: statistics_orders_plot_list description: Get orders statistic plot parameters: - name: org_names in: query description: Search by organizations names required: false type: array items: type: string - name: plot_date_range in: query description: Plot date range required: false type: string enum: - 1 - 2 - name: min_date in: query description: Min date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' - name: max_date in: query description: Max date required: false type: string format: date pattern: YYYY-MM-DD example: '2000-01-01' responses: '401': description: unauthorized '403': description: forbidden '200': description: Plot data schema: required: - items type: object properties: items: type: array items: required: - x - y - series type: object properties: x: title: X type: string format: date-time y: title: Y type: integer series: title: Series type: string minLength: 1 tags: - statistics parameters: [] /users: get: operationId: users_list description: Get organization's users with pagination parameters: - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer - name: email in: query description: User email for search required: false type: string - name: org_names in: query description: Search by organizations names required: false type: array items: type: string - name: show_api_keys in: query description: Show only api_keys required: false type: boolean responses: '401': description: Unauthorized '403': description: Forbidden '200': description: Paginated entity list schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: required: - id - email - first_name - last_name - created_at type: object properties: id: title: Id type: string format: uuid email: title: Email type: string minLength: 1 first_name: title: First name type: string minLength: 1 last_name: title: Last name type: string minLength: 1 status: title: Status type: string readOnly: true created_at: title: Created at type: string format: date-time deleted_at: title: Deleted at type: string format: date-time role: title: Role type: string minLength: 1 org_name: title: Org name type: string readOnly: true tags: - users post: operationId: users_create description: Invite user parameters: - name: data in: body required: true schema: required: - email type: object properties: email: title: Email type: string format: email minLength: 1 org_id: title: Org id type: string format: uuid role: title: Role type: string enum: - SystemAdmin - OrgAdmin - OrgUser - InternalService responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '201': description: New user schema: required: - email - role type: object properties: email: title: Email type: string format: email maxLength: 254 minLength: 1 first_name: title: First name type: string maxLength: 100 x-nullable: true last_name: title: Last name type: string maxLength: 100 x-nullable: true role: title: Role type: string enum: - SystemAdmin - OrgAdmin - OrgUser - InternalService created_at: title: Created at type: string format: date-time readOnly: true id: title: Id type: string format: uuid readOnly: true updated_at: title: Updated at type: string format: date-time readOnly: true status: title: Status type: string readOnly: true org_name: title: Org name type: string readOnly: true tags: - users parameters: [] /users/activate: post: operationId: users_activate_create description: Activate invited user parameters: - name: data in: body required: true schema: required: - code - password - first_name - last_name type: object properties: code: title: Code type: string minLength: 1 password: title: Password type: string minLength: 1 first_name: title: First name type: string minLength: 1 last_name: title: Last name type: string minLength: 1 responses: '406': description: '{"detail": "Not acceptable request"}' '202': description: '{"detail": "Accepted"}' tags: - users parameters: [] /users/auth: post: operationId: users_auth_create description: Login parameters: - name: data in: body required: true schema: type: object properties: email: description: Email type: string password: description: Password type: string in: body responses: '401': description: '{"detail": "Unauthorized request"}' '200': description: '{"status": "Ok"}' tags: - auth parameters: [] /users/change-password: post: operationId: users_change-password_create description: Change password parameters: - name: data in: body required: true schema: required: - current_password - new_password type: object properties: current_password: title: Current password type: string minLength: 1 new_password: title: New password type: string minLength: 1 responses: '401': description: '{"detail": "Unauthorized"}' '406': description: '{"detail": "Not acceptable"}' '202': description: '{"detail": "Accepted"}' tags: - users parameters: [] /users/confirm: post: operationId: users_confirm_create description: MFA confirmation parameters: - name: data in: body required: true schema: required: - code - mfa_session_id type: object properties: code: title: Code type: integer mfa_session_id: title: Mfa session id type: string minLength: 1 responses: '401': description: '{"detail": "Unauthorized request"}' '200': description: '{"status": "Ok"}' tags: - auth parameters: [] /users/forgot-password: post: operationId: users_forgot-password_create description: Forgot password parameters: - name: data in: body required: true schema: required: - email type: object properties: email: title: Email type: string format: email minLength: 1 responses: '406': description: '{"detail": "Not acceptable"}' '202': description: '{"detail": "Accepted"}' tags: - users parameters: [] /users/logout: post: operationId: users_logout_create description: Logout from user session parameters: - name: data in: body required: true schema: type: object properties: refresh: description: Refresh token type: string in: body responses: '400': description: '{"detail": "Bad request"}' '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '200': description: '[{"status": "Ok"}]' tags: - auth parameters: [] /users/me: get: operationId: users_me_list description: Current user details parameters: [] responses: '401': description: '{"detail": "Unauthorized request"}' '200': description: Current user details schema: required: - email - role - org type: object properties: id: title: Id type: string format: uuid readOnly: true email: title: Email type: string format: email maxLength: 254 minLength: 1 first_name: title: First name type: string maxLength: 100 x-nullable: true last_name: title: Last name type: string maxLength: 100 x-nullable: true role: title: Role type: string enum: - SystemAdmin - OrgAdmin - OrgUser - InternalService is_active: title: Is active type: boolean created_at: title: Created at type: string format: date-time readOnly: true deleted_at: title: Deleted at type: string format: date-time x-nullable: true updated_at: title: Updated at type: string format: date-time readOnly: true org: required: - name type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string maxLength: 100 minLength: 1 domains: description: comma separated list type: array items: title: Domains type: string maxLength: 50 minLength: 1 available_models: title: Available models type: string readOnly: true webhooks_enabled: title: Webhooks enabled type: string readOnly: true webhooks_secret: title: Webhooks secret type: string readOnly: true report_ancestry_enabled: title: Report ancestry enabled type: string readOnly: true report_prs_ruo_cardio_enabled: title: Report prs ruo cardio enabled type: string readOnly: true report_prs_ruo_cancer_enabled: title: Report prs ruo cancer enabled type: string readOnly: true report_prs_clinical_cardio_enabled: title: Report prs clinical cardio enabled type: string readOnly: true report_prs_clinical_cancer_enabled: title: Report prs clinical cancer enabled type: string readOnly: true tags: - users parameters: [] /users/refresh: post: operationId: users_refresh_create description: Refresh access tokens parameters: - name: data in: body required: true schema: type: object properties: refresh: description: Refresh token type: string access: description: Expired access token type: string in: body responses: '401': description: '{"detail": "Unauthorized request"}' '200': description: '{"status": "Ok"}' tags: - auth parameters: [] /users/request-new-code: post: operationId: users_request-new-code_create description: Request new MFA code parameters: - name: data in: body required: true schema: required: - mfa_session_id type: object properties: mfa_session_id: title: Mfa session id type: string minLength: 1 responses: '401': description: '{"detail": "Unauthorized request"}' '200': description: '{"status": "Ok"}' tags: - auth parameters: [] /users/reset-password: post: operationId: users_reset-password_create description: Reset password) parameters: - name: data in: body required: true schema: required: - code - password type: object properties: code: title: Code type: string minLength: 1 password: title: Password type: string minLength: 1 responses: '406': description: '{"detail": "Not acceptable"}' '202': description: '{"detail": "Accepted"}' tags: - users parameters: [] /users/{user_id}: get: operationId: users_read description: User details parameters: [] responses: '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '200': description: User details schema: required: - email - role - org type: object properties: id: title: Id type: string format: uuid readOnly: true email: title: Email type: string format: email maxLength: 254 minLength: 1 first_name: title: First name type: string maxLength: 100 x-nullable: true last_name: title: Last name type: string maxLength: 100 x-nullable: true role: title: Role type: string enum: - SystemAdmin - OrgAdmin - OrgUser - InternalService is_active: title: Is active type: boolean created_at: title: Created at type: string format: date-time readOnly: true deleted_at: title: Deleted at type: string format: date-time x-nullable: true updated_at: title: Updated at type: string format: date-time readOnly: true org: required: - name type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string maxLength: 100 minLength: 1 domains: description: comma separated list type: array items: title: Domains type: string maxLength: 50 minLength: 1 available_models: title: Available models type: string readOnly: true webhooks_enabled: title: Webhooks enabled type: string readOnly: true webhooks_secret: title: Webhooks secret type: string readOnly: true report_ancestry_enabled: title: Report ancestry enabled type: string readOnly: true report_prs_ruo_cardio_enabled: title: Report prs ruo cardio enabled type: string readOnly: true report_prs_ruo_cancer_enabled: title: Report prs ruo cancer enabled type: string readOnly: true report_prs_clinical_cardio_enabled: title: Report prs clinical cardio enabled type: string readOnly: true report_prs_clinical_cancer_enabled: title: Report prs clinical cancer enabled type: string readOnly: true tags: - users put: operationId: users_update description: Edit user parameters: - name: data in: body required: true schema: required: - first_name - last_name - role type: object properties: first_name: title: First name type: string minLength: 1 last_name: title: Last name type: string minLength: 1 role: title: Role type: string enum: - SystemAdmin - OrgAdmin - OrgUser - InternalService - name: user_id in: path description: Id of user required: true type: string responses: '400': description: Bad request '401': description: Unauthorized request '403': description: Forbidden '406': description: Not acceptable '200': description: Updated user schema: required: - email - role - org type: object properties: id: title: Id type: string format: uuid readOnly: true email: title: Email type: string format: email maxLength: 254 minLength: 1 first_name: title: First name type: string maxLength: 100 x-nullable: true last_name: title: Last name type: string maxLength: 100 x-nullable: true role: title: Role type: string enum: - SystemAdmin - OrgAdmin - OrgUser - InternalService is_active: title: Is active type: boolean created_at: title: Created at type: string format: date-time readOnly: true deleted_at: title: Deleted at type: string format: date-time x-nullable: true updated_at: title: Updated at type: string format: date-time readOnly: true org: required: - name type: object properties: id: title: Id type: string format: uuid readOnly: true name: title: Name type: string maxLength: 100 minLength: 1 domains: description: comma separated list type: array items: title: Domains type: string maxLength: 50 minLength: 1 available_models: title: Available models type: string readOnly: true webhooks_enabled: title: Webhooks enabled type: string readOnly: true webhooks_secret: title: Webhooks secret type: string readOnly: true report_ancestry_enabled: title: Report ancestry enabled type: string readOnly: true report_prs_ruo_cardio_enabled: title: Report prs ruo cardio enabled type: string readOnly: true report_prs_ruo_cancer_enabled: title: Report prs ruo cancer enabled type: string readOnly: true report_prs_clinical_cardio_enabled: title: Report prs clinical cardio enabled type: string readOnly: true report_prs_clinical_cancer_enabled: title: Report prs clinical cancer enabled type: string readOnly: true tags: - users delete: operationId: users_delete description: Delete user parameters: [] responses: '400': description: '{"detail": "Bad request"}' '401': description: '{"detail": "Unauthorized request"}' '403': description: '{"detail": "Forbidden"}' '406': description: '{"detail": "Incorrect ID"}' '200': description: '{"detail": "User deleted"}' tags: - users parameters: - name: user_id in: path required: true type: string /users/{user_id}/resend-invite: post: operationId: users_resend-invite_create description: Resend invite to user parameters: [] responses: '401': description: Unauthorized '403': description: Forbidden '422': description: Unprocessable '200': description: OK tags: - users parameters: - name: user_id in: path required: true type: string definitions: {}