Kukuri API Reference

REST API for Goto10 HQ

API Endpoint
https://kukuri.goto10.cz/
Contact: frohikey@goto10.cz
Schemes: https
Version: v1

Authentication

api-key

API Key Authentication

name
apiKey
in
header
type
apiKey

Generic

Get status of API

GET /api/1.0/status

Just a simple method for testing (health probe) purposes

200 OK

Everything's alright

500 Internal Server Error

Internal server error

Cloudinary

Generate thumbnail

POST /api/1.0/cloudinary/image

Generates a thumbnail. Provide binary data or URL parameter in query.

url: string
in query

Public URL of source image

width: integer
in query

Width

height: integer
in query

Height

crop: string
in query

scale, fit, mfit, fill, lfill, limit, pad, lpad, mpad, crop, thumb

format: string
in query

Format of output file (extension with or without leading period)

200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

500 Internal Server Error

Internal server error

Response Content-Types: image/png, image/gif, image/jpeg, application/json

QR

QR

Generate QR Image

POST /api/1.0/qr/image

Generates QR image.

text: string
in formData

Text

pixelsPerModule: integer 20
in formData

Pixels per module in QR image

200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

500 Internal Server Error

Internal server error

Response Content-Types: image/png, application/json

PDF

PDF

Generate PDF document

POST /api/1.0/pdf/document

Generates PDF document.

url: string
in formData

Url of html document

content: string
in formData

Content of document (html)

200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

500 Internal Server Error

Internal server error

Response Content-Types: application/pdf, application/json

Kubernetes

Run job

POST /api/1.0/kubernetes/job/{project}/{registry}/{image}

Run a job in kubernetes cluster.

project: string
in path

Project name (for bundling purposes)

registry: string
in path

Registry container (e.g. whatever.azurecr.io)

image: string
in path

Image name

name: string
in query

Human-readable description of job

Request Content-Types: application/json-patch+json, application/json, text/json, application/*+json
Request Example
{
  "env": [
    {
      "key": "string",
      "value": "string"
    }
  ]
}
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

500 Internal Server Error

Internal server error

Response Content-Types: text/plain, application/json, text/json

Discord

Send simple message

POST /api/1.0/discord/webhook/{id}/{token}/simple-message

Send simple message (string) through Discord webhook

Discord message

id: string
in path

Webhook Id

token: string
in path

Webhook token

Request Content-Types: text/plain
Request Example
"string"
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

500 Internal Server Error

Internal server error

Response Content-Types: application/json

Send complex message

POST /api/1.0/discord/webhook/{id}/{token}/complex-message

Send complex message with embeds through Discord webhook

Discord message

id: string
in path

Webhook Id

token: string
in path

Webhook token

Request Content-Types: application/json-patch+json, application/json, text/json, application/*+json
Request Example
{
  "text": "string",
  "embeds": [
    {
      "title": "string",
      "description": "string",
      "imageUrl": "string",
      "thumbnailUrl": "string",
      "url": "string"
    }
  ]
}
200 OK

Success

401 Unauthorized

Unauthorized

403 Forbidden

Forbidden

500 Internal Server Error

Internal server error

Response Content-Types: application/json

Schema Definitions

KubernetesJobConfig: object

Example
{
  "env": [
    {
      "key": "string",
      "value": "string"
    }
  ]
}

KeyValue: object

key: string
value: string
Example
{
  "key": "string",
  "value": "string"
}

DiscordComplexMessage: object

text: string
embeds: DiscordEmbed
DiscordEmbed
Example
{
  "text": "string",
  "embeds": [
    {
      "title": "string",
      "description": "string",
      "imageUrl": "string",
      "thumbnailUrl": "string",
      "url": "string"
    }
  ]
}

DiscordEmbed: object

title: string
description: string
imageUrl: string
thumbnailUrl: string
url: string
Example
{
  "title": "string",
  "description": "string",
  "imageUrl": "string",
  "thumbnailUrl": "string",
  "url": "string"
}