OpenAPI

You can sync GitBook pages with an OpenAPI or Swagger file or a URL to include auto-generated API methods in your documentation.

OpenAPI block

GitBook's OpenAPI block is powered by Scalar, so you can test your APIs directly from your docs.

Create a new user

POST /users

<Description of the endpoint>

Headers

Name
Value

Content-Type

application/json

Authorization

Bearer <token>

Body

Name
Type
Description

name

string

Name of the user

age

number

Age of the user

Response

{
  "id": 1,
  "name": "John",
  "age": 30
}

Login and get JWT token

post
Body
usernamestringRequired
passwordstringRequired
Responses
200

Authenticated

application/json
post
/auth/login

Get all projects

get
Responses
200

List of projects

application/json
get
/projects
200

List of projects

Create a new project

post
Body
titlestringRequired
descriptionstringOptional
imageUrlstringOptional
gitHubUrlstringOptional
liveUrlstringOptional
technologiesstring[]Optional
Responses
post
/projects
201

Project created

Get a project by ID

get
Path parameters
idintegerRequired
Responses
200

Project

application/json
get
/projects/{id}

Update a project

put
Path parameters
idintegerRequired
Body
titlestringOptional
descriptionstringOptional
imageUrlstringOptional
gitHubUrlstringOptional
liveUrlstringOptional
technologiesstring[]Optional
Responses
put
/projects/{id}

No content

Delete a project

delete
Path parameters
idintegerRequired
Responses
delete
/projects/{id}

No content

Get all skills

get
Responses
200

List of skills

application/json
get
/skills
200

List of skills

Create a new skill

post
Body
namestringRequired
categorystringOptional
proficiencyLevelintegerOptional
iconUrlstringOptional
Responses
post
/skills
201

Skill created

Get a skill by ID

get
Path parameters
idintegerRequired
Responses
200

Skill

application/json
get
/skills/{id}

Update a skill

put
Path parameters
idintegerRequired
Body
namestringOptional
categorystringOptional
proficiencyLevelintegerOptional
iconUrlstringOptional
Responses
put
/skills/{id}

No content

Delete a skill

delete
Path parameters
idintegerRequired
Responses
delete
/skills/{id}

No content

Get all skill categories

get
Responses
200

List of categories

application/json
Responsestring[]
get
/skills/categories
200

List of categories

Get skills by category

get
Path parameters
categorystringRequired
Responses
200

List of skills

application/json
get
/skills/category/{category}

Submit a contact message

post
Body
namestringRequired
emailstringRequired
subjectstringOptional
messagestringRequired
Responses
post
/contact
201

Message submitted

Get all contact messages

get
Responses
200

List of contact messages

application/json
get
/contact
200

List of contact messages

Get a contact message by ID

get
Path parameters
idintegerRequired
Responses
200

Contact message

application/json
get
/contact/{id}

Delete a contact message

delete
Path parameters
idintegerRequired
Responses
delete
/contact/{id}

No content

Last updated