Metricool Connections V2 Api Service API

The Connections V2 Api Service API from Metricool — 7 operation(s) for connections v2 api service.

Operations 9

DELETE /v2/settings/brands/connections/duplicates Given a previously connected duplicate free blog, if you wish to connect the… #
POST /v2/settings/brands/connections/facebook Create facebook connection #
GET /v2/settings/brands/connections/instagram/media-feed Get instagram media #
POST /v2/settings/brands/connections/tiktok Create tiktok connection #
GET /v2/settings/brands/connections/youtube/media-feed Fetch YouTube feed videos #
DELETE /v2/settings/brands/connections/{provider} Disconnect 3 #

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-connections-v2-api-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-connections-v2-api-service-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Metricool Connections V2 Api 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: Connections V2 Api Service
paths:
  /v2/settings/brands/connections/anonymous-link:
    get:
      tags:
      - Connections V2 Api Service
      summary: Get the current shareable link to the brand connections panel
      description: Returns the link currently valid for the brand, along with its expiration date. When the account has a white label domain configured the link is returned on that domain, otherwise it is returned shortened. Requires the Advanced plan or higher.
      operationId: getAnonymousConnectorLink
      responses:
        '200':
          description: The current link
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonOkResponseAnonymousSocialConnectorLinkInfo'
        '403':
          description: The user cannot edit the brand, or the subscription plan is below Advanced
        '404':
          description: The brand has no valid link
    post:
      tags:
      - Connections V2 Api Service
      summary: Create a shareable link to the brand connections panel
      description: Generates a link that lets whoever holds it connect social accounts to this brand without a Metricool account, the same link offered in Brand settings > Connections. Any link previously generated for the brand is invalidated, so only one link is valid at a time. The link expires on the date returned in expiresAt. When the account has a white label domain configured the link is returned on that domain, otherwise it is returned shortened. Requires the Advanced plan or higher.
      operationId: createAnonymousConnectorLink
      responses:
        '200':
          description: Link created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonOkResponseAnonymousSocialConnectorLinkInfo'
        '403':
          description: The user cannot edit the brand, or the subscription plan is below Advanced
        '500':
          description: The link was created but its expiration could not be read
    delete:
      tags:
      - Connections V2 Api Service
      summary: Invalidate the shareable link to the brand connections panel
      description: Invalidates the link currently valid for the brand. Anyone holding it loses access immediately. A new link can be generated with POST /anonymous-link. Responds with an empty body.
      operationId: deleteAnonymousConnectorLink
      responses:
        '200':
          description: Link invalidated
        '403':
          description: The user cannot edit the brand
  /v2/settings/brands/connections/duplicates:
    delete:
      tags:
      - Connections V2 Api Service
      summary: Given a previously connected duplicate free blog, if you wish to connect the…
      operationId: processDuplicate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProcessDuplicateRequestDto'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema: {}
  /v2/settings/brands/connections/facebook:
    post:
      tags:
      - Connections V2 Api Service
      operationId: createFacebookConnection
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FacebookConnectionRequest'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonOkResponseBoolean'
      summary: Create facebook connection
      x-summary-source: derived
  /v2/settings/brands/connections/instagram/media-feed:
    get:
      tags:
      - Connections V2 Api Service
      operationId: getInstagramMedia
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonOkListResponseInstagramFeedMedia'
      summary: Get instagram media
      x-summary-source: derived
  /v2/settings/brands/connections/tiktok:
    post:
      tags:
      - Connections V2 Api Service
      operationId: createTiktokConnection
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BrandProfile'
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonOkResponseString'
      summary: Create tiktok connection
      x-summary-source: derived
  /v2/settings/brands/connections/youtube/media-feed:
    get:
      tags:
      - Connections V2 Api Service
      summary: Fetch YouTube feed videos
      description: Fetches the last 15 videos from a YouTube channel or playlist RSS feed without persisting anything
      operationId: getYouTubeMediaFeed
      parameters:
      - name: playlistId
        in: query
        description: Playlist ID (optional). If not provided, videos are fetched from the connected YouTube channel
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JsonOkResponseYouTubeFeedResponse'
  /v2/settings/brands/connections/{provider}:
    delete:
      tags:
      - Connections V2 Api Service
      operationId: disconnect_3
      parameters:
      - name: provider
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
      summary: Disconnect 3
      x-summary-source: derived
components:
  schemas:
    BrandProfile:
      required:
      - username
      type: object
      properties:
        username:
          minLength: 1
          type: string
        picture:
          type: string
    YouTubeFeedResponse:
      type: object
      properties:
        feedUrl:
          type: string
        videos:
          type: array
          items:
            $ref: '#/components/schemas/YouTubeFeedMedia'
    FacebookConnectionRequest:
      required:
      - token
      type: object
      properties:
        token:
          minLength: 1
          type: string
    AnonymousSocialConnectorLinkInfo:
      type: object
      properties:
        link:
          type: string
          description: URL to share with whoever will connect the social accounts. Returned on the account white label domain when one is configured, shortened otherwise.
          example: https://mtr.cool/aB3xY
        expiresAt:
          $ref: '#/components/schemas/DateTimeInfo'
      description: Shareable link to the brand connections panel
    JsonOkResponseYouTubeFeedResponse:
      type: object
      properties:
        metadata:
          type: object
        page:
          $ref: '#/components/schemas/JsonPaging'
        data:
          $ref: '#/components/schemas/YouTubeFeedResponse'
    JsonOkListResponseInstagramFeedMedia:
      type: object
      properties:
        metadata:
          type: object
        page:
          $ref: '#/components/schemas/JsonPaging'
        data:
          type: array
          items:
            $ref: '#/components/schemas/InstagramFeedMedia'
    YouTubeFeedMedia:
      type: object
      properties:
        videoId:
          type: string
        thumbnailUrl:
          type: string
        videoUrl:
          type: string
        publishedAt:
          $ref: '#/components/schemas/DateTimeInfo'
    JsonOkResponseBoolean:
      type: object
      properties:
        metadata:
          type: object
        page:
          $ref: '#/components/schemas/JsonPaging'
        data:
          type: boolean
    ProcessDuplicateRequestDto:
      required:
      - blogId
      - disconnectPreviousConnections
      - network
      type: object
      properties:
        blogId:
          type: integer
          description: Unique identifier of the blog/brand
          format: int32
        network:
          minLength: 1
          type: string
          description: Social network name
        disconnectPreviousConnections:
          type: boolean
          description: Flag to confirm duplicate as primary
        networkNames:
          type: string
          enum:
          - LINKEDIN
          - FACEBOOK
          - FBGROUP
          - PINTEREST
          - FACEBOOK_ADS
          - ADWORDS
          - GMB
          - TWITTER
          - INSTAGRAM
          - INSTAGRAM_BUSINESS
          - YOUTUBE
          - TWITCH
          - BLOG
          - TIKTOK_ADS
          - TIKTOK
          - TIKTOK_BUSINESS
          - THREADS
          - BLUESKY
      description: Request to process duplicate brands/profiles
    JsonPaging:
      type: object
      properties:
        next:
          type: string
    JsonOkResponseAnonymousSocialConnectorLinkInfo:
      type: object
      properties:
        metadata:
          type: object
        page:
          $ref: '#/components/schemas/JsonPaging'
        data:
          $ref: '#/components/schemas/AnonymousSocialConnectorLinkInfo'
    InstagramFeedMedia:
      type: object
      properties:
        id:
          type: string
        blogId:
          type: integer
          format: int32
        username:
          type: string
        fbPostId:
          type: string
        type:
          type: string
        publishedAt:
          $ref: '#/components/schemas/DateTimeInfo'
        content:
          type: string
        imageUrl:
          type: string
        mediaUrl:
          type: string
    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
    JsonOkResponseString:
      type: object
      properties:
        metadata:
          type: object
        page:
          $ref: '#/components/schemas/JsonPaging'
        data:
          type: string