This document provides a general description of Media Pocket API. Please setup API keys in UI under your profile settings. In case of problems email support@mediapocket.io

Resources

Admin allowed domains

Resource Description
GET /api/v2/admin/allowed_domains Get all allowed domains
POST /api/v2/admin/allowed_domains Add allowed domain
POST /api/v2/admin/allowed_domains/:allowed_domain_id Update allowed domain
DELETE /api/v2/admin/allowed_domains/:allowed_domain_id Remove allowed domain

Admin field groups

Resource Description
POST /api/v2/admin/field_groups Create field group
POST /api/v2/admin/field_groups/:field_group_id Update field group
POST /api/v2/admin/field_groups/:field_group_id/fields Add field to field group
DELETE /api/v2/admin/field_groups/:field_group_id Delete field group
DELETE /api/v2/admin/field_groups/:field_group_id/fields/:field_id Delete field from field group
POST /api/v2/admin/field_groups/:field_group_id/fields/:field_id Update field

Admin publishing channels

Resource Description
POST /api/v2/admin/publishing_channels/aspera Create aspera publishing channel
POST /api/v2/admin/publishing_channels/ftp Create FTP publishing channel
POST /api/v2/admin/publishing_channels/scp Create SCP publishing channel
POST /api/v2/admin/publishing_channels/aws_s3 Create AWS S3 publishing channel
POST /api/v2/admin/publishing_channels/azure_blob Create Azure Blob publishing channel
POST /api/v2/admin/publishing_channels/:publishing_channel_id Update publishing channel
DELETE /api/v2/admin/publishing_channels/:publishing_channel_id Delete publishing channel

Admin user groups

Resource Description
POST /api/v2/admin/user_groups Create new UserGroup
POST /api/v2/admin/user_groups Update UserGroup
DELETE /api/v2/admin/user_groups/:user_group_id Delete UserGroup
POST /api/v2/admin/user_groups/:user_group_id/users Add User to UserGroup
DELETE /api/v2/admin/user_groups/:user_group_id/users Remove User from UserGroup

Admin user roles

Resource Description
GET /api/v2/admin/user_roles Get all UserRoles, included users
POST /api/v2/admin/user_roles Create new UserRole
DELETE /api/v2/admin/user_roles/:user_role_id Delete UserRole
POST /api/v2/admin/user_roles/:user_role_id Update UserRole
POST /api/v2/admin/user_roles/:user_role_id/permissions/:permission_id Update permission for UserRole

Admin users

Resource Description
POST /apiv2/admin/users/invite Invite new user
POST /apiv2/admin/users/:user_id Update user details
DELETE /apiv2/admin/users/:user_id Delete user

Assets

Resource Description
GET /api/v2/assets/:asset_id Get asset
GET /api/v2/assets/:asset_id/file_metadata Get file metadata for assets original file. Includes EXIF/IPTC/XMP metadata and mediainfo.
GET /api/v2/assets/:asset_id/collections Get collections that have the asset
DELETE /api/v2/assets/:asset_id/collections Remove asset from collections
GET /api/v2/assets/:asset_id/media Get asset media and download URLs
POST /api/v2/assets/:asset_id/media Add media to asset
POST /api/v2/assets Create asset
PUT /api/v2/assets/:asset_id Update asset
POST /api/v2/assets/:asset_id/trash_bin Move asset to trash bin from where it will be deleted after 14 days
POST /api/v2/assets/:asset_id/restore Restores asset from trash bin
DELETE /api/v2/assets/:asset_id Permanently delete asset
POST /api/v2/assets/:asset_id/assign Assign asset to project
DELETE /api/v2/assets/:asset_id/unassign Unassign asset from project
DELETE /api/v2/assets/:asset_id/media Remove media from asset

Attachments

Resource Description
GET /api/v2/assets/:asset_id/attachments Get attachments for an asset
POST /api/v2/assets/:asset_id/attachments Create attachment for an asset
GET /api/v2/projects/:project_id/attachments Get attachments for project
POST /api/v2/projects/:project_id/attachments Create attachment for a project

Collections

Resource Description
GET /api/v2/collections Get all collections
GET /api/v2/collections/:collection_id Get a collection
POST /api/v2/:collection_id/assets Insert assets into collection
GET /api/v2/:collection_id/members Get all members of a collection
POST /api/v2/collections/:collection_id/members Add user to collection
DELETE /api/v2/projects/:collection_id/members Remove user from collection
PUT /api/v2/collections/:collection_id Update collection metadata
POST /api/v2/collections Create a new collection
DELETE /api/v2/:collection_id Delete collection
GET /api/v2/collections/find Find collections in ES

Comments

Resource Description
GET /api/v2/assets/:asset_id/comments Get comments for asset
POST /api/v2/assets/:asset_id/comments Create comment for asset
DELETE /api/v2/assets/:asset_id/comments/:comment_id Delete comment from asset
POST /api/v2/assets/:asset_id/comments/:comment_id Update comment for asset
GET /api/v2/projects/:project_id/comments Get comments for project
POST /api/v2/projects/:project_id/comments Create comment for project
DELETE /api/v2/projects/:project_id/comments/:comment_id Delete comment from project
POST /api/v2/projects/:project_id/comments/:comment_id Update comment for project

Custom fields

Resource Description
GET /api/v2/assets/:asset_id/custom_fields Returns custom fields for asset
POST /api/v2/assets/:asset_id/custom_fields/:field_group_id Update field group for asset, Including fields
DELETE /api/v2/assets/:asset_id/custom_fields/:field_group_id Remove field group from asset
DELETE /api/v2/assets/:asset_id/custom_fields/:field_group_id/:complex_field_group_id Delete complex field group from asset
GET /api/v2/projects/:project_id/custom_fields Returns custom fields for project
POST /api/v2/projects/:project_id/custom_fields/:field_group_id Update field group for project, Including fields
DELETE /api/v2/projects/:project_id/custom_fields/:field_group_id Remove field group from project
DELETE /api/v2/projects/:project_id/custom_fields/:field_group_id/:complex_field_group_id Delete complex field group from project

External ids

Resource Description
GET /api/v2/external_ids/:external_id Get asset or project by external ID
GET /api/v2/external_ids Get all assets and projects which contain external ID

Favorites

Resource Description
POST /api/v2/favorites Add entity to favorites
DELETE /api/v2/favorites Remove entity from favorites

Field groups

Resource Description
GET /api/v2/field_groups Get all field groups
GET /api/v2/field_groups/:field_group_id Get field group by id

History

Resource Description
GET /api/v2/assets/:asset_id/history Get asset history
GET /api/v2/projects/:project_id/history Get project history
GET /api/v2/assets/history Get all assets history in a given timeframe
GET /api/v2/projects/history Get all projects history in a given timeframe
GET /api/v2/history Get all events in a given timeframe

Image crops

Resource Description
GET /api/v2/assets/:asset_id/image_crops Get image asset crops
POST /api/v2/assets/:asset_id/image_crops Create new image asset crop
POST /api/v2/assets/:asset_id/image_crops/:image_crop_id Update image asset crop
DELETE /api/v2/assets/:asset_id/image_crops/:image_crop_id Delete image asset crop

Permissions

Resource Description
GET /api/v2/permissions Get permissions for current user and user role

Ping

Resource Description
GET /api/v2/health Check health of all services
GET /api/v2/ping Ping service

Plugins

Resource Description
GET /api/v2/plugins Get all plugins

Preference

Resource Description
GET /api/v2/user/preference Get user preference
PUT /api/v2/user/preference Update user preference
DELETE /api/v2/user/preference/table_preset Remove chosen table preset, reset chosen table preset to default

Projects

Resource Description
GET /api/v2/projects List project IDs for current user
GET /api/v2/projects/:project_id Get project
GET /api/v2/projects/:project_id/members Get project members
GET /api/v2/projects/:project_id/user_groups Get project UserGroups
POST /api/v2/projects/:project_id/user_groups Add UserGroup to project
DELETE /api/v2/projects/:project_id/user_groups Remove UserGroup from project
POST /api/v2/projects/:project_id/members Add user to project
DELETE /api/v2/projects/:project_id/members Remove user from project
POST /api/v2/projects/:project_id/guests Add guest to project
GET /api/v2/projects/:project_id/assets Get assets and subproject for a project
POST /api/v2/projects Create project
PUT /api/v2/projects/:project_id Update project
GET /api/v2/projects/:project_id/projects Get child projects
POST /api/v2/projects/:project_id/trash_bin Move project and all related projects and assets to trash bin from where it will be deleted after 14 days
POST /api/v2/projects/:project_id/restore Restores project and all related projects and assets from trash bin
DELETE /api/v2/projects/:project_id Permanently delete project and all related projects and assets
POST /api/v2/projects/:project_id/assign Assign subproject to project
DELETE /api/v2/projects/:project_id/unassign Unassign subproject from project
GET /api/v2/projects/:project_id/tags Get tags and ai tags for project including all subprojects and assets
PUT /api/v2/projects/:project_id/thumbnail Set project thumbnail
DELETE /api/v2/projects/:project_id/thumbnail Delete project thumbnail
POST /api/v2/projects/:project_id/public Sets project as public
POST /api/v2/projects/:project_id/private Sets project as private

Publishing channels

Resource Description
GET /api/v2/publishing_channels Returns publishing channels for current user
POST /api/v2/publishing_channels/:publishing_channel_id/share Share to publishing channel

Review

Resource Description
POST /api/v2/assets/:asset_id/review/approve Set assets status to approved
POST /api/v2/assets/:asset_id/review/reject Set assets status to rejected
POST /api/v2/assets/:asset_id/review Set assets status to review
POST /api/v2/assets/review/bulk Set multiple assets status to review
POST /api/v2/assets/approve/bulk Set multiple assets status to review
POST /api/v2/assets/reject/bulk Set multiple assets status to review

Search

Resource Description
GET /api/v2/search Search assets and projects

Settings

Resource Description
GET /api/v2/settings Get settings
GET /api/v2/login_settings Get settings

Table presets

Resource Description
GET /api/v2/table_presets Get all table presets for the user
POST /api/v2/table_presets Create a new table preset
PUT /api/v2/table_presets/:table_preset_id Change details of a table preset
DELETE /api/v2/table_presets/:table_preset_id Delete a table preset

User groups

Resource Description
GET /api/v2/user_groups Get all user groups

Users

Resource Description
POST /api/v2/users/sign_up Sign up new user