API ReferenceView as MarkdownOpenAPI

Media

View as Markdown

Images, videos and files uploaded to the site, stored in cloud storage and referenced by ID from pages, products and everything else.

Endpoints that need a token: the site owner creates it in their admin (Developers > API reference). AI assistants: how to ask the user for one.

72 endpoints in 6 parts: Media, File Route, Qr Code, Video, Video Interaction, AI builder.

Endpoints
POST/add-media-qualityGET/check-video/:idPOST/create-storage-folderGET/download-media/:idGET/get-media-cdnPOST/get-media-upload-signed-urlPOST/get-storage-upload-signed-urlPOST/get-vimeo-formPOST/import-mediasPOST/import-medias-from-siteGET/logoGET/media-about-section-import/:idGET/media-instagramPOST/media-sequence-generateGET/media-sequence-generate/costGET/media-sequence/:idPOST/media-sequence/:idPOST/media-sequence/:id/client-failPOST/media-sequence/:id/client-finishPOST/media-sequence/:id/client-progressPOST/media-sequence/:id/client-startGET/media-tracker/:idPOST/mediasGET/medias-avatar/:idGET/medias-countGET/medias-form/:form_id&:img_indexGET/medias-large/:idGET/medias-marker/:idGET/medias-medium/:idGET/medias-object/:idGET/medias-og/:idGET/medias-responsive/:idGET/medias-storageGET/medias-thumbnail/:idGET/medias-xlarge/:idGET/medias/:idPATCH/medias/:idDELETE/medias/:idGET/pwa-logoGET/pwa-media/:idGET/qr-code-medias/:idPATCH/remove-media-qualityPATCH/storage-fileGET/storage-filesGET/file-routesPOST/file-routesPATCH/file-routes/:idDELETE/file-routes/:idGET/qr-codePOST/qr-codeGET/qr-code/:idPATCH/qr-code/:idGET/single-video/:idGET/videosPOST/videosDELETE/videos-multiple/:delete_idsPATCH/videos-multiple/:patch_idsGET/videos/:idPATCH/videos/:idDELETE/videos/:idGET/videos/playlistsPOST/video-interactionPOST/create-new-imagePOST/create-new-videoPOST/generate-imagePOST/generate-image-to-videoPOST/generate-text-to-videoPOST/generate-video-to-videoPOST/modify-ai-imagePOST/modify-ai-user-imagePOST/modify-user-imagePOST/update-image

Add an add media quality

Add an add media quality.

User token

Needs the token of a signed-in user.

Parameters
media_idstring

The add media quality's media id.

transcodestring

The add media quality's transcode.

typestring

The add media quality's type.

Status codes

200 401 404 500

POST/add-media-quality
curl -X POST 'http://allsport.bg/add-media-quality?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "media_id": "...", "transcode": "...", "type": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Check a video

Check a video.

User token

Needs the token of a signed-in user.

Path parameters
idstringRequired

The ID of the video.

Status codes

200 401 500

GET/check-video/:id
curl -X GET 'http://allsport.bg/check-video/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Create a storage folder with AI

Create a storage folder from a prompt, written by the AI builder.

User token

Needs the token of a signed-in user.

Parameters
namestring

The storage folder's name.

Status codes

200 401 500

POST/create-storage-folder
curl -X POST 'http://allsport.bg/create-storage-folder?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "..." }'

Retrieve a download media

Returns one download media, found by its ID.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the download media.

Returns

Returns the Media object.

Status codes

200 404 500

GET/download-media/:id
curl -X GET 'http://allsport.bg/download-media/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve the media cdn

Returns the media cdn.

User token

Needs the token of a signed-in user.

Query parameters
without_pathstring

Only media cdns with this without path.

Status codes

200 401 500

GET/get-media-cdn
curl -X GET 'http://allsport.bg/get-media-cdn?ionic=true&without_path=...' \
  -H 'Authorization: Bearer <TOKEN>'

Upload a media signed url

Upload a media signed url.

User token

Needs the token of a signed-in user.

Parameters
namestring

The media signed url's name.

typestring

The media signed url's type.

durationstring

The media signed url's duration.

saveOwnerstring

The media signed url's save owner.

Status codes

200 401 500

POST/get-media-upload-signed-url
curl -X POST 'http://allsport.bg/get-media-upload-signed-url?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "...", "type": "...", "duration": "...", "saveOwner": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Upload a storage signed url

Upload a storage signed url.

User token

Needs the token of a signed-in user.

Parameters
namestring

The storage signed url's name.

typestring

The storage signed url's type.

Status codes

200 401 500

POST/get-storage-upload-signed-url
curl -X POST 'http://allsport.bg/get-storage-upload-signed-url?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "name": "...", "type": "..." }'

Create a vimeo form

Creates a vimeo form from the fields sent.

User token

Needs the token of a signed-in user.

Status codes

200 401 500

POST/get-vimeo-form
curl -X POST 'http://allsport.bg/get-vimeo-form?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Import medias

Import medias.

User token

Needs the token of a signed-in user.

Returns

Returns the Media object.

Status codes

201 400 401 500

POST/import-medias
curl -X POST 'http://allsport.bg/import-medias?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Import medias from site

Import medias from site.

User token

Needs the token of a signed-in user.

Parameters
mediastring

The medias from site's media.

_idstring

The ID of the medias from site.

urlstring

The medias from site's URL slug, as in its address on the site.

Status codes

201 400 401 500

POST/import-medias-from-site
curl -X POST 'http://allsport.bg/import-medias-from-site?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "media": "...", "_id": "...", "url": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Import media sections

Import media sections.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the media section.

Status codes

200 404 500

GET/media-about-section-import/:id
curl -X GET 'http://allsport.bg/media-about-section-import/{id}?ionic=true'
Response
{
  "title": "Example",
  "url": "example-item",
  "media": "example",
  "metadata": "example",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Retrieve the media instagram

Returns the media instagram.

Public

Public - no token needed.

Query parameters
urlstring

The media instagram's URL slug, as in its address on the site.

Status codes

200 500

GET/media-instagram
curl -X GET 'http://allsport.bg/media-instagram?ionic=true&url=...'

Create a media sequence generate

Make a scroll animation's video with AI, from an idea and up to 3 of the user's pictures. The idea is rewritten into a scroll-friendly, safe video prompt first (utils/ai-builder/scroll-sequence-ai). Answers at once with an AsyncJob to poll (GET /async-jobs/:id); when it completes, its jobContext holds { media, summary, prompt } - the video, already cut into frames - or { error, refused }.

Admin token

Needs a site admin token.

Parameters
ideastring

The media sequence generate's idea.

mediaIdsstring

The media sequence generate's media ids.

qualitystring

The media sequence generate's quality.

Status codes

200 401 403 500

POST/media-sequence-generate
curl -X POST 'http://allsport.bg/media-sequence-generate?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "idea": "...", "mediaIds": "...", "quality": "..." }'

Retrieve the media sequence generate

What an AI scroll-animation video costs, in credits, by quality - and the user's. balance (null when the wallet cannot be read).

Admin token

Needs a site admin token.

Status codes

200 401

GET/media-sequence-generate/cost
curl -X GET 'http://allsport.bg/media-sequence-generate/cost?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'

Retrieve a media sequence

The frames of a scroll animation - status, count, size and CDN. URLs. Public: the live site's player reads it.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the media sequence.

Status codes

200 400 404 500

GET/media-sequence/:id
curl -X GET 'http://allsport.bg/media-sequence/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Create a media sequence

Cut a stored video into the still frames a scroll animation plays. Starts the build and answers 202 { status: 'processing' } at once; follow it with while a build runs, it answers the same (no second build) unless ?force.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the media sequence.

Query parameters
forcestring

Only media sequences with this force.

Parameters
trim_startstring

The media sequence's trim start.

Status codes

202 400 401 404 500

POST/media-sequence/:id
curl -X POST 'http://allsport.bg/media-sequence/{id}?ionic=true&force=...' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "trim_start": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Create a media sequence

The browser could not finish (and says why) - so the build is not left "processing".

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the media sequence.

Parameters
errorstring

The media sequence's error.

Status codes

200 400 401 404 500

POST/media-sequence/:id/client-fail
curl -X POST 'http://allsport.bg/media-sequence/{id}/client-fail?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "error": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Create a media sequence

The frames are up: check them and mark the animation ready.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the media sequence.

Status codes

200 400 401 404 500

POST/media-sequence/:id/client-finish
curl -X POST 'http://allsport.bg/media-sequence/{id}/client-finish?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Create a media sequence

The admin's heartbeat while it builds: frames done so far.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the media sequence.

Status codes

200 400 401 404 500

POST/media-sequence/:id/client-progress
curl -X POST 'http://allsport.bg/media-sequence/{id}/client-progress?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Create a media sequence

Signed upload links for every frame the admin is about to make.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the media sequence.

Parameters
forcestring

The media sequence's force.

Status codes

200 400 401 404 409 500

POST/media-sequence/:id/client-start
curl -X POST 'http://allsport.bg/media-sequence/{id}/client-start?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "force": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a media tracker

Returns one media tracker, found by its ID.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the media tracker.

Status codes

200 404 500

GET/media-tracker/:id
curl -X GET 'http://allsport.bg/media-tracker/{id}?ionic=true'
Response
{
  "score": "example",
  "user_id": "6543210fedcba98765432100",
  "media": "example",
  "additional_fields": {},
  "goal": {},
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Create a media

Create new media.

User token

Needs the token of a signed-in user.

Query parameters
skip_owner_idstring

Only medias with this skip owner id.

Parameters
bodystring

The media's body.

altstring

The media's alt.

youtube_urlstring

The media's youtube url.

vimeo_urlstring

The media's vimeo url.

picture_gcs_urlstring

The media's picture gcs url.

Returns

Returns the Media object.

Status codes

201 400 401 500

POST/medias
curl -X POST 'http://allsport.bg/medias?ionic=true&skip_owner_id=...' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "body": "...", "alt": "...", "youtube_url": "...", "vimeo_url": "...", "picture_gcs_url": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a medias avatar

Returns one medias avatar, found by its ID.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias avatar.

Status codes

200 404 500

GET/medias-avatar/:id
curl -X GET 'http://allsport.bg/medias-avatar/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Count medias

Count medias.

User token

Needs the token of a signed-in user.

Returns

Returns a list of Media objects.

Status codes

200 401 500

GET/medias-count
curl -X GET 'http://allsport.bg/medias-count?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
[
  {
    "file": "example",
    "file_path": "example",
    "alt": "example",
    "filename": "Example",
    "filetype": "example",
    "vimeo_uri": "example",
    "vimeo_picture": "example",
    "duration": 1,
    "vimeo_url": "example-item",
    "youtube_url": "example-item",
    "youtube_picture": "example",
    "thumbnail": "example",
    "gcs_url": "example-item",
    "gcs_480_30_url": "example-item",
    "gcs_720_30_url": "example-item",
    "gcs_1080_30_url": "example-item",
    "picture_gcs_url": "example-item",
    "transcode_status": "not_started",
    "owner_id": "6543210fedcba98765432100",
    "source_url": "example-item",
    "origin": "example",
    "width": 1,
    "height": 1,
    "_id": "6543210fedcba98765432100",
    "sequence": {
      "status": "example",
      "started_at": "example",
      "updated_at": "example",
      "step": "example",
      "done": 0,
      "total": 0,
      "ext": "example",
      "trim_start": 0,
      "trim_end": 0,
      "build_id": "example",
      "previous_base": "example",
      "frame_count": 0
    }
  }
]

Retrieve a medias form

Returns one medias form, found by its ID.

Public

Public - no token needed.

Path parameters
form_idstringRequired

The medias form's form id.

img_indexstringRequired

The medias form's img index.

Returns

Returns the Form object.

Status codes

200 404 500

GET/medias-form/:form_id&:img_index
curl -X GET 'http://allsport.bg/medias-form/{form_id}&{img_index}?ionic=true'
Response
{
  "name": "Example",
  "email": "jane@example.com",
  "subject": "example",
  "body": "Text shown on the site.",
  "medias": [],
  "additional": [
    {
      "title": "Example",
      "option": "example",
      "_id": "6543210fedcba98765432100"
    }
  ],
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Retrieve a medias large

Get a 1200px width version of the image.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias large.

Status codes

200 404 500

GET/medias-large/:id
curl -X GET 'http://allsport.bg/medias-large/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a medias marker

Returns one medias marker, found by its ID.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias marker.

Query parameters
sizestring

Only medias markers with this size.

Status codes

200 404 500

GET/medias-marker/:id
curl -X GET 'http://allsport.bg/medias-marker/{id}?ionic=true&size=...'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a medias medium

Get a 850px width version of the image.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias medium.

Status codes

200 404 500

GET/medias-medium/:id
curl -X GET 'http://allsport.bg/medias-medium/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a medias object

Get a Media object.

User token

Needs the token of a signed-in user.

Path parameters
idstringRequired

The ID of the medias object.

Status codes

200 401 404 500

GET/medias-object/:id
curl -X GET 'http://allsport.bg/medias-object/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a medias og

Get a 1200x630px version of the logo.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias og.

Status codes

200 404 500

GET/medias-og/:id
curl -X GET 'http://allsport.bg/medias-og/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a medias responsive

Get a 1920px width version of the image.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias responsive.

Query parameters
sizestring

Only medias responsives with this size.

isFluidstring

Only medias responsives with this is fluid.

Status codes

200 404 500

GET/medias-responsive/:id
curl -X GET 'http://allsport.bg/medias-responsive/{id}?ionic=true&size=...&isFluid=...'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve the medias storage

Returns the medias storage.

User token

Needs the token of a signed-in user.

Status codes

200 401 500

GET/medias-storage
curl -X GET 'http://allsport.bg/medias-storage?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'

Retrieve a medias thumbnail

Returns one medias thumbnail, found by its ID.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias thumbnail.

Status codes

200 404 500

GET/medias-thumbnail/:id
curl -X GET 'http://allsport.bg/medias-thumbnail/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a medias xlarge

Get a 1920px width version of the image.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the medias xlarge.

Status codes

200 404 500

GET/medias-xlarge/:id
curl -X GET 'http://allsport.bg/medias-xlarge/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a media

Get a 500px width version of the image.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the media.

Returns

Returns the Media object.

Status codes

200 404 500

GET/medias/:id
curl -X GET 'http://allsport.bg/medias/{id}?ionic=true'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Update a media

Update Media by id.

User token

Needs the token of a signed-in user.

Path parameters
idstringRequired

The ID of the media.

Parameters
altstring

The media's alt.

filenamestring

The media's filename.

thumbnailstring

The media's thumbnail.

Returns

Returns the Media object.

Status codes

200 401 404 500

PATCH/medias/:id
curl -X PATCH 'http://allsport.bg/medias/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "alt": "...", "filename": "...", "thumbnail": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Delete a media

Delete Media record by id.

User token

Needs the token of a signed-in user.

Path parameters
idstringRequired

The ID of the media.

Returns

Returns an empty answer on success.

Status codes

200 401 404 500

DELETE/medias/:id
curl -X DELETE 'http://allsport.bg/medias/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'

Retrieve an app media

Returns one app media, found by its ID.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the app media.

Query parameters
size_xstring

Only app medias with this size x.

size_ystring

Only app medias with this size y.

Returns

Returns the Media object.

Status codes

200 404 500

GET/pwa-media/:id
curl -X GET 'http://allsport.bg/pwa-media/{id}?ionic=true&size_x=...&size_y=...'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Retrieve a QR code code media

Returns one QR code code media, found by its ID.

Public

Public - no token needed.

Path parameters
idstringRequired

The ID of the QR code code media.

Status codes

200 404 500

GET/qr-code-medias/:id
curl -X GET 'http://allsport.bg/qr-code-medias/{id}?ionic=true'
Response
{
  "event": "6543210fedcba98765432100",
  "date": 1,
  "section": 1,
  "subsection": 1,
  "row": 1,
  "seat": 1,
  "row_index_formated": 1,
  "seat_index_formated": 1,
  "lead_id": "6543210fedcba98765432100",
  "socket_id": "example",
  "status": "frozen",
  "expiration_time": "2026-11-04T12:00:00.000Z",
  "qr_code": "6543210fedcba98765432100",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z",
  "tier": {
    "name": "Example",
    "price": 0
  }
}

Remove a remove media quality

Remove a remove media quality.

User token

Needs the token of a signed-in user.

Parameters
media_idstring

The remove media quality's media id.

transcodestring

The remove media quality's transcode.

Status codes

200 401 404 500

PATCH/remove-media-quality
curl -X PATCH 'http://allsport.bg/remove-media-quality?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "media_id": "...", "transcode": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}

Update the storage file

Changes the fields sent; the others stay as they are.

User token

Needs the token of a signed-in user.

Parameters
filestring

The storage file's file.

Status codes

200 401 500

PATCH/storage-file
curl -X PATCH 'http://allsport.bg/storage-file?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "file": "..." }'

List all storage files

Returns the site's storage files, newest first unless a sort is given.

Admin token

Needs a site admin token.

Query parameters
folder_pathstring

Only storage files with this folder path.

Status codes

200 401 500

GET/storage-files
curl -X GET 'http://allsport.bg/storage-files?ionic=true&folder_path=...' \
  -H 'Authorization: Bearer <TOKEN>'

List all file routes

Returns the site's file routes, newest first unless a sort is given.

Admin token

Needs a site admin token.

Returns

Returns a list of FileRoute objects.

Status codes

200 401 500

GET/file-routes
curl -X GET 'http://allsport.bg/file-routes?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
[
  {
    "url": "example-item",
    "content_type": "Text shown on the site.",
    "_id": "6543210fedcba98765432100",
    "updatedAt": "2026-11-04T12:00:00.000Z",
    "createdAt": "2026-11-04T12:00:00.000Z"
  }
]

Create a file route

Create new file route.

Admin token

Needs a site admin token.

Parameters
urlstring

The file route's URL slug, as in its address on the site.

content_typestring

The file route's content type.

Returns

Returns the FileRoute object.

Status codes

201 400 401 500

POST/file-routes
curl -X POST 'http://allsport.bg/file-routes?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "url": "...", "content_type": "..." }'
Response
{
  "url": "example-item",
  "content_type": "Text shown on the site.",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Update a file route

Update FileRoute by id.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the file route.

Parameters
urlstring

The file route's URL slug, as in its address on the site.

content_typestring

The file route's content type.

Returns

Returns the FileRoute object.

Status codes

200 400 401 404 500

PATCH/file-routes/:id
curl -X PATCH 'http://allsport.bg/file-routes/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "url": "...", "content_type": "..." }'
Response
{
  "url": "example-item",
  "content_type": "Text shown on the site.",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Delete a file route

Delete FileRoute record by id.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the file route.

Returns

Returns an empty answer on success.

Status codes

200 401 404 500

DELETE/file-routes/:id
curl -X DELETE 'http://allsport.bg/file-routes/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'

Retrieve the QR code code

Returns the QR code code.

Admin token

Needs a site admin token.

Status codes

200 401 500

GET/qr-code
curl -X GET 'http://allsport.bg/qr-code?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'

Create a QR code code

Create new qr-code.

Admin token

Needs a site admin token.

Status codes

201 400 401 500

POST/qr-code
curl -X POST 'http://allsport.bg/qr-code?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "ticket": "6543210fedcba98765432100",
  "status": "used",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Retrieve a QR code code

Returns one QR code code, found by its ID.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the QR code code.

Status codes

200 401 404 500

GET/qr-code/:id
curl -X GET 'http://allsport.bg/qr-code/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "ticket": "6543210fedcba98765432100",
  "status": "used",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Update a QR code code

Update Alert by id.

Admin token

Needs a site admin token.

Path parameters
idstringRequired

The ID of the QR code code.

Status codes

200 400 401 404 500

PATCH/qr-code/:id
curl -X PATCH 'http://allsport.bg/qr-code/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "ticket": "6543210fedcba98765432100",
  "status": "used",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Retrieve a single video

Returns one single video, found by its ID.

Optional userPage access

Works without a token; with a user token the answer is personal.

Path parameters
idstringRequired

The ID of the single video.

Returns

Returns the Video object.

Status codes

200 401 402 404 500

GET/single-video/:id
curl -X GET 'http://allsport.bg/single-video/{id}?ionic=true'
Response
{
  "name": "Example",
  "link": "example-item",
  "collection_id": "6543210fedcba98765432100",
  "media_id": "6543210fedcba98765432100",
  "selected": false,
  "custom_1": "example",
  "custom_2": "example",
  "custom_3": "example",
  "suitability_price_plans": [
    "6543210fedcba98765432101"
  ],
  "isSuitable": false,
  "views": [
    "6543210fedcba98765432101"
  ],
  "total_views": 0,
  "times_showed": 0,
  "owner_id": "6543210fedcba98765432100",
  "requiresLogin": false,
  "requiresSubscription": false,
  "price_plan_ids": [
    "example"
  ],
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

List all videos

Returns the site's videos, newest first unless a sort is given.

User with accessOptional user

Needs a signed-in user whose plan grants access.

Query parameters
publishedstring

Only videos with this published.

sortBystring

The order of the results.

collectionstring

Only results in this collection.

Returns

Returns a list of Video objects.

Status codes

200 401 402 404 500

GET/videos
curl -X GET 'http://allsport.bg/videos?ionic=true&published=...&sortBy=...&collection=...' \
  -H 'Authorization: Bearer <TOKEN>'
Response
[
  {
    "name": "Example",
    "link": "example-item",
    "collection_id": "6543210fedcba98765432100",
    "media_id": "6543210fedcba98765432100",
    "selected": false,
    "custom_1": "example",
    "custom_2": "example",
    "custom_3": "example",
    "suitability_price_plans": [
      "6543210fedcba98765432101"
    ],
    "isSuitable": false,
    "views": [
      "6543210fedcba98765432101"
    ],
    "total_views": 0,
    "times_showed": 0,
    "owner_id": "6543210fedcba98765432100",
    "requiresLogin": false,
    "requiresSubscription": false,
    "price_plan_ids": [
      "example"
    ],
    "_id": "6543210fedcba98765432100",
    "updatedAt": "2026-11-04T12:00:00.000Z",
    "createdAt": "2026-11-04T12:00:00.000Z"
  }
]

Create a video

Creates a video from the fields sent.

User token

Needs the token of a signed-in user.

Returns

Returns the Video object.

Status codes

201 400 401 500

POST/videos
curl -X POST 'http://allsport.bg/videos?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "name": "Example",
  "link": "example-item",
  "collection_id": "6543210fedcba98765432100",
  "media_id": "6543210fedcba98765432100",
  "selected": false,
  "custom_1": "example",
  "custom_2": "example",
  "custom_3": "example",
  "suitability_price_plans": [
    "6543210fedcba98765432101"
  ],
  "isSuitable": false,
  "views": [
    "6543210fedcba98765432101"
  ],
  "total_views": 0,
  "times_showed": 0,
  "owner_id": "6543210fedcba98765432100",
  "requiresLogin": false,
  "requiresSubscription": false,
  "price_plan_ids": [
    "example"
  ],
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Delete multiple videos

Deletes the video. This cannot be undone.

User token

Needs the token of a signed-in user.

Path parameters
delete_idsstringRequired

The video's delete ids.

Returns

Returns an empty answer on success.

Status codes

200 401 500

DELETE/videos-multiple/:delete_ids
curl -X DELETE 'http://allsport.bg/videos-multiple/{delete_ids}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'

Update multiple videos

Changes the fields sent; the others stay as they are.

User token

Needs the token of a signed-in user.

Path parameters
patch_idsstringRequired

The video's patch ids.

Parameters
collection_idobjectid

The collection id - the ID of a collection.

updatesstring

The video's updates.

Returns

Returns the Video object.

Status codes

200 400 401 500

PATCH/videos-multiple/:patch_ids
curl -X PATCH 'http://allsport.bg/videos-multiple/{patch_ids}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "collection_id": "...", "updates": "..." }'
Response
{
  "name": "Example",
  "link": "example-item",
  "collection_id": "6543210fedcba98765432100",
  "media_id": "6543210fedcba98765432100",
  "selected": false,
  "custom_1": "example",
  "custom_2": "example",
  "custom_3": "example",
  "suitability_price_plans": [
    "6543210fedcba98765432101"
  ],
  "isSuitable": false,
  "views": [
    "6543210fedcba98765432101"
  ],
  "total_views": 0,
  "times_showed": 0,
  "owner_id": "6543210fedcba98765432100",
  "requiresLogin": false,
  "requiresSubscription": false,
  "price_plan_ids": [
    "example"
  ],
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Retrieve a video

Returns one video, found by its ID.

Optional user

Works without a token; with a user token the answer is personal.

Path parameters
idstringRequired

The ID of the video.

Returns

Returns the Video object.

Status codes

200 404 500

GET/videos/:id
curl -X GET 'http://allsport.bg/videos/{id}?ionic=true'
Response
{
  "name": "Example",
  "link": "example-item",
  "collection_id": "6543210fedcba98765432100",
  "media_id": "6543210fedcba98765432100",
  "selected": false,
  "custom_1": "example",
  "custom_2": "example",
  "custom_3": "example",
  "suitability_price_plans": [
    "6543210fedcba98765432101"
  ],
  "isSuitable": false,
  "views": [
    "6543210fedcba98765432101"
  ],
  "total_views": 0,
  "times_showed": 0,
  "owner_id": "6543210fedcba98765432100",
  "requiresLogin": false,
  "requiresSubscription": false,
  "price_plan_ids": [
    "example"
  ],
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Update a video

Changes the fields sent; the others stay as they are.

User token

Needs the token of a signed-in user.

Path parameters
idstringRequired

The ID of the video.

Returns

Returns the Video object.

Status codes

200 400 401 404 500

PATCH/videos/:id
curl -X PATCH 'http://allsport.bg/videos/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'
Response
{
  "name": "Example",
  "link": "example-item",
  "collection_id": "6543210fedcba98765432100",
  "media_id": "6543210fedcba98765432100",
  "selected": false,
  "custom_1": "example",
  "custom_2": "example",
  "custom_3": "example",
  "suitability_price_plans": [
    "6543210fedcba98765432101"
  ],
  "isSuitable": false,
  "views": [
    "6543210fedcba98765432101"
  ],
  "total_views": 0,
  "times_showed": 0,
  "owner_id": "6543210fedcba98765432100",
  "requiresLogin": false,
  "requiresSubscription": false,
  "price_plan_ids": [
    "example"
  ],
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Delete a video

Deletes the video. This cannot be undone.

User token

Needs the token of a signed-in user.

Path parameters
idstringRequired

The ID of the video.

Returns

Returns an empty answer on success.

Status codes

200 401 404 500

DELETE/videos/:id
curl -X DELETE 'http://allsport.bg/videos/{id}?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>'

List all videos

Returns the site's videos, newest first unless a sort is given.

Optional user

Works without a token; with a user token the answer is personal.

Status codes

200 404 500

GET/videos/playlists
curl -X GET 'http://allsport.bg/videos/playlists?ionic=true'
Response
{
  "name": "Example",
  "parent_collection": "6543210fedcba98765432100",
  "picture": "6543210fedcba98765432100",
  "about_page": "6543210fedcba98765432100",
  "match_to_option": false,
  "is_color": false,
  "color": "#3557c4",
  "position": 1,
  "items": [
    "6543210fedcba98765432101"
  ],
  "thumbnail": "6543210fedcba98765432100",
  "_id": "6543210fedcba98765432100"
}

Create a video interaction

Create new video_interaction.

User token

Needs the token of a signed-in user.

Parameters
video_viewerobjectid

The video viewer - the ID of a user.

Returns

Returns the VideoInteraction object.

Status codes

201 400 401 500

POST/video-interaction
curl -X POST 'http://allsport.bg/video-interaction?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "video_viewer": "..." }'
Response
{
  "start": 1,
  "end": 1,
  "watch_time": 1,
  "video_viewer": "6543210fedcba98765432100",
  "video_id": "6543210fedcba98765432100",
  "video_owner": "6543210fedcba98765432100",
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z"
}

Create an image with AI

Create an image from a prompt, written by the AI builder.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the image, in plain words - any language.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

aiVersionstring

Which version of the AI builder to use; leave it out for the current one.

Status codes

200 401 500

POST/create-new-image
curl -X POST 'http://allsport.bg/create-new-image?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "chatId": "...", "aiVersion": "..." }'
Response
{
  "chat_id": "6543210fedcba98765432100",
  "role": "user",
  "text": "Text shown on the site.",
  "target_url": "example-item",
  "action": "RESPONSE",
  "options": [
    "example"
  ],
  "medias": [
    {
      "media": "6543210fedcba98765432100",
      "gcs_url": "example-item",
      "gemini_uri": "example",
      "gemini_interaction_id": "example",
      "_id": "6543210fedcba98765432100"
    }
  ],
  "products": [
    "6543210fedcba98765432101"
  ],
  "services": [
    "6543210fedcba98765432101"
  ],
  "blogposts": [
    "6543210fedcba98765432101"
  ],
  "programs": [
    "6543210fedcba98765432101"
  ],
  "suggestions": [
    {
      "text": "Text shown on the site.",
      "route": "example",
      "item_id": "6543210fedcba98765432100",
      "medias": [],
      "picture": "6543210fedcba98765432100",
      "_id": "6543210fedcba98765432100"
    }
  ],
  "is_system": false,
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z",
  "data": {
    "object": "example",
    "object_type": "example",
    "edit_summary": "example",
    "edit_diff": "example",
    "undo_record": "example",
    "hero_animation_offer": "example",
    "preview_state": "example",
    "pending_credit_cost": 0,
    "target_restore": "example",
    "media_request": "example",
    "item_request": "example",
    "reference_request": "example"
  }
}

Create a video with AI

Create a video from a prompt, written by the AI builder.

Admin token

Needs a site admin token.

Parameters
durationstring

The video's duration.

promptstring

What the AI should do with the video, in plain words - any language.

mediaIdsstring

The video's media ids.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

aspect_ratiostring

The video's aspect ratio.

aiVersionstring

Which version of the AI builder to use; leave it out for the current one.

Status codes

200 401 500

POST/create-new-video
curl -X POST 'http://allsport.bg/create-new-video?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "duration": "...", "prompt": "...", "mediaIds": "...", "chatId": "...", "aspect_ratio": "..." }'
Response
{
  "chat_id": "6543210fedcba98765432100",
  "role": "user",
  "text": "Text shown on the site.",
  "target_url": "example-item",
  "action": "RESPONSE",
  "options": [
    "example"
  ],
  "medias": [
    {
      "media": "6543210fedcba98765432100",
      "gcs_url": "example-item",
      "gemini_uri": "example",
      "gemini_interaction_id": "example",
      "_id": "6543210fedcba98765432100"
    }
  ],
  "products": [
    "6543210fedcba98765432101"
  ],
  "services": [
    "6543210fedcba98765432101"
  ],
  "blogposts": [
    "6543210fedcba98765432101"
  ],
  "programs": [
    "6543210fedcba98765432101"
  ],
  "suggestions": [
    {
      "text": "Text shown on the site.",
      "route": "example",
      "item_id": "6543210fedcba98765432100",
      "medias": [],
      "picture": "6543210fedcba98765432100",
      "_id": "6543210fedcba98765432100"
    }
  ],
  "is_system": false,
  "_id": "6543210fedcba98765432100",
  "updatedAt": "2026-11-04T12:00:00.000Z",
  "createdAt": "2026-11-04T12:00:00.000Z",
  "data": {
    "object": "example",
    "object_type": "example",
    "edit_summary": "example",
    "edit_diff": "example",
    "undo_record": "example",
    "hero_animation_offer": "example",
    "preview_state": "example",
    "pending_credit_cost": 0,
    "target_restore": "example",
    "media_request": "example",
    "item_request": "example",
    "reference_request": "example"
  }
}

Generate an image with AI

Use it to create a new image using only a text description.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the image, in plain words - any language.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

Status codes

200 401 500

POST/generate-image
curl -X POST 'http://allsport.bg/generate-image?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "chatId": "..." }'

Generate an image to video with AI

Use it to create or generate a specific video right now.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the image to video, in plain words - any language.

aspect_ratiostring

The image to video's aspect ratio.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

Status codes

200 401 500

POST/generate-image-to-video
curl -X POST 'http://allsport.bg/generate-image-to-video?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "aspect_ratio": "...", "chatId": "..." }'

Generate a text to video with AI

Use it to create or generate a specific video right now using a text description.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the text to video, in plain words - any language.

aspect_ratiostring

The text to video's aspect ratio.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

Status codes

200 401 500

POST/generate-text-to-video
curl -X POST 'http://allsport.bg/generate-text-to-video?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "aspect_ratio": "...", "chatId": "..." }'

Generate a video to video with AI

Use it to modify or extend an AI-generated video that was just created.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the video to video, in plain words - any language.

aspect_ratiostring

The video to video's aspect ratio.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

Status codes

200 401 500

POST/generate-video-to-video
curl -X POST 'http://allsport.bg/generate-video-to-video?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "aspect_ratio": "...", "chatId": "..." }'

Modify an AI image with AI

Use it to modify last AI-generated image.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the AI image, in plain words - any language.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

Status codes

200 401 500

POST/modify-ai-image
curl -X POST 'http://allsport.bg/modify-ai-image?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "chatId": "..." }'

Modify an AI user image with AI

Use it to modify last AI-generated image from the chat.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the AI user image, in plain words - any language.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

Status codes

200 401 500

POST/modify-ai-user-image
curl -X POST 'http://allsport.bg/modify-ai-user-image?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "chatId": "..." }'

Modify a user image with AI

Use it to generate new image or modify existing only when the user provided media.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the user image, in plain words - any language.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

Status codes

200 401 500

POST/modify-user-image
curl -X POST 'http://allsport.bg/modify-user-image?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "chatId": "..." }'

Update an image with AI

Update an image from a prompt, written by the AI builder.

Admin token

Needs a site admin token.

Parameters
promptstring

What the AI should do with the image, in plain words - any language.

chatIdstring

The AI chat this request belongs to; its history and language carry over. Leave it out to start a new chat.

mediaIdsstring

The image's media ids.

aiVersionstring

Which version of the AI builder to use; leave it out for the current one.

Status codes

200 401 404 500

POST/update-image
curl -X POST 'http://allsport.bg/update-image?ionic=true' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{ "prompt": "...", "chatId": "...", "mediaIds": "...", "aiVersion": "..." }'
Response
{
  "file": "example",
  "file_path": "example",
  "alt": "example",
  "filename": "Example",
  "filetype": "example",
  "vimeo_uri": "example",
  "vimeo_picture": "example",
  "duration": 1,
  "vimeo_url": "example-item",
  "youtube_url": "example-item",
  "youtube_picture": "example",
  "thumbnail": "example",
  "gcs_url": "example-item",
  "gcs_480_30_url": "example-item",
  "gcs_720_30_url": "example-item",
  "gcs_1080_30_url": "example-item",
  "picture_gcs_url": "example-item",
  "transcode_status": "not_started",
  "owner_id": "6543210fedcba98765432100",
  "source_url": "example-item",
  "origin": "example",
  "width": 1,
  "height": 1,
  "_id": "6543210fedcba98765432100",
  "sequence": {
    "status": "example",
    "started_at": "example",
    "updated_at": "example",
    "step": "example",
    "done": 0,
    "total": 0,
    "ext": "example",
    "trim_start": 0,
    "trim_end": 0,
    "build_id": "example",
    "previous_base": "example",
    "frame_count": 0
  }
}
↑↓ Navigate↵ GoEsc Close