Gencove invitation API
The invitation API from Gencove — 3 operation(s) for invitation.
The invitation API from Gencove — 3 operation(s) for invitation.
openapi: 3.0.3
info:
title: Gencove Back array invitation 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: invitation
paths:
/api/v2/invitations/:
get:
operationId: invitations_list
description: List invites for an organization.
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
- in: query
name: status
schema:
type: string
enum:
- accepted
- all
- expired
- pending
- revoked
description: Filter invites by their status
tags:
- invitation
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedInvitationList'
description: ''
post:
operationId: invitations_create
description: Invite Gencove user to actors's organization.
tags:
- invitation
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateInvite'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateInvite'
multipart/form-data:
schema:
$ref: '#/components/schemas/CreateInvite'
required: true
security:
- JWT: []
- API key: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/Invitation'
description: ''
/api/v2/invitations-token/{token}:
get:
operationId: invitations_token_retrieve
description: Get invitation details by token.
parameters:
- in: path
name: token
schema:
type: string
required: true
tags:
- invitation
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/InvitationDetails'
description: ''
patch:
operationId: invitations_token_partial_update
description: Handle invitation acceptance.
parameters:
- in: path
name: token
schema:
type: string
required: true
tags:
- invitation
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedInvitationDetails'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedInvitationDetails'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedInvitationDetails'
security:
- JWT: []
- API key: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/InvitationDetails'
description: ''
/api/v2/invitations/{invitation_id}:
delete:
operationId: invitations_destroy
description: 'Invitation details and management.
Retrieving is enabled for all users, even unauthorized ones.
Update and delete are enabled for logged-in users and only if they have
the appropriate relation to the invite.'
parameters:
- in: path
name: invitation_id
schema:
type: string
format: uuid
required: true
tags:
- invitation
security:
- JWT: []
- API key: []
responses:
'204':
description: No response body
components:
schemas:
InvitationDetails:
type: object
description: Represent invitation for invitee.
properties:
token:
type: string
readOnly: true
last_status:
allOf:
- $ref: '#/components/schemas/InvitationStatus'
readOnly: true
expires:
type: string
format: date-time
readOnly: true
organization:
$ref: '#/components/schemas/InviteOrganization'
role:
type: string
maxLength: 255
required:
- expires
- last_status
- organization
- role
- token
CreateInvite:
type: object
properties:
email:
type: string
format: email
role:
type: string
default: ''
required:
- email
InvitationActor:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
name:
type: string
maxLength: 254
required:
- id
InvitationStatus:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
status:
type: string
created:
type: string
format: date-time
actor:
allOf:
- $ref: '#/components/schemas/InvitationActor'
readOnly: true
required:
- actor
- id
- status
InviteOrganization:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
name:
type: string
maxLength: 254
required:
- id
- name
PaginatedInvitationList:
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/Invitation'
PatchedInvitationDetails:
type: object
description: Represent invitation for invitee.
properties:
token:
type: string
readOnly: true
last_status:
allOf:
- $ref: '#/components/schemas/InvitationStatus'
readOnly: true
expires:
type: string
format: date-time
readOnly: true
organization:
$ref: '#/components/schemas/InviteOrganization'
role:
type: string
maxLength: 255
Invitation:
type: object
properties:
id:
type: string
format: uuid
readOnly: true
email:
type: string
format: email
nullable: true
maxLength: 254
last_status:
allOf:
- $ref: '#/components/schemas/InvitationStatus'
readOnly: true
expires:
type: string
format: date-time
readOnly: true
role:
type: string
maxLength: 255
required:
- expires
- id
- last_status
- role
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