Zoho Article Attachment API

The ArticleAttachment API from Zoho — 4 operation(s) for articleattachment.

Operations 5

POST /api/v1/articles/{articleId}/translations/{locale}/dissociateAttachments Dissociate attachments from translation #
POST /api/v1/articleAttachments Upload attachments #
GET /api/v1/articles/{articleId}/translations/{locale}/attachments Get attachments #
POST /api/v1/articles/{articleId}/translations/{locale}/attachments Upload and associate attachments #
POST /api/v1/articles/{articleId}/translations/{locale}/associateAttachments Attach files to translation #

Documentation

Specifications

Code Examples

Other Resources

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/zoho-articleattachment-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

zoho-articleattachment-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Helpcenter Article Attachment API
  version: 1.0.0
tags:
- name: ArticleAttachment
paths:
  /api/v1/articles/{articleId}/translations/{locale}/dissociateAttachments:
    post:
      tags:
      - ArticleAttachment
      summary: Dissociate attachments from translation
      description: This API removes the file attachments from a translation.
      operationId: removeAttachmentsFromArticleTranslation
      parameters:
      - $ref: '#/components/parameters/articleId'
      - $ref: '#/components/parameters/locale'
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: ./FAQTranslation.json#/components/requestBodies/dissociateAttachmentsFromFAQRequestBody
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '204':
          $ref: ./Common.json#/components/responses/emptyResponse
      security:
      - iam-oauth2-schema:
        - Desk.articles.UPDATE
      x-audience:
      - external-public
  /api/v1/articleAttachments:
    post:
      tags:
      - ArticleAttachment
      summary: Upload attachments
      description: This API uploads files to your portal gallery.
      operationId: uploadArticleAttachments
      parameters:
      - $ref: '#/components/parameters/attachmentType'
      - name: workspaceId
        in: query
        description: Workspace id to which the attachment should be uploaded
        required: true
        style: form
        explode: true
        schema:
          type:
          - string
          - 'null'
          description: Workspace id to which the attachement should be uploaded
          maxLength: 100
          minLength: 0
          pattern: ^([a-zA-Z0-9]{37}|-1)$
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
              required:
              - file
      responses:
        '422':
          $ref: ./Common.json#/components/responses/multipleUnprocessEntityResponse
        '200':
          $ref: '#/components/responses/uploadArticleAttachmentResponse'
      security:
      - iam-oauth2-schema:
        - Desk.articles.CREATE
      x-audience:
      - external-public
  /api/v1/articles/{articleId}/translations/{locale}/attachments:
    get:
      tags:
      - ArticleAttachment
      summary: Get attachments
      description: This API fetches the files attached to an article translation.
      operationId: getArticleTranslationAttachments
      parameters:
      - name: limit
        in: query
        description: Number of attachments to fetch
        required: false
        style: form
        explode: true
        schema:
          type:
          - string
          - integer
          format: int32
          description: Number of attachments to fetch
          maximum: 30
          minimum: 1
          pattern: ([0-9]+)
      - name: from
        in: query
        description: Index number starting from which the article attachments must be fetched.
        required: false
        style: form
        explode: true
        schema:
          type:
          - string
          - 'null'
          - integer
          format: int32
          description: Index number starting from which the article attachments must be fetched.
          minimum: 1
          pattern: ([0-9]+)
      - $ref: '#/components/parameters/articleId'
      - $ref: '#/components/parameters/locale'
      - $ref: ./Common.json#/components/parameters/orgId
      responses:
        '200':
          $ref: ./FAQTranslation.json#/components/responses/articleAttachments
      security:
      - iam-oauth2-schema:
        - Desk.articles.READ
      x-audience:
      - external-public
    post:
      tags:
      - ArticleAttachment
      summary: Upload and associate attachments
      description: This API uploads the files to the gallery section and attaches them to an article translation
      operationId: addArticleTranslationAttachment
      parameters:
      - $ref: '#/components/parameters/attachmentType'
      - $ref: '#/components/parameters/articleId'
      - $ref: '#/components/parameters/locale'
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                file:
                  type: string
                  format: binary
              required:
              - file
      responses:
        '422':
          $ref: ./Common.json#/components/responses/multipleUnprocessEntityResponse
        '200':
          $ref: ./FAQ.json#/components/responses/attachments
      security:
      - iam-oauth2-schema:
        - Desk.articles.CREATE
      x-audience:
      - external-public
  /api/v1/articles/{articleId}/translations/{locale}/associateAttachments:
    post:
      tags:
      - ArticleAttachment
      summary: Attach files to translation
      description: This API attaches the files selected from the gallery to an article translation.
      operationId: associateAttachmentsToArticleTranslation
      parameters:
      - $ref: '#/components/parameters/articleId'
      - $ref: '#/components/parameters/locale'
      - $ref: ./Common.json#/components/parameters/orgId
      requestBody:
        $ref: ./FAQTranslation.json#/components/requestBodies/associateAttachmentsWithFAQRequestBody
      responses:
        '422':
          $ref: ./Common.json#/components/responses/invalidDataErrorResponse
        '200':
          $ref: ./FAQTranslation.json#/components/responses/articleAttachments
      security:
      - iam-oauth2-schema:
        - Desk.articles.CREATE
      x-audience:
      - external-public
components:
  parameters:
    locale:
      name: locale
      in: path
      required: true
      style: simple
      explode: false
      schema:
        type:
        - string
        - 'null'
        enum:
        - en
        - ja
        - zh
        - es
        - de
        - fr
        - tr
        - ru
        - pt
        - it
        - nl
        - da
        - sv
        - pl
        - ar
        - he
        - af
        - cs
        - fr-ca
        - bg
        - fi
        - el
        - hu
        - id
        - nb
        - ro
        - th
        - uk
        - vi
        - ur
        - hi
        - te
        - kn
        - ta
        - mr
        - ko
        - fa
        - bn
        - gu
        - ms
        - ml
        - en-gb
        - sk
        - hr
        - sl
        - zh_TW
        - zh-tw
        - ca
        - ka
        - kk
        - my
        - km
        - pt-br
        maxLength: 100
        minLength: 0
        pattern: ([a-zA-Z]{2,4}([-_][a-zA-Z]{2})?)
    articleId:
      name: articleId
      in: path
      required: true
      style: simple
      explode: false
      schema:
        type:
        - string
        - 'null'
        - integer
        format: int64
        pattern: ([0-9]+)
    attachmentType:
      name: attachmentType
      in: query
      description: Attachment type. Allowed values @file@, @blob@
      required: true
      style: form
      explode: true
      schema:
        type: string
        description: Attachment type. Allowed values @file@, @blob@
        enum:
        - file
  responses:
    uploadArticleAttachmentResponse:
      description: uploadArticleAttachmentResponse template definitions
      content:
        application/json:
          schema:
            type:
            - 'null'
            - object
            additionalProperties: false
            properties:
              resourceId:
                type:
                - string
                - 'null'
                maxLength: 100
                minLength: 0
                pattern: ^([a-zA-Z0-9]{37}|-1)$
              extension:
                type:
                - string
                - 'null'
                maxLength: 100
                minLength: 0
              name:
                type:
                - string
                - 'null'
                maxLength: 500
                minLength: 0
              filesize:
                type:
                - string
                - 'null'
                - integer
                format: int64
                pattern: ([0-9]+)
              url:
                type:
                - string
                - 'null'
                maxLength: 255
                minLength: 0
                pattern: (^(ht|f)tp(s?)\://[-.\w]*(/?)([a-zA-Z0-9\-\.\?\,\:\'/\\+=&%\$#_@]*)?$)
            required:
            - extension
            - filesize
            - name
            - resourceId
            - url
          examples:
            Valid responses Definitions:
              value:
                resourceId: 96b17694d63cd0f03eadbe4ae534f4ba993bb0
                extension: png
                name: Screen Shot 2018-12-28 at 7.21.58 PM.png
                filesize: '62'
                url: https://desk.zoho.com/galleryDocuments/edbsnf8e40a0174a649fa9b698be5f73211329e2a7513daad01207c771fbf50e1b3e33f3f5c1d654f5a4c7805862493f6bb8a?inline=true
  securitySchemes:
    iam-oauth2-schema:
      $ref: ./Common.json#/components/securitySchemes/iam-oauth2-schema
x-entity: Helpcenter