@@ -307,6 +307,14 @@ tags:
307307 to a string that already exists in the project, the string will be
308308 overwritten.
309309
310+ - name: Content Search
311+ description: |-
312+ The Content Search API allows you to search for strings within a Smartling project.
313+ You can filter by string text, hashcode, namespace, or any combination of available filters.
314+ externalDocs:
315+ url: https://content-search-api-reference.smartling.com/
316+ description: Content Search Documentation
317+
310318 - name: Tags
311319 description: |-
312320 Tags can help you manage your strings. The Tags API allows you to
@@ -4132,6 +4140,67 @@ paths:
41324140 /issues-api/v2/dictionary/issue-types:
41334141 $ref: './spec/issues/dictionaries.yaml#/x-paths/issue_types'
41344142
4143+ #
4144+ # Content Search API
4145+ #
4146+ '/strings-view-service-graphql-api/v2/projects/{projectId}/graphql':
4147+ post:
4148+ summary: Search strings
4149+ description: |-
4150+ Search for strings in your project using GraphQL.
4151+
4152+ **Example Query:**
4153+ ```graphql
4154+ query Search($searchStringsFilter: SearchStringsFilter!) {
4155+ searchStrings(searchStringsFilter: $searchStringsFilter) {
4156+ content {
4157+ source {
4158+ hashcode
4159+ }
4160+ translations {
4161+ translationForms {
4162+ translationText
4163+ pluralForm
4164+ }
4165+ }
4166+ }
4167+ totalCount
4168+ totalWordCount
4169+ __typename
4170+ }
4171+ }
4172+ ```
4173+ tags:
4174+ - Content Search
4175+ operationId: searchStrings
4176+ parameters:
4177+ - in: path
4178+ name: projectId
4179+ required: true
4180+ schema:
4181+ format: uuid
4182+ type: string
4183+ requestBody:
4184+ required: true
4185+ content:
4186+ application/json:
4187+ example:
4188+ variables:
4189+ searchStringsFilter:
4190+ localeIds: [ "es-LA" ]
4191+ workflowStepsFilter:
4192+ workflowStepUids: [ "a58fab71dce6", "f5f168bb13b1" ]
4193+ limit: 1
4194+ responses:
4195+ '200':
4196+ content:
4197+ application/json:
4198+ schema:
4199+ $ref: '#/components/schemas/ContentSearchResponse'
4200+ description: OK
4201+ 500:
4202+ $ref: '#/components/responses/Error500ResponseDefinition'
4203+
41354204#
41364205# Strings API
41374206#
@@ -10960,6 +11029,61 @@ components:
1096011029 type: string
1096111030 description: Custom field value.
1096211031 example: Finance Dept
11032+ ContentSearchResponse:
11033+ type: object
11034+ properties:
11035+ data:
11036+ type: object
11037+ properties:
11038+ searchStrings:
11039+ type: object
11040+ properties:
11041+ content:
11042+ type: array
11043+ description: Array of string content with translations
11044+ items:
11045+ type: object
11046+ properties:
11047+ source:
11048+ type: object
11049+ properties:
11050+ hashcode:
11051+ type: string
11052+ description: Unique hash identifier for the source string
11053+ example: "0214054db2146bef256852cd0d27f936"
11054+ translations:
11055+ type: array
11056+ description: Array of translations for the source string
11057+ items:
11058+ type: object
11059+ properties:
11060+ translationForms:
11061+ type: array
11062+ description: Translation text variations (including plural forms)
11063+ items:
11064+ type: object
11065+ properties:
11066+ translationText:
11067+ type: string
11068+ description: The translated text
11069+ example: "El rápido zorro marrón salta sobre el perro perezoso."
11070+ pluralForm:
11071+ type: string
11072+ nullable: true
11073+ description: Plural form identifier if applicable
11074+ example: ONE
11075+ totalCount:
11076+ type: integer
11077+ description: Total number of strings found
11078+ example: 198
11079+ totalWordCount:
11080+ type: integer
11081+ description: Total word count
11082+ example: 644
11083+ __typename:
11084+ type: string
11085+ description: GraphQL type name
11086+ example: "StringGroup"
1096311087 CreateStringResponse:
1096411088 type: object
1096511089 required:
0 commit comments