• Welcome
  • Docs
Information
Core Resources
    Account Management
      Get All AccountsgetTrack AccountpostStop Tracking AccountdeleteBulk Track AccountspostBulk Stop Tracking AccountsdeleteGet Account HistorygetGet Specific AccountgetStop Tracking Account By IDdelete
    Video Management
      Get All VideosgetTrack VideopostStop Tracking VideodeleteBulk Track VideospostBulk Stop Tracking VideosdeleteGet Specific VideogetStop Tracking Video By IDdeleteGet Video HistorygetGet All Videos Linked To Accountget
    Collection Management
      Get All CollectionsgetCreate CollectionpostGet CollectiongetDelete CollectiondeleteUpdate CollectionpatchGet Collection VideosgetAdd Videos to CollectionpostRemove Videos from CollectiondeleteGet Collection AccountsgetAdd Accounts to CollectionpostRemove Accounts from Collectiondelete
    Organisation Management
      Get Organisation Historyget
Analytics
    Statistics
      Total VideosgetTotal Accountsget
System
    Integration
      Shortimize MCP Serverpost
powered by Zuplo
Shortimize API
Shortimize API

Account Management

Endpointhttps://api.shortimize.com

Manage and track social media accounts


Get All Accounts

GET
https://api.shortimize.com
/accounts

All tiers — Limited/Basic: 1 result with masked metrics. Premium: full access.

Retrieves all accounts linked to your organisation in Shortimize. This endpoint provides a comprehensive list of all tracked social media accounts, including key metrics and performance indicators.

Use this to get an overview of all accounts under your organization's management.

Rate Limit: 5 (limited) / 15 (basic) / 30 (premium) requests per minute

Get All Accounts › query Parameters

collections
​string

Optional comma-separated list of collections to filter accounts (e.g. collection1,collection2,collection3)

Make sure to URL encode them before sending.

paginated
​boolean

Set to true to receive paginated response with {data, pagination} format instead of raw array

Default: false
page
​integer · min: 1

Page number for pagination (requires paginated=true)

Default: 1
limit
​integer · min: 1 · max: 5000

Number of items to return per page

Default: 5000
order_by
​string

Field to order results by

Default: checked_at
order_direction
​string · enum

Direction of ordering (ascending or descending)

Enum values:
asc
desc
Default: desc

Get All Accounts › Headers

Authorization
​string · required

Bearer token for authentication

Get All Accounts › Responses

Successful response with a list of accounts and their detailed information

​object[]
organisation_id
​string · uuid

Unique identifier for your organization

account_id
​string · uuid

Unique identifier for the account

account_link
​string · uri

URL of the social media account

username
​string

Username of the account

platform
​string · enum

Social media platform of the account

Enum values:
instagram
tiktok
youtube
created_at
​string · date-time

Timestamp when the account was added to Shortimize

checked_at
​string · date-time

Timestamp of the last data update

removed
​boolean

Indicates if the account has been removed from tracking

private
​boolean

Indicates if the account is private

empty
​boolean

Indicates if the account has no content

bio
​string

The bio of the account from the respective platform

link
​string

The primary link of the account from the respective platform

latest_followers_count
​integer | null

Most recent follower count, null if not available

latest_following_count
​integer | null

Most recent following count, null if not available

tracking_type
​string

Type of tracking applied to this account

mean_views
​number

Average number of views across tracked videos

most_viewed
​integer

Highest number of views for a single video

median_views
​number

Median number of views across tracked videos

median_views_non_zero
​number

Median number of views across tracked videos (videos with greater than 0 views)

median_likes
​number

Median number of likes across tracked videos

percent_outperform_10x
​number

Percentage of videos outperforming by 10x

percent_outperform_25x
​number

Percentage of videos outperforming by 25x

last_uploaded_at
​string · date

Date of the last uploaded video

total_videos_tracked
​integer

Total number of videos being tracked

total_views
​integer

Total views across all tracked videos

total_likes
​integer

Total likes across all tracked videos

total_comments
​integer

Total comments across all tracked videos

total_bookmarks
​integer

Total bookmarks across all tracked videos

total_shares
​integer

Total shares across all tracked videos

total_engagement
​integer

Total engagement across all tracked videos (likes + comments + shares + bookmarks)

label_ids
​array | null

Array of collection/label IDs associated with the account

label_names
​array | null

Array of collection/label names associated with the account

​object[]

Historical data array, typically containing the last 30 days of data - will be deprecated soon into it's own endpoint.

GET/accounts
curl --request GET \ --url https://api.shortimize.com/accounts \ --header 'Authorization: <string>'
shell
Example Responses
[ { "organisation_id": "00000000-0000-0000-0000-000000000000", "account_id": "00000000-0000-0000-0000-000000000000", "account_link": "https://www.example.com/path/to/resource", "username": "username", "platform": "instagram", "created_at": "2024-08-25T15:00:00Z", "checked_at": "2024-08-25T15:00:00Z", "removed": true, "private": true, "empty": true, "bio": "bio", "link": "link", "latest_followers_count": 0, "latest_following_count": 0, "tracking_type": "tracking_type", "mean_views": 0, "most_viewed": 0, "median_views": 0, "median_views_non_zero": 0, "median_likes": 0, "percent_outperform_10x": 0, "percent_outperform_25x": 0, "last_uploaded_at": "2024-08-25", "total_videos_tracked": 0, "total_views": 0, "total_likes": 0, "total_comments": 0, "total_bookmarks": 0, "total_shares": 0, "total_engagement": 0, "label_ids": [ "string" ], "label_names": [ "string" ], "history_array": [ { "likes": 0, "views": 0, "shares": 0, "comments": 0, "bookmarks": 0, "engagement": 0, "created_at": "2024-08-25" } ] } ]
json
application/json

Track Account

POST
https://api.shortimize.com
/accounts

Track an account and link it to your organisation in Shortimize.

A direct URL to the account on Shortimize will be returned.

Rate Limit: 5 (limited) / 15 (basic) / 120 (premium) requests per minute

Track Account › Headers

Authorization
​string · required

Bearer token for authentication

content-type
​string · enum · required

should be set to application/json

Enum values:
application/json

Track Account › Request Body

link
​string · uri · required

The URL of the account to start tracked

collection_ids
​string[]

Optional list of collection UUIDs to associate with the account

collection_names
​string[]

Optional list of collection names to create and associate with the account

tracking_type
​string

Optional tracking type to use (e.g., 'latest_30', 'latest_200'). If left empty, will use the organisation default.

Track Account › Responses

Successful operation

properties
​
POST/accounts
curl --request POST \ --url https://api.shortimize.com/accounts \ --header 'Authorization: <string>' \ --header 'Content-Type: application/json' \ --header 'content-type: <string>' \ --data ' { "link": "https://www.example.com/path/to/resource", "collection_ids": [ "00000000-0000-0000-0000-000000000000" ], "collection_names": [ "string" ], "tracking_type": "tracking_type" } '
shell
Example Request Body
{ "link": "https://www.example.com/path/to/resource", "collection_ids": [ "00000000-0000-0000-0000-000000000000" ], "collection_names": [ "string" ], "tracking_type": "tracking_type" }
json
Example Responses
{ "properties": {} }
json
application/json

Stop Tracking Account

DELETE
https://api.shortimize.com
/accounts

Stop tracking an account linked to your organisation.

Use this to pause tracking when you want to stop monitoring an account's performance or remove it from your active tracking portfolio. This is useful for accounts that are no longer relevant to your campaign or when you need to manage your tracking quota.

Rate Limit: 5 (limited) / 15 (basic) / 120 (premium) requests per minute

Stop Tracking Account › Headers

Authorization
​string · required

Bearer token for authentication

Stop Tracking Account › Request Body

id
​string · required

The ID (UUID) or URL of the account to stop tracking

Stop Tracking Account › Responses

Successful operation

message
​string

Success message confirming the operation

DELETE/accounts
curl --request DELETE \ --url https://api.shortimize.com/accounts \ --header 'Authorization: <string>' \ --header 'Content-Type: application/json' \ --data '{ "id": "id" }'
shell
Example Request Body
{ "id": "id" }
json
Example Responses
{ "message": "Successfully stopped tracking account." }
json
application/json

Bulk Track Accounts

POST
https://api.shortimize.com
/accounts/bulk

Track multiple accounts and link them to your organisation in Shortimize in a single request.

Each account will be processed individually, and a summary of results will be returned. Maximum 100 accounts per request.

Rate Limit: 5 (limited) / 15 (basic) / 120 (premium) requests per minute

Bulk Track Accounts › Headers

Authorization
​string · required

Bearer token for authentication

content-type
​string · enum · required

should be set to application/json

Enum values:
application/json

Bulk Track Accounts › Request Body

links
​string[] · minItems: 1 · maxItems: 100 · required

Array of account URLs to track

label_ids
​string[]

Optional label IDs to apply to all tracked accounts

tracking_type
​string · enum

Optional tracking type. Defaults to organisation setting.

Enum values:
latest_10
latest_30
latest_60
latest_100
latest_200
latest_500
all_videos

Bulk Track Accounts › Responses

All accounts tracked successfully

success
​boolean
​object
​object[]
POST/accounts/bulk
curl --request POST \ --url https://api.shortimize.com/accounts/bulk \ --header 'Authorization: <string>' \ --header 'Content-Type: application/json' \ --header 'content-type: <string>' \ --data ' { "links": [ "https://www.example.com/path/to/resource" ], "label_ids": [ "00000000-0000-0000-0000-000000000000" ], "tracking_type": "latest_10" } '
shell
Example Request Body
{ "links": [ "https://www.example.com/path/to/resource" ], "label_ids": [ "00000000-0000-0000-0000-000000000000" ], "tracking_type": "latest_10" }
json
Example Responses
{ "success": true, "summary": { "total": 0, "succeeded": 0, "failed": 0, "alreadyExists": 0 }, "results": [ { "type": "account", "url": "url", "success": true, "error": "error", "accountId": "accountId", "wasExisting": true } ] }
json
application/json

Bulk Stop Tracking Accounts

DELETE
https://api.shortimize.com
/accounts/bulk

Stop tracking multiple accounts linked to your organisation in a single request.

Use this to efficiently remove multiple accounts from your active tracking portfolio. Historical data for these accounts remains accessible.

Rate Limit: 5 (limited) / 15 (basic) / 120 (premium) requests per minute

Bulk Stop Tracking Accounts › Headers

Authorization
​string · required

Bearer token for authentication

Bulk Stop Tracking Accounts › Request Body

ids
​string[] · minItems: 1 · maxItems: 100 · required

Array of account IDs (UUIDs) or URLs to stop tracking

leave_videos
​boolean

If true, videos linked to these accounts will not be removed

Default: false

Bulk Stop Tracking Accounts › Responses

All accounts successfully stopped tracking

success
​boolean
​object
​object[]
DELETE/accounts/bulk
curl --request DELETE \ --url https://api.shortimize.com/accounts/bulk \ --header 'Authorization: <string>' \ --header 'Content-Type: application/json' \ --data ' { "ids": [ "string" ], "leave_videos": false } '
shell
Example Request Body
{ "ids": [ "string" ], "leave_videos": false }
json
Example Responses
{ "success": true, "summary": { "total": 0, "succeeded": 0, "failed": 0 }, "results": [ { "id": "id", "type": "type", "success": true, "error": "error" } ] }
json
application/json

Get Account History

GET
https://api.shortimize.com
/accounts/{account_id}/history

All tiers — Limited/Basic: 1 result with masked metrics. Premium: full access.

Retrieves daily aggregated metrics for a specific account (account_id) tracked by your organization. By default if no dates are passed, gets the last 30 days of data. Data is available for the last 90 days (up to 2 years for premium users).

Rate Limit: 5 (limited) / 15 (basic) / 120 (premium) requests per minute

Get Account History › path Parameters

account_id
​string · required

Account identifier - can be a UUID or account URL (URL-encoded)

Get Account History › query Parameters

start_date
​string · date

Start date (inclusive) in YYYY-MM-DD format. Defaults to 30 days ago if not provided. Cannot be older than 90 days (730 days for premium users).

end_date
​string · date

End date (inclusive) in YYYY-MM-DD format

Get Account History › Headers

Authorization
​string · required

Bearer token for authentication

Get Account History › Responses

List of daily metrics for the specified account

​object[]
date
​string · date
views
​integer

Total views for the day

likes
​integer

Total likes for the day

comments
​integer

Total comments for the day

shares
​integer

Total shares for the day

bookmarks
​integer

Total bookmarks for the day

engagements
​integer

Total engagements for the day (likes + comments + shares + bookmarks)

ads_upload_count
​integer

Number of videos uploaded on this day

total_ads
​integer

Total number of videos tracked for this account on this day

GET/accounts/{account_id}/history
curl --request GET \ --url https://api.shortimize.com/accounts/:account_id/history \ --header 'Authorization: <string>'
shell
Example Responses
[ { "date": "2024-08-25", "views": 0, "likes": 0, "comments": 0, "shares": 0, "bookmarks": 0, "engagements": 0, "ads_upload_count": 0, "total_ads": 0 } ]
json
application/json

Get Specific Account

GET
https://api.shortimize.com
/accounts/{account_id}

All tiers — Limited/Basic: 1 result with masked metrics. Premium: full access.

Retrieves detailed information about a specific account linked to your organisation in Shortimize via its account_id. This endpoint provides comprehensive data including account metrics, performance indicators, and historical data.

Use this to get in-depth insights into a particular account's performance and engagement.

Rate Limit: 5 (limited) / 15 (basic) / 30 (premium) requests per minute

Get Specific Account › path Parameters

account_id
​string · required

Account identifier - can be a UUID or account URL (URL-encoded)

Get Specific Account › Headers

Authorization
​string · required

Bearer token for authentication

Get Specific Account › Responses

Successful response with detailed information about the specific account

organisation_id
​string · uuid

Unique identifier for your organization

account_id
​string · uuid

Unique identifier for the account

account_link
​string · uri

URL of the social media account

username
​string

Username of the account

platform
​string · enum

Social media platform of the account

Enum values:
instagram
tiktok
youtube
created_at
​string · date-time

Timestamp when the account was added to Shortimize

checked_at
​string · date-time

Timestamp of the last data update

removed
​boolean

Indicates if the account has been removed from tracking

private
​boolean

Indicates if the account is private

empty
​boolean

Indicates if the account has no content

bio
​string

The bio of the account from the respective platform

link
​string

The primary link of the account from the respective platform

latest_followers_count
​integer | null

Most recent follower count, null if not available

latest_following_count
​integer | null

Most recent following count, null if not available

tracking_type
​string

Type of tracking applied to this account

mean_views
​number

Average number of views across tracked videos

most_viewed
​integer

Highest number of views for a single video

median_views
​number

Median number of views across tracked videos

median_views_non_zero
​number

Median number of views across tracked videos (videos with greater than 0 views)

median_likes
​number

Median number of likes across tracked videos

percent_outperform_10x
​number

Percentage of videos outperforming by 10x

percent_outperform_25x
​number

Percentage of videos outperforming by 25x

last_uploaded_at
​string · date

Date of the last uploaded video

total_videos_tracked
​integer

Total number of videos being tracked

total_views
​integer

Total views across all tracked videos

total_likes
​integer

Total likes across all tracked videos

total_comments
​integer

Total comments across all tracked videos

total_bookmarks
​integer

Total bookmarks across all tracked videos

total_shares
​integer

Total shares across all tracked videos

total_engagement
​integer

Total engagement across all tracked videos (likes + comments + shares + bookmarks)

label_ids
​array | null

Array of collection/label IDs associated with the account

label_names
​array | null

Array of collection/label names associated with the account

GET/accounts/{account_id}
curl --request GET \ --url https://api.shortimize.com/accounts/:account_id \ --header 'Authorization: <string>'
shell
Example Responses
{ "organisation_id": "00000000-0000-0000-0000-000000000000", "account_id": "00000000-0000-0000-0000-000000000000", "account_link": "https://www.example.com/path/to/resource", "username": "username", "platform": "instagram", "created_at": "2024-08-25T15:00:00Z", "checked_at": "2024-08-25T15:00:00Z", "removed": true, "private": true, "empty": true, "bio": "bio", "link": "link", "latest_followers_count": 0, "latest_following_count": 0, "tracking_type": "tracking_type", "mean_views": 0, "most_viewed": 0, "median_views": 0, "median_views_non_zero": 0, "median_likes": 0, "percent_outperform_10x": 0, "percent_outperform_25x": 0, "last_uploaded_at": "2024-08-25", "total_videos_tracked": 0, "total_views": 0, "total_likes": 0, "total_comments": 0, "total_bookmarks": 0, "total_shares": 0, "total_engagement": 0, "label_ids": [ "string" ], "label_names": [ "string" ] }
json
application/json

Stop Tracking Account By ID

DELETE
https://api.shortimize.com
/accounts/{account_id}

Stop tracking an account linked to your organisation via its account_id.

Use this to pause tracking when you want to stop monitoring an account's performance or remove it from your active tracking portfolio.

Rate Limit: 5 (limited) / 15 (basic) / 120 (premium) requests per minute

Stop Tracking Account By ID › path Parameters

account_id
​string · uuid · required

The UUID of the account to stop tracking

Stop Tracking Account By ID › Headers

Authorization
​string · required

Bearer token for authentication

Stop Tracking Account By ID › Responses

Successful operation

message
​string

Success message confirming the operation

DELETE/accounts/{account_id}
curl --request DELETE \ --url https://api.shortimize.com/accounts/:account_id \ --header 'Authorization: <string>'
shell
Example Responses
{ "message": "Successfully stopped tracking account." }
json
application/json

Video Management