mirror of
				https://github.com/immich-app/immich.git
				synced 2025-11-03 19:17:11 -05:00 
			
		
		
		
	* feat: unassign person faces * multiple improvements * chore: regenerate api * feat: improve face interactions in photos * fix: tests * fix: tests * optimize * fix: wrong assignment on complex-multiple re-assignments * fix: thumbnails with large photos * fix: complex reassign * fix: don't send people with faces * fix: person thumbnail generation * chore: regenerate api * add tess * feat: face box even when zoomed * fix: change feature photo * feat: make the blue icon hoverable * chore: regenerate api * feat: use websocket * fix: loading spinner when clicking on the done button * fix: use the svelte way * fix: tests * simplify * fix: unused vars * fix: remove unused code * fix: add migration * chore: regenerate api * ci: add unit tests * chore: regenerate api * feat: if a new person is created for a face and the server takes more than 15 seconds to generate the person thumbnail, don't wait for it * reorganize * chore: regenerate api * feat: global edit * pr feedback * pr feedback * simplify * revert test * fix: face generation * fix: tests * fix: face generation * fix merge * feat: search names in unmerge face selector modal * fix: merge face selector * simplify feature photo generation * fix: change endpoint * pr feedback * chore: fix merge * chore: fix merge * fix: tests * fix: edit & hide buttons * fix: tests * feat: show if person is hidden * feat: rename face to person * feat: split in new panel * copy-paste-error * pr feedback * fix: feature photo * do not leak faces * fix: unmerge modal * fix: merge modal event * feat(server): remove duplicates * fix: title for image thumbnails * fix: disable side panel when there's no face until next PR --------- Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
		
			
				
	
	
		
			128 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
		
			Generated
		
	
	
			
		
		
	
	
			128 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
		
			Generated
		
	
	
# openapi.api.FaceApi
 | 
						|
 | 
						|
## Load the API package
 | 
						|
```dart
 | 
						|
import 'package:openapi/api.dart';
 | 
						|
```
 | 
						|
 | 
						|
All URIs are relative to */api*
 | 
						|
 | 
						|
Method | HTTP request | Description
 | 
						|
------------- | ------------- | -------------
 | 
						|
[**getFaces**](FaceApi.md#getfaces) | **GET** /face | 
 | 
						|
[**reassignFacesById**](FaceApi.md#reassignfacesbyid) | **PUT** /face/{id} | 
 | 
						|
 | 
						|
 | 
						|
# **getFaces**
 | 
						|
> List<AssetFaceResponseDto> getFaces(id)
 | 
						|
 | 
						|
 | 
						|
 | 
						|
### Example
 | 
						|
```dart
 | 
						|
import 'package:openapi/api.dart';
 | 
						|
// TODO Configure API key authorization: cookie
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKey = 'YOUR_API_KEY';
 | 
						|
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKeyPrefix = 'Bearer';
 | 
						|
// TODO Configure API key authorization: api_key
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKey = 'YOUR_API_KEY';
 | 
						|
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKeyPrefix = 'Bearer';
 | 
						|
// TODO Configure HTTP Bearer authorization: bearer
 | 
						|
// Case 1. Use String Token
 | 
						|
//defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken('YOUR_ACCESS_TOKEN');
 | 
						|
// Case 2. Use Function which generate token.
 | 
						|
// String yourTokenGeneratorFunction() { ... }
 | 
						|
//defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken(yourTokenGeneratorFunction);
 | 
						|
 | 
						|
final api_instance = FaceApi();
 | 
						|
final id = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | 
 | 
						|
 | 
						|
try {
 | 
						|
    final result = api_instance.getFaces(id);
 | 
						|
    print(result);
 | 
						|
} catch (e) {
 | 
						|
    print('Exception when calling FaceApi->getFaces: $e\n');
 | 
						|
}
 | 
						|
```
 | 
						|
 | 
						|
### Parameters
 | 
						|
 | 
						|
Name | Type | Description  | Notes
 | 
						|
------------- | ------------- | ------------- | -------------
 | 
						|
 **id** | **String**|  | 
 | 
						|
 | 
						|
### Return type
 | 
						|
 | 
						|
[**List<AssetFaceResponseDto>**](AssetFaceResponseDto.md)
 | 
						|
 | 
						|
### Authorization
 | 
						|
 | 
						|
[cookie](../README.md#cookie), [api_key](../README.md#api_key), [bearer](../README.md#bearer)
 | 
						|
 | 
						|
### HTTP request headers
 | 
						|
 | 
						|
 - **Content-Type**: Not defined
 | 
						|
 - **Accept**: application/json
 | 
						|
 | 
						|
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
						|
 | 
						|
# **reassignFacesById**
 | 
						|
> PersonResponseDto reassignFacesById(id, faceDto)
 | 
						|
 | 
						|
 | 
						|
 | 
						|
### Example
 | 
						|
```dart
 | 
						|
import 'package:openapi/api.dart';
 | 
						|
// TODO Configure API key authorization: cookie
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKey = 'YOUR_API_KEY';
 | 
						|
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('cookie').apiKeyPrefix = 'Bearer';
 | 
						|
// TODO Configure API key authorization: api_key
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKey = 'YOUR_API_KEY';
 | 
						|
// uncomment below to setup prefix (e.g. Bearer) for API key, if needed
 | 
						|
//defaultApiClient.getAuthentication<ApiKeyAuth>('api_key').apiKeyPrefix = 'Bearer';
 | 
						|
// TODO Configure HTTP Bearer authorization: bearer
 | 
						|
// Case 1. Use String Token
 | 
						|
//defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken('YOUR_ACCESS_TOKEN');
 | 
						|
// Case 2. Use Function which generate token.
 | 
						|
// String yourTokenGeneratorFunction() { ... }
 | 
						|
//defaultApiClient.getAuthentication<HttpBearerAuth>('bearer').setAccessToken(yourTokenGeneratorFunction);
 | 
						|
 | 
						|
final api_instance = FaceApi();
 | 
						|
final id = 38400000-8cf0-11bd-b23e-10b96e4ef00d; // String | 
 | 
						|
final faceDto = FaceDto(); // FaceDto | 
 | 
						|
 | 
						|
try {
 | 
						|
    final result = api_instance.reassignFacesById(id, faceDto);
 | 
						|
    print(result);
 | 
						|
} catch (e) {
 | 
						|
    print('Exception when calling FaceApi->reassignFacesById: $e\n');
 | 
						|
}
 | 
						|
```
 | 
						|
 | 
						|
### Parameters
 | 
						|
 | 
						|
Name | Type | Description  | Notes
 | 
						|
------------- | ------------- | ------------- | -------------
 | 
						|
 **id** | **String**|  | 
 | 
						|
 **faceDto** | [**FaceDto**](FaceDto.md)|  | 
 | 
						|
 | 
						|
### Return type
 | 
						|
 | 
						|
[**PersonResponseDto**](PersonResponseDto.md)
 | 
						|
 | 
						|
### Authorization
 | 
						|
 | 
						|
[cookie](../README.md#cookie), [api_key](../README.md#api_key), [bearer](../README.md#bearer)
 | 
						|
 | 
						|
### HTTP request headers
 | 
						|
 | 
						|
 - **Content-Type**: application/json
 | 
						|
 - **Accept**: application/json
 | 
						|
 | 
						|
[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)
 | 
						|
 |