다음을 통해 공유


자습서: Well Delivery DDMS API를 사용하여 유정 데이터 레코드 작업

이 자습서에서는 cURL을 사용하여 DDMS(Well Delivery Domain Data Management Services) API를 활용하여 Azure Data Manager for Energy 인스턴스 내에서 잘 레코드를 관리하는 방법을 보여 줍니다.

이 자습서에서는 다음 작업 방법을 알아봅니다.

  • Well Delivery DDMS API를 사용하여 유정 데이터 레코드를 작업합니다.

DDMS에 대한 자세한 내용은 DDMS 개념을 참조하세요.

Prerequisites

Azure Data Manager for Energy 인스턴스 세부 정보 가져오기

계속하려면 Azure Portal을 통해 Azure Data Manager for Energy 인스턴스에서 다음 세부 정보를 수집합니다.

Parameter 설명 Example 이 값을 찾을 수 있는 위치
client_id 애플리케이션(클라이언트) ID 00001111-aaaa-2222-bbbb-3333cccc4444 Microsoft ID 플랫폼에 애플리케이션을 등록할 때 이 앱 또는 클라이언트 ID를 사용합니다. 애플리케이션 등록 참조
client_secret 클라이언트 암호 _fl****************** 애플리케이션 암호라고도 하는 클라이언트 암호는 앱이 인증서 대신 ID 자체에 사용할 수 있는 문자열 값입니다. 클라이언트 비밀 추가를 참조하세요.
tenant_id 디렉터리(테넌트) ID 72f988bf-86f1-41af-91ab-xxxxxxxxxxxx Azure Portal에서 계정 이름을 마우스로 가리키면 디렉터리 또는 테넌트 ID를 가져옵니다. 또는 Azure Portal에서 Microsoft Entra ID>속성>테넌트 ID 를 검색하여 선택합니다.
base_url 인스턴스 URL https://<instance>.energy.azure.com 에너지용 Azure Data Manager 인스턴스의 개요 페이지에서 이 값을 찾습니다.
data_partition_id 데이터 파티션 이름 opendes 에너지용 Azure Data Manager 인스턴스의 개요 페이지에서 이 값을 찾습니다.
access_token 액세스 토큰 값 0.ATcA01-XWHdJ0ES-qDevC6r........... 인증 토큰을 생성하여 액세스 토큰을 만들고 저장하는 방법을 따릅니다.

Well Delivery DDMS API를 사용하여 유정 데이터 레코드 작업

데이터 준수에 대한 법적 태그를 만듭니다.

다음 cURL 명령을 실행하여 법적 태그를 만듭니다.

curl -X POST "https://{base_url}/api/legal/v1/legaltags" \
     -H "Authorization: Bearer <access_token>" \
     -H "Content-Type: application/json" \
     -H "data-partition-id: <data_partition_id>" \
     -d '{
           "name": "LegalTagName",
           "description": "Legal Tag added for Well",
           "properties": {
               "contractId": "123456",
               "countryOfOrigin": ["US", "CA"],
               "dataType": "Third Party Data",
               "exportClassification": "EAR99",
               "originator": "xyz",
               "personalData": "No Personal Data",
               "securityClassification": "Private",
               "expirationDate": "2025-12-25"
           }
       }'

샘플 응답:

{
  "name": "LegalTagName",
  "status": "Created"
}

자세한 내용은 법적 태그 관리를 참조하세요.

자격 그룹에 사용자 추가

사용자가 Well Delivery DDMS API 호출을 위한 적절한 권한을 가지려면, data.default.viewers@{data-partition-id}.dataservices.energydata.default.owners@<data_partition_id>.dataservices.energy 권한 그룹의 일부여야 합니다. 이 호출은 사용자를 적절한 그룹에 추가합니다.

사용자 관리 가이드에 따라 사용자에게 적절한 자격을 추가합니다.

유정 레코드 만들기

Azure Data Manager for Energy 인스턴스에서 유정 레코드를 만듭니다.

curl --request PUT \
  --url https://{base_url}/api/well-delivery/storage/v1/well \
  --header 'Authorization: Bearer <access_token>' \
  --header 'Content-Type: application/json' \
  --header 'data-partition-id: <data_partition_id>' \
  --data '{
    "id":"<data_partition_id>:master-data--Well:well-1753861267 434",
    "kind": "osdu:wks:master-data--Well:1.0.0",
    "acl": {
        "viewers": [
            "data.default.viewers@<data_partition_id>.dataservices.energy"
        ],
        "owners": [
            "data.default.owners@<data_partition_id>.dataservices.energy"
        ]
    },
    "legal": {
        "legaltags": [
            "LegalTagName"
        ],
        "otherRelevantDataCountries": [
            "US"
        ]
    },
    "data": {
        "ExistenceKind": "namespace:reference-data--ExistenceKind:planned:",
        "FacilityName": "Well-Test"
    }
}'

샘플 응답:

{
"created entity": "well-1753861267434:1753861269454"
}

유정 시추공 레코드 만들기

Azure Data Manager for Energy 인스턴스에서 유정 시추공 레코드를 만듭니다.

curl --request PUT \
  --url https://{base_url}/api/well-delivery/storage/v1/  wellbore \
  --header 'Authorization: Bearer <access_token>' \
  --header 'Content-Type: application/json' \
  --header 'data-partition-id: <data_partition_id>' \
  --data '{
    "id": "dp1:master-data--Wellbore:wellbore-1753861298505",
    "kind": "osdu:wks:master-data--Wellbore:1.0.0",
    "acl": {
        "viewers": [
            "data.default.viewers@<data_partition_id>.dataservices.energy"
        ],
        "owners": [
            "data.default.owners@<data_partition_id>.dataservices.energy"
        ]
    },
    "legal": {
        "legaltags": [
            "LegalTagName"
        ],
        "otherRelevantDataCountries": [
            "US"
        ]
    },
    "data": {
        "ExistenceKind": "namespace:reference-data--ExistenceKind:planned:",
        "WellID": "<data_partition_id>:master-data--Well:well-1753861298505:1753861300000",
        "Name": "Demo wellbore name"
    }
}'

샘플 응답:

{
"created entity": "wellbore-1753861298505:1753861301020"
}

작업 계획 만들기

작업 계획을 만듭니다.


curl --request PUT \
  --url https://{base_url}/api/well-delivery/storage/v1/activityplan \
  --header 'Authorization: Bearer <access_token>' \
  --header 'Content-Type: application/json' \
  --header 'data-partition-id: <data_partition_id>' \
  --data '{
    "id": "dp1:master-data--ActivityPlan:activityplan-1753861290577",
    "kind": "osdu:wks:master-data--ActivityPlan:1.0.0",
    "acl": {
        "viewers": [
            "data.default.viewers@<data_partition_id>.dataservices.energy"
        ],
        "owners": [
            "data.default.owners@<data_partition_id>.dataservices.energy"
        ]
    },
    "legal": {
        "legaltags": [
            "LegalTagName"
        ],
        "otherRelevantDataCountries": [
            "US"
        ]
    },
    "data": {
        "ExistenceKind": "namespace:reference-data--ExistenceKind:planned:",
        "WellboreID": "<data_partition_id>:master-data--Wellbore:wellbore-1753861290577:1753861293139"
    }
}'

샘플 응답:

{
"created entity" : "activityplan-1753861290577:1753861294109"
}

다음 단계

다음 자습서로 이동하여 Wellbore DDMS API를 사용하여 유정 데이터로 작업하는 방법을 알아봅니다.

Azure Data Manager for Energy의 Well Delivery DDMS REST API에 대한 자세한 내용은 adme-samples GitHub 리포지토리에서 사용할 수 있는 OpenAPI 사양을 참조하세요.