{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Secure a Subscription Endpoint URL","description":"Accelerate E&P application development and protect your innovation by consuming our Data and Domain APIs / Platform APIs.","lang":"en-US","meta":[{"name":"robots","content":"noindex"}],"llmstxt":{"hide":true,"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"secure-a-subscription-endpoint-url","__idx":0},"children":["Secure a Subscription Endpoint URL"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"configuring-endpoint-url","__idx":1},"children":["Configuring Endpoint URL"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["To receive messages from NTM, you need a publicly accessible HTTPS server to handle POST requests."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["You can securely receive the messages by validating the SAuth token that NTM includes in the Authorization header of the"," ","POST request."]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The following are some ways you can validate the SAuth token sent by NTM."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"span","attributes":{"style":{"color":"rgb(255,153,0)"}},"children":[" Server hosted in Google Cloud environment"]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use Google Cloud endpoints as a service with the below security definition. Refer \"Notes\" section for the effective date"," ","of the below change."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":""},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Security Definition"]}]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["\"securityDefinitions\": { ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"    \"sauth_token\": { ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"      \"authorizationUrl\": \"\", ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"      \"flow\": \"implicit\", ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"      \"type\": \"oauth2\", ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"      \"x-google-issuer\": \"https://csi.slb.com/v2\", ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"      \"x-google-jwks_uri\": \"https://csi.slb.com/v2/certs\", ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"      \"x-google-audiences\": \"SUBSCRIBER-CLIENT-IDENTITY\" ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"    } ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," }, ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," \"security\": [ ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"    { ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"      \"sauth_token\": [ ] ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]},"    } ",{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}," ]"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":[{"$$mdtype":"Tag","name":"span","attributes":{"style":{"color":"rgb(255,153,0)"}},"children":[" Server hosted in Non-Google Cloud environment "]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Please refer to ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/solutions/sauth/tutorial/authenticator-service"},"children":["Cloud Security: Authentication & Authorization"]}," on how to validate a token. You can validate the token locally or by making a"," ","service call to JWT Validation Endpoint."]},{"$$mdtype":"Tag","name":"br","attributes":{},"children":[]}]},"headings":[{"value":"Secure a Subscription Endpoint URL","id":"secure-a-subscription-endpoint-url","depth":2},{"value":"Configuring Endpoint URL","id":"configuring-endpoint-url","depth":3}],"frontmatter":{"seo":{"title":"Secure a Subscription Endpoint URL"}},"lastModified":"2025-11-07T15:44:55.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/solutions/ntm/tutorial/ntm-secure-subscription","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}