openapi: 3.2.0 info: description: The Open Agentic Schema Framework (OASF) server API allows to access the JSON schema definitions and to validate and translate objects. license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html title: OASF Schema Translation API version: 0.6.0 x-provenance: method: harvested authored_by: AGNTCY (Outshift by Cisco) harvested_by: API Evangelist harvested_on: '2026-08-19' first_party: true provider_published: true source_host: agntcy.org / outshift.com note: 'Four first-party machine-readable contracts: the Agent Connect Protocol OpenAPI 3.1.1, the OASF Schema API, and two AGNTCY Identity OpenAPI 3.0.3 documents. schema.oasf.outshift.com is the one genuinely callable AGNTCY-hosted API (unauthenticated, 200).' x-evidence: - type: source url: https://spec.acp.agntcy.org/ - type: source url: https://schema.oasf.outshift.com/doc - type: source url: https://identity-docs.outshift.com/api/openapi/service/v1alpha1/openapi.yaml tags: - name: Translation paths: /api/1.1.0/translate/domain: post: description: The purpose of this API is to translate the provided domain class data using the OASF schema. Each class is represented as a JSON object, while multiple classes are encoded as a JSON array of objects. operationId: SchemaWeb.SchemaController.translate_domain parameters: - description: 'Controls how attribute names and enumerated values are translated.
The format is _mode=[1|2|3]. The default mode is `1` -- translate enumerated values. |Value|Description|Example| |-----|-----------|-------| |1|Translate only the enumerated values|Untranslated:
{"id": 101}

Translated:
{"id": 101, "name": "technology/internet_of_things"}
Note: Classes are automatically enriched with both id and name. For enum fields with siblings, the sibling field is also added.| |2|Translate enumerated values and attribute names|Untranslated:
{"id": 101}

Translated:
{"ID": 101, "Name": "technology/internet_of_things"}
Note: Attribute names are translated to their captions. Classes are automatically enriched with both id and name.| |3|Verbose translation|Untranslated:
{"id": 101}

Translated:
{"id": {"caption": "Internet of Things (IoT)","name": "ID","type": "integer_t","value": 101}, "name": {"caption": "Name","name": "Name","type": "string_t","value": "technology/internet_of_things"}}| ' in: query name: _mode required: false schema: type: number default: 1 - allowEmptyValue: true description: " Controls how spaces in the translated attribute names are handled.
\n By default, the translated attribute names may contain spaces (for example, Class Time).\n You can remove the spaces or replace the spaces with another string. For example, if you\n want to forward to a database that does not support spaces.
\n The format is _spaces=[<empty>|string].\n\n |Value|Description|Example|\n |-----|-----------|-------|\n |<empty>|The spaces in the translated names are removed.|Untranslated:
{\"id\": 101}

Translated:
{\"ID\": \"Internet of Things (IoT)\"}|\n |string|The spaces in the translated names are replaced with the given string.|For example, the string is an underscore (_).
Untranslated:
{\"id\": 101}

Translated:
{\"ID\": \"Internet of Things (IoT)\"}|\n" in: query name: _spaces required: false schema: type: string responses: '200': description: Success '400': description: Bad Request - unexpected body, expected a JSON object or array summary: Translate domain class tags: - Translation requestBody: content: application/json: schema: type: object description: The domain class data to be translated required: true /api/1.1.0/translate/module: post: description: The purpose of this API is to translate the provided module class data using the OASF schema. Each class is represented as a JSON object, while multiple classes are encoded as a JSON array of objects. operationId: SchemaWeb.SchemaController.translate_module parameters: - description: 'Controls how attribute names and enumerated values are translated.
The format is _mode=[1|2|3]. The default mode is `1` -- translate enumerated values. |Value|Description|Example| |-----|-----------|-------| |1|Translate only the enumerated values|Untranslated:
{"id": 101}

Translated:
{"id": 101, "name": "core/observability"}
Note: Classes are automatically enriched with both id and name. For enum fields with siblings, the sibling field is also added.| |2|Translate enumerated values and attribute names|Untranslated:
{"id": 101}

Translated:
{"ID": 101, "Name": "core/observability"}
Note: Attribute names are translated to their captions. Classes are automatically enriched with both id and name.| |3|Verbose translation|Untranslated:
{"id": 101}

Translated:
{"id": {"caption": "Observability","name": "ID","type": "integer_t","value": 101}, "name": {"caption": "Name","name": "Name","type": "string_t","value": "core/observability"}}| ' in: query name: _mode required: false schema: type: number default: 1 - allowEmptyValue: true description: " Controls how spaces in the translated attribute names are handled.
\n By default, the translated attribute names may contain spaces (for example, Class Time).\n You can remove the spaces or replace the spaces with another string. For example, if you\n want to forward to a database that does not support spaces.
\n The format is _spaces=[<empty>|string].\n\n |Value|Description|\n |-----|-----------|\n |<empty>|The spaces in the translated names are removed.|\n |string|The spaces in the translated names are replaced with the given string.|\n" in: query name: _spaces required: false schema: type: string responses: '200': description: Success '400': description: Bad Request - unexpected body, expected a JSON object or array summary: Translate module class tags: - Translation requestBody: content: application/json: schema: type: object description: The module class data to be translated required: true /api/1.1.0/translate/object/{name}: post: description: The purpose of this API is to translate the provided object data using the OASF schema. Each class is represented as a JSON object, while multiple classes are encoded as a JSON array of objects. operationId: SchemaWeb.SchemaController.translate_object parameters: - description: Object name in: path name: name required: true schema: type: string - description: 'Controls how attribute names and enumerated values are translated.
The format is _mode=[1|2|3]. The default mode is `1` -- translate enumerated values. |Value|Description|Example| |-----|-----------|-------| |1|Translate only the enumerated values|Untranslated:
{"type": 1}

Translated:
{"type": 1}
Note: For enum fields with siblings, the sibling field is added automatically.| |2|Translate enumerated values and attribute names|Untranslated:
{"type": 1}

Translated:
{"Type": 1}
Note: Attribute names are translated to their captions.| |3|Verbose translation|Untranslated:
{"type": 1}

Translated:
{"type": {"caption": "Example Type","name": "Type","type": "integer_t","value": 1}}| ' in: query name: _mode required: false schema: type: number default: 1 - allowEmptyValue: true description: " Controls how spaces in the translated attribute names are handled.
\n By default, the translated attribute names may contain spaces (for example, Class Time).\n You can remove the spaces or replace the spaces with another string. For example, if you\n want to forward to a database that does not support spaces.
\n The format is _spaces=[<empty>|string].\n\n |Value|Description|\n |-----|-----------|\n |<empty>|The spaces in the translated names are removed.|\n |string|The spaces in the translated names are replaced with the given string.|\n" in: query name: _spaces required: false schema: type: string responses: '200': description: Success '400': description: Bad Request - unexpected body, expected a JSON object or array summary: Translate object tags: - Translation requestBody: content: application/json: schema: type: object description: The object data to be translated required: true /api/1.1.0/translate/skill: post: description: The purpose of this API is to translate the provided skill class data using the OASF schema. Each class is represented as a JSON object, while multiple classes are encoded as a JSON array of objects. operationId: SchemaWeb.SchemaController.translate_skill parameters: - description: 'Controls how attribute names and enumerated values are translated.
The format is _mode=[1|2|3]. The default mode is `1` -- translate enumerated values. |Value|Description|Example| |-----|-----------|-------| |1|Translate only the enumerated values|Untranslated:
{"id": 10101}

Translated:
{"id": 10101, "name": "analytical_skills/natural_language_processing/contextual_comprehension"}
Note: Classes are automatically enriched with both id and name. For enum fields with siblings, the sibling field is also added.| |2|Translate enumerated values and attribute names|Untranslated:
{"id": 10101}

Translated:
{"ID": 10101, "Name": "analytical_skills/natural_language_processing/contextual_comprehension"}
Note: Attribute names are translated to their captions. Classes are automatically enriched with both id and name.| |3|Verbose translation|Untranslated:
{"id": 10101}

Translated:
{"id": {"caption": "Contextual Comprehension","name": "ID","type": "integer_t","value": 10101}, "name": {"caption": "Name","name": "Name","type": "string_t","value": "analytical_skills/natural_language_processing/contextual_comprehension"}}| ' in: query name: _mode required: false schema: type: number default: 1 - allowEmptyValue: true description: " Controls how spaces in the translated attribute names are handled.
\n By default, the translated attribute names may contain spaces (for example, Class Time).\n You can remove the spaces or replace the spaces with another string. For example, if you\n want to forward to a database that does not support spaces.
\n The format is _spaces=[<empty>|string].\n\n |Value|Description|Example|\n |-----|-----------|-------|\n |<empty>|The spaces in the translated names are removed.|Untranslated:
{\"id\": 10101}

Translated:
{\"ID\": \"Contextual Comprehension\"}|\n |string|The spaces in the translated names are replaced with the given string.|For example, the string is an underscore (_).
Untranslated:
{\"id\": 10101}

Translated:
{\"ID\": \"Contextual Comprehension\"}|\n" in: query name: _spaces required: false schema: type: string responses: '200': description: Success '400': description: Bad Request - unexpected body, expected a JSON object or array summary: Translate skill class tags: - Translation requestBody: content: application/json: schema: type: object description: The skill class data to be translated required: true