Actualizar Plan de Usuario
curl --request PUT \
--url https://api.plazbot.com/api/partner/user/{userId}/plan \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"newPlanId": "b3f1c2a4-...",
"isTrial": false,
"daysTrial": 0
}
'import requests
url = "https://api.plazbot.com/api/partner/user/{userId}/plan"
payload = {
"newPlanId": "b3f1c2a4-...",
"isTrial": False,
"daysTrial": 0
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({newPlanId: 'b3f1c2a4-...', isTrial: false, daysTrial: 0})
};
fetch('https://api.plazbot.com/api/partner/user/{userId}/plan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.plazbot.com/api/partner/user/{userId}/plan",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'newPlanId' => 'b3f1c2a4-...',
'isTrial' => false,
'daysTrial' => 0
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.plazbot.com/api/partner/user/{userId}/plan"
payload := strings.NewReader("{\n \"newPlanId\": \"b3f1c2a4-...\",\n \"isTrial\": false,\n \"daysTrial\": 0\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.plazbot.com/api/partner/user/{userId}/plan")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"newPlanId\": \"b3f1c2a4-...\",\n \"isTrial\": false,\n \"daysTrial\": 0\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plazbot.com/api/partner/user/{userId}/plan")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"newPlanId\": \"b3f1c2a4-...\",\n \"isTrial\": false,\n \"daysTrial\": 0\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Plan actualizado exitosamente",
"userId": "usr_...",
"c_planId": "b3f1c2a4-...",
"c_isPlanTrial": false,
"c_expirationTrialPlan": null,
"data": {
"planConfiguration": {
"c_planId": "b3f1c2a4-...",
"c_isPlanTrial": false,
"c_expirationTrialPlan": null,
"c_planStartDate": "2026-08-20T17:47:24.7232669Z",
"c_planDueDate": null,
"c_lastReminderSentDate": null
}
}
}User
Actualizar Plan de Usuario
Asigna o actualiza el plan de un usuario. Si isTrial es true, se calcula la fecha de expiracion del periodo de prueba con daysTrial.
PUT
/
api
/
partner
/
user
/
{userId}
/
plan
Actualizar Plan de Usuario
curl --request PUT \
--url https://api.plazbot.com/api/partner/user/{userId}/plan \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"newPlanId": "b3f1c2a4-...",
"isTrial": false,
"daysTrial": 0
}
'import requests
url = "https://api.plazbot.com/api/partner/user/{userId}/plan"
payload = {
"newPlanId": "b3f1c2a4-...",
"isTrial": False,
"daysTrial": 0
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({newPlanId: 'b3f1c2a4-...', isTrial: false, daysTrial: 0})
};
fetch('https://api.plazbot.com/api/partner/user/{userId}/plan', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.plazbot.com/api/partner/user/{userId}/plan",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'newPlanId' => 'b3f1c2a4-...',
'isTrial' => false,
'daysTrial' => 0
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.plazbot.com/api/partner/user/{userId}/plan"
payload := strings.NewReader("{\n \"newPlanId\": \"b3f1c2a4-...\",\n \"isTrial\": false,\n \"daysTrial\": 0\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://api.plazbot.com/api/partner/user/{userId}/plan")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"newPlanId\": \"b3f1c2a4-...\",\n \"isTrial\": false,\n \"daysTrial\": 0\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plazbot.com/api/partner/user/{userId}/plan")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"newPlanId\": \"b3f1c2a4-...\",\n \"isTrial\": false,\n \"daysTrial\": 0\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Plan actualizado exitosamente",
"userId": "usr_...",
"c_planId": "b3f1c2a4-...",
"c_isPlanTrial": false,
"c_expirationTrialPlan": null,
"data": {
"planConfiguration": {
"c_planId": "b3f1c2a4-...",
"c_isPlanTrial": false,
"c_expirationTrialPlan": null,
"c_planStartDate": "2026-08-20T17:47:24.7232669Z",
"c_planDueDate": null,
"c_lastReminderSentDate": null
}
}
}Authorizations
Token de autenticacion Bearer. Obtenga el token usando el endpoint /api/user/login
Path Parameters
ID del usuario
Body
application/json
Response
Plan actualizado exitosamente
Indica si la operacion fue exitosa
Mensaje descriptivo
ID del usuario actualizado
ID del plan asignado
Indica si el plan es de prueba
Fecha de expiracion de la prueba
Show child attributes
Show child attributes
⌘I

