Возможности API. Сервис для просмотра Viewing Service
В API есть две основные операции – создание и чтение. Обращение к методам создания модели осуществляется с помощью POST запросов, а к методам чтения, с помощью GET:
- API для создания (Create API) предназначено для вызова генерации объекта для просмотра. В большинстве случаев при этом происходи запуск процесса извлечения данных.
- API для чтения предназначено для вызова методов просмотра модели по заданному URN (Uniform Resource Name – Единообразное название ресурса). Существует несколько опций для вызова GET запросов – По умолчанию, Все, Статус, с помощью которых определяется что же будет возвращено в результате.
Обратите внимание, что так как видимая область генерируется постепенно и мы разрешаем работать с объектом для просмотра даже когда процесс извлечения данных еще не завершен, объект просмотра, возвращаемый GET API может быть не полным.
Для каждой ветки с типом «Геометрия» есть свойство Статус, которое отображает состояние (В ожидании, В процессе, Успешно, Ошибка, и т.д.). Обычно, каркас модели генерируется в первую очередь (зависит от формата исходной модели). Клиент должен решить, как представить в интерфейсе статус каждого вложенного узла объекта для просмотра, также, как и общий статус извлечения данных.
API для регистрации
API для регистрации – исходная точка процесса извлечения данных для заданного файла модели, или копирование существующей модели из одного URN в другой.
POST
/viewingservice/v1/register
Примеры запросов:
- POST /viewingservice/v1/register HTTP/1.1
- Content-Type: application/json
- Content-Length: 103
- {
- "urn":"dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y="
- }
- POST /viewingservice/v1/register HTTP/1.1
- Content-Type: application/json
- Content-Length: 103
- {
- "urn":"dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "from":"dXJuOmFkc2subml0cm9nZW46ZnMuZmlsZToxMmZhZTUwZDQ0Yjc0NzAxYjFlYzAxNDU2NzEzNDI0NA=="
- }
- POST /viewingservice/v1/register HTTP/1.1
- Content-Type: application/json
- Content-Length: 103
- {
- "urn":"dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "from":"dXJuOmFkc2subml0cm9nZW46ZnMuZmlsZToxMmZhZTUwZDQ0Yjc0NzAxYjFlYzAxNDU2NzEzNDI0NA==",
- "owner":"dXJuOmFkc2subml0cm9nZW46ZnMuZmlsZTo0NjFkMjAxNTJjMmE0ZDRjYTE0MTZmN2IyOTllOTEyNQ=="
- }
- POST /viewingservice/v1/register HTTP/1.1
- Content-Type: application/json
- Content-Length: 103
- {
- "urn":"dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "from":"dXJuOmFkc2subml0cm9nZW46ZnMuZmlsZToxMmZhZTUwZDQ0Yjc0NzAxYjFlYzAxNDU2NzEzNDI0NA==",
- "filename":"空调通风平面图.dwf"
- }
- POST /viewingservice/v1/register HTTP/1.1
- Content-Type: application/json
- Content-Length: 103
- {
- "urn":"dXJuOmFkc2suczM6ZnMuZmlsZTovdmlld2luZ3NlcnZpY2UvYXBpL3NhbXBsZWNvcHkuZHdm",
- "from-urn":"dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "owner":"dXJuOmFkc2subml0cm9nZW46ZnMuZmlsZTo0NjFkMjAxNTJjMmE0ZDRjYTE0MTZmN2IyOTllOTEyNQ=="
- }
Параметры запроса:
- urn – обязательный. Закодированный в Base64 исходный URN
- from – не обязательный. Закодированный в Base64 URN для скачивания. Если не задан, берется исходный URN
- from-urn – не обязательный. Закодированный в Base64 исходный URN. Если задан, то это означает, что идет запрос на копирование, а не на преобразование. form-urn не может совпадать с urn.
- owner – не обязательный. Закодированный в Base64 URN для Адаптации Сервиса Просмотра (Viewing Service Adapter - VSA).
- filename – не обязательный. Название входного файла. Если не задано, то оно будет получено из исходного URN.
Заголовки запроса:
- Content-Type – обязательный. Должен быть application/json; charset=utf-8
- x-ads-test – не обязательный. По умолчанию равен false. Преобразование не будет запущено, в случае если значение равно true.
Статусы:
- 200 – OK. Извлечение данных успешно запущено. Имейте ввиду, данный статус не означает, что процесс завершен.
- 201– Создан.
- Файл уже был зарегистрирован. Объект просмотра уже доступен для этого файла.
- В режиме копирования, если копируемый файл уже существует
- 400 – не верный запрос. Например, формат URN неправильный
- 500 – Внутренняя ошибка сервера. На сервере произошла непредвиденная ошибка.
API получения объекта для просмотра
Существует три варианта вызова API – По умолчанию, Все, Статус, с помощью которых определяется что же будет возвращено в результате.
API получения объекта для просмотра (По умолчанию)
Это поведение по умолчанию для API получения объекта. Запрос возвратит объект для просмотра без какой-либо дополнительной информаци.
GET
/viewingservice/v1/{urn}?guid=$GUID$
Пример запроса:
- GET /viewingservice/v1/dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y= HTTP/1.1
Пример ответа:
- HTTP/1.1 200 OK
- Content-Type: application/json
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff12",
- "type": "geometry",
- "name": "This is a 3d sheet",
- "progress": "30%",
- "role": "3d",
- "status": "Pending",
- "hasThumbnail": "true",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff22",
- "type": "view",
- "camera": [-109.20826,
- 45.292778,
- -102.969894,
- -36.691547,
- -10.04752,
- 1.024357,
- 0.267683,
- 0.91545,
- 0.300495,
- 0.014248,
- 14.234406,
- 70.184082,
- 1],
- "hasThumbnail": "false",
- "messages": [{
- "type": "info",
- "code": "111",
- "message": "default camera settings"
- }],
- "name": "lastCamera view",
- "progress": "30%",
- "role": "3d",
- "status": "Pending"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff33",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-fysc",
- "progress": "30%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.fysc"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff60",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-svf",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.svf"
- }]
- }
Параметры запроса:
- urn – обязательный. Закодированный в Base64 исходный URN
- guid – не обязательный. Идентификатор подмножества объекта для просмотра.
Статусы:
- 200 – OK. Объект найден. Информация по нему возвращена.
- 400 – не верный запрос. Например, формат URN неправильный
- 404 – не найден. По заданному URN объект не найден
- 500 – Внутренняя ошибка сервера. На сервере произошла непредвиденная ошибка.
API получения объекта для просмотра (Все)
API вернет полный объект для просмотра. Пример ниже – это хорошая иллюстрация того, что может быть включено в полный объект.
GET
/viewingservice/v1/{urn}/all?guid=$GUID$
Пример запроса:
- GET /viewingservice/v1/dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/all HTTP/1.1
Пример ответа:
- HTTP/1.1 200 OK
- Content-Type: application/json
- {
- "version": "1.0",
- "urn": "dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "guid": "dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "name": "sample.dwf",
- "type": "design",
- "progress": "30%",
- "status": "Pending",
- "hasThumbnail": "true",
- "messages": [{
- "type": "warning",
- "code": "123",
- "message": "this is a 123 warning"
- },
- {
- "type": "error",
- "code": "234",
- "message": "this is a 234 error"
- },
- {
- "type": "info",
- "code": "334",
- "message": "this is a 334 info"
- }],
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff02",
- "type": "folder",
- "channel": "dwf-dwg",
- "hasThumbnail": "false",
- "name": "DWG generation",
- "role": "conversion",
- "status": "on-demand"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dfe02",
- "type": "folder",
- "channel": "dwf-ivt",
- "hasThumbnail": "false",
- "name": "IVT conversion",
- "progress": "Complete",
- "role": "conversion",
- "status": "Success",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff44",
- "type": "resource",
- "messages": [{
- "type": "warning",
- "code": "666",
- "message": "model structure could not be preserved"
- }],
- "mime": "application/autodesk-ivt",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_dwf.ivt"
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dee02",
- "type": "folder",
- "channel": "dwf-vewable",
- "hasThumbnail": "true",
- "name": "sheets",
- "progress": "30%",
- "role": "viewable",
- "status": "Pending",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff12",
- "type": "geometry",
- "hasThumbnail": "true",
- "name": "This is a 3d sheet",
- "progress": "30%",
- "role": "3d",
- "status": "Pending",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff22",
- "type": "view",
- "camera": [-109.20826,
- 45.292778,
- -102.969894,
- -36.691547,
- -10.04752,
- 1.024357,
- 0.267683,
- 0.91545,
- 0.300495,
- 0.014248,
- 14.234406,
- 70.184082,
- 1],
- "hasThumbnail": "false",
- "messages": [{
- "type": "info",
- "code": "111",
- "message": "default camera settings"
- }],
- "name": "lastCamera view",
- "progress": "30%",
- "role": "3d",
- "status": "Pending"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff33",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-fysc",
- "progress": "30%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.fysc",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff55",
- "type": "resource",
- "mime": "image/png",
- "resolution": [580,
- 580],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_580x580.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff57",
- "type": "resource",
- "mime": "image/png",
- "resolution": [188,
- 188],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_188x188.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff58",
- "type": "resource",
- "mime": "image/png",
- "resolution": [120,
- 120],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_120x120.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff59",
- "type": "resource",
- "mime": "image/png",
- "resolution": [58,
- 58],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_58x58.png"
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff60",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-svf",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.svf",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff61",
- "type": "resource",
- "mime": "image/png",
- "resolution": [580,
- 580],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_580x580.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff62",
- "type": "resource",
- "mime": "image/png",
- "resolution": [188,
- 188],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_188x188.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff63",
- "type": "resource",
- "mime": "image/png",
- "resolution": [120,
- 120],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_120x120.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff64",
- "type": "resource",
- "mime": "image/png",
- "resolution": [58,
- 58],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_58x58.png"
- }]
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff65",
- "type": "geometry",
- "hasThumbnail": "true",
- "name": "This is a 2d sheet",
- "progress": "20%",
- "role": "2d",
- "status": "Pending",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff66",
- "type": "view",
- "hasThumbnail": "false",
- "name": "zoom",
- "role": "2d",
- "viewbox": [-109.20826,
- 45.292778,
- -102.969894,
- -36.691547]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff67",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-fydo",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0.fydo",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff68",
- "type": "resource",
- "mime": "image/png",
- "resolution": [580,
- 580],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_fydo_01_thumb_580x580.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff69",
- "type": "resource",
- "mime": "image/png",
- "progress": "Complete",
- "resolution": [188,
- 188],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_fydo_01_thumb_188x188.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff70",
- "type": "resource",
- "mime": "image/png",
- "resolution": [120,
- 120],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_fydo_01_thumb_120x120.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff71",
- "type": "resource",
- "mime": "image/png",
- "resolution": [58,
- 58],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_fydo_01_thumb_58x58.png"
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff72",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-svg",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0.svg",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff73",
- "type": "resource",
- "mime": "image/png",
- "resolution": [580,
- 580],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_svg_01_thumb_580x580.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff74",
- "type": "resource",
- "mime": "image/png",
- "resolution": [188,
- 188],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_svg_01_thumb_188x188.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff75",
- "type": "resource",
- "mime": "image/png",
- "resolution": [120,
- 120],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_svg_01_thumb_120x120.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff76",
- "type": "resource",
- "mime": "image/png",
- "resolution": [58,
- 58],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0_svg_01_thumb_58x58.png"
- }]
- }]
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff77",
- "type": "resource",
- "mime": "application/autodesk-db",
- "name": "property db",
- "progress": "Complete",
- "role": "Autodesk.CloudPlatform.PropertyDatabase",
- "status": "Success",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/section_properties.db"
- }]
- }
Еще один пример запроса:
- GET /viewingservice/v1/dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/all?guid=067e6162-3b6f-4ae2-a171-2470b63dff12 HTTP/1.1
И результат:
- HTTP/1.1 200 OK
- Content-Type: application/json
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff12",
- "type": "geometry",
- "name": "This is a 3d sheet",
- "progress": "30%",
- "role": "3d",
- "status": "Pending",
- "hasThumbnail": "true",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff22",
- "type": "view",
- "camera": [-109.20826,
- 45.292778,
- -102.969894,
- -36.691547,
- -10.04752,
- 1.024357,
- 0.267683,
- 0.91545,
- 0.300495,
- 0.014248,
- 14.234406,
- 70.184082,
- 1],
- "hasThumbnail": "false",
- "messages": [{
- "type": "info",
- "code": "111",
- "message": "default camera settings"
- }],
- "name": "lastCamera view",
- "progress": "30%",
- "role": "3d",
- "status": "Pending"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff33",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-fysc",
- "progress": "30%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.fysc",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff55",
- "type": "resource",
- "mime": "image/png",
- "resolution": [580,
- 580],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_580x580.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff57",
- "type": "resource",
- "mime": "image/png",
- "resolution": [188,
- 188],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_188x188.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff58",
- "type": "resource",
- "mime": "image/png",
- "resolution": [120,
- 120],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_120x120.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff59",
- "type": "resource",
- "mime": "image/png",
- "resolution": [58,
- 58],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_fysc_01_thumb_58x58.png"
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff60",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-svf",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.svf",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff61",
- "type": "resource",
- "mime": "image/png",
- "resolution": [580,
- 580],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_580x580.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff62",
- "type": "resource",
- "mime": "image/png",
- "resolution": [188,
- 188],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_188x188.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff63",
- "type": "resource",
- "mime": "image/png",
- "resolution": [120,
- 120],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_120x120.png"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff64",
- "type": "resource",
- "mime": "image/png",
- "resolution": [58,
- 58],
- "role": "thumbnail",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_svf_01_thumb_58x58.png"
- }]
- }]
- }
Параметры запроса:
- urn – обязательный. Закодированный в Base64 исходный URN
- guid – не обязательный. Идентификатор подмножества объекта для просмотра.
Статусы:
- 200 – OK. Объект найден. Информация по нему возвращена.
- 400 – не верный запрос. Например, формат URN неправильный
- 404 – не найден. По заданному URN объект не найден
- 500 – Внутренняя ошибка сервера. На сервере произошла непредвиденная ошибка.
API получения объекта для просмотра (Статус)
API вернет только статус для всех узлов объекта, для которых важно его состояние.
GET
/viewingservice/v1/{urn}/status?guid=$GUID$
Пример запроса:
- GET /viewingservice/v1/dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/status HTTP/1.1
Пример ответа:
- HTTP/1.1 200 OK
- Content-Type: application/json
- {
- "version": "1.0",
- "urn": "dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "guid": "dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=",
- "name": "sample.dwf",
- "type": "design",
- "progress": "30%",
- "status": "Pending",
- "hasThumbnail": "true",
- "messages": [{
- "type": "warning",
- "code": "123",
- "message": "this is a 123 warning"
- },
- {
- "type": "error",
- "code": "234",
- "message": "this is a 234 error"
- },
- {
- "type": "info",
- "code": "334",
- "message": "this is a 334 info"
- }],
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff02",
- "type": "folder",
- "hasThumbnail": "false",
- "name": "DWG generation",
- "role": "conversion",
- "status": "on-demand"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dfe02",
- "type": "folder",
- "hasThumbnail": "false",
- "name": "IVT conversion",
- "progress": "Complete",
- "role": "conversion",
- "status": "Success",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff44",
- "type": "resource",
- "messages": [{
- "type": "warning",
- "code": "666",
- "message": "model structure could not be preserved"
- }],
- "mime": "application/autodesk-ivt",
- "size": 12726,
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0_dwf.ivt"
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dee02",
- "type": "folder",
- "hasThumbnail": "true",
- "name": "sheets",
- "progress": "30%",
- "role": "viewable",
- "status": "Pending",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff12",
- "type": "geometry",
- "hasThumbnail": "true",
- "name": "This is a 3d sheet",
- "progress": "30%",
- "role": "3d",
- "status": "Pending",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff22",
- "type": "view",
- "camera": [-109.20826,
- 45.292778,
- -102.969894,
- -36.691547,
- -10.04752,
- 1.024357,
- 0.267683,
- 0.91545,
- 0.300495,
- 0.014248,
- 14.234406,
- 70.184082,
- 1],
- "hasThumbnail": "false",
- "messages": [{
- "type": "info",
- "code": "111",
- "message": "default camera settings"
- }],
- "name": "lastCamera view",
- "progress": "30%",
- "role": "3d",
- "status": "Pending"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff33",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-fysc",
- "progress": "30%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.fysc"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff60",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-svf",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.svf"
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff65",
- "type": "geometry",
- "hasThumbnail": "true",
- "name": "This is a 2d sheet",
- "progress": "20%",
- "role": "2d",
- "status": "Pending",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff66",
- "type": "view",
- "hasThumbnail": "false",
- "name": "zoom",
- "role": "2d",
- "viewbox": [-109.20826,
- 45.292778,
- -102.969894,
- -36.691547]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff67",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-fydo",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0.fydo"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff72",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-svg",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/2/0.svg"
- }]
- }]
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff77",
- "type": "resource",
- "mime": "application/autodesk-db",
- "name": "property db",
- "progress": "Complete",
- "role": "Autodesk.CloudPlatform.PropertyDatabase",
- "status": "Success",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/section_properties.db"
- }]
- }
Еще пример запроса:
- GET /viewingservice/v1/dXJuOmFkc2suczM2Y=/status?guid=067e6162-3b6f-4ae2-a171-2470b63dff12 HTTP/1.1
И ответа:
- HTTP/1.1 200 OK
- Content-Type: application/json
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff12",
- "type": "geometry",
- "name": "This is a 3d sheet",
- "progress": "30%",
- "role": "3d",
- "status": "Pending",
- "hasThumbnail": "true",
- "children": [{
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff22",
- "type": "view",
- "camera": [-109.20826,
- 45.292778,
- -102.969894,
- -36.691547,
- -10.04752,
- 1.024357,
- 0.267683,
- 0.91545,
- 0.300495,
- 0.014248,
- 14.234406,
- 70.184082,
- 1],
- "hasThumbnail": "false",
- "messages": [{
- "type": "info",
- "code": "111",
- "message": "default camera settings"
- }],
- "name": "lastCamera view",
- "progress": "30%",
- "role": "3d",
- "status": "Pending"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff33",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-fysc",
- "progress": "30%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.fysc"
- },
- {
- "guid": "067e6162-3b6f-4ae2-a171-2470b63dff60",
- "type": "resource",
- "hasThumbnail": "true",
- "mime": "application/autodesk-svf",
- "progress": "20%",
- "role": "graphics",
- "status": "Pending",
- "urn": "urn:adsk.viewing:fs.file:dXJuOmFkc2suczM6pY2UvYXBpL3NhbXBsZS5kd2Y=/output/1/0.svf"
- }]
- }
Параметры запроса:
- urn – обязательный. Закодированный в Base64 исходный URN
- guid – не обязательный. Идентификатор подмножества объекта для просмотра.
Статусы:
- 200 – OK. Объект найден. Информация по нему возвращена.
- 400 – не верный запрос. Например, формат URN неправильный
- 404 – не найден. По заданному URN объект не найден
- 500 – Внутренняя ошибка сервера. На сервере произошла непредвиденная ошибка.
Источник: https://developer.autodesk.com/api/view-and-data-api/#viewing-service
Обсуждение: http://adn-cis.org/forum/index.php?topic=2867
Опубликовано 19.07.2015Отредактировано 20.07.2015 в 10:29:42