swagger: '2.0' info: version: 2020-08-01-preview title: Microsoft Azure AccessControlClient AccessConnector ReplicationMigrationItems API schemes: - https tags: - name: ReplicationMigrationItems paths: ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems : get: tags: - ReplicationMigrationItems summary: Microsoft Azure Gets The List Of Migration Items In The Protection Container description: Gets the list of ASR migration items in the protection container. operationId: microsoftAzureReplicationmigrationitemsListbyreplicationprotectioncontainers produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: skipToken in: query description: The pagination token. required: false type: string - name: takeToken in: query description: The page size. required: false type: string - name: $filter in: query description: OData filter options. required: false type: string responses: '200': description: OK schema: $ref: '#/definitions/MigrationItemCollection' x-ms-pageable: nextLinkName: nextLink x-ms-odata: '#/definitions/MigrationItemsQueryParameter' x-ms-examples: Gets the list of migration items in the protection container.: $ref: ./examples/ReplicationMigrationItems_ListByReplicationProtectionContainers.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName} : get: tags: - ReplicationMigrationItems summary: Microsoft Azure Gets The Details Of A Migration Item operationId: microsoftAzureReplicationmigrationitemsGet produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric unique name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' x-ms-examples: Gets the details of a migration item.: $ref: ./examples/ReplicationMigrationItems_Get.json description: Needs a more full description created. put: tags: - ReplicationMigrationItems summary: Microsoft Azure Enables Migration description: The operation to create an ASR migration item (enable migration). operationId: microsoftAzureReplicationmigrationitemsCreate consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: input in: body description: Enable migration input. required: true schema: $ref: '#/definitions/EnableMigrationInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Enables migration.: $ref: ./examples/ReplicationMigrationItems_Create.json delete: tags: - ReplicationMigrationItems summary: Microsoft Azure Delete The Migration Item description: The operation to delete an ASR migration item. operationId: microsoftAzureReplicationmigrationitemsDelete parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: deleteOption in: query description: The delete option. required: false type: string responses: '202': description: Accepted '204': description: NoContent x-ms-long-running-operation: true x-ms-examples: Delete the migration item.: $ref: ./examples/ReplicationMigrationItems_Delete.json patch: tags: - ReplicationMigrationItems summary: Microsoft Azure Updates Migration Item description: The operation to update the recovery settings of an ASR migration item. operationId: microsoftAzureReplicationmigrationitemsUpdate consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: input in: body description: Update migration item input. required: true schema: $ref: '#/definitions/UpdateMigrationItemInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Updates migration item.: $ref: ./examples/ReplicationMigrationItems_Update.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/migrate : post: tags: - ReplicationMigrationItems summary: Microsoft Azure Migrate Item description: The operation to initiate migration of the item. operationId: microsoftAzureReplicationmigrationitemsMigrate consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: migrateInput in: body description: Migrate input. required: true schema: $ref: '#/definitions/MigrateInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Migrate item.: $ref: ./examples/ReplicationMigrationItems_Migrate.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/pauseReplication : post: tags: - ReplicationMigrationItems summary: Microsoft Azure Pause Replication description: The operation to initiate pause replication of the item. operationId: microsoftAzureReplicationmigrationitemsPausereplication consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: pauseReplicationInput in: body description: Pause replication input. required: true schema: $ref: '#/definitions/PauseReplicationInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Pause replication.: $ref: ./examples/ReplicationMigrationItems_PauseReplication.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resumeReplication : post: tags: - ReplicationMigrationItems summary: Microsoft Azure Resume Replication description: The operation to initiate resume replication of the item. operationId: microsoftAzureReplicationmigrationitemsResumereplication consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: resumeReplicationInput in: body description: Resume replication input. required: true schema: $ref: '#/definitions/ResumeReplicationInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Resume replication.: $ref: ./examples/ReplicationMigrationItems_ResumeReplication.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/resync : post: tags: - ReplicationMigrationItems summary: Microsoft Azure Resynchronizes Replication description: The operation to resynchronize replication of an ASR migration item. operationId: microsoftAzureReplicationmigrationitemsResync consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: input in: body description: Resync input. required: true schema: $ref: '#/definitions/ResyncInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Resynchronizes replication.: $ref: ./examples/ReplicationMigrationItems_Resync.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrate : post: tags: - ReplicationMigrationItems summary: Microsoft Azure Test Migrate Item description: The operation to initiate test migration of the item. operationId: microsoftAzureReplicationmigrationitemsTestmigrate consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: testMigrateInput in: body description: Test migrate input. required: true schema: $ref: '#/definitions/TestMigrateInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Test migrate item.: $ref: ./examples/ReplicationMigrationItems_TestMigrate.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationMigrationItems/{migrationItemName}/testMigrateCleanup : post: tags: - ReplicationMigrationItems summary: Microsoft Azure Test Migrate Cleanup description: The operation to initiate test migrate cleanup. operationId: microsoftAzureReplicationmigrationitemsTestmigratecleanup consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: fabricName in: path description: Fabric name. required: true type: string - name: protectionContainerName in: path description: Protection container name. required: true type: string - name: migrationItemName in: path description: Migration item name. required: true type: string - name: testMigrateCleanupInput in: body description: Test migrate cleanup input. required: true schema: $ref: '#/definitions/TestMigrateCleanupInput' responses: '200': description: OK schema: $ref: '#/definitions/MigrationItem' '202': description: Accepted x-ms-long-running-operation: true x-ms-examples: Test migrate cleanup.: $ref: ./examples/ReplicationMigrationItems_TestMigrateCleanup.json ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationMigrationItems : get: tags: - ReplicationMigrationItems summary: Microsoft Azure Gets The List Of Migration Items In The Vault operationId: microsoftAzureReplicationmigrationitemsList produces: - application/json parameters: - $ref: '#/parameters/ApiVersion' - $ref: '#/parameters/ResourceName' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/SubscriptionId' - name: skipToken in: query description: The pagination token. required: false type: string - name: takeToken in: query description: The page size. required: false type: string - name: $filter in: query description: OData filter options. required: false type: string responses: '200': description: OK schema: $ref: '#/definitions/MigrationItemCollection' x-ms-pageable: nextLinkName: nextLink x-ms-odata: '#/definitions/MigrationItemsQueryParameter' x-ms-examples: Gets the list of migration items in the vault.: $ref: ./examples/ReplicationMigrationItems_List.json description: Needs a more full description created. definitions: UpdateMigrationItemInputProperties: description: Update migration item input properties. required: - providerSpecificDetails type: object properties: providerSpecificDetails: $ref: '#/definitions/UpdateMigrationItemProviderSpecificInput' description: The provider specific input to update migration item. EnableMigrationInputProperties: description: Enable migration input properties. required: - policyId - providerSpecificDetails type: object properties: policyId: description: The policy Id. type: string providerSpecificDetails: $ref: '#/definitions/EnableMigrationProviderSpecificInput' description: The provider specific details. ResumeReplicationInputProperties: description: Resume replication input properties. required: - providerSpecificDetails type: object properties: providerSpecificDetails: $ref: '#/definitions/ResumeReplicationProviderSpecificInput' description: The provider specific input for resume replication. TestMigrateInput: description: Input for test migrate. required: - properties type: object properties: properties: $ref: '#/definitions/TestMigrateInputProperties' description: Test migrate input properties. TestMigrateCleanupInputProperties: description: Test migrate cleanup input properties. type: object properties: comments: description: Test migrate cleanup comments. maxLength: 1024 type: string TestMigrateInputProperties: description: Test migrate input properties. required: - providerSpecificDetails type: object properties: providerSpecificDetails: $ref: '#/definitions/TestMigrateProviderSpecificInput' description: The provider specific details. PauseReplicationInputProperties: description: Pause replication input properties. required: - instanceType type: object properties: instanceType: description: The class type. type: string UpdateMigrationItemProviderSpecificInput: description: Update migration item provider specific input. required: - instanceType type: object properties: instanceType: description: The class type. type: string discriminator: instanceType Resource: description: Azure resource. type: object properties: id: description: Resource Id type: string readOnly: true name: description: Resource Name type: string readOnly: true type: description: Resource Type type: string readOnly: true location: description: Resource Location type: string x-ms-azure-resource: true ResyncInput: description: Resync input. required: - properties type: object properties: properties: $ref: '#/definitions/ResyncInputProperties' description: Resync input properties. ResyncProviderSpecificInput: description: Resync provider specific input. required: - instanceType type: object properties: instanceType: description: The class type. type: string discriminator: instanceType ResyncInputProperties: description: Resync input properties. required: - providerSpecificDetails type: object properties: providerSpecificDetails: $ref: '#/definitions/ResyncProviderSpecificInput' description: The provider specific details. MigrateInput: description: Input for migrate. required: - properties type: object properties: properties: $ref: '#/definitions/MigrateInputProperties' description: Migrate input properties. ResumeReplicationProviderSpecificInput: description: Resume replication provider specific input. required: - instanceType type: object properties: instanceType: description: The class type. type: string discriminator: instanceType MigrationItem: description: Migration item. type: object allOf: - $ref: '#/definitions/Resource' properties: properties: $ref: '#/definitions/MigrationItemProperties' description: The migration item properties. UpdateMigrationItemInput: description: Update migration item input. type: object properties: properties: $ref: '#/definitions/UpdateMigrationItemInputProperties' description: Update migration item input properties. EnableMigrationInput: description: Enable migration input. required: - properties type: object properties: properties: $ref: '#/definitions/EnableMigrationInputProperties' description: Enable migration input properties. MigrateProviderSpecificInput: description: Migrate provider specific input. required: - instanceType type: object properties: instanceType: description: The class type. type: string discriminator: instanceType TestMigrateProviderSpecificInput: description: Test migrate provider specific input. required: - instanceType type: object properties: instanceType: description: The class type. type: string discriminator: instanceType HealthError: description: Health Error. type: object properties: innerHealthErrors: description: The inner health errors. HealthError having a list of HealthError as child errors is problematic. InnerHealthError is used because this will prevent an infinite loop of structures when Hydra tries to auto-generate the contract. We are exposing the related health errors as inner health errors and all API consumers can utilize this in the same fashion as Exception -> InnerException. type: array items: $ref: '#/definitions/InnerHealthError' errorSource: description: Source of error. type: string errorType: description: Type of error. type: string errorLevel: description: Level of error. type: string errorCategory: description: Category of error. type: string errorCode: description: Error code. type: string summaryMessage: description: Summary message of the entity. type: string errorMessage: description: Error message. type: string possibleCauses: description: Possible causes of error. type: string recommendedAction: description: Recommended action to resolve error. type: string creationTimeUtc: format: date-time description: Error creation time (UTC). type: string recoveryProviderErrorMessage: description: DRA error message. type: string entityId: description: ID of the entity. type: string errorId: description: The health error unique id. type: string customerResolvability: description: Value indicating whether the health error is customer resolvable. enum: - Allowed - NotAllowed type: string x-ms-enum: name: HealthErrorCustomerResolvability modelAsString: true MigrationItemCollection: description: Migration item collection. type: object properties: value: description: The list of migration items. type: array items: $ref: '#/definitions/MigrationItem' nextLink: description: The value of next link. type: string TestMigrateCleanupInput: description: Input for test migrate cleanup. required: - properties type: object properties: properties: $ref: '#/definitions/TestMigrateCleanupInputProperties' description: Test migrate cleanup input properties. InnerHealthError: description: Implements InnerHealthError class. HealthError object has a list of InnerHealthErrors as child errors. InnerHealthError is used because this will prevent an infinite loop of structures when Hydra tries to auto-generate the contract. We are exposing the related health errors as inner health errors and all API consumers can utilize this in the same fashion as Exception -> InnerException. type: object properties: errorSource: description: Source of error. type: string errorType: description: Type of error. type: string errorLevel: description: Level of error. type: string errorCategory: description: Category of error. type: string errorCode: description: Error code. type: string summaryMessage: description: Summary message of the entity. type: string errorMessage: description: Error message. type: string possibleCauses: description: Possible causes of error. type: string recommendedAction: description: Recommended action to resolve error. type: string creationTimeUtc: format: date-time description: Error creation time (UTC). type: string recoveryProviderErrorMessage: description: DRA error message. type: string entityId: description: ID of the entity. type: string errorId: description: The health error unique id. type: string customerResolvability: description: Value indicating whether the health error is customer resolvable. enum: - Allowed - NotAllowed type: string x-ms-enum: name: HealthErrorCustomerResolvability modelAsString: true EnableMigrationProviderSpecificInput: description: Enable migration provider specific input. required: - instanceType type: object properties: instanceType: description: The class type. type: string discriminator: instanceType ResumeReplicationInput: description: Resume replication input. required: - properties type: object properties: properties: $ref: '#/definitions/ResumeReplicationInputProperties' description: Resume replication input properties. CurrentJobDetails: description: Current job details of the migration item. type: object properties: jobName: description: The job name. type: string readOnly: true jobId: description: The ARM Id of the job being executed. type: string readOnly: true startTime: format: date-time description: The start time of the job. type: string readOnly: true MigrationProviderSpecificSettings: description: Migration provider specific settings. required: - instanceType type: object properties: instanceType: description: Gets the instance type. type: string discriminator: instanceType MigrateInputProperties: description: Migrate input properties. required: - providerSpecificDetails type: object properties: providerSpecificDetails: $ref: '#/definitions/MigrateProviderSpecificInput' description: The provider specific details. MigrationItemProperties: description: Migration item properties. type: object properties: machineName: description: The on-premise virtual machine name. type: string readOnly: true policyId: description: The ARM Id of policy governing this item. type: string readOnly: true policyFriendlyName: description: The name of policy governing this item. type: string readOnly: true recoveryServicesProviderId: description: The recovery services provider ARM Id. type: string readOnly: true replicationStatus: description: The replication status. type: string readOnly: true migrationState: description: The migration status. enum: - None - EnableMigrationInProgress - EnableMigrationFailed - DisableMigrationInProgress - DisableMigrationFailed - InitialSeedingInProgress - InitialSeedingFailed - Replicating - MigrationInProgress - MigrationSucceeded - MigrationFailed - ResumeInProgress - ResumeInitiated - SuspendingProtection - ProtectionSuspended - MigrationCompletedWithInformation - MigrationPartiallySucceeded type: string readOnly: true x-ms-enum: name: MigrationState modelAsString: true migrationStateDescription: description: The migration state description. type: string readOnly: true lastTestMigrationTime: format: date-time description: The last test migration time. type: string readOnly: true lastTestMigrationStatus: description: The status of the last test migration. type: string readOnly: true lastMigrationTime: format: date-time description: The last migration time. type: string readOnly: true lastMigrationStatus: description: The status of the last migration. type: string readOnly: true testMigrateState: description: The test migrate state. enum: - None - TestMigrationInProgress - TestMigrationSucceeded - TestMigrationFailed - TestMigrationCleanupInProgress - TestMigrationCompletedWithInformation - TestMigrationPartiallySucceeded type: string readOnly: true x-ms-enum: name: TestMigrationState modelAsString: true testMigrateStateDescription: description: The test migrate state description. type: string readOnly: true health: description: The consolidated health. enum: - None - Normal - Warning - Critical type: string readOnly: true x-ms-enum: name: ProtectionHealth modelAsString: true healthErrors: description: The list of health errors. type: array items: $ref: '#/definitions/HealthError' readOnly: true allowedOperations: description: The allowed operations on the migration item based on the current migration state of the item. type: array items: enum: - DisableMigration - TestMigrate - TestMigrateCleanup - Migrate - StartResync - PauseReplication - ResumeReplication type: string x-ms-enum: name: MigrationItemOperation modelAsString: true readOnly: true currentJob: $ref: '#/definitions/CurrentJobDetails' description: The current job details. readOnly: true criticalJobHistory: description: The critical past job details. type: array items: $ref: '#/definitions/CriticalJobHistoryDetails' readOnly: true x-ms-identifiers: [] eventCorrelationId: description: The correlation Id for events associated with this migration item. type: string readOnly: true providerSpecificDetails: $ref: '#/definitions/MigrationProviderSpecificSettings' description: The migration provider custom settings. PauseReplicationInput: description: Pause replication input. required: - properties type: object properties: properties: $ref: '#/definitions/PauseReplicationInputProperties' description: Pause replication input properties. CriticalJobHistoryDetails: description: Critical past job details of the migration item. type: object properties: jobName: description: The job name. type: string readOnly: true jobId: description: The ARM Id of the job being executed. type: string readOnly: true startTime: format: date-time description: The start time of the job. type: string readOnly: true jobStatus: description: The job state. type: string readOnly: true parameters: SubscriptionId: name: subscriptionId in: path description: The subscription Id. required: true type: string ResourceGroupName: name: resourceGroupName in: path description: The name of the resource group where the recovery services vault is present. required: true type: string x-ms-parameter-location: client ApiVersion: name: api-version in: query description: Client Api Version. required: true type: string ResourceName: name: resourceName in: path description: The name of the recovery services vault. required: true type: string x-ms-parameter-location: client x-ms-parameterized-host: hostTemplate: '{endpoint}' useSchemePrefix: false parameters: - $ref: '#/parameters/Endpoint'