page title decoration image

Upload favorites data (XML)

POST /api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites

Upload favorites data (XML)

Code samples

# You can also use wget
curl -X POST /api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites \
  -H 'Content-Type: multipart/form-data' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'
POST /api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites HTTP/1.1

Content-Type: multipart/form-data
Accept: application/json
const inputBody = '{
  "file": "string"
}';
const headers = {
  'Content-Type':'multipart/form-data',
  'Accept':'application/json',
  'Authorization':'Bearer {access-token}'
};

fetch('/api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'

headers = {
  'Content-Type' => 'multipart/form-data',
  'Accept' => 'application/json',
  'Authorization' => 'Bearer {access-token}'
}

result = RestClient.post '/api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites',
  params: {
  }, headers: headers

p JSON.parse(result)
import requests
headers = {
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json',
  'Authorization': 'Bearer {access-token}'
}

r = requests.post('/api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites', headers = headers)

print(r.json())
<?php

require 'vendor/autoload.php';

$headers = array(
    'Content-Type' => 'multipart/form-data',
    'Accept' => 'application/json',
    'Authorization' => 'Bearer {access-token}',
);

$client = new \GuzzleHttp\Client();

// Define array of request body.
$request_body = array();

try {
    $response = $client->request('POST','/api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites', array(
        'headers' => $headers,
        'json' => $request_body,
       )
    );
    print_r($response->getBody()->getContents());
 }
 catch (\GuzzleHttp\Exception\BadResponseException $e) {
    // handle exception or api errors.
    print_r($e->getMessage());
 }

 // ...
URL obj = new URL("/api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main

import (
       "bytes"
       "net/http"
)

func main() {

    headers := map[string][]string{
        "Content-Type": []string{"multipart/form-data"},
        "Accept": []string{"application/json"},
        "Authorization": []string{"Bearer {access-token}"},
    }

    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "/api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites", data)
    req.Header = headers

    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}

POST /api/v2/clients/{client_id}/portfolios/{portfolio_id}/favorites

Imports an XML file with favorites data for a specific portfolio.

Body parameter

file: string

Parameters

NameInTypeRequiredDescription
client_idpathintegertrueClient ID
portfolio_idpathintegertruePortfolio ID
bodybodyobjecttrueUpload XML file
» filebodystring(binary)trueXML file (application/xml)

Example responses

201 Response

{
  "status": "success",
  "code": 201,
  "message": "Operation completed successfully",
  "details": []
}

400 Response

{
  "status": "error",
  "code": 400,
  "message": "Invalid request",
  "details": "Validation error"
}

401 Response

{
  "status": "error",
  "code": 401,
  "message": "Authentication failed",
  "details": "JWT token not found"
}

403 Response

{
  "status": "error",
  "code": 403,
  "message": "Access denied",
  "details": "Insufficient permissions"
}

500 Response

{
  "status": "error",
  "code": 500,
  "message": "Internal server error",
  "details": "An internal server error occurred"
}

Responses

StatusMeaningDescriptionSchema
201CreatedSuccessful operationSuccessResponse
400Bad RequestInvalid request or missing required parametersErrorResponse
401UnauthorizedAuthentication error (JWT token missing/invalid)ErrorResponse
403ForbiddenAccess denied (insufficient permissions)ErrorResponse
500Internal Server ErrorInternal server errorErrorResponse