Metricool Admin Service API

The Admin Service API from Metricool — 23 operation(s) for admin service.

Operations 23

GET /admin/add-profile Creates new profile #
GET /admin/blog/profiles Returns a brand picture of your Metricool account #
GET /admin/delete-profile Remove current brand #
GET /admin/detectwebsite Detect website #
GET /admin/instagram-profile This method is deprecated #
GET /admin/max-profiles Returns the maximum number of brands for the authenticated user #
DELETE /admin/other-free-connections Delete other free connections #
GET /admin/profile This method is deprecated #
GET /admin/profile/getproperty Get brand property value #
GET /admin/profile/setproperty Update brand property value #
GET /admin/profiles Returns the list of brands of your Metricool account (Includes white label… #
GET /admin/profiles-auth Returns the list of brands of your Metricool account #
GET /admin/restore-profile Restore a deleted brand #
GET /admin/senddevicetoken This method is not visble #
GET /admin/sendlogmessage This method is not visble #
GET /admin/simpleProfiles Returns the list of brands of your Metricool account #
GET /admin/timezones This method is deprecated #
GET /admin/update-label-blog Updates the brand label #
GET /admin/userproperties This method is not visble #
GET /admin/userstatus Get user status #
GET /admin/userstatus-auth This method is not visble #
GET /admin/userstatus-auth-session This method is not visble #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/metricool:metricool-admin-service-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

metricool-admin-service-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Metricool Admin Service API
  description: 'Metricool API


    The base URL for all endpoints is: https://app.metricool.com/api


    All endpoints require authentication.'
  version: 2.0.0
servers:
- url: https://app.metricool.com/api
tags:
- name: Admin Service
paths:
  /admin/add-profile:
    get:
      tags:
      - Admin Service
      summary: Creates new profile
      description: Deprecated. Use `POST /v2/settings/brands` instead.
      operationId: addProfile
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicBlog'
      deprecated: true
  /admin/blog/profiles:
    get:
      tags:
      - Admin Service
      summary: Returns a brand picture of your Metricool account
      operationId: getBlogProfiles
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /admin/delete-profile:
    get:
      tags:
      - Admin Service
      summary: Remove current brand
      description: Deprecated. Use `DELETE /v2/settings/brands/{brand-id}` instead.
      operationId: deleteProfile
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
      deprecated: true
  /admin/detectwebsite:
    get:
      tags:
      - Admin Service
      operationId: detectWebsite
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicBlog'
      summary: Detect website
      x-summary-source: derived
  /admin/instagram-profile:
    get:
      tags:
      - Admin Service
      summary: This method is deprecated
      description: Deprecated. Use `GET /v2/settings/brands/{brand-id}/instagram/profile` instead.
      operationId: getInstagramProfile
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: object
      deprecated: true
  /admin/max-profiles:
    get:
      tags:
      - Admin Service
      summary: Returns the maximum number of brands for the authenticated user
      operationId: getMaxProfiles
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /admin/other-free-connections:
    delete:
      tags:
      - Admin Service
      operationId: deleteOtherFreeConnections
      parameters:
      - name: provider
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
      summary: Delete other free connections
      x-summary-source: derived
  /admin/profile:
    get:
      tags:
      - Admin Service
      summary: This method is deprecated
      description: Deprecated. Use `GET /v2/settings/brands/{brand-id}` instead.
      operationId: getBlog
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicBlog'
      deprecated: true
  /admin/profile/getproperty:
    get:
      tags:
      - Admin Service
      summary: Get brand property value
      operationId: getProfileProperty
      parameters:
      - name: name
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /admin/profile/setproperty:
    get:
      tags:
      - Admin Service
      summary: Update brand property value
      operationId: setProfileProperty
      parameters:
      - name: name
        in: query
        required: false
        schema:
          type: string
      - name: value
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /admin/profiles:
    get:
      tags:
      - Admin Service
      summary: Returns the list of brands of your Metricool account (Includes white label…
      operationId: getProfiles
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PublicBlog'
  /admin/profiles-auth:
    get:
      tags:
      - Admin Service
      summary: Returns the list of brands of your Metricool account
      operationId: getAuthenticatedProfiles
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PublicBlog'
  /admin/report-logo:
    get:
      tags:
      - Admin Service
      summary: Returns the report logo URL
      operationId: getUserReportLogo
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /admin/restore-profile:
    get:
      tags:
      - Admin Service
      summary: Restore a deleted brand
      operationId: restoreProfile
      parameters:
      - name: blogidtorestore
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /admin/senddevicetoken:
    get:
      tags:
      - Admin Service
      summary: This method is not visble
      operationId: sendDeviceToken
      parameters:
      - name: id
        in: query
        required: false
        schema:
          type: integer
          format: int64
      - name: uuid
        in: query
        required: false
        schema:
          type: string
      - name: model
        in: query
        required: false
        schema:
          type: string
      - name: platform
        in: query
        required: false
        schema:
          type: string
      - name: version
        in: query
        required: false
        schema:
          type: string
      - name: manufacturer
        in: query
        required: false
        schema:
          type: string
      - name: serial
        in: query
        required: false
        schema:
          type: string
      - name: name
        in: query
        required: false
        schema:
          type: string
      - name: isVirtual
        in: query
        required: false
        schema:
          type: string
      - name: token
        in: query
        required: false
        schema:
          type: string
      - name: appVersion
        in: query
        required: false
        schema:
          type: string
      - name: pushVersion
        in: query
        required: false
        schema:
          type: integer
          format: int32
      - name: label
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserDevice'
  /admin/sendlogmessage:
    get:
      tags:
      - Admin Service
      summary: This method is not visble
      operationId: sendLogMessage
      parameters:
      - name: userId
        in: query
        required: false
        schema:
          type: integer
          format: int64
      - name: deviceInfo
        in: query
        required: false
        schema:
          type: string
      - name: logLevel
        in: query
        required: false
        schema:
          type: string
      - name: appInfo
        in: query
        required: false
        schema:
          type: string
      - name: message
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
  /admin/simpleProfiles:
    get:
      tags:
      - Admin Service
      summary: Returns the list of brands of your Metricool account
      operationId: getSimpleProfiles
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PublicBlog'
  /admin/timezones:
    get:
      tags:
      - Admin Service
      summary: This method is deprecated
      description: Deprecated. Use `GET /v2/settings/catalogs/timezones` instead.
      operationId: getTimezones
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
      deprecated: true
  /admin/update-label-blog:
    get:
      tags:
      - Admin Service
      summary: Updates the brand label
      operationId: updateLabelBlog
      parameters:
      - name: newName
        in: query
        required: false
        schema:
          type: string
      - name: newImage
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /admin/userproperties:
    get:
      tags:
      - Admin Service
      summary: This method is not visble
      operationId: getUserProperties
      parameters:
      - name: id
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: string
  /admin/userstatus:
    get:
      tags:
      - Admin Service
      operationId: getUserStatus
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserStatus'
      summary: Get user status
      x-summary-source: derived
  /admin/userstatus-auth:
    get:
      tags:
      - Admin Service
      summary: This method is not visble
      operationId: getUserStatusAuth
      parameters:
      - name: mode
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserStatus'
  /admin/userstatus-auth-session:
    get:
      tags:
      - Admin Service
      summary: This method is not visble
      operationId: getUserStatusAuthSession
      parameters:
      - name: mode
        in: query
        required: true
        schema:
          type: string
      - name: type
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
components:
  schemas:
    OrganizationRoleActionsDto:
      type: object
      properties:
        manageBrands:
          type: boolean
          description: Whether the role can create and manage brands at the organization level.
        manageRoles:
          type: boolean
          description: Whether the role can create and manage other brand roles at the organization level.
        manageTeamMembers:
          type: boolean
          description: Whether the role can manage team members at the organization level.
        manageAgencyConfig:
          type: boolean
          description: Whether the role can manage the agency configuration.
        manageAgencyClients:
          type: boolean
          description: Whether the role can manage agency clients.
      description: Organization-level permissions granted by a brand role, on top of the per-brand actions. Never null in a read response - a role that never had organization permissions set is reported with every field false.
    BrandRoleActions:
      type: object
      properties:
        viewAnalytics:
          type: boolean
        viewInbox:
          type: boolean
        viewPlanner:
          type: boolean
        viewAds:
          type: boolean
        viewSmartlinks:
          type: boolean
        fullAccessReports:
          type: boolean
        fullAccessInbox:
          type: boolean
        fullAccessPlanner:
          type: boolean
        fullAccessAds:
          type: boolean
        fullAccessSmartlinks:
          type: boolean
        fullAccessHashtagTracker:
          type: boolean
        editBrand:
          type: boolean
        schedulePosts:
          type: boolean
        publishPosts:
          type: boolean
        approvePosts:
          type: boolean
        viewCondensedAnalytics:
          type: boolean
        fullAccessDashboards:
          type: boolean
        viewDashboards:
          type: boolean
        editFlow:
          type: boolean
        viewFlow:
          type: boolean
        fullAccessStudio:
          type: boolean
    DateTimeInfo:
      required:
      - dateTime
      type: object
      properties:
        dateTime:
          type: string
          description: 'Local Date-time represented with a certain timezone '
        timezone:
          type: string
          description: Timezone applied to the datetime
    PublicBlog:
      type: object
      properties:
        id:
          type: integer
          format: int32
        userId:
          type: integer
          format: int32
        ownerUserId:
          type: integer
          format: int32
        label:
          type: string
        url:
          type: string
        title:
          type: string
        description:
          type: string
        picture:
          type: string
        twitter:
          type: string
        facebook:
          type: string
        facebookPageId:
          type: string
        facebookGroup:
          type: string
        facebookGroupId:
          type: string
        instagram:
          type: string
        fbBusinessId:
          type: string
        googlePlus:
          type: string
        linkedinCompany:
          type: string
        facebookAds:
          type: string
        adwords:
          type: string
        gmb:
          type: string
        youtube:
          type: string
        twitch:
          type: string
        tiktokads:
          type: string
        pinterest:
          type: string
        tiktok:
          type: string
        threads:
          type: string
        bluesky:
          type: string
        feedRss:
          type: string
        tiktokAccountType:
          type: string
          enum:
          - BUSINESS
          - PERSONAL
        instagramConnectionType:
          type: string
          enum:
          - BUSINESS
          - FACEBOOK_LOGIN
        instagramFollowsUnfollowsAvailable:
          type: boolean
        twitterPicture:
          type: string
        twitterSubscriptionType:
          type: string
        facebookPicture:
          type: string
        facebookGroupPicture:
          type: string
        instagramPicture:
          type: string
        linkedInPicture:
          type: string
        facebookAdsPicture:
          type: string
        facebookAdsName:
          type: string
        pinterestPicture:
          type: string
        pinterestBusiness:
          type: boolean
        tiktokPicture:
          type: string
        tiktokBusinessTokenExpiration:
          type: string
        threadsPicture:
          type: string
        threadsAccountName:
          type: string
        blueskyPicture:
          type: string
        blueskyHandle:
          type: string
        fbUserId:
          type: string
        inUserId:
          type: string
        adwordsUserId:
          type: string
        adwordsAccountName:
          type: string
        gmbUserId:
          type: string
        gmbAccountName:
          type: string
        gmbAddress:
          type: string
        gmbUrl:
          type: string
        tiktokadsUserId:
          type: string
        linkedInCompanyPicture:
          type: string
        linkedInCompanyName:
          type: string
        linkedInTokenExpiration:
          type: string
        linkedInUserProfileURL:
          type: string
        youtubeChannelName:
          type: string
        youtubeChannelPicture:
          type: string
        twitchName:
          type: string
        twitchPicture:
          type: string
        twitchChannelId:
          type: string
        tiktokadsDisplayName:
          type: string
        tiktokadsPicture:
          type: string
        tiktokUserProfileUrl:
          type: string
        isShared:
          type: boolean
        ownerUsername:
          type: string
        whiteLabelLink:
          type: string
        analyticModeWhitelabelLink:
          type: string
        whiteLabelAlias:
          type: string
        hash:
          type: string
        version:
          type: integer
          format: int64
        frontendVersion:
          type: string
        role:
          type: string
        deleteDate:
          type: string
          format: date-time
        deleted:
          type: boolean
        joinDate:
          type: string
          format: date-time
        firstConnectionDate:
          type: string
          format: date-time
        lastResolvedInboxMessageTimestamp:
          type: integer
          format: int64
        lastReadInboxMessageTimestamp:
          type: integer
          format: int64
        timezone:
          type: string
        availableConnectors:
          type: array
          items:
            type: string
        brandRole:
          $ref: '#/components/schemas/BrandRole'
        isWhiteLabel:
          type: boolean
        isWhiteLabelOnlyRead:
          type: boolean
        engagementRatio:
          type: integer
          format: int32
        hasXOAuth2Token:
          type: boolean
        isDemo:
          type: boolean
        allWhiteLabelLinks:
          type: object
          additionalProperties:
            type: string
          writeOnly: true
    BrandRole:
      required:
      - actions
      - name
      - organizationActions
      - userId
      type: object
      properties:
        id:
          type: integer
          format: int64
        userId:
          type: integer
          format: int32
        name:
          minLength: 1
          type: string
        description:
          type: string
        color:
          type: string
        type:
          type: string
        assignable:
          type: boolean
        teamMemberOnly:
          type: boolean
        deletedDate:
          $ref: '#/components/schemas/DateTimeInfo'
        deleted:
          type: boolean
        actions:
          $ref: '#/components/schemas/BrandRoleActions'
        organizationActions:
          $ref: '#/components/schemas/OrganizationRoleActionsDto'
        assignedUsersCount:
          type: integer
          format: int32
        assignedEnabledCount:
          type: integer
          format: int32
        assignedDisabledCount:
          type: integer
          format: int32
    UserDevice:
      type: object
      properties:
        id:
          type: integer
          format: int64
        userId:
          type: integer
          format: int32
        username:
          type: string
        model:
          type: string
        platform:
          type: string
        version:
          type: string
        manufacturer:
          type: string
        appVersion:
          type: string
        label:
          type: string
        update:
          $ref: '#/components/schemas/DateTimeInfo'
        status:
          type: string
    UserStatus:
      type: object
      properties:
        userId:
          type: integer
          format: int32
        username:
          type: string
        token:
          type: string
        refreshToken:
          type: string
        isFree:
          type: boolean
        state:
          type: string
        errorCode:
          type: integer
          format: int32
          writeOnly: true
        errorMessage:
          type: string
          writeOnly: true