/**
* SET SUBSCRIPTION ACCESS AT REMOTE API
* Utilizes "PUT" methodÂ
* {{}} = contents provided by API host/administration, remove brackets when replacing
* @ int $user_id
* @ string $course_slug
*/
function set_subscription_at_remote_api( $user_id, $course_slug ) {
$user_email = get_userdata( $user_id )->user_email ;
$data = wp_json_encode( array(
'email' => $user_email,
'bundleSlugs' => array( $course_slug ),
)
);
$id = $user_email ;
$args = array(
'method' => 'PUT',
'headers' => array(
'Authorization' => 'Bearer {{32-CHARACTER ALPHANUMERIC KEY}}',
'Content-Type' => 'application/json', //JSON is default but no harm in specifying
),
'body' => $data,
) ;
//make request and return response to check results
$response = wp_remote_request( '{{URL PROVIDED BY API HOST}}' . $id, $args ) ;
$body = wp_remote_retrieve_body( $response ) ;
$data = json_decode( $body, true ) ;
$subscription_id = $data[purchasedBundles][0]['bundleId'] ;
$subscription_slug = get_sub_slug_by_bundle_id( $subscription_id ) ;
return $subscription_slug ;
}