Save Configuration API Documentation - V1.0.0
            
            
                                                                                                                                                                                                
                                        API keys
                                                                
                                    Generate temporary public key
                                    This is a POST method that generates a temporary public key
                                    POST https://save-configuration.unlimited3d.com/api/key/generate
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | secret_key | string | yes | 
                                                                                                                    
                                                                | public_key | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                                                                                                Body Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | ttl | integer | no | Time to leave in seconds. Default 600 (10 minutes). Maximum 7200(2 hours). | 
                                                                                                                    
                                                                | group_scope | array | yes | Array of groups that key can be used for | 
                                                                                                                                                            
                                            
                                         
                                                                        
                                        Example response:
{
   "public_key": "jwt token representing temp public key",
   "expires_at": 1734432950, // Unix timestamp, when key will expire,
   "group_scope": ["test"] // Scope of the key
}
 
                                 
                                                                                                                                                                                                                                    
                                        Configuration and files
                                                                
                                    Save Configuration
                                    This is a POST method that saves a custom configuration.
                                    POST https://save-configuration.unlimited3d.com/api/configurations/save
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                                                                                                Body Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | group | string | yes | The name of the group | 
                                                                                                                                                            
                                            
                                         
                                                                        
                                        Example response:
{
   "id": 8, // Id of configuration
   "status": "started", // Status, can be "started" or "confirmed"
   "group": "test", // Group that configuration is assigned to
   "created_at": "2024-12-17T10:48:46.482Z", 
   "updated_at": "2024-12-17T10:48:46.482Z",
   "s3_signed_url": "s3 temp url to PUT json to" // Default expiry 10 minutes
}
 
                                 
                                                                                                                                                                                            
                                    Confirm
                                    This is a POST method that confirms a configuration.
                                    POST https://save-configuration.unlimited3d.com/api/configurations/{id}/confirm
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                        Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | id | integer | yes | id of configuration client wants to confirm | 
                                                                                                                                                            
                                            
                                         
                                                                                                                                                
                                        Example response:
{
   "id": 8, // Id of configuration
   "status": "confirmed",
   "group": "test",
   "size_bytes": 753, // Size of file uploaded to S3, in bytes
   "created_at": "2024-12-17T10:48:46.000Z",
   "updated_at": "2024-12-17T10:51:59.000Z"
}
 
                                 
                                                                                                                                                                                            
                                    Get configurations
                                    This is a POST method that retrieves the paginated list of configurations
                                    POST https://save-configuration.unlimited3d.com/api/configurations
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                        Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | page | integer | no | representing the page of paginated results | 
                                                                                                                                                            
                                            
                                         
                                                                        Body Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | groups | array | yes | array of groups to get | 
                                                                                                                                                            
                                            
                                         
                                                                        
                                        Example response:
{
   "data": [
       {
           "id": 7,
           "status": "confirmed",
           "group": "test",
           "created_at": "2024-12-16T13:48:25.000Z",
           "updated_at": "2024-12-16T13:48:49.000Z"
       },
       {
           "id": 8,
           "status": "confirmed",
           "group": "test",
           "created_at": "2024-12-17T10:48:46.000Z",
           "updated_at": "2024-12-17T10:51:59.000Z"
       }
   ],
   "pagination": {
       "count": 2, // Number of results on current page
       "pages": 1, // Total number of pages
       "total": 2 // Total number of results
   }
}
 
                                 
                                                                                                                                                                                            
                                    Get a specific configuration
                                    This is a GET method that retrieves a specific configuration
                                    GET https://save-configuration.unlimited3d.com/api/configurations/{id}
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                        Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | id | integer | yes | id of configuration client wants to get | 
                                                                                                                                                            
                                            
                                         
                                                                                                                                                
                                        Example response:
{
   "id": 8,
   "status": "confirmed",
   "group": "test",
   "size_bytes": 753, // Size of file in bytes
   "tmp_file_url": "https://storage-save-configuration.unlimited3d.com/4ad62fc1-b5d3-49d2-958d-64998f29f66b.json?Policy=eyJT.....", // Cloud front temp url, default expiry 5 days
   "tmp_url_expires_at": 1734865227, // When will the temp url expiry
   "created_at": "2024-12-17T10:48:46.000Z",
   "updated_at": "2024-12-17T10:51:59.000Z"
}
 
                                 
                                                                                                                                                                                            
                                    Get files
                                    This is a GET method that retrieves the paginated list of files associated with the configuration.
                                    GET https://save-configuration.unlimited3d.com/api/configurations/{id}/files
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                        Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | id | integer | yes | id of configuration client wants to get files for | 
                                                                                                                    
                                                                | page | integer | no | representing the page of paginated results | 
                                                                                                                                                            
                                            
                                         
                                                                                                                                                
                                        Example response:
{
   "data": [
       {
           "id": 2,
           "status": "confirmed",
           "size_bytes": 753,
           "created_at": "2024-12-17T11:12:04.000Z",
           "updated_at": "2024-12-17T11:15:35.000Z",
           "tmp_file_url": "https://storage-save-configuration.unlimited3d.com/ed971bb2-2b23-4fcf-af38-19d049fc21cc.png?Policy=eyJT....", // Cloud front temp url, default expiry 5 days
           "tmp_url_expires_at": 1734866209 // When will the temp url expiry
       }
   ],
   "pagination": {
       "count": 1,
       "pages": 1,
       "total": 1
   }
}
 
                                 
                                                                                                                                                                                            
                                    Save file
                                    This is a POST method that saves a file for a specific configuration.
                                    POST https://save-configuration.unlimited3d.com/api/configurations/{id}/files/save
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                        Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | id | integer | yes | id of configuration client wants to save file for | 
                                                                                                                                                            
                                            
                                         
                                                                        Body Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | ext | string | yes | file extension | 
                                                                                                                                                            
                                            
                                         
                                                                        
                                        Example response:
{
   "id": 2, // Id of file
   "status": "started", // Same as configuration, "started" or "confirmed"
   "created_at": "2024-12-17T11:12:04.989Z",
   "updated_at": "2024-12-17T11:12:04.989Z",
   "s3_signed_url": "s3 temp url to PUT file to" // Default expiry 10 minutes
}
 
                                 
                                                                                                                                                                                            
                                    Confirm file
                                    This is a POST method that confirms a file for a specific configuration.
                                    POST https://save-configuration.unlimited3d.com/api/configurations/{saved_config_id}/files/{id}/confirm
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                        Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | id | integer | yes | id of the file, returned by previous API | 
                                                                                                                                                            
                                            
                                         
                                                                        Body Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | saved_config_id | integer | yes | id of configuration client wants to save file for | 
                                                                                                                                                            
                                            
                                         
                                                                        
                                        Example response:
{
   "id": 2,
   "status": "confirmed",
   "size_bytes": 753, // Size of file, in bytes
   "created_at": "2024-12-17T11:12:04.000Z",
   "updated_at": "2024-12-17T11:15:35.000Z"
}
 
                                 
                                                                                                                                                                                            
                                    Get a specific file
                                    This is a GET method that retrieves a file saved for a specific configuration.
                                    GET https://save-configuration.unlimited3d.com/api/configurations/{saved_config_id}/files/{id}
                                    Headers Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | 
                                                
                                                
                                                                                                                                                                        
                                                                | Authorization | string | yes | 
                                                                                                                                                            
                                            
                                         
                                                                        Parameters:
                                                                            
                                            
                                                
                                                    
                                                        | Name | Type | Required | Description | 
                                                
                                                
                                                                                                                                                                        
                                                                | saved_config_id | integer | yes | id of configuration client wants to save file for | 
                                                                                                                    
                                                                | id | integer | yes | id of the file, returned by previous API | 
                                                                                                                                                            
                                            
                                         
                                                                                                                                                
                                        Example response:
{
   "id": 4,
   "status": "confirmed",
   "size_bytes": 1852368,
   "created_at": "2024-12-17T14:13:40.000Z",
   "updated_at": "2024-12-17T14:14:06.000Z",
   "tmp_file_url": "https://storage-save-configuration.unlimited3d.com/35cb9173-26ec-424c-bcfd-603db1c07a9a.jpg?Policy=eyJTdG....", 
   "tmp_url_expires_at": 1734880024
}