> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://es.megaport.ferndocs.com/es/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://es.megaport.ferndocs.com/es/_mcp/server.

# Actividad del Usuario

GET https://api.megaport.com/v3/activity

Devuelve una lista de registros de actividad que coinciden con los criterios de búsqueda, para el usuario que ha iniciado sesión.

Para obtener una lista completa de las actividades que se registran, consulte [Qué información se registra](https://docs.megaport.com/portal-admin/activity-logs/#what-information-is-logged).

Puede recuperar todas las actividades que ha realizado mediante esta solicitud sin especificar ningún parámetro opcional. También puede recuperar registros para un nombre de actividad específico y un intervalo de fechas.

Puede encontrar los valores de `activityName` en el punto final `/v3/companyActivityNames`.

Los valores de fecha `from` y `to` deben ingresarse en el formato de fecha ISO 8601 (YYYY-MM-DD'T'HH:MM:SSZ). Por ejemplo, 2025-07-20 especifica el 20 de agosto de 2025. Para obtener más información, consulte [Formato de fecha y hora ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html).

La respuesta contiene detalles que incluyen el nombre del usuario, el ID del usuario (personId), una descripción de la actividad que ocurrió, el nombre de la actividad, la fecha en que ocurrió la actividad y el tipo de usuario.
`createDate` se devuelve en formato de marca de tiempo UNIX. Puede utilizar herramientas como [https://www.epochconverter.com/](https://www.epochconverter.com/) o [https://it-tools.tech/date-converter](https://it-tools.tech/date-converter) para convertir la fecha a un formato legible por humanos.

Reference: https://es.megaport.ferndocs.com/es/api-reference/activity-logs/user-activity-1

## Servers

- `https://api.megaport.com` (Entorno de producción, default)
- `https://api-staging.megaport.com` (Entorno de pruebas (solo pruebas, se restablece cada 24 horas))

## Request

### Query parameters

- `pageable` (string, optional) — Objeto de paginación utilizando los parámetros de paginación y ordenación (pageSize, pageNumber, sort). Por defecto pageSize(10), pageNumber(1) y sort(createDate,desc). (Opcional - Booleano)
- `activityName` (string, optional) — El nombre de la actividad. (Opcional - cadena)
- `from` (string, optional) — La fecha de inicio para la cual se deben devolver actividades. Introduzca la fecha en formato ISO 8601: YYYY-MM-DD'T'HH:MM:SSZ. (Opcional)
- `to` (string, optional) — La fecha de fin para devolver actividades. Introduzca la fecha en formato ISO 8601: YYYY-MM-DD'T'HH:MM:SSZ. (Opcional)

## Response

### 200

Actividad de Usuario - 3 Actividades / Actividad de Usuario - Varias Actividades / Actividad de Usuario - Actividad de Servicio Actualizada / Actividad de Usuario - Varias Actividades / Actividad de Usuario - 3 Actividades / Actividad de Usuario - Actividad de Servicio Actualizada

- `data` (list of V3ActivityGetResponsesContentApplicationJsonSchemaDataItems, optional)
- `message` (string, optional)
- `terms` (string, optional)

## Types

### V3ActivityGetResponsesContentApplicationJsonSchemaDataItems

- `createDate` (double, optional)
- `description` (string, optional)
- `loginName` (string, optional)
- `name` (string, optional)
- `personId` (double, optional)
- `userType` (string, optional)

## Examples

### User Activity - 3 Activities

**Response**

```json
{
  "data": [
    {
      "createDate": 1750930638738,
      "description": "Nuevo Pedido a través de API [MegaportServiceDto{productType=MEGAPORT, createDate=Thu Jun 26 19:37:10 AEST 2025, productUid=56322aef-72e8-4e85-bbdf-0e5012d11d66, portSpeed=100000, lagPortCount=null, terminateDate=null, requestDate=null, market='null', marketplaceVisibility=false, vxcpermitted=true, vxcAutoApproval=false, isVirtual=false, associatedVxcs=[], associatedIxs=[], buyoutPort=false, crossConnectRequested=false, config=ConfigDto{mcrAsn=null, lag=null, lag_service_id=null, mcrVersion=null, bgpShutdownDefault=false, diverseFrom=null, diversityZone='null', customProperties={}}, serviceLicence=null, addOns=[]}]",
      "loginName": "Bryan Brown",
      "name": "New API Order",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750930636429,
      "description": "Nuevo pedido validado a través de API [MegaportServiceDto{productType=MEGAPORT, createDate=Thu Jun 26 19:37:10 AEST 2025, productUid=0e2b0d90-5271-11f0-9ddb-91be23078a2a, portSpeed=100000, lagPortCount=null, terminateDate=null, requestDate=null, market='null', marketplaceVisibility=false, vxcpermitted=true, vxcAutoApproval=false, isVirtual=false, associatedVxcs=[], associatedIxs=[], buyoutPort=false, crossConnectRequested=false, config=ConfigDto{mcrAsn=null, lag=null, lag_service_id=null, mcrVersion=null, bgpShutdownDefault=false, diverseFrom=null, diversityZone='null', customProperties={}}, serviceLicence=null, addOns=[]}]",
      "loginName": "Bryan Brown",
      "name": "New API Order Validation",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750930567495,
      "description": "Inicio de sesión manual exitoso",
      "loginName": "Bryan Brown",
      "name": "Login",
      "personId": 50402,
      "userType": "USER"
    }
  ],
  "message": "Tus actividades",
  "terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy"
}
```

**SDK Code**

```python User Activity - 3 Activities
import requests

url = "https://api.megaport.com/v3/activity"

response = requests.get(url)

print(response.json())
```

```javascript User Activity - 3 Activities
const url = 'https://api.megaport.com/v3/activity';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go User Activity - 3 Activities
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.megaport.com/v3/activity"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby User Activity - 3 Activities
require 'uri'
require 'net/http'

url = URI("https://api.megaport.com/v3/activity")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
```

```java User Activity - 3 Activities
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.megaport.com/v3/activity")
  .asString();
```

```php User Activity - 3 Activities
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.megaport.com/v3/activity');

echo $response->getBody();
```

```csharp User Activity - 3 Activities
using RestSharp;

var client = new RestClient("https://api.megaport.com/v3/activity");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
```

```swift User Activity - 3 Activities
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "https://api.megaport.com/v3/activity")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```

### User Activity - Service Updated Activity

**Response**

```json
{
  "data": [
    {
      "createDate": 1750995401053,
      "description": "Servicio [247301] actualizado con campos [nombre=Detroit a Tokyo - Cloud VXC, autoRenovarTérmino=true, límiteVelocidad=10000, apagado=false, vlanFinalA=1075]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995378148,
      "description": "Servicio [247301] actualizado con campos [name=Detroit a Tokio - Cloud VXC, autoRenewTerm=true, rateLimit=10000, shutdown=false, aEndVlan=1075]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995370666,
      "description": "Servicio [247301] actualizado con campos [name=Detroit to Tokyo - Cloud VXC, term=24, autoRenewTerm=true, rateLimit=10000, shutdown=false, aEndVlan=1075, aEndConfig={}, bEndConfig={bandwidth=10000, connectType=ALIBABA, resource_name=b_csp_connection, resource_type=csp_connection, account_id=5234561292937849, bandwidths=[50, 100, 200, 300, 400, 500, 1000, 2000, 5000, 8000, 10000], csp_name=Alibaba}]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995198500,
      "description": "Servicio [247300] actualizado con campos [nombre -> 5GN Melbourne Data Centre (MDC) @ Melbourne - MCR2, renovaciónAutomática -> verdadero, centroDeCostos -> 45i67, límiteDeTasa -> 10000, cierreBgpPredeterminado -> falso]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995171754,
      "description": "Servicio [247300] actualizado con campos [nombre -> Centro de Datos 5GN Melbourne (MDC) @ Melbourne - MCR2, término -> 24, renovaciónAutomáticaTérmino -> verdadero, centroCostos -> 230, bgpApagadoPredeterminado -> falso]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    }
  ],
  "message": "Tus actividades",
  "terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy"
}
```

**SDK Code**

```python User Activity - Service Updated Activity
import requests

url = "https://api.megaport.com/v3/activity"

response = requests.get(url)

print(response.json())
```

```javascript User Activity - Service Updated Activity
const url = 'https://api.megaport.com/v3/activity';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go User Activity - Service Updated Activity
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.megaport.com/v3/activity"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby User Activity - Service Updated Activity
require 'uri'
require 'net/http'

url = URI("https://api.megaport.com/v3/activity")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
```

```java User Activity - Service Updated Activity
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.megaport.com/v3/activity")
  .asString();
```

```php User Activity - Service Updated Activity
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.megaport.com/v3/activity');

echo $response->getBody();
```

```csharp User Activity - Service Updated Activity
using RestSharp;

var client = new RestClient("https://api.megaport.com/v3/activity");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
```

```swift User Activity - Service Updated Activity
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "https://api.megaport.com/v3/activity")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```

### User Activity - Various Activities

**Response**

```json
{
  "data": [
    {
      "createDate": 1750995401053,
      "description": "Servicio [247301] actualizado con campos [nombre=De Detroit a Tokio - Cloud VXC, renovaciónAutomática=true, límiteVelocidad=10000, apagado=false, vlanExtremo A=1075]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995378148,
      "description": "Servicio [247301] actualizado con campos [name=Detroit a Tokio - Cloud VXC, autoRenewTerm=true, rateLimit=10000, shutdown=false, aEndVlan=1075]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995370666,
      "description": "Servicio [247301] actualizado con campos [name=Detroit to Tokyo - Cloud VXC, term=24, autoRenewTerm=true, rateLimit=10000, shutdown=false, aEndVlan=1075, aEndConfig={}, bEndConfig={bandwidth=10000, connectType=ALIBABA, resource_name=b_csp_connection, resource_type=csp_connection, account_id=5234561292937849, bandwidths=[50, 100, 200, 300, 400, 500, 1000, 2000, 5000, 8000, 10000], csp_name=Alibaba}]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995370653,
      "description": "El producto [d7f2b424-9c55-449b-aebd-4128913fe84c] cambió a un plazo de 24 meses.",
      "loginName": "Bryan Brown",
      "name": "Port Term Change Successful",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995299497,
      "description": "Lista de filtro de paquetes creada exitosamente con detalles: ['descripción': 'To HO', 'entradas/0.acción': 'denegar', 'entradas/0.descripción': '', 'entradas/0.direcciónDestino': '10.1.1.0/24', 'entradas/0.direcciónOrigen': '10.1.1.0/24']",
      "loginName": "Bryan Brown",
      "name": "Packet Filter List Created",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995198500,
      "description": "Servicio [247300] actualizado con campos [nombre -> 5GN Melbourne Data Centre (MDC) @ Melbourne - MCR2, renovaciónAutomática -> verdadero, centroDeCostos -> 45i67, límiteDeTasa -> 10000, cierreBgpPredeterminado -> falso]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995195042,
      "description": "Se añadieron o eliminaron etiquetas correctamente.",
      "loginName": "Bryan Brown",
      "name": "Tags Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995171754,
      "description": "Servicio [247300] actualizado con campos [nombre -> 5GN Melbourne Data Centre (MDC) @ Melbourne - MCR2, plazo -> 24, renovaciónAutomáticaPlazo -> verdadero, centroCostos -> 230, bgpApagadoPredeterminado -> falso]",
      "loginName": "Bryan Brown",
      "name": "Service Updated",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995171644,
      "description": "El producto [827f1878-cfd2-48ad-80fd-0b42e4c59b78] se cambió a un plazo de 24 meses.",
      "loginName": "Bryan Brown",
      "name": "Port Term Change Successful",
      "personId": 50402,
      "userType": "USER"
    },
    {
      "createDate": 1750995143623,
      "description": "Nuevo Pedido a través de API [MegaportServiceDto{productType=MVE, createDate=Fri Jun 27 13:31:43 AEST 2025, productUid=39fcda6b-7274-46dd-bac6-dbb680ca070b, portSpeed=null, lagPortCount=null, terminateDate=null, requestDate=null, market='null', marketplaceVisibility=false, vxcpermitted=true, vxcAutoApproval=false, isVirtual=true, associatedVxcs=[VxcDto{aEnd=EndServiceDto{productUid='39fcda6b-7274-46dd-bac6-dbb680ca070b', nServiceId='null', productName='null', vlan=0, innerVlan=-1, vxcPermitted=true, locationId=4, metroId=null, locationUid='null', vnic=0, config=[]}, bEnd=EndServiceDto{productUid='0fbbdcfc-1642-4a43-b549-6900f71e7006', nServiceId='null', productName='null', vlan=0, innerVlan=null, vxcPermitted=true, locationId=4, metroId=null, locationUid='null', vnic=null, config=[complete=false, connectType=TRANSIT, fixedBandwidths=null]}, partnerConfigs=[], shutdown='false'AbstractServiceDto{productUid='4266b870-5307-11f0-94c3-91c7e4a86144', locationId=null, metroId=null, term=12, autoRenewTerm=true, locationUid='null', productName='NextDC M1 @ Melbourne - VMware MVE to Megaport Internet', productType='VXC', provisioningStatus='DESIGN', nServiceId=null, rateLimit=10000, promoCode='null', dealUid='null', costCentre='null', deployDate=null, secondaryName=null, attributeTags={}, resourceTags=[], serviceLicense=null, addOns=null}}], associatedIxs=[], buyoutPort=false, crossConnectRequested=false, config=ConfigDto{mcrAsn=null, lag=null, lag_service_id=null, mcrVersion=null, bgpShutdownDefault=false, diverseFrom=null, diversityZone='red', customProperties={filename=}}, serviceLicence=null, addOns=null}]",
      "loginName": "Bryan Brown",
      "name": "New API Order",
      "personId": 50402,
      "userType": "USER"
    }
  ],
  "message": "Tus actividades",
  "terms": "This data is subject to the Acceptable Use Policy https://www.megaport.com/legal/acceptable-use-policy"
}
```

**SDK Code**

```python User Activity - Various Activities
import requests

url = "https://api.megaport.com/v3/activity"

response = requests.get(url)

print(response.json())
```

```javascript User Activity - Various Activities
const url = 'https://api.megaport.com/v3/activity';
const options = {method: 'GET'};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go User Activity - Various Activities
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.megaport.com/v3/activity"

	req, _ := http.NewRequest("GET", url, nil)

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby User Activity - Various Activities
require 'uri'
require 'net/http'

url = URI("https://api.megaport.com/v3/activity")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
```

```java User Activity - Various Activities
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.megaport.com/v3/activity")
  .asString();
```

```php User Activity - Various Activities
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.megaport.com/v3/activity');

echo $response->getBody();
```

```csharp User Activity - Various Activities
using RestSharp;

var client = new RestClient("https://api.megaport.com/v3/activity");
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
```

```swift User Activity - Various Activities
import Foundation

let request = NSMutableURLRequest(url: NSURL(string: "https://api.megaport.com/v3/activity")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```