Gencove user API
The user API from Gencove — 12 operation(s) for user.
The user API from Gencove — 12 operation(s) for user.
openapi: 3.0.3
info:
title: Gencove Back array user API
version: v2
contact:
email: support@gencove.com
license:
name: Proprietary
description: API for Gencove REST service. Visit <a href='https://enterprise.gencove.com/'>enterprise.gencove.com</a> and <a href='https://docs.gencove.com/'>docs.gencove.com</a> for more information. <br><hr><p>To work with Insomnia, you can generate a Gencove API key by <a target='_blank' href='https://web.gencove.com/account?filter=api-keys'>clicking here</a>. Once you have the API key and have imported the project in Insomnia as a <i>Request Collection</i>, enter the key in Insomnia under <i>Manage Environment</i>.</p><a href='https://insomnia.rest/run/?label=back_api2&uri=https%3A%2F%2Fv2-api-files-prod.s3.amazonaws.com%2Fpublic%2Finsomnia%2Finsomnia_gencove_prod.json' target='_blank'>Run in Insomnia</a><hr>
servers:
- url: https://api.gencove.com
tags:
- name: user
paths:
/api/v2/user/:
get:
operationId: user_retrieve
tags:
- user
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/User'
description: ''
put:
operationId: user_update
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/User'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/User'
multipart/form-data:
schema:
$ref: '#/components/schemas/User'
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/User'
description: ''
patch:
operationId: user_partial_update
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedUser'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedUser'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedUser'
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/User'
description: ''
/api/v2/user-activate/:
post:
operationId: user_activate_create
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/Activation'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/Activation'
multipart/form-data:
schema:
$ref: '#/components/schemas/Activation'
required: true
security:
- JWT: []
- API key: []
- {}
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/Activation'
description: ''
/api/v2/user-activate-resend/:
post:
operationId: user_activate_resend_create
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SendEmailReset'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SendEmailReset'
multipart/form-data:
schema:
$ref: '#/components/schemas/SendEmailReset'
required: true
security:
- JWT: []
- API key: []
- {}
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SendEmailReset'
description: ''
/api/v2/user-api-keys/:
get:
operationId: user_api_keys_list
description: Fetch all non-revoked keys
parameters:
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
tags:
- user
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedAPIKeyList'
description: ''
post:
operationId: user_api_keys_create
description: Create new api key
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAPIKey'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateAPIKey'
multipart/form-data:
schema:
$ref: '#/components/schemas/CreateAPIKey'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAPIKey'
description: ''
/api/v2/user-api-keys/{api_key_id}:
patch:
operationId: user_api_keys_partial_update
description: Update (revoke) api key
parameters:
- in: path
name: api_key_id
schema:
type: string
format: uuid
required: true
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedAPIKey'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedAPIKey'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedAPIKey'
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/APIKey'
description: ''
/api/v2/user-change-email/:
post:
operationId: user_change_email_create
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SetUsername'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SetUsername'
multipart/form-data:
schema:
$ref: '#/components/schemas/SetUsername'
required: true
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SetUsername'
description: ''
/api/v2/user-config/:
get:
operationId: user_config_retrieve
description: 'Retrieve user config formated as `{key: value}` JSON object.'
tags:
- user
security:
- JWT: []
- API key: []
responses:
'200':
description: No response body
patch:
operationId: user_config_partial_update
description: 'Update user config formated as `{key: value}` JSON object.'
tags:
- user
security:
- JWT: []
- API key: []
responses:
'200':
description: No response body
/api/v2/user-password-reset/:
post:
operationId: user_password_reset_create
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SendEmailReset'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SendEmailReset'
multipart/form-data:
schema:
$ref: '#/components/schemas/SendEmailReset'
required: true
security:
- JWT: []
- API key: []
- {}
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SendEmailReset'
description: ''
/api/v2/user-password-reset-confirm/:
post:
operationId: user_password_reset_confirm_create
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PasswordResetConfirm'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PasswordResetConfirm'
multipart/form-data:
schema:
$ref: '#/components/schemas/PasswordResetConfirm'
required: true
security:
- JWT: []
- API key: []
- {}
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PasswordResetConfirm'
description: ''
/api/v2/user-password-set/:
post:
operationId: user_password_set_create
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SetPassword'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SetPassword'
multipart/form-data:
schema:
$ref: '#/components/schemas/SetPassword'
required: true
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/SetPassword'
description: ''
/api/v2/user-projects/{user_id}:
get:
operationId: user_projects_list
description: Retrieve list of user projects.
parameters:
- in: query
name: additional_permission
schema:
type: string
enum:
- basespace_biosamples_import
- project_samples_add
description: Additional permission
- in: query
name: hidden_status
schema:
type: string
enum:
- all
- hidden
- visible
description: Filter projects by their hidden status
- name: limit
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
- name: offset
required: false
in: query
description: The initial index from which to return the results.
schema:
type: integer
- name: search
required: false
in: query
description: A search term.
schema:
type: string
- in: query
name: sort_by
schema:
type: string
enum:
- created
- modified
- name
- pipeline_capabilities
- sample_count
description: Sort results
- in: query
name: sort_order
schema:
type: string
enum:
- asc
- desc
description: Sort direction
- in: query
name: status
schema:
type: string
enum:
- all
- completed
- running
description: Filter projects by sample statuses
- in: path
name: user_id
schema:
type: string
format: uuid
required: true
tags:
- user
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedProjectList'
description: ''
/api/v2/user-register/:
post:
operationId: user_register_create
tags:
- user
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UserCreate'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UserCreate'
multipart/form-data:
schema:
$ref: '#/components/schemas/UserCreate'
required: true
security:
- JWT: []
- API key: []
- {}
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/UserCreate'
description: ''
components:
schemas:
User:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
email:
type: string
format: email
readOnly: true
title: Email address
name:
type: string
maxLength: 254
uploads_enabled:
type: string
readOnly: true
explorer_enabled:
type: string
readOnly: true
created:
type: string
format: date-time
readOnly: true
is_support:
type: boolean
readOnly: true
title: Support
description: Designates whether this user should be treated as a support.
required:
- created
- email
- explorer_enabled
- id
- is_support
- uploads_enabled
PasswordResetConfirm:
type: object
properties:
uid:
type: string
token:
type: string
new_password:
type: string
required:
- new_password
- token
- uid
Activation:
type: object
properties:
uid:
type: string
token:
type: string
required:
- token
- uid
SetUsername:
type: object
properties:
current_password:
type: string
new_email:
type: string
format: email
title: Email address
maxLength: 254
required:
- current_password
- new_email
APIKey:
type: object
properties:
revoked:
type: boolean
description: If the API key is revoked, clients cannot use it anymore. (This cannot be undone.)
id:
type: string
name:
type: string
description: A free-form name for the API key. Need not be unique. 50 characters max.
maxLength: 50
prefix:
type: string
readOnly: true
expiry_date:
type: string
format: date
readOnly: true
nullable: true
title: Expires
description: Last day (UTC) to use the API key, once API key expires clients cannot use it anymore.
has_expired:
type: string
readOnly: true
ip_range:
nullable: true
description: List of trusted subnets in CIDR notation
required:
- expiry_date
- has_expired
- id
- name
- prefix
PatchedUser:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
email:
type: string
format: email
readOnly: true
title: Email address
name:
type: string
maxLength: 254
uploads_enabled:
type: string
readOnly: true
explorer_enabled:
type: string
readOnly: true
created:
type: string
format: date-time
readOnly: true
is_support:
type: boolean
readOnly: true
title: Support
description: Designates whether this user should be treated as a support.
UserCreate:
type: object
description: Adding name as an optional field during registration.
properties:
email:
type: string
format: email
title: Email address
maxLength: 254
id:
type: string
format: uuid
readOnly: true
password:
type: string
writeOnly: true
name:
type: string
maxLength: 254
invitation_token:
type: string
maxLength: 32
organization_name:
type: string
maxLength: 254
required:
- email
- id
- password
SetPassword:
type: object
properties:
new_password:
type: string
current_password:
type: string
required:
- current_password
- new_password
PatchedAPIKey:
type: object
properties:
revoked:
type: boolean
description: If the API key is revoked, clients cannot use it anymore. (This cannot be undone.)
id:
type: string
name:
type: string
description: A free-form name for the API key. Need not be unique. 50 characters max.
maxLength: 50
prefix:
type: string
readOnly: true
expiry_date:
type: string
format: date
readOnly: true
nullable: true
title: Expires
description: Last day (UTC) to use the API key, once API key expires clients cannot use it anymore.
has_expired:
type: string
readOnly: true
ip_range:
nullable: true
description: List of trusted subnets in CIDR notation
PaginatedProjectList:
type: object
required:
- results
properties:
meta:
type: object
properties:
count:
type: integer
next:
type: string
format: uri
nullable: true
previous:
type: string
format: uri
nullable: true
required:
- count
results:
type: array
items:
$ref: '#/components/schemas/Project'
PaginatedAPIKeyList:
type: object
required:
- results
properties:
meta:
type: object
properties:
count:
type: integer
next:
type: string
format: uri
nullable: true
previous:
type: string
format: uri
nullable: true
required:
- count
results:
type: array
items:
$ref: '#/components/schemas/APIKey'
Project:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
name:
type: string
maxLength: 254
description:
type: string
created:
type: string
format: date-time
readOnly: true
modified:
type: string
readOnly: true
description: Sample's last non-internal status that was added.
hidden:
type: boolean
readOnly: true
description: Flag to hide the project.
organization:
type: string
format: uuid
readOnly: true
organization_name:
type: string
readOnly: true
description: Organization name
sample_count:
type: string
readOnly: true
hidden_sample_count:
type: string
readOnly: true
pipeline_capabilities:
type: string
format: uuid
description: Versioned pipeline capabilities
project_modifications:
description: Allows for pipeline modifications e.g. disabling QC
roles:
type: string
readOnly: true
description: Roles for the project in the organization.
webhook_url:
type: string
readOnly: true
description: 'Legacy: this field is not used anymore, it is present in the response for the sake of backwards compatility with clients.'
is_shared:
type: boolean
description: Return whether the project is shared with other organizations
readOnly: true
locked:
type: boolean
readOnly: true
description: Flag to set the project to locked mode.
required:
- created
- hidden
- hidden_sample_count
- id
- is_shared
- locked
- modified
- name
- organization
- organization_name
- pipeline_capabilities
- roles
- sample_count
- webhook_url
SendEmailReset:
type: object
properties:
email:
type: string
format: email
required:
- email
CreateAPIKey:
type: object
properties:
expiry_date:
type: string
format: date
nullable: true
title: Expires
description: Last day (UTC) to use the API key, once API key expires clients cannot use it anymore.
id:
type: string
readOnly: true
key:
type: string
readOnly: true
name:
type: string
description: A free-form name for the API key. Need not be unique. 50 characters max.
maxLength: 50
prefix:
type: string
readOnly: true
ip_range:
nullable: true
description: List of trusted subnets in CIDR notation
required:
- id
- key
- name
- prefix
securitySchemes:
API key:
type: apiKey
description: 'Authorization header content formated as: `Api-Key <API-key>`
You can obtain new API key through Gencove''s web UI or `user-api-key` endpoint'
in: header
name: Authorization
JWT:
type: apiKey
description: 'Authorization header content formated as: `Bearer <json-web-token>`
You can obtain access token using `jwt-create` endpoint.'
in: header
name: Authorization