diff --git a/static/api-specs/idn/sailpoint-api.v2024.yaml b/static/api-specs/idn/sailpoint-api.v2024.yaml index 9f03ac2afa6..2416d5e3e2a 100644 --- a/static/api-specs/idn/sailpoint-api.v2024.yaml +++ b/static/api-specs/idn/sailpoint-api.v2024.yaml @@ -1334,6 +1334,10 @@ paths: $ref: ./v3/paths/configuration-hub/backup-uploads.yaml /configuration-hub/backups/uploads/{id}: $ref: ./v3/paths/configuration-hub/backup-uploads-id.yaml + /configuration-hub/backups: + $ref: ./v2024/paths/configuration-hub/backup.yaml + /configuration-hub/backups/{id}: + $ref: ./v2024/paths/configuration-hub/backup-id.yaml /configuration-hub/drafts: $ref: ./v2024/paths/configuration-hub/draft.yaml /configuration-hub/drafts/{id}: diff --git a/static/api-specs/idn/v2024/paths/configuration-hub/backup-id.yaml b/static/api-specs/idn/v2024/paths/configuration-hub/backup-id.yaml new file mode 100644 index 00000000000..5f390189768 --- /dev/null +++ b/static/api-specs/idn/v2024/paths/configuration-hub/backup-id.yaml @@ -0,0 +1,38 @@ +delete: + operationId: deleteBackup + security: + - UserContextAuth: [sp:config-backup:manage] + tags: + - Configuration Hub + summary: Delete a Backup + description: >- + This API deletes an existing backup for the current tenant. + + + On success, this endpoint will return an empty response. + + + The backup id can be obtained from the response after a backup was successfully created, or from the list backups endpoint. + parameters: + - in: path + name: id + schema: + type: string + required: true + description: The id of the backup to delete. + example: 07659d7d-2cce-47c0-9e49-185787ee565a + responses: + '204': + $ref: '../../../v3/responses/204.yaml' + '400': + $ref: '../../../v3/responses/400.yaml' + '401': + $ref: '../../../v3/responses/401.yaml' + '403': + $ref: '../../../v3/responses/403.yaml' + '404': + $ref: '../../../v3/responses/404.yaml' + '429': + $ref: '../../../v3/responses/429.yaml' + '500': + $ref: '../../../v3/responses/500.yaml' \ No newline at end of file diff --git a/static/api-specs/idn/v2024/paths/configuration-hub/backup.yaml b/static/api-specs/idn/v2024/paths/configuration-hub/backup.yaml new file mode 100644 index 00000000000..a4bd110a8cd --- /dev/null +++ b/static/api-specs/idn/v2024/paths/configuration-hub/backup.yaml @@ -0,0 +1,77 @@ +get: + operationId: listBackups + security: + - UserContextAuth: [sp:config-backup:read, sp:config-backup:manage] + tags: + - Configuration Hub + summary: List Backups + description: >- + This API gets a list of existing backups for the current tenant. + parameters: + - in: query + name: filters + schema: + type: string + description: >- + Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) + + + Filtering is supported for the following fields and operators: + + + **status**: *eq* + example: status eq "COMPLETE" + required: false + responses: + '200': + description: >- + List of existing backups. + content: + application/json: + schema: + type: array + items: + $ref: '../../schemas/configuration-hub/BackupResponse.yaml' + example: + [ + { + "jobId": "09491993-9cb6-49a7-8d37-8bef54d33502", + "status": "COMPLETE", + "type": "BACKUP", + "tenant": "tenant-name", + "requesterName": "Requester Name", + "fileExists": true, + "created": "2024-02-19T19:54:15.373Z", + "modified": "2024-02-19T20:39:00.341Z", + "completed": "2024-02-19T19:54:15.605Z", + "name": "Backup name", + "userCanDelete": false, + "isPartial": true, + "backupType": "MANUAL", + "options": { + "includeTypes": [ + "SOURCE" + ], + "objectOptions": { + "SOURCE": { + "includedNames": [ + "Source Name" + ] + } + } + }, + "hydrationStatus": "HYDRATED", + "totalObjectCount": 2, + "cloudStorageStatus": "SYNCED" + } + ] + '400': + $ref: '../../../v3/responses/400.yaml' + '401': + $ref: '../../../v3/responses/401.yaml' + '403': + $ref: '../../../v3/responses/403.yaml' + '429': + $ref: '../../../v3/responses/429.yaml' + '500': + $ref: '../../../v3/responses/500.yaml' \ No newline at end of file diff --git a/static/api-specs/idn/v2024/schemas/configuration-hub/BackupOptions.yaml b/static/api-specs/idn/v2024/schemas/configuration-hub/BackupOptions.yaml new file mode 100644 index 00000000000..2a659995250 --- /dev/null +++ b/static/api-specs/idn/v2024/schemas/configuration-hub/BackupOptions.yaml @@ -0,0 +1,45 @@ +type: object +nullable: true +description: Backup options control what will be included in the backup. +properties: + includeTypes: + type: array + description: Object type names to be included in a Configuration Hub backup command. + items: + type: string + enum: + - ACCESS_PROFILE + - ACCESS_REQUEST_CONFIG + - ATTR_SYNC_SOURCE_CONFIG + - AUTH_ORG + - CAMPAIGN_FILTER + - FORM_DEFINITION + - GOVERNANCE_GROUP + - IDENTITY_OBJECT_CONFIG + - IDENTITY_PROFILE + - LIFECYCLE_STATE + - NOTIFICATION_TEMPLATE + - PASSWORD_POLICY + - PASSWORD_SYNC_GROUP + - PUBLIC_IDENTITIES_CONFIG + - ROLE + - RULE + - SEGMENT + - SERVICE_DESK_INTEGRATION + - SOD_POLICY + - SOURCE + - TAG + - TRANSFORM + - TRIGGER_SUBSCRIPTION + - WORKFLOW + example: TRIGGER_SUBSCRIPTION + objectOptions: + description: Additional options targeting specific objects related to each item in the includeTypes field. + type: object + additionalProperties: + $ref: './ObjectExportImportNames.yaml' + example: { + "TRIGGER_SUBSCRIPTION": { + "includedNames": ["Trigger Subscription name"] + } + } \ No newline at end of file diff --git a/static/api-specs/idn/v2024/schemas/configuration-hub/BackupResponse.yaml b/static/api-specs/idn/v2024/schemas/configuration-hub/BackupResponse.yaml new file mode 100644 index 00000000000..23122007aa5 --- /dev/null +++ b/static/api-specs/idn/v2024/schemas/configuration-hub/BackupResponse.yaml @@ -0,0 +1,103 @@ +type: object +properties: + jobId: + type: string + description: Unique id assigned to this backup. + example: 3469b87d-48ca-439a-868f-2160001da8c1 + status: + type: string + description: Status of the backup. + enum: + - NOT_STARTED + - IN_PROGRESS + - COMPLETE + - CANCELLED + - FAILED + example: COMPLETE + type: + type: string + description: Type of the job, will always be BACKUP for this type of job. + enum: + - BACKUP + example: BACKUP + tenant: + type: string + description: The name of the tenant performing the upload + example: tenant-name + requesterName: + type: string + description: The name of the requester. + example: Requester Name + fileExists: + type: boolean + default: true + description: Whether or not a file was created and stored for this backup. + example: true + created: + type: string + format: date-time + description: The time the job was started. + example: 2021-05-11T22:23:16Z + modified: + type: string + format: date-time + description: The time of the last update to the job. + example: 2021-05-11T22:23:16Z + completed: + type: string + format: date-time + description: The time the job was completed. + example: 2021-05-11T22:23:16Z + name: + type: string + description: The name assigned to the upload file in the request body. + example: Backup Name + userCanDelete: + type: boolean + default: true + description: Whether this backup can be deleted by a regular user. + example: false + isPartial: + type: boolean + default: false + description: Whether this backup contains all supported object types or only some of them. + example: false + backupType: + type: string + description: >- + Denotes how this backup was created. + + - MANUAL - The backup was created by a user. + + - AUTOMATED - The backup was created by devops. + + - AUTOMATED_DRAFT - The backup was created during a draft process. + + - UPLOADED - The backup was created by uploading an existing configuration file. + enum: + - UPLOADED + - AUTOMATED + - MANUAL + example: MANUAL + options: + $ref: './BackupOptions.yaml' + hydrationStatus: + type: string + description: Whether the object details of this backup are ready. + enum: + - HYDRATED + - NOT_HYDRATED + example: NOT_HYDRATED + totalObjectCount: + type: integer + format: int64 + description: Number of objects contained in this backup. + example: 10 + cloudStorageStatus: + type: string + description: Whether this backup has been transferred to a customer storage location. + enum: + - SYNCED + - NOT_SYNCED + - SYNC_FAILED + example: SYNCED \ No newline at end of file diff --git a/static/api-specs/idn/v2024/schemas/configuration-hub/ObjectExportImportNames.yaml b/static/api-specs/idn/v2024/schemas/configuration-hub/ObjectExportImportNames.yaml new file mode 100644 index 00000000000..31744bb9c8b --- /dev/null +++ b/static/api-specs/idn/v2024/schemas/configuration-hub/ObjectExportImportNames.yaml @@ -0,0 +1,8 @@ +type: object +properties: + includedNames: + description: Object names to be included in a backup. + type: array + items: + type: string + example: "Test Object name" \ No newline at end of file diff --git a/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads-id.yaml b/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads-id.yaml index 14055c1d232..160c470d7d2 100644 --- a/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads-id.yaml +++ b/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads-id.yaml @@ -1,89 +1,84 @@ -delete: - operationId: deleteUploadedBackup +get: + operationId: getUploadedConfiguration security: - - UserContextAuth: [ sp:config-backups:manage, sp:config-backups:read ] + - UserContextAuth: [sp:config-backup:read, sp:config-backup:manage] tags: - Configuration Hub - summary: Deletes an uploaded backup file + summary: Get an Uploaded Configuration description: >- - This deletes an Uploaded backup based on job ID. - - On success, this endpoint will return an empty response. - - The job id can be obtained from the response after a successful upload, or the list uploads endpoint. - - The following scopes are required to access this endpoint: sp:config:manage - + This API gets an existing uploaded configuration for the current tenant. parameters: - in: path name: id schema: type: string required: true - description: The id of the uploaded backup. + description: The id of the uploaded configuration. example: 3d0fe04b-57df-4a46-a83b-8f04b0f9d10b - responses: - '204': - $ref: '../../responses/204.yaml' + '200': + description: >- + Gets an uploaded configuration details. + content: + application/json: + schema: + $ref: '../../../v2024/schemas/configuration-hub/BackupResponse.yaml' + example: + { + "jobId": "2ea830f3-2b14-4772-8a20-3d006742e419", + "status": "COMPLETE", + "type": "BACKUP", + "tenant": "someTenant", + "requesterName": "support", + "fileExists": true, + "created": "2024-02-20T22:08:31.064Z", + "modified": "2024-02-20T22:13:15.662Z", + "completed": "2024-02-20T22:08:31.689Z", + "name": "something new", + "userCanDelete": false, + "isPartial": false, + "backupType": "UPLOADED", + "hydrationStatus": "HYDRATED", + "totalObjectCount": 2 + } '400': $ref: '../../responses/400.yaml' '401': $ref: '../../responses/401.yaml' '403': $ref: '../../responses/403.yaml' + '404': + $ref: '../../responses/404.yaml' '429': $ref: '../../responses/429.yaml' '500': $ref: '../../responses/500.yaml' - -get: - operationId: getUploadedBackup +delete: + operationId: deleteUploadedConfiguration security: - - UserContextAuth: [ sp:config-backups:read ] + - UserContextAuth: [sp:config-backup:manage] tags: - Configuration Hub - summary: Get an uploaded backup's information + summary: Delete an Uploaded Configuration description: >- - Returns all the information and status of an upload job. + This API deletes an uploaded configuration based on Id. - - sp:config-backups:read + + On success, this endpoint will return an empty response. + + + The uploaded configuration id can be obtained from the response after a successful upload, or the list uploaded configurations endpoint. parameters: - in: path name: id schema: type: string required: true - description: The id of the uploaded backup. + description: The id of the uploaded configuration. example: 3d0fe04b-57df-4a46-a83b-8f04b0f9d10b responses: - '200': - description: >- - List of existing uploaded backups. - content: - application/json: - schema: - type: object - items: - $ref: '../../schemas/configuration-hub/UploadsResponse.yaml' - example: - { - "jobId": "2ea830f3-2b14-4772-8a20-3d006742e419", - "status": "COMPLETE", - "type": "BACKUP", - "tenant": "someTenant", - "requesterName": "support", - "fileExists": true, - "created": "2024-02-20T22:08:31.064Z", - "modified": "2024-02-20T22:13:15.662Z", - "completed": "2024-02-20T22:08:31.689Z", - "name": "something new", - "userCanDelete": false, - "isPartial": false, - "backupType": "UPLOADED", - "hydrationStatus": "HYDRATED", - "totalObjectCount": 2 - } + '204': + $ref: '../../responses/204.yaml' '400': $ref: '../../responses/400.yaml' '401': @@ -95,4 +90,4 @@ get: '429': $ref: '../../responses/429.yaml' '500': - $ref: '../../responses/500.yaml' + $ref: '../../responses/500.yaml' \ No newline at end of file diff --git a/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads.yaml b/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads.yaml index 84457faf077..4c3d4831bb0 100644 --- a/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads.yaml +++ b/static/api-specs/idn/v3/paths/configuration-hub/backup-uploads.yaml @@ -1,20 +1,86 @@ +get: + operationId: listUploadedConfigurations + security: + - UserContextAuth: [sp:config-backup:read, sp:config-backup:manage] + tags: + - Configuration Hub + summary: List Uploaded Configurations + description: >- + This API gets a list of existing uploaded configurations for the current tenant. + parameters: + - in: query + name: filters + schema: + type: string + description: >- + Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) + + + Filtering is supported for the following fields and operators: + + + **status**: *eq* + example: status eq "COMPLETE" + required: false + responses: + '200': + description: >- + List of existing uploaded configurations. + content: + application/json: + schema: + type: array + items: + $ref: '../../../v2024/schemas/configuration-hub/BackupResponse.yaml' + example: + [ + { + "jobId": "281d421c-0643-4004-9fe5-29a95d2f73df", + "status": "COMPLETE", + "type": "BACKUP", + "tenant": "someTenant", + "requesterName": "support", + "fileExists": true, + "created": "2024-03-07T21:11:00.375Z", + "modified": "2024-03-07T21:11:25.046Z", + "completed": "2024-03-07T21:11:00.66Z", + "name": "test1", + "userCanDelete": false, + "isPartial": false, + "backupType": "UPLOADED", + "hydrationStatus": "HYDRATED", + "totalObjectCount": 64 + } + ] + '400': + $ref: '../../responses/400.yaml' + '401': + $ref: '../../responses/401.yaml' + '403': + $ref: '../../responses/403.yaml' + '404': + $ref: '../../responses/404.yaml' + '429': + $ref: '../../responses/429.yaml' + '500': + $ref: '../../responses/500.yaml' post: - operationId: importUploadedBackup + operationId: createUploadedConfiguration security: - - UserContextAuth: [sp:config-backups:manage ] + - UserContextAuth: [sp:config-backup:manage] tags: - Configuration Hub - summary: Uploads a backup file + summary: Upload a Configuration description: >- - This post will upload a JSON backup file into a tenant. - Configuration files can be managed and deployed via Configuration Hub by uploading a json file which contains configuration data. The JSON file should be the same as the one used by our import endpoints. - The object types that currently support by upload file functionality are the same as the ones supported by our regular backup functionality. here: [SaaS Configuration](https://developer.sailpoint.com/idn/docs/saas-configuration/#supported-objects). + This API uploads a JSON configuration file into a tenant. - The request will need the following security scope: - - - sp:config:manage - + Configuration files can be managed and deployed via Configuration Hub by uploading a json file which contains configuration data. + The JSON file should be the same as the one used by our import endpoints. + The object types supported by upload configuration file functionality are the same as the ones supported by our regular backup functionality. + + + Refer to [SaaS Configuration](https://developer.sailpoint.com/idn/docs/saas-configuration/#supported-objects) for more information about supported objects. requestBody: description: | The body will consist of "data" which should contain the json file and name wish should be the name you want to assign to the uploaded file" @@ -103,7 +169,6 @@ post: } ] } - required: true content: multipart/form-data: @@ -116,11 +181,10 @@ post: description: JSON file containing the objects to be imported. name: type: string - description: Name that will be assigned to the uploaded file. + description: Name that will be assigned to the uploaded configuration file. required: - data - name - responses: '202': description: >- @@ -128,166 +192,14 @@ post: content: application/json: schema: - $ref: '../../schemas/configuration-hub/UploadsRequest.yaml' - '400': - description: | - Client Error - Returned if the request body is invalid. - content: - application/json: - schema: - $ref: '../../schemas/ErrorResponseDto.yaml' - '401': - $ref: '../../responses/401.yaml' - '403': - $ref: '../../responses/403.yaml' - '429': - $ref: '../../responses/429.yaml' - '500': - $ref: '../../responses/500.yaml' - -get: - operationId: getUploadedBackups - security: - - UserContextAuth: [ sp:config-backups:read ] - tags: - - Configuration Hub - summary: Gets list of Uploaded backups - description: >- - Returns a list of the current uploaded backups associated with the current tenant. - - A filter "status" can be added to only return the Completed, Failed, or Successful uploads - parameters: - - in: query - name: status - schema: - type: string - required: false - description: Filter listed uploaded backups by status of operation - example: COMPLETE - responses: - '200': - description: >- - List of existing uploaded backups. - content: - application/json: - schema: - type: array - items: - $ref: '../../schemas/configuration-hub/UploadsResponse.yaml' - example: - [ - { - "jobId": "3d0fe04b-57df-4a46-a83b-8f04b0f9d10b", - "status": "FAILED", - "type": "BACKUP", - "tenant": "someTenant", - "message": "com.sailpoint.sp.config.exception.IncorrectBackupUploadFormatException: Uploaded backup file could not be parsed to correct format.", - "requesterName": "support", - "fileExists": false, - "created": "2024-04-04T17:29:16.904Z", - "modified": "2024-04-04T17:29:17.076Z", - "name": "dfs", - "userCanDelete": false, - "isPartial": false, - "backupType": "UPLOADED", - "hydrationStatus": "NOT_HYDRATED", - "totalObjectCount": 0 - }, - { - "jobId": "281d421c-0643-4004-9fe5-29a95d2f73df", - "status": "COMPLETE", - "type": "BACKUP", - "tenant": "someTenant", - "requesterName": "support", - "fileExists": true, - "created": "2024-03-07T21:11:00.375Z", - "modified": "2024-03-07T21:11:25.046Z", - "completed": "2024-03-07T21:11:00.66Z", - "name": "test1", - "userCanDelete": false, - "isPartial": false, - "backupType": "UPLOADED", - "hydrationStatus": "HYDRATED", - "totalObjectCount": 64 - }, - { - "jobId": "4831ad5c-f6cf-42a6-a191-8c4abec30006", - "status": "COMPLETE", - "type": "BACKUP", - "tenant": "someTenant", - "requesterName": "support", - "fileExists": true, - "created": "2024-02-26T18:19:26.312Z", - "modified": "2024-02-26T18:19:40.773Z", - "completed": "2024-02-26T18:19:26.545Z", - "name": "testing Daniel", - "userCanDelete": false, - "isPartial": false, - "backupType": "UPLOADED", - "hydrationStatus": "HYDRATED", - "totalObjectCount": 64 - }, - { - "jobId": "2ea830f3-2b14-4772-8a20-3d006742e419", - "status": "COMPLETE", - "type": "BACKUP", - "tenant": "someTenant", - "requesterName": "support", - "fileExists": true, - "created": "2024-02-20T22:08:31.064Z", - "modified": "2024-02-20T22:13:15.662Z", - "completed": "2024-02-20T22:08:31.689Z", - "name": "something new", - "userCanDelete": false, - "isPartial": false, - "backupType": "UPLOADED", - "hydrationStatus": "HYDRATED", - "totalObjectCount": 2 - }, - { - "jobId": "473b5cef-90e4-4cb3-ad43-7671c17d3a46", - "status": "COMPLETE", - "type": "BACKUP", - "tenant": "someTenant", - "requesterName": "support", - "fileExists": true, - "created": "2024-02-19T21:30:07.947Z", - "modified": "2024-02-19T21:31:01.65Z", - "completed": "2024-02-19T21:30:08.195Z", - "name": "test upload", - "userCanDelete": false, - "isPartial": false, - "backupType": "UPLOADED", - "hydrationStatus": "HYDRATED", - "totalObjectCount": 2 - }, - { - "jobId": "09491993-9cb6-49a7-8d37-8bef54d33502", - "status": "COMPLETE", - "type": "BACKUP", - "tenant": "someTenant", - "requesterName": "support", - "fileExists": true, - "created": "2024-02-19T19:54:15.373Z", - "modified": "2024-02-19T20:39:00.341Z", - "completed": "2024-02-19T19:54:15.605Z", - "name": "Testing Daniel", - "userCanDelete": false, - "isPartial": false, - "backupType": "UPLOADED", - "hydrationStatus": "HYDRATED", - "totalObjectCount": 2 - } - ] + $ref: '../../../v2024/schemas/configuration-hub/BackupResponse.yaml' '400': $ref: '../../responses/400.yaml' '401': $ref: '../../responses/401.yaml' '403': $ref: '../../responses/403.yaml' - '404': - $ref: '../../responses/404.yaml' '429': $ref: '../../responses/429.yaml' '500': - $ref: '../../responses/500.yaml' + $ref: '../../responses/500.yaml' \ No newline at end of file diff --git a/static/api-specs/idn/v3/schemas/configuration-hub/UploadsRequest.yaml b/static/api-specs/idn/v3/schemas/configuration-hub/UploadsRequest.yaml deleted file mode 100644 index 6b003d0a2ae..00000000000 --- a/static/api-specs/idn/v3/schemas/configuration-hub/UploadsRequest.yaml +++ /dev/null @@ -1,76 +0,0 @@ -type: object -properties: - jobId: - type: string - description: Unique id assigned to this job. - example: "3469b87d-48ca-439a-868f-2160001da8c1" - status: - type: string - description: Status of the job. - enum: - - NOT_STARTED - - IN_PROGRESS - - COMPLETE - - CANCELLED - - FAILED - example: "COMPLETE" - type: - type: string - description: Type of the job, either Backup or Draft. - enum: - - BACKUP - - DRAFT - example: "BACKUP" - tenant: - type: string - description: The name of the tenant performing the upload - example: "uploaderTenant" - requesterName: - type: string - description: The name of the requester. - example: "support" - created: - type: string - format: 'date-time' - description: The time the job was started. - example: "2021-05-11T22:23:16Z" - modified: - type: string - format: 'date-time' - description: The time of the last update to the job. - example: "2021-05-11T22:23:16Z" - name: - type: string - description: The name assigned to the upload file in the request body. - example: "A_NEW_UPLOADED_BACKUP" - userCanDelete: - type: boolean - default: true - description: Is the job a regular backup job, if so is the user allowed to delete the backup file. Since this is an upload job it remains as false. - example: false - isPartial: - type: boolean - default: false - description: Is the job a regular backup job, if so is it partial. Since this is an upload job it remains as false. - example: false - backupType: - type: string - description: What kind of backup is this being treated as. - enum: - - UPLOADED - - AUTOMATED - - MANUAL - example: "UPLOADED" - hydrationStatus: - type: string - description: have the objects contained in the upload file been hydrated. - enum: - - HYDRATED - - NOT_HYDRATED - example: "NOT_HYDRATED" -required: - - jobId - - status - - type - - created - - modified diff --git a/static/api-specs/idn/v3/schemas/configuration-hub/UploadsResponse.yaml b/static/api-specs/idn/v3/schemas/configuration-hub/UploadsResponse.yaml deleted file mode 100644 index 6b003d0a2ae..00000000000 --- a/static/api-specs/idn/v3/schemas/configuration-hub/UploadsResponse.yaml +++ /dev/null @@ -1,76 +0,0 @@ -type: object -properties: - jobId: - type: string - description: Unique id assigned to this job. - example: "3469b87d-48ca-439a-868f-2160001da8c1" - status: - type: string - description: Status of the job. - enum: - - NOT_STARTED - - IN_PROGRESS - - COMPLETE - - CANCELLED - - FAILED - example: "COMPLETE" - type: - type: string - description: Type of the job, either Backup or Draft. - enum: - - BACKUP - - DRAFT - example: "BACKUP" - tenant: - type: string - description: The name of the tenant performing the upload - example: "uploaderTenant" - requesterName: - type: string - description: The name of the requester. - example: "support" - created: - type: string - format: 'date-time' - description: The time the job was started. - example: "2021-05-11T22:23:16Z" - modified: - type: string - format: 'date-time' - description: The time of the last update to the job. - example: "2021-05-11T22:23:16Z" - name: - type: string - description: The name assigned to the upload file in the request body. - example: "A_NEW_UPLOADED_BACKUP" - userCanDelete: - type: boolean - default: true - description: Is the job a regular backup job, if so is the user allowed to delete the backup file. Since this is an upload job it remains as false. - example: false - isPartial: - type: boolean - default: false - description: Is the job a regular backup job, if so is it partial. Since this is an upload job it remains as false. - example: false - backupType: - type: string - description: What kind of backup is this being treated as. - enum: - - UPLOADED - - AUTOMATED - - MANUAL - example: "UPLOADED" - hydrationStatus: - type: string - description: have the objects contained in the upload file been hydrated. - enum: - - HYDRATED - - NOT_HYDRATED - example: "NOT_HYDRATED" -required: - - jobId - - status - - type - - created - - modified