github.com/grokify/go-ringcentral-client@v0.3.31/codegen/specs-engagedigital_v3.0.0/openapi-spec_contents.json (about)

     1  {
     2    "openapi":"3.0.0",
     3    "info":{
     4      "description":"",
     5      "version":"1.0",
     6      "title":"Engage Digital API",
     7      "termsOfService":"https://developer.ringcentral.com"
     8    },
     9    "tags":[
    10      {
    11        "name":"Contents"
    12      }
    13    ],
    14    "paths":{
    15      "/contents":{
    16        "get":{
    17          "tags":[
    18            "Contents"
    19          ],
    20          "summary":"Contents",
    21          "operationId":"getAllContents",
    22          "description":"This method renders contents ordered by creation date (descending). Only contents in sources where token’s user has “read” permission are returned.\n\nAuthorization​: no.",
    23          "parameters":[
    24            {
    25              "name":"q",
    26              "in":"query",
    27              "description":"To filter contents on given query. Query works exactly like threads query but only have those keywords: intervention,identity, identity_group, source, status_in, thread or text. Order can be created_at.desc (default) or created_at.asc. e.g. q=intervention:\"7f946431b6eebffafae642cc\"%20source:\"d19c81948c137d86dac77216\" Please refer to ​Search & filtering parameters​ for more details.",
    28              "required":false,
    29              "schema":{
    30                "type":"string"
    31              }
    32            },
    33            {
    34              "name":"offset",
    35              "in":"query",
    36              "description":"The record index to start. Default value is 0.",
    37              "required":false,
    38              "schema":{
    39                "type":"integer",
    40                "format":"int32"
    41              }
    42            },
    43            {
    44              "name":"limit",
    45              "in":"query",
    46              "description":"The max number of records to return. Default value is 30, max value is 150.",
    47              "required":false,
    48              "schema":{
    49                "type":"integer",
    50                "format":"int32"
    51              }
    52            }
    53          ],
    54          "responses":{
    55            "200":{
    56              "description":"Success",
    57              "content":{
    58                "application/json":{
    59                  "schema":{
    60                    "$ref":"#/components/schemas/GetAllContentsResponse"
    61                  }
    62                }
    63              }
    64            }
    65          }
    66        },
    67        "post":{
    68          "tags":[
    69            "Contents"
    70          ],
    71          "summary":"Creating a content",
    72          "operationId":"createContent",
    73          "description":"This method allows you to create an new content. It can be a reply to another content or a content that initiate discussion. It use token’s user as content user if he is authorized. Content will be created in Dimelo Digital and pushed asynchronously to the source.\n\nReplying to a customer content is usually possible (unless the source/conversation is read only).\n\nComposing a content on the contrary depend on the source itself:\n* The source may not support it (and be purely reactive like Instagram, Messenger ...)\n* Some sources (usually public account) like Twitter or Facebook page allows to publish content without targeting specific individuals.\n* Some sources (usually non public media) require specific targeting (phone number for SMS, email address for email, customer_id ...) to be able to create a content. This is source specific and detailed under the generic parameters.\n\nAuthorization​: only users that can reply or initiate discussion (= compose) on given source. it renders also an error if in_reply_to isn’t synchronized or if in_reply_to content is not under an ​open intervention.",
    74          "parameters":[
    75            {
    76              "name":"author_id",
    77              "description":"The identity id of content. This parameter is not mandatory, by default it use the token’s user first identity on source.",
    78              "in":"query",
    79              "required":false,
    80              "schema":{
    81                "type":"string"
    82              }
    83            },
    84            {
    85              "name":"body",
    86              "description":"The content’s body. This parameter is mandatory.",
    87              "in":"query",
    88              "required":true,
    89              "schema":{
    90                "type":"string"
    91              }
    92            },
    93            {
    94              "name":"in_reply_to_id",
    95              "description":"The content’s id you want to reply to. If omitted, a new discussion will be created. If source does not support to initiate discussion this parameter is mandatory.",
    96              "in":"query",
    97              "required":false,
    98              "schema":{
    99                "type":"string"
   100              }
   101            },
   102            {
   103              "name":"private",
   104              "description":"Created contents are public by default, set this parameter to \"1\" in order to create a private reply. It is NOT supported on every source.",
   105              "in":"query",
   106              "required":false,
   107              "schema":{
   108                "type":"integer"
   109              }
   110            },
   111            {
   112              "name":"source_id",
   113              "description":"The source to create content to. If you specify `in_reply_to_id` parameter, source will be determined from it. Otherwise, this parameter is mandatory.",
   114              "in":"query",
   115              "required":false,
   116              "schema":{
   117                "type":"string"
   118              }
   119            },
   120            {
   121              "name":"attachment_ids[]",
   122              "description":"An array containing the attachments’ ids that need to be attached to this content.",
   123              "in":"query",
   124              "required":false,
   125              "explode":true,
   126              "schema":{
   127                "type":"array",
   128                "items":{
   129                  "type":"string"
   130                }
   131              }
   132            },
   133            {
   134              "name":"title",
   135              "description":"For an email source. The subject of the email. This parameter is mandatory when initiating a discussion.",
   136              "in":"query",
   137              "required":false,
   138              "schema":{
   139                "type":"string"
   140              }
   141            },
   142            {
   143              "name":"to[]",
   144              "description":"For an email or SMS source. For an email, an array containing the email addresses used in the “To” section of the email. This parameter is mandatory when initiating a discussion. For a SMS, the number the SMS will be sent to. It must start with 00 or +, example: +33634231224 or 0033634231224. This parameter is mandatory when initiating a discussion.",
   145              "in":"query",
   146              "required":false,
   147              "explode":true,
   148              "schema":{
   149                "type":"array",
   150                "items":{
   151                  "type":"string"
   152                }
   153              }
   154            },
   155            {
   156              "name":"cc[]",
   157              "description":"For an email source. An array containing the email addresses used in the “Cc” section of the email.",
   158              "in":"query",
   159              "required":false,
   160              "explode":true,
   161              "schema":{
   162                "type":"array",
   163                "items":{
   164                  "type":"string"
   165                }
   166              }
   167            },
   168            {
   169              "name":"bcc[]",
   170              "description":"For an email source. An array containing the email addresses used in the “Bcc” section of the email.",
   171              "in":"query",
   172              "required":false,
   173              "explode":true,
   174              "schema":{
   175                "type":"array",
   176                "items":{
   177                  "type":"string"
   178                }
   179              }
   180            }
   181          ],
   182          "responses":{
   183            "200":{
   184              "description":"Success",
   185              "content":{
   186                "application/json":{
   187                  "schema":{
   188                    "$ref":"#/components/schemas/Content"
   189                  }
   190                }
   191              }
   192            },
   193            "422":{
   194              "description":"Unprocessable Entity"
   195            }
   196          }
   197        }
   198      },
   199      "/contents/{contentId}":{
   200        "get":{
   201          "tags":[
   202            "Contents"
   203          ],
   204          "summary":"Getting a content from its id",
   205          "operationId":"getContent",
   206          "description":"This method renders a content from given id. If token’s user does not have “read” on content’s source a 404 HTTP response will be returned.\n\nAuthorization​: no.",
   207          "parameters":[
   208            {
   209              "name":"contentId",
   210              "in":"path",
   211              "required":true,
   212              "schema":{
   213                "type":"string"
   214              }
   215            }
   216          ],
   217          "responses":{
   218            "200":{
   219              "description":"Success",
   220              "content":{
   221                "application/json":{
   222                  "schema":{
   223                    "$ref":"#/components/schemas/Content"
   224                  }
   225                }
   226              }
   227            }
   228          }
   229        }
   230      },
   231      "/contents/{contentId}/update_categories":{
   232        "put":{
   233          "tags":[
   234            "Contents"
   235          ],
   236          "summary":"Categorizing a content",
   237          "operationId":"categorizeContent",
   238          "description":"This method updates the categories of a content. If token’s user does not have “read” on this content’s source a 404 HTTP response will be returned.\n\nAuthorization​: no.",
   239          "parameters":[
   240            {
   241              "name":"contentId",
   242              "in":"path",
   243              "required":true,
   244              "schema":{
   245                "type":"string"
   246              }
   247            },
   248            {
   249              "name":"category_ids[]",
   250              "description":"An array containing the new categories to set on the content.",
   251              "in":"query",
   252              "required":true,
   253              "explode":true,
   254              "schema":{
   255                "type":"array",
   256                "items":{
   257                  "type":"string"
   258                }
   259              }
   260            }
   261          ],
   262          "responses":{
   263            "200":{
   264              "description":"Success",
   265              "content":{
   266                "application/json":{
   267                  "schema":{
   268                    "$ref":"#/components/schemas/Content"
   269                  }
   270                }
   271              }
   272            }
   273          }
   274        }
   275      },
   276      "/contents/{contentId}/ignore":{
   277        "put":{
   278          "tags":[
   279            "Contents"
   280          ],
   281          "summary":"Ignoring a content",
   282          "operationId":"ignoreContent",
   283          "description":"Ignores a content. If token’s user does not have “read” on content’s source a 404 HTTP response will be returned.\n\nAuthorization​: no.",
   284          "parameters":[
   285            {
   286              "name":"contentId",
   287              "in":"path",
   288              "required":true,
   289              "schema":{
   290                "type":"string"
   291              }
   292            }
   293          ],
   294          "responses":{
   295            "200":{
   296              "description":"Success",
   297              "content":{
   298                "application/json":{
   299                  "schema":{
   300                    "$ref":"#/components/schemas/Content"
   301                  }
   302                }
   303              }
   304            },
   305            "404":{
   306              "description":"Not Found"
   307            }
   308          }
   309        }
   310      }
   311    },
   312    "servers":[
   313      {
   314        "url":"https://DOMAIN.api.engagement.dimelo.com/1.0"
   315      }
   316    ],
   317    "components":{
   318      "schemas":{
   319        "GetAllContentsResponse":{
   320          "properties":{
   321            "count":{
   322              "type":"integer",
   323              "format":"int32"
   324            },
   325            "limit":{
   326              "type":"integer",
   327              "format":"int32"
   328            },
   329            "offset":{
   330              "type":"integer",
   331              "format":"int32"
   332            },
   333            "records":{
   334              "type":"array",
   335              "items":{
   336                "$ref":"#/components/schemas/Content"
   337              }
   338            }
   339          }
   340        },
   341        "Content":{
   342          "required":[
   343            "id"
   344          ],
   345          "properties":{
   346            "id":{
   347              "type":"string"
   348            },
   349            "source_id":{
   350              "type":"string"
   351            },
   352            "source_url":{
   353              "type":"string"
   354            },
   355            "source_type":{
   356              "type":"string"
   357            },
   358            "thread_id":{
   359              "type":"string"
   360            },
   361            "in_reply_to_id":{
   362              "type":"string"
   363            },
   364            "in_reply_to_author_id":{
   365              "type":"string"
   366            },
   367            "author_id":{
   368              "type":"string"
   369            },
   370            "creator_id":{
   371              "type":"string"
   372            },
   373            "foreign_id":{
   374              "type":"string"
   375            },
   376            "type":{
   377              "type":"string"
   378            },
   379            "created_from":{
   380              "type":"string"
   381            },
   382            "private_message":{
   383              "type":"boolean"
   384            },
   385            "status":{
   386              "type":"string"
   387            },
   388            "intervention_id":{
   389              "type":"string"
   390            },
   391            "language":{
   392              "type":"string"
   393            },
   394            "body":{
   395              "type":"string"
   396            },
   397            "body_formatted":{
   398              "$ref":"#/components/schemas/ContentBodyFormatted"
   399            },
   400            "body_input_format":{
   401              "type":"string",
   402              "description":"values can be: text or html.",
   403              "enum":[
   404                "text",
   405                "html"
   406              ]
   407            },
   408            "title":{
   409              "type":"string"
   410            },
   411            "attachments_count":{
   412              "type":"integer"
   413            },
   414            "attachments":{
   415              "type":"array",
   416              "items":{
   417                "$ref":"#/components/schemas/ContentAttachment"
   418              }
   419            },
   420            "synchronization_status":{
   421              "type":"string"
   422            },
   423            "category_ids":{
   424              "description":"are content categories if none, they are default to intervention categories or thread categories",
   425              "type":"array",
   426              "items":{
   427                "type":"string"
   428              }
   429            },
   430            "created_at":{
   431              "type":"string",
   432              "format":"date-time"
   433            },
   434            "updated_at":{
   435              "type":"string",
   436              "format":"date-time"
   437            },
   438            "approval_required":{
   439              "type":"boolean"
   440            },
   441            "remotely_deleted":{
   442              "type":"boolean"
   443            },
   444            "published":{
   445              "type":"boolean"
   446            },
   447            "context_data":{
   448              "type":"object",
   449              "description":"is present only if the content has context_data associated. The context_data hash keys are the custom fields keys."
   450            }
   451          }
   452        },
   453        "ContentAttachment":{
   454          "properties":{
   455            "id":{
   456              "type":"string"
   457            },
   458            "created_at":{
   459              "type":"string",
   460              "format":"date-time"
   461            },
   462            "updated_at":{
   463              "type":"string",
   464              "format":"date-time"
   465            },
   466            "content_type":{
   467              "type":"string"
   468            },
   469            "size":{
   470              "type":"integer"
   471            },
   472            "filename":{
   473              "type":"string"
   474            },
   475            "foreign_id":{
   476              "type":"string"
   477            },
   478            "embed":{
   479              "type":"string"
   480            },
   481            "public?":{
   482              "type":"string"
   483            },
   484            "url":{
   485              "type":"string",
   486              "description":"You can download the attachments by using an API access token with the following URL: https://[your-domain].engagement.dimelo.com/attachments/[attachment_id]?access_token=[your_​ access_token]"
   487            }
   488          }
   489        },
   490        "ContentBodyFormatted":{
   491          "description":"always contains text a​nd​ html versions.",
   492          "properties":{
   493            "text":{
   494              "type":"string"
   495            },
   496            "html":{
   497              "type":"string"
   498            }
   499          }
   500        }
   501      }
   502    }
   503  }