Request a Port 25 opening for your IP address

Request Port 25 to be opened for a specific IP address associated with your service. This endpoint returns a `serviceId` that you can use to call POST /api/support/tickets.

VPS Services VM

Context

Used in the dashboard

/support

Workflow links

Requires
Produces

Headers

Accept Example
Content-Type Example

Body

required
application/json
ipAddress string required · Example: 192.0.0.1
justification string · Example: Hello team. I'm a dev from China and I don't have a BankID. I need Port 25 to run a per...
serviceId string required · Example: 10712

Responses

200
data object
data.approved boolean required · Example: false
data.request object required
data.request.accountAgeDays integer required · Example: 619
data.request.autoApproved boolean required · Example: false
data.request.bankidVerified boolean required · Example: false
data.request.clientId string required · Example: 30000
data.request.createdAt string required · Example: 2026-02-10T00:00:00.000Z
data.request.decidedByAdminId string · nullable required · Example: system

Nullable: may be null when not applicable.

data.request.decidedByAdminUsername string · nullable required · Example: port25-auto

Nullable: may be null when not applicable.

data.request.decisionReason string · nullable required · Example: Auto-approved via trust tier policy

Nullable: may be null when not applicable.

data.request.id integer required · Example: 13
data.request.ipAddress string required · Example: 192.0.0.1/32
data.request.justification string · nullable required · Example: Hello team. I'm a dev from China and I don't have a BankID. I need Port 25 to run a per...

Nullable: may be null when not applicable.

data.request.serviceId string required · Example: 10712
data.request.serviceName string required · Example: starup
data.request.status string · enum required · Example: pending
approved
pending
data.request.totalSpend string required · Example: 0
data.request.trustTier integer required · Example: 0
data.request.updatedAt string required · Example: 2026-02-10T00:00:00.000Z
data.whitelistEntry object · nullable required

Nullable: may be null when not applicable.

data.whitelistEntry.addedByAdminId string required · Example: system_port25_auto
data.whitelistEntry.addedByAdminUsername string required · Example: port25-auto
data.whitelistEntry.clientId string required · Example: 30000
data.whitelistEntry.createdAt string required · Example: 2026-02-10T00:00:00.000Z
data.whitelistEntry.id integer required · Example: 14
data.whitelistEntry.ipAddress string required · Example: 192.0.0.1/32
data.whitelistEntry.notes string · nullable required · Example: Example note

Nullable: may be null when not applicable.

data.whitelistEntry.serviceId string required · Example: 18298
data.whitelistEntry.serviceName string required · Example: example.com
data.whitelistEntry.updatedAt string required · Example: 2026-02-10T00:00:00.000Z
error string · Example: Too Many Requests

HTTP status title (e.g. 'Bad Request').

message string · Example: Rate limit exceeded. Please try again later.

Human-readable message.

requestId string required · Example: 2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba

Unique request identifier (UUID).

retryAfter string · Example: 2026-02-10T00:00:00.000Z

When to retry (ISO 8601 timestamp, UTC).

success boolean · Example: true

True for successful responses.

timestamp string · Example: 2026-02-10T00:00:00.000Z

ISO 8601 timestamp (UTC).

400

No response body

409
code string required · Example: CONFLICT

Machine-readable error code.

error string required · Example: Conflict

HTTP status title (e.g. 'Bad Request').

message string required · Example: IP address is already whitelisted

Human-readable message.

requestId string required · Example: 2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba

Unique request identifier (UUID).

timestamp string required · Example: 2026-02-10T00:00:00.000Z

ISO 8601 timestamp (UTC).

POST https://cloud.hostup.se/api/port25/requests
For AI assistants
cURL
curl -X POST "https://cloud.hostup.se/api/port25/requests" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "serviceId": "10712",
    "ipAddress": "192.0.0.1"
  }'
Response
{
  "success": true,
  "timestamp": "2026-02-10T00:00:00.000Z",
  "requestId": "2121ae20-bd9d-41e9-aeeb-5dd1dd1a24ba",
  "data": {
    "approved": false,
    "request": {
      "id": 13,
      "clientId": "30000",
      "serviceId": "10712",
      "serviceName": "starup",
      "ipAddress": "192.0.0.1/32",
      "justification": null,
      "status": "pending",
      "decisionReason": null,
      "decidedByAdminId": null,
      "decidedByAdminUsername": null,
      "autoApproved": false,
      "trustTier": 0,
      "bankidVerified": false,
      "totalSpend": "0",
      "accountAgeDays": 619,
      "createdAt": "2026-02-10T00:00:00.000Z",
      "updatedAt": "2026-02-10T00:00:00.000Z"
    },
    "whitelistEntry": null
  }
}
Request Body Example 1
{
  "serviceId": "10712",
  "ipAddress": "192.0.0.1"
}