Mention Shares API

The Shares API from Mention — 5 operations over the join between an account and an alert. Share is the authorization primitive AND the lifecycle owner of an alert: deleting the last share deletes the alert and everything it collected.

Operations 5

GET /accounts/{account_id}/alerts/{alert_id}/shares Fetch all shares of an alert #
POST /accounts/{account_id}/alerts/{alert_id}/shares Create a share #
GET /accounts/{account_id}/alerts/{alert_id}/shares/{share_id} Fetch a share #
PUT /accounts/{account_id}/alerts/{alert_id}/shares/{share_id} Update a share #
DELETE /accounts/{account_id}/alerts/{alert_id}/shares/{share_id} Delete a share #

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/mention-shares-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

mention-shares-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Mention Shares API
  description: 'The Mention API is a JSON-based, RESTful API that gives programmatic access to the media monitoring and social listening platform: alerts (the keyword queries Mention crawls for), mentions (the results it finds), curation, tags, tasks, alert sharing, authors and influencers, and aggregate statistics. Everything the Mention web client can do is available through this API.


    Authentication uses bearer tokens, obtained either from an app''s settings page (for your own account) or through the OAuth2 authorization-code flow (for a third party''s account). Requests send JSON with a Content-Type: application/json header; the OAuth2 endpoints alone take application/x-www-form-urlencoded. Dates use the W3C date-time format level 6 (YYYY-MM-DDThh:mm:ss.sTZD) so that fractional seconds can drive date-based pagination. Collections are cursor-paginated through a _links object. The API version is selected per request with the Accept-Version header; without it, the version configured in the app''s settings applies.


    This description was reconstructed from Mention''s own published API reference at https://dev.mention.com/current/ — Mention does not publish a machine-readable OpenAPI definition.'
  version: '1.21'
  contact:
    name: Mention Support
    url: https://en.support.mention.com/
  license:
    name: Proprietary
    url: https://mention.com/en/terms-and-conditions/
servers:
- url: https://api.mention.net/api
  description: Mention API — the base URL named in Mention's own reference documentation.
- url: https://api.mention.com/api
  description: Alternate host observed answering the same API (returns the same OAuth2 challenge).
security:
- bearerAuth: []
- accessTokenQuery: []
- oauth2: []
tags:
- name: Shares
  description: Which accounts an alert is shared with.
paths:
  /accounts/{account_id}/alerts/{alert_id}/shares:
    get:
      operationId: listAlertShares
      summary: Fetch all shares of an alert
      description: Lists every share object on the alert — that is, every account the alert is shared with.
      tags:
      - Shares
      externalDocs:
        description: Mention API reference
        url: https://dev.mention.com/current/src/account/alert/share/GetShares.html
      parameters:
      - name: account_id
        in: path
        required: true
        description: ID of the account.
        schema:
          type: string
        example: 12345_69gjjsg4itgkcco040okwsck700o4w8gsco0k4kco0s4scw8o0
      - name: alert_id
        in: path
        required: true
        description: ID of the alert.
        schema:
          type: integer
        example: 112233
      - $ref: '#/components/parameters/AcceptVersion'
      - $ref: '#/components/parameters/AcceptLanguage'
      responses:
        '200':
          description: A list of shares.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShareList'
        '400':
          $ref: '#/components/responses/ValidationError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
    post:
      operationId: createAlertShare
      summary: Create a share
      description: Creates a share object linking another account to this alert. The account_id in the body is the public id of the account the alert is shared with.
      tags:
      - Shares
      externalDocs:
        description: Mention API reference
        url: https://dev.mention.com/current/src/account/alert/share/PostShare.html
      parameters:
      - name: account_id
        in: path
        required: true
        description: ID of the account.
        schema:
          type: string
        example: 12345_69gjjsg4itgkcco040okwsck700o4w8gsco0k4kco0s4scw8o0
      - name: alert_id
        in: path
        required: true
        description: ID of the alert.
        schema:
          type: integer
        example: 112233
      - $ref: '#/components/parameters/AcceptVersion'
      - $ref: '#/components/parameters/AcceptLanguage'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShareCreate'
            example:
              account_id: 12345_69gjjsg4itgkcco040okwsck700o4w8gsco0k4kco0s4scw8o0
      responses:
        '200':
          description: The created share.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShareEnvelope'
        '400':
          $ref: '#/components/responses/ValidationError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
  /accounts/{account_id}/alerts/{alert_id}/shares/{share_id}:
    get:
      operationId: getShare
      summary: Fetch a share
      description: Retrieves a single share object on an alert.
      tags:
      - Shares
      externalDocs:
        description: Mention API reference
        url: https://dev.mention.com/current/src/account/alert/share/GetShare.html
      parameters:
      - name: account_id
        in: path
        required: true
        description: ID of the account.
        schema:
          type: string
        example: 12345_69gjjsg4itgkcco040okwsck700o4w8gsco0k4kco0s4scw8o0
      - name: alert_id
        in: path
        required: true
        description: ID of the alert.
        schema:
          type: integer
        example: 112233
      - name: share_id
        in: path
        required: true
        description: ID of the share object.
        schema:
          type: integer
      - $ref: '#/components/parameters/AcceptVersion'
      - $ref: '#/components/parameters/AcceptLanguage'
      responses:
        '200':
          description: The share.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShareEnvelope'
        '400':
          $ref: '#/components/responses/ValidationError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
    put:
      operationId: updateShare
      summary: Update a share
      description: Updates an existing share, typically to block an account's access to the alert.
      tags:
      - Shares
      externalDocs:
        description: Mention API reference
        url: https://dev.mention.com/current/src/account/alert/share/PutShare.html
      parameters:
      - name: account_id
        in: path
        required: true
        description: ID of the account.
        schema:
          type: string
        example: 12345_69gjjsg4itgkcco040okwsck700o4w8gsco0k4kco0s4scw8o0
      - name: alert_id
        in: path
        required: true
        description: ID of the alert.
        schema:
          type: integer
        example: 112233
      - name: share_id
        in: path
        required: true
        description: ID of the share object.
        schema:
          type: integer
      - $ref: '#/components/parameters/AcceptVersion'
      - $ref: '#/components/parameters/AcceptLanguage'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ShareUpdate'
            example:
              blocked: false
      responses:
        '200':
          description: The updated share.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShareEnvelope'
        '400':
          $ref: '#/components/responses/ValidationError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
    delete:
      operationId: deleteShare
      summary: Delete a share
      description: 'Deletes the share object linking an account to an alert. Team admin rights are required to delete someone else''s share. There is no delete-alert operation: when the last share on an alert is deleted, the alert itself is deleted.'
      tags:
      - Shares
      externalDocs:
        description: Mention API reference
        url: https://dev.mention.com/current/src/account/alert/share/DeleteShare.html
      parameters:
      - name: account_id
        in: path
        required: true
        description: ID of the account.
        schema:
          type: string
        example: 12345_69gjjsg4itgkcco040okwsck700o4w8gsco0k4kco0s4scw8o0
      - name: alert_id
        in: path
        required: true
        description: ID of the alert.
        schema:
          type: integer
        example: 112233
      - name: share_id
        in: path
        required: true
        description: ID of the share object.
        schema:
          type: integer
      - $ref: '#/components/parameters/AcceptVersion'
      - $ref: '#/components/parameters/AcceptLanguage'
      responses:
        '204':
          description: The share was deleted.
        '400':
          $ref: '#/components/responses/ValidationError'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '402':
          $ref: '#/components/responses/PaymentRequired'
        '403':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  schemas:
    Account:
      type: object
      title: Account
      properties:
        id:
          type: string
        name:
          type: string
        email:
          type: string
          format: email
        language_code:
          type: string
        created_at:
          type: string
        updated_at:
          type: string
        avatar_url:
          type: string
        timezone:
          type: string
        grouped_email_notification:
          type: boolean
        default_email_notification_frequency:
          type: string
        default_desktop_notification_frequency:
          type: string
        default_push_notification_frequency:
          type: string
        permissions:
          type: object
          additionalProperties: true
    ShareCreate:
      type: object
      required:
      - account_id
      properties:
        account_id:
          type: string
          description: Public id of the account the alert is shared with.
    Links:
      type: object
      title: Pagination links
      description: Hypermedia links for cursor pagination. more points at older items and pull at newer items; each is present only when applicable.
      properties:
        more:
          $ref: '#/components/schemas/Link'
        pull:
          $ref: '#/components/schemas/Link'
    Share:
      type: object
      title: Alert share
      description: The link between an account and an alert. Deleting the last share deletes the alert.
      properties:
        id:
          type: string
        account:
          $ref: '#/components/schemas/Account'
        role:
          type: string
        blocked:
          type: boolean
        permissions:
          type: object
          additionalProperties:
            type: boolean
        created_at:
          type: string
        weight:
          type: integer
    ShareEnvelope:
      type: object
      properties:
        share:
          $ref: '#/components/schemas/Share'
    ShareUpdate:
      type: object
      properties:
        blocked:
          type: boolean
          description: Blocks the account's access to the alert.
    ShareList:
      type: object
      properties:
        shares:
          type: array
          items:
            $ref: '#/components/schemas/Share'
        _links:
          $ref: '#/components/schemas/Links'
    Link:
      type: object
      properties:
        href:
          type: string
          description: Relative URL to follow.
        params:
          type: object
          description: The query string parameters encoded in href.
          additionalProperties: true
  responses:
    Unauthorized:
      description: Access was denied — missing or invalid access token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OAuthError'
    Forbidden:
      description: Access was denied — the token is valid but not permitted on this resource.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OAuthError'
    NotFound:
      description: The resource does not exist.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OAuthError'
    PaymentRequired:
      description: Payment required — the account's plan does not cover this request.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OAuthError'
    ValidationError:
      description: Invalid input — query string, body or parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ValidationError'
    RateLimited:
      description: Rate limited. The response carries an X-Rate-Limit-Reset header holding the unix timestamp at which the limit resets.
      headers:
        X-Rate-Limit-Reset:
          description: Unix timestamp at which the rate limit resets.
          schema:
            type: integer
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/OAuthError'
  parameters:
    AcceptLanguage:
      name: Accept-Language
      in: header
      required: false
      description: Language used for translated resource fields.
      schema:
        type: string
      example: fr
    AcceptVersion:
      name: Accept-Version
      in: header
      required: false
      description: API version to use for this request, e.g. 1.21. When omitted, the version configured in the app's settings applies.
      schema:
        type: string
      example: '1.21'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Access token passed in the Authorization header, prefixed with 'Bearer '. This is the preferred method. A token for your own account is available at the bottom of your app's settings page.
    accessTokenQuery:
      type: apiKey
      in: query
      name: access_token
      description: The same access token passed in the query string. Supported but discouraged, as it puts the credential in the URL.
    oauth2:
      type: oauth2
      description: 'Authorization-code flow used to obtain an access token for a third party''s Mention account. No scopes are defined: a granted token carries full access to the authorizing account.'
      flows:
        authorizationCode:
          authorizationUrl: https://web.mention.com/authorize
          tokenUrl: https://web.mention.net/oauth/v2/token
          scopes: {}
externalDocs:
  description: Mention API reference
  url: https://dev.mention.com/current/
x-generated-from: https://dev.mention.com/current/
x-generated-by: api-evangelist-enrichment-2026-08-13