Skip to content

SWIT Server API

This is the SWIT server API documentation.

API Overview

Endpoints

internal

POST /internal/validate-user

Validate user credentials (Internal API)

Internal API for validating user credentials, used by authentication service

MethodPath
POST/internal/validate-user

Parameters

参数名类型Required/OptionalDescription
credentialsobjectRequiredUser credentials

Responses

Status CodeDescription
200Validation successful
400Bad request
401Invalid credentials
500Internal server error

Examples

:::tabs

== cURL

bash
curl -X POST \
  "http://localhost:8080/internal/validate-user" \
  -d '{"key": "value"}'

== JavaScript

javascript
const response = await fetch('http://localhost:8080/internal/validate-user', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
  },
  body: JSON.stringify({ key: 'value' }),
});
const data = await response.json();
console.log(data);

== Python

python
import requests

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
}

response = requests.post(
    'http://localhost:8080/internal/validate-user',
    json={'key': 'value'},
    headers=headers
)
data = response.json()
print(data)

:::


users

POST /users/create

Create a new user

Create a new user with username, email and password

MethodPath
POST/users/create

Parameters

参数名类型Required/OptionalDescription
userobjectRequiredUser information

Responses

Status CodeDescription
201User created successfully
400Bad request
500Internal server error

Examples

:::tabs

== cURL

bash
curl -X POST \
  "http://localhost:8080/users/create" \
  -d '{"key": "value"}'

== JavaScript

javascript
const response = await fetch('http://localhost:8080/users/create', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
  },
  body: JSON.stringify({ key: 'value' }),
});
const data = await response.json();
console.log(data);

== Python

python
import requests

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
}

response = requests.post(
    'http://localhost:8080/users/create',
    json={'key': 'value'},
    headers=headers
)
data = response.json()
print(data)

:::


GET /users/email/

Get user by email

Get user details by email address

MethodPath
GET/users/email/{email}

Parameters

参数名类型Required/OptionalDescription
emailstringRequiredEmail address

Responses

Status CodeDescription
200User details
404User not found
500Internal server error

Examples

:::tabs

== cURL

bash
curl -X GET \
  "http://localhost:8080/users/email/{email}

== JavaScript

javascript
const response = await fetch('http://localhost:8080/users/email/{email}', {
  headers: {
    'Authorization': 'Bearer <your_token>',
  },
});
const data = await response.json();
console.log(data);

== Python

python
import requests

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
}

response = requests.get(
    'http://localhost:8080/users/email/{email}',
    headers=headers
)
data = response.json()
print(data)

:::


GET /users/username/

Get user by username

Get user details by username

MethodPath
GET/users/username/{username}

Parameters

参数名类型Required/OptionalDescription
usernamestringRequiredUsername

Responses

Status CodeDescription
200User details
404User not found
500Internal server error

Examples

:::tabs

== cURL

bash
curl -X GET \
  "http://localhost:8080/users/username/{username}

== JavaScript

javascript
const response = await fetch('http://localhost:8080/users/username/{username}', {
  headers: {
    'Authorization': 'Bearer <your_token>',
  },
});
const data = await response.json();
console.log(data);

== Python

python
import requests

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
}

response = requests.get(
    'http://localhost:8080/users/username/{username}',
    headers=headers
)
data = response.json()
print(data)

:::


DELETE /users/

Delete a user

Delete a user by ID

MethodPath
DELETE/users/{id}

Parameters

参数名类型Required/OptionalDescription
idstringRequiredUser ID

Responses

Status CodeDescription
200User deleted successfully
400Invalid user ID
500Internal server error

Examples

:::tabs

== cURL

bash
curl -X DELETE \
  "http://localhost:8080/users/{id}

== JavaScript

javascript
const response = await fetch('http://localhost:8080/users/{id}', {
  method: 'DELETE',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
  },
});
const data = await response.json();
console.log(data);

== Python

python
import requests

headers = {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer <your_token>',
}

response = requests.delete(
    'http://localhost:8080/users/{id}',
    headers=headers
)
data = response.json()
print(data)

:::


Released under the MIT License.