Поделиться через


Api Operation - Create Or Update

Создает новую операцию в API или обновляет существующую.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/apis/{apiId}/operations/{operationId}?api-version=2024-05-01

Параметры URI

Имя В Обязательно Тип Описание
apiId
path True

string

minLength: 1
maxLength: 256
pattern: ^[^*#&+:<>?]+$

Идентификатор редакции API. Должен быть уникальным в текущем экземпляре службы управления API. Имеется не текущая редакция; rev=n как суффикс, где n является номером редакции.

operationId
path True

string

minLength: 1
maxLength: 80

Идентификатор операции в API. Должен быть уникальным в текущем экземпляре службы управления API.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

Имя группы ресурсов. Имя не учитывает регистр.

serviceName
path True

string

minLength: 1
maxLength: 50
pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

Имя службы управления API.

subscriptionId
path True

string (uuid)

Идентификатор целевой подписки. Значение должно быть UUID.

api-version
query True

string

minLength: 1

Версия API, используемая для этой операции.

Заголовок запроса

Имя Обязательно Тип Описание
If-Match

string

ETag сущности. Не требуется при создании сущности, но требуется при обновлении сущности.

Текст запроса

Имя Обязательно Тип Описание
properties.displayName True

string

minLength: 1
maxLength: 300

Имя операции.

properties.method True

string

Допустимый метод операции HTTP. Типичные методы HTTP, такие как GET, PUT, POST, но не ограничены только ими.

properties.urlTemplate True

string

minLength: 1
maxLength: 1000

Относительный шаблон URL-адреса, определяющий целевой ресурс для этой операции. Может включать параметры. Пример: /customers/{cid}/orders/{oid}/?date={date}

properties.description

string

maxLength: 1000

Описание операции. Может включать теги форматирования HTML.

properties.policies

string

Политики операций

properties.request

RequestContract

Сущность, содержащая сведения о запросе.

properties.responses

ResponseContract[]

Массив ответов операций.

properties.templateParameters

ParameterContract[]

Коллекция параметров шаблона URL-адреса.

Ответы

Имя Тип Описание
200 OK

OperationContract

Операция успешно обновлена.

Заголовки

ETag: string

201 Created

OperationContract

Операция успешно создана.

Заголовки

ETag: string

Other Status Codes

ErrorResponse

Ответ на ошибку, описывающий причину сбоя операции.

Безопасность

azure_auth

Поток OAuth2 Azure Active Directory.

Тип: oauth2
Flow: implicit
URL-адрес авторизации: https://login.microsoftonline.com/common/oauth2/authorize

Области

Имя Описание
user_impersonation олицетворения учетной записи пользователя

Примеры

ApiManagementCreateApiOperation

Образец запроса

PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations?api-version=2024-05-01

{
  "properties": {
    "displayName": "createUser2",
    "method": "POST",
    "urlTemplate": "/user1",
    "templateParameters": [],
    "description": "This can only be done by the logged in user.",
    "request": {
      "description": "Created user object",
      "queryParameters": [],
      "headers": [],
      "representations": [
        {
          "contentType": "application/json",
          "schemaId": "592f6c1d0af5840ca8897f0c",
          "typeName": "User"
        }
      ]
    },
    "responses": [
      {
        "statusCode": 200,
        "description": "successful operation",
        "representations": [
          {
            "contentType": "application/xml"
          },
          {
            "contentType": "application/json"
          }
        ],
        "headers": []
      }
    ]
  }
}

Пример ответа

{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations",
  "type": "Microsoft.ApiManagement/service/apis/operations",
  "name": "newoperations",
  "properties": {
    "displayName": "createUser2",
    "method": "POST",
    "urlTemplate": "/user1",
    "templateParameters": [],
    "description": "This can only be done by the logged in user.",
    "request": {
      "description": "Created user object",
      "queryParameters": [],
      "headers": [],
      "representations": [
        {
          "contentType": "application/json",
          "schemaId": "592f6c1d0af5840ca8897f0c",
          "typeName": "User"
        }
      ]
    },
    "responses": [
      {
        "statusCode": 200,
        "description": "successful operation",
        "representations": [
          {
            "contentType": "application/xml"
          },
          {
            "contentType": "application/json"
          }
        ],
        "headers": []
      }
    ]
  }
}
{
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/apis/PetStoreTemplate2/operations/newoperations",
  "type": "Microsoft.ApiManagement/service/apis/operations",
  "name": "newoperations",
  "properties": {
    "displayName": "createUser2",
    "method": "POST",
    "urlTemplate": "/user1",
    "templateParameters": [],
    "description": "This can only be done by the logged in user.",
    "request": {
      "description": "Created user object",
      "queryParameters": [],
      "headers": [],
      "representations": [
        {
          "contentType": "application/json",
          "schemaId": "592f6c1d0af5840ca8897f0c",
          "typeName": "User"
        }
      ]
    },
    "responses": [
      {
        "statusCode": 200,
        "description": "successful operation",
        "representations": [
          {
            "contentType": "application/xml"
          },
          {
            "contentType": "application/json"
          }
        ],
        "headers": []
      }
    ]
  }
}

Определения

Имя Описание
ErrorAdditionalInfo

Дополнительные сведения об ошибке управления ресурсами.

ErrorDetail

Сведения об ошибке.

ErrorResponse

Ответ на ошибку

OperationContract

Сведения о операции API.

ParameterContract

Сведения о параметрах операции.

ParameterExampleContract

Пример параметра.

RepresentationContract

Сведения о представлении запроса и ответа операции.

RequestContract

Сведения о запросе на операцию.

ResponseContract

Сведения об ответе операции.

ErrorAdditionalInfo

Дополнительные сведения об ошибке управления ресурсами.

Имя Тип Описание
info

object

Дополнительные сведения.

type

string

Дополнительный тип сведений.

ErrorDetail

Сведения об ошибке.

Имя Тип Описание
additionalInfo

ErrorAdditionalInfo[]

Дополнительные сведения об ошибке.

code

string

Код ошибки.

details

ErrorDetail[]

Сведения об ошибке.

message

string

Сообщение об ошибке.

target

string

Целевой объект ошибки.

ErrorResponse

Ответ на ошибку

Имя Тип Описание
error

ErrorDetail

Объект ошибки.

OperationContract

Сведения о операции API.

Имя Тип Описание
id

string

Полный идентификатор ресурса для ресурса. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

Имя ресурса

properties.description

string

maxLength: 1000

Описание операции. Может включать теги форматирования HTML.

properties.displayName

string

minLength: 1
maxLength: 300

Имя операции.

properties.method

string

Допустимый метод операции HTTP. Типичные методы HTTP, такие как GET, PUT, POST, но не ограничены только ими.

properties.policies

string

Политики операций

properties.request

RequestContract

Сущность, содержащая сведения о запросе.

properties.responses

ResponseContract[]

Массив ответов операций.

properties.templateParameters

ParameterContract[]

Коллекция параметров шаблона URL-адреса.

properties.urlTemplate

string

minLength: 1
maxLength: 1000

Относительный шаблон URL-адреса, определяющий целевой ресурс для этой операции. Может включать параметры. Пример: /customers/{cid}/orders/{oid}/?date={date}

type

string

Тип ресурса. Например, "Microsoft.Compute/virtualMachines" или "Microsoft.Storage/storageAccounts"

ParameterContract

Сведения о параметрах операции.

Имя Тип Описание
defaultValue

string

Значение параметра по умолчанию.

description

string

Описание параметра.

examples

<string,  ParameterExampleContract>

Пример, определенный для параметра.

name

string

Имя параметра.

required

boolean

Указывает, является ли параметр обязательным или нет.

schemaId

string

Идентификатор схемы.

type

string

Тип параметра.

typeName

string

Имя типа, определенное схемой.

values

string[]

Значения параметров.

ParameterExampleContract

Пример параметра.

Имя Тип Описание
description

string

Длинное описание примера

externalValue

string

URL-адрес, указывающий на литеральный пример

summary

string

Краткое описание примера

value

Пример значения. Может быть примитивным значением или объектом.

RepresentationContract

Сведения о представлении запроса и ответа операции.

Имя Тип Описание
contentType

string

Указывает зарегистрированный или пользовательский тип контента для этого представления, например application/xml.

examples

<string,  ParameterExampleContract>

Пример, определенный для представления.

formParameters

ParameterContract[]

Коллекция параметров формы. Требуется, если значение contentType — application/x-www-form-urlencoded, или multipart/form-data.

schemaId

string

Идентификатор схемы. Применимо только в том случае, если значение contentType не является "application/x-www-form-urlencoded" или "multipart/form-data".

typeName

string

Имя типа, определенное схемой. Применимо только в том случае, если значение contentType не является "application/x-www-form-urlencoded" или "multipart/form-data".

RequestContract

Сведения о запросе на операцию.

Имя Тип Описание
description

string

Описание запроса операции.

headers

ParameterContract[]

Коллекция заголовков запросов операций.

queryParameters

ParameterContract[]

Коллекция параметров запроса запроса операции.

representations

RepresentationContract[]

Коллекция представлений запросов операций.

ResponseContract

Сведения об ответе операции.

Имя Тип Описание
description

string

Описание ответа операции.

headers

ParameterContract[]

Коллекция заголовков ответов операции.

representations

RepresentationContract[]

Коллекция представлений ответов операций.

statusCode

integer (int32)

Код состояния HTTP ответа операции.