'Share Plex library in Dart

Hi I’m figuring out how to share Plex library in dart. I'm helping myself with this working script in python ( it works)

https://gist.github.com/JonnyWong16/f8139216e2748cb367558070c1448636

unfortunately my code returns an http error 400, bad request

note: When I run the dart code there are no shared library.

maybe the payload is not correct :| Thank for any help

import 'package:http/http.dart' as http;

class Server {
   String token, ip, port;
   Server(this.ip, this.port, this.token);

   share() async {
     var server_id = '00000000000000000000000000000000'; fake id 
     var library_section_ids = '97430074'; // right id , it works in python
     var invited_id = '50819899'; // right id , it works in python

     var headers = {
       'Accept': 'application/json',
       'X-Plex-Token': token,
     };

    var data =
    '["server_id": $server_id,'
    ' "shared_server":["library_section_ids":[$library_section_ids],'
    ' "invited_id":$invited_id]';

   var res = await http.post(
    Uri.parse(
        'https://plex.tv/api/servers/$server_id/shared_servers/'),
    headers: headers,
    body: data);
   if (res.statusCode != 200) {
     throw Exception('http.post error: statusCode= ${res.statusCode}');
   }
   print(res.body);
 }

}

void main(List<String> arguments) async {
  var srv = Server('xxx.yyy.xxx.yyy', '32400', '000000000-1111');
  await srv.share();

}



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source