Skip to content

Commit b9e6ef4

Browse files
Jobs-8982 content search api (#316)
1 parent d744896 commit b9e6ef4

1 file changed

Lines changed: 124 additions & 0 deletions

File tree

spec/openapi.yaml

Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)