openapi: 3.1.0 info: title: PTC ThingWorx REST DataShapes ThingTemplates API description: PTC ThingWorx REST API provides programmatic access to the ThingWorx IoT platform including thing management, property read/write, service execution, event subscription, and mashup data APIs using Application Key or OAuth authentication. ThingWorx is PTC's industrial IoT platform for digital twin and connected factory applications. version: 9.5.0 contact: name: PTC Support url: https://www.ptc.com/en/support license: name: PTC Software License url: https://www.ptc.com/en/legal-agreements servers: - url: https://{host}/Thingworx description: ThingWorx REST API variables: host: default: thingworx.example.com description: ThingWorx server hostname security: - appKey: [] - oauth2: [] tags: - name: ThingTemplates description: Thing template management paths: /ThingTemplates: get: operationId: listThingTemplates summary: List thing templates description: Returns all thing templates which define the shape (properties, services, events) of things. tags: - ThingTemplates parameters: - name: maxItems in: query schema: type: integer default: 500 responses: '200': description: Thing template list content: application/json: schema: $ref: '#/components/schemas/InfoTable' '401': $ref: '#/components/responses/Unauthorized' components: schemas: FieldDefinition: type: object properties: name: type: string description: type: string baseType: type: string enum: - STRING - INTEGER - LONG - NUMBER - BOOLEAN - DATETIME - JSON - INFOTABLE - THINGNAME - LOCATION ordinal: type: integer isPrimaryKey: type: boolean Error: type: object properties: Message: type: string Thread: type: string Code: type: integer DataShape: type: object description: A ThingWorx data shape definition properties: name: type: string description: type: string fieldDefinitions: type: object additionalProperties: $ref: '#/components/schemas/FieldDefinition' InfoTable: type: object description: ThingWorx InfoTable - the universal tabular data container properties: dataShape: $ref: '#/components/schemas/DataShape' rows: type: array items: type: object additionalProperties: true responses: Unauthorized: description: Authentication required or invalid content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: appKey: type: apiKey in: header name: appKey description: ThingWorx Application Key for authentication oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://thingworx.example.com/oauth/authorize tokenUrl: https://thingworx.example.com/oauth/token scopes: THINGWORX: Access ThingWorx REST API