The paste.sr.ht API allows you to browse and create pastes on paste.sr.ht programmatically. This API follows the standard sourcehut API conventions.

Authentication

Authentication is done via the meta.sr.ht OAuth flow. The following OAuth scopes are available for paste.sr.ht:

Resources

Paste resource

{
  "created": "timestamp",
  "sha": "id of this paste (SHA-1 hash)",
  "user": { short-form user resource },
  "visibility": "access level",
  "files": [
    {
      "filename": "filename" or null,
      "blob_id": "id of this blob (SHA-1 hash)"
    }, ...
  ]
}

Blob resource

{
  "created": "timestamp",
  "sha": "id of this blob (SHA-1 hash)",
  "contents": "contents of this blob"
}

Endpoints

GET /api/pastes

List of paste resources.

OAuth scope: pastes:read

POST /api/pastes

Create a new paste resource.

OAuth scope: pastes:write

Request body

{
  "visibility": "access level",
  "files": [
    {
      "filename": "filename" or null, (optional)
      "contents": "contents of this file"
    }
  ]
}

Response

The new paste resource.

GET /api/pastes/:sha

Retrieves a paste resource.

OAuth scope: pastes:read

DELETE /api/pastes/:sha

Deletes a paste resource.

OAuth scope: pastes:write

GET /api/blobs/:sha

Retrieves a blob resource.

OAuth scope: pastes:read

Webhooks

/api/pastes/...

Webhook for paste events. Includes the standard webhook endpoints

paste:create

Issued when a new paste is created.

OAuth scope: pastes:read

paste:delete

Issued when a new paste is created.

OAuth scope: pastes:read

Request body

Affected paste resource.

About this wiki

commit c5b28384b714da2d070c9c462797f17414f87098
Author: Drew DeVault <sir@cmpwn.com>
Date:   2019-11-17T19:22:28+00:00

Update builds.sr.ht/index.md
Clone this wiki
https://git.sr.ht/~sircmpwn/sr.ht-docs (read-only)
git@git.sr.ht:~sircmpwn/sr.ht-docs (read/write)