memos/docs/api/resource.md
2023-07-15 23:30:20 +08:00

1.5 KiB

Resource APIs

Upload Resource

Upload File

POST /api/v1/resource/blob

Request Form

  • file: Upload file

Response

{
  "id": 123,
  "filename": "example.png"
  // other fields
}

Status Codes

  • 200: OK
  • 400: Invalid request
  • 401: Unauthorized
  • 413: File too large
  • 500: Internal server error

Create Resource

POST /api/v1/resource

Request Body

{
  "filename": "example.png",
  "externalLink": "https://example.com/image.png"
}

Response

Same as Upload File

Status Codes

  • 200: OK
  • 400: Invalid request
  • 401: Unauthorized
  • 500: Internal server error

Get Resource List

GET /api/v1/resource

Parameters

  • limit (optional): Limit number of results
  • offset (optional): Offset of first result

Response

[
  {
    "id": 123,
    "filename": "example.png"
    // other fields
  },
  {
    "id": 456,
    "filename": "doc.pdf"
    // other fields
  }
]

Status Codes

  • 200: OK
  • 401: Unauthorized
  • 500: Internal server error

Update Resource

PATCH /api/v1/resource/:resourceId

Request Body

{
  "filename": "new_name.png"
}

Response

Same as Get Resource List

Status Codes

  • 200: OK
  • 400: Invalid request
  • 401: Unauthorized
  • 404: Not found
  • 500: Internal server error

Delete Resource

DELETE /api/v1/resource/:resourceId

Status Codes

  • 200: Deleted
  • 401: Unauthorized
  • 404: Not found
  • 500: Internal server error