openapi-directory
Version:
Building & bundling https://github.com/APIs-guru/openapi-directory for easy use from JS
1 lines • 27.3 kB
JSON
{"openapi":"3.0.0","info":{"description":"Personalizer Service is an Azure Cognitive Service that makes it easy to target content and experiences without complex pre-analysis or cleanup of past data. Given a context and featurized content, the Personalizer Service returns which content item to show to users in rewardActionId. As rewards are sent in response to the use of rewardActionId, the reinforcement learning algorithm will improve the model and improve performance of future rank calls.","title":"Personalizer Client","version":"v1.0","x-apisguru-categories":["cloud"],"x-logo":{"url":"https://assets.onestore.ms/cdnfiles/onestorerolling-1606-01000/shell/v3/images/logo/microsoft.png"},"x-origin":[{"format":"swagger","url":"https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/cognitiveservices/data-plane/Personalizer/stable/v1.0/Personalizer.json","version":"2.0"}],"x-providerName":"azure.com","x-serviceName":"cognitiveservices-Personalizer","x-tags":["Azure","Microsoft"]},"security":[{"apim_key":[]}],"tags":[{"description":"Manages configuration operations.","name":"Configurations"},{"description":"Manages counterfactual evaluation operations.","name":"Evaluations"},{"description":"Manages event operations.","name":"Events"},{"description":"Manages reinforcement learning logs.","name":"Logs"},{"description":"Manages reinforcement learning configuration operations.","name":"Model"},{"description":"Manages ranking operations.","name":"Rank"}],"paths":{"/configurations/policy":{"delete":{"description":"Resets the Learning settings of the Personalizer service to default.","operationId":"Policy_Reset","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyContract"},"examples":{"Successful Policy_Reset request":{"$ref":"#/components/examples/Successful_Policy_Reset_request"}}}}}},"summary":"Reset Policy.","tags":["Configurations"]},"get":{"description":"Get the Learning settings currently used by the Personalizer service.","operationId":"Policy_Get","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyContract"},"examples":{"Successful Policy_Get request":{"$ref":"#/components/examples/Successful_Policy_Get_request"}}}}}},"summary":"Get Policy.","tags":["Configurations"]},"put":{"description":"Update the Learning settings that the Personalizer service will use to train models.","operationId":"Policy_Update","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyContract"}}},"description":"The Learning settings.","required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PolicyContract"},"examples":{"Successful Policy_Update request":{"$ref":"#/components/examples/Successful_Policy_Update_request"}}}}},"default":{"description":"Invalid policy configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Update Policy.","tags":["Configurations"]}},"/configurations/service":{"get":{"description":"Get the Personalizer service configuration.","operationId":"ServiceConfiguration_Get","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceConfiguration"},"examples":{"Successful ServiceConfiguration_Get request":{"$ref":"#/components/examples/Successful_ServiceConfiguration_Get_request"}}}}}},"summary":"Get Service Configuration.","tags":["Configurations"]},"put":{"description":"Update the Personalizer service configuration.","operationId":"ServiceConfiguration_Update","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceConfiguration"}}},"description":"The personalizer service configuration.","required":true},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceConfiguration"},"examples":{"Successful ServiceConfiguration_Update request":{"$ref":"#/components/examples/Successful_ServiceConfiguration_Update_request"}}}}},"default":{"description":"Invalid service configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Update Service Configuration.","tags":["Configurations"]}},"/evaluations":{"get":{"description":"List all the submitted evaluations.","operationId":"Evaluations_List","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"items":{"$ref":"#/components/schemas/Evaluation"},"type":"array"},"examples":{"Successful Evaluations_List request":{"$ref":"#/components/examples/Successful_Evaluations_List_request"}}}}}},"summary":"List Evaluations.","tags":["Evaluations"]},"post":{"description":"Submit a new evaluation job.","operationId":"Evaluations_Create","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EvaluationContract"}}},"description":"The evaluation job definition.","required":true},"responses":{"201":{"description":"Success","headers":{"Location":{"description":"Location of the evaluation resource","schema":{"type":"string"},"example":"{endpoint}/personalizer/v1.0/evaluations/{evaluationId}"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evaluation"},"examples":{"Successful Evaluations_Create request":{"$ref":"#/components/examples/Successful_Evaluations_Create_request"}}}}},"default":{"description":"Invalid evaluation contract.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Create Evaluation.","tags":["Evaluations"]}},"/evaluations/{evaluationId}":{"delete":{"description":"Delete the evaluation associated with the Id.","operationId":"Evaluations_Delete","parameters":[{"description":"Id of the evaluation to delete.","in":"path","name":"evaluationId","required":true,"schema":{"type":"string","maxLength":256},"examples":{"Successful Evaluations_Delete request":{"value":"id"}}}],"responses":{"204":{"description":"Success"}},"summary":"Delete Evaluation.","tags":["Evaluations"]},"get":{"description":"Get the evaluation associated with the Id.","operationId":"Evaluations_Get","parameters":[{"description":"Id of the evaluation.","in":"path","name":"evaluationId","required":true,"schema":{"type":"string","maxLength":256},"examples":{"Successful Evaluations_Get request":{"value":"id"}}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evaluation"},"examples":{"Successful Evaluations_Get request":{"$ref":"#/components/examples/Successful_Evaluations_Get_request"}}}}},"default":{"description":"Evaluation not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Get Evaluation.","tags":["Evaluations"]}},"/events/{eventId}/activate":{"post":{"description":"Report that the specified event was actually displayed to the user and a reward should be expected for it","operationId":"Events_Activate","parameters":[{"description":"The event ID this activation applies to.","in":"path","name":"eventId","required":true,"schema":{"type":"string","maxLength":256},"examples":{"Successful Events_Activate request":{"value":"id"}}}],"responses":{"204":{"description":"Success"},"default":{"description":"Invalid activate event request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Activate Event.","tags":["Events"]}},"/events/{eventId}/reward":{"post":{"description":"Report reward that resulted from using the action specified in rewardActionId for the specified event.","operationId":"Events_Reward","parameters":[{"description":"The event id this reward applies to.","in":"path","name":"eventId","required":true,"schema":{"type":"string","maxLength":256},"examples":{"Successful Events_Reward request":{"value":"id"}}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RewardRequest"}}},"description":"The reward should be a floating point number, typically between 0 and 1.","required":true},"responses":{"204":{"description":"Success"},"default":{"description":"Invalid reward request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Post Reward.","tags":["Events"]}},"/logs":{"delete":{"description":"Delete all generated logs.","operationId":"Log_Delete","responses":{"204":{"description":"Success"}},"summary":"Deletes Logs.","tags":["Logs"]}},"/logs/properties":{"get":{"description":"Get properties of generated logs.","operationId":"Log_GetProperties","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LogsProperties"},"examples":{"Successful Log_GetProperties request":{"$ref":"#/components/examples/Successful_Log_GetProperties_request"}}}}},"default":{"description":"Logs properties not found.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Get Log Properties.","tags":["Logs"]}},"/model":{"delete":{"description":"Resets the model file generated by Personalizer service.","operationId":"Model_Reset","responses":{"204":{"description":"Success"},"default":{"description":"Model reset failed.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Reset Model.","tags":["Model"]},"get":{"description":"Get the model file generated by Personalizer service.","operationId":"Model_Get","responses":{"200":{"description":"Success","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}}},"summary":"Get Model.","tags":["Model"]}},"/model/properties":{"get":{"description":"Get properties of the model file generated by Personalizer service.","operationId":"Model_GetProperties","responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ModelProperties"},"examples":{"Successful Model_GetProperties request":{"$ref":"#/components/examples/Successful_Model_GetProperties_request"}}}}}},"summary":"Get Model Properties.","tags":["Model"]}},"/rank":{"post":{"description":"Submit a Personalizer rank request, to get which of the provided actions should be used in the provided context.","operationId":"Rank","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RankRequest"}}},"description":"A Personalizer request.","required":true},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RankResponse"},"examples":{"Successful Rank request":{"$ref":"#/components/examples/Successful_Rank_request"}}}}},"default":{"description":"Invalid rank request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"summary":"Post Rank.","tags":["Rank"]}}},"servers":[{"url":"https://azure.local/personalizer/v1.0"},{"url":"{Endpoint}/personalizer/v1.0","variables":{"Endpoint":{"description":"Supported Cognitive Services endpoint.","x-ms-parameter-location":"client","x-ms-skip-url-encoding":true,"default":"none"}}}],"components":{"examples":{"Successful_Policy_Reset_request":{"value":{"arguments":"--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5","name":"myPersonalizer"}},"Successful_Policy_Get_request":{"value":{"arguments":"--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5","name":"myPersonalizer"}},"Successful_Policy_Update_request":{"value":{"arguments":"--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5","name":"myPersonalizer"}},"Successful_ServiceConfiguration_Get_request":{"value":{"defaultReward":0,"explorationPercentage":0.2,"logMirrorEnabled":true,"logMirrorSasUri":"https://testblob.blob.core.windows.net/container?se=2020-08-13T00%3A00Z&sp=rwl&spr=https&sv=2018-11-09&sr=c&sig=signature","logRetentionDays":7,"modelExportFrequency":"PT5M","rewardAggregation":"earliest","rewardWaitTime":"PT10M"}},"Successful_ServiceConfiguration_Update_request":{"value":{"defaultReward":0,"explorationPercentage":0.2,"logMirrorEnabled":true,"logMirrorSasUri":"https://testblob.blob.core.windows.net/container?se=2020-08-13T00%3A00Z&sp=rwl&spr=https&sv=2018-11-09&sr=c&sig=signature","logRetentionDays":7,"modelExportFrequency":"PT5M","rewardAggregation":"earliest","rewardWaitTime":"PT10M"}},"Successful_Evaluations_List_request":{"value":[{"endTime":"2018-12-19T00:00:00Z","featureImportance":[],"id":"b58c6d92-b727-48c1-9487-4be2782c9e0a","name":"myFirstEvaluation","policyResults":[{"arguments":"--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5","name":"Custom Learning settings 1"}],"startTime":"2018-11-19T00:00:00Z","status":"pending"},{"endTime":"2019-01-19T00:00:00Z","featureImportance":[],"id":"21d03972-9130-4be9-8c8b-8ac3ec9b9dd1","name":"mySecondEvaluation","policyResults":[],"startTime":"2018-12-19T00:00:00Z","status":"pending"}]},"Successful_Evaluations_Create_request":{"value":{"endTime":"2019-01-19T00:00:00Z","featureImportance":[],"id":"b58c6d92-b727-48c1-9487-4be2782c9e0a","name":"myFirstEvaluation","policyResults":[{"arguments":"--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5","name":"Custom Learning settings 1"}],"startTime":"2018-12-19T00:00:00Z","status":"pending"}},"Successful_Evaluations_Get_request":{"value":{"endTime":"2019-01-19T00:00:00Z","featureImportance":[["f1","f2"],["f3","f4"]],"id":"b58c6d92-b727-48c1-9487-4be2782c9e0a","name":"myFirstEvaluation","policyResults":[{"arguments":"--cb_explore_adf --epsilon 0.2 --dsjson --cb_type ips -l 0.5 --l1 1E-07 --power_t 0.5","name":"Custom Learning settings 1","summary":[{"aggregateTimeWindow":"PT0S","confidenceInterval":0,"ipsEstimatorDenominator":170,"ipsEstimatorNumerator":0,"nonZeroProbability":64,"snipsEstimatorDenominator":308.25,"sumOfSquares":0,"timeStamp":"2018-12-19T00:00:00Z"},{"aggregateTimeWindow":"PT0S","confidenceInterval":1.1009,"ipsEstimatorDenominator":196,"ipsEstimatorNumerator":2.2,"nonZeroProbability":68,"snipsEstimatorDenominator":193.761,"sumOfSquares":2.424,"timeStamp":"2018-12-19T00:05:00Z"}],"totalSummary":{"aggregateTimeWindow":"PT0S","confidenceInterval":1.1209,"ipsEstimatorDenominator":1906,"ipsEstimatorNumerator":22.2,"nonZeroProbability":68,"snipsEstimatorDenominator":1993.761,"sumOfSquares":2.484,"timeStamp":"2019-01-19T00:00:00Z"}}],"startTime":"2018-12-19T00:00:00Z","status":"completed"}},"Successful_Log_GetProperties_request":{"value":{"dateRange":{"from":"2019-01-18T16:00:00-08:00","to":"2019-02-18T16:00:00-08:00"}}},"Successful_Model_GetProperties_request":{"value":{"creationTime":"2019-01-18T16:00:00-08:00","lastModifiedTime":"2019-01-18T16:00:00-08:00"}},"Successful_Rank_request":{"value":{"eventId":"75269AD0-BFEE-4598-8196-C57383D38E10","ranking":[{"id":"EntertainmentArticle","probability":0.8},{"id":"SportsArticle","probability":0},{"id":"NewsArticle","probability":0.2}],"rewardActionId":"EntertainmentArticle"}}},"parameters":{"Endpoint":{"description":"Supported Cognitive Services endpoint.","in":"path","name":"Endpoint","required":true,"x-ms-parameter-location":"client","x-ms-skip-url-encoding":true,"schema":{"type":"string"}}},"securitySchemes":{"apim_key":{"in":"header","name":"Ocp-Apim-Subscription-Key","type":"apiKey"}},"schemas":{"ContainerStatus":{"properties":{"apiStatus":{"type":"string"},"apiStatusMessage":{"type":"string"},"service":{"type":"string"}},"type":"object"},"DateRange":{"properties":{"from":{"format":"date-time","readOnly":true,"type":"string"},"to":{"format":"date-time","readOnly":true,"type":"string"}},"type":"object"},"ErrorResponse":{"description":"Used to return an error to the client","properties":{"error":{"$ref":"#/components/schemas/PersonalizerError"}},"required":["error"],"type":"object"},"Evaluation":{"properties":{"endTime":{"format":"date-time","readOnly":true,"type":"string"},"featureImportance":{"items":{"items":{"type":"string"},"type":"array"},"type":"array"},"id":{"maxLength":256,"readOnly":true,"type":"string"},"jobId":{"readOnly":true,"type":"string"},"name":{"maxLength":256,"readOnly":true,"type":"string"},"policyResults":{"items":{"$ref":"#/components/schemas/PolicyResult"},"type":"array"},"startTime":{"format":"date-time","readOnly":true,"type":"string"},"status":{"enum":["completed","pending","failed","notSubmitted"],"readOnly":true,"type":"string","x-ms-enum":{"modelAsString":true,"name":"EvaluationJobStatus"}}},"type":"object"},"EvaluationContract":{"description":"A counterfactual evaluation.","properties":{"enableOfflineExperimentation":{"description":"True if the evaluation should explore for a more optimal Learning settings.","type":"boolean"},"endTime":{"description":"The end time of the evaluation.","format":"date-time","type":"string"},"name":{"description":"The name of the evaluation.","maxLength":256,"type":"string"},"policies":{"description":"Additional Learning settings to evaluate.","items":{"$ref":"#/components/schemas/PolicyContract"},"type":"array"},"startTime":{"description":"The start time of the evaluation.","format":"date-time","type":"string"}},"required":["name","startTime","endTime","policies"],"type":"object"},"InternalError":{"description":"An object containing more specific information than the parent object about the error.","properties":{"code":{"description":"Detailed error code.","type":"string"},"innererror":{"$ref":"#/components/schemas/InternalError"}},"type":"object"},"LogsProperties":{"properties":{"dateRange":{"allOf":[{"$ref":"#/components/schemas/DateRange"}],"readOnly":true}},"type":"object"},"ModelProperties":{"properties":{"creationTime":{"format":"date-time","readOnly":true,"type":"string"},"lastModifiedTime":{"format":"date-time","readOnly":true,"type":"string"}},"type":"object"},"PersonalizerError":{"description":"The error object.","properties":{"code":{"description":"High level error code.","enum":["BadRequest","ResourceNotFound","InternalServerError","InvalidServiceConfiguration","InvalidPolicyConfiguration","InvalidPolicyContract","InvalidEvaluationContract","InvalidRewardRequest","InvalidEventIdToActivate","InvalidRankRequest","InvalidExportLogsRequest","InvalidContainer","FrontEndNotFound","EvaluationNotFound","LogsPropertiesNotFound","RankNullResponse","UpdateConfigurationFailed","ModelResetFailed"],"type":"string","x-ms-enum":{"modelAsString":true,"name":"PersonalizerErrorCode","values":[{"description":"Request could not be understood by the server.","value":"BadRequest"},{"description":"Requested resource does not exist on the server.","value":"ResourceNotFound"},{"description":"A generic error has occurred on the server.","value":"InternalServerError"},{"description":"Invalid service configuration.","value":"InvalidServiceConfiguration"},{"description":"Invalid policy configuration.","value":"InvalidPolicyConfiguration"},{"description":"Invalid policy contract.","value":"InvalidPolicyContract"},{"description":"Invalid evaluation contract.","value":"InvalidEvaluationContract"},{"description":"Invalid reward request.","value":"InvalidRewardRequest"},{"description":"Invalid activate event request.","value":"InvalidEventIdToActivate"},{"description":"Invalid rank request.","value":"InvalidRankRequest"},{"description":"Invalid export logs request.","value":"InvalidExportLogsRequest"},{"description":"SAS Uri must be the Uri to a container that has write permissions.","value":"InvalidContainer"},{"description":"Front end not found.","value":"FrontEndNotFound"},{"description":"Evaluation not found.","value":"EvaluationNotFound"},{"description":"Logs properties not found.","value":"LogsPropertiesNotFound"},{"description":"Rank call returned null response.","value":"RankNullResponse"},{"description":"Failed to update configuration.","value":"UpdateConfigurationFailed"},{"description":"Model reset failed.","value":"ModelResetFailed"}]}},"details":{"description":"An array of details about specific errors that led to this reported error.","items":{"$ref":"#/components/schemas/PersonalizerError"},"type":"array"},"innerError":{"$ref":"#/components/schemas/InternalError"},"message":{"description":"A message explaining the error reported by the service.","type":"string"},"target":{"description":"Error source element.","type":"string"}},"required":["code","message"],"type":"object"},"PolicyContract":{"description":"Learning settings specifying how to train the model.","properties":{"arguments":{"description":"Arguments of the Learning settings.","maxLength":1024,"type":"string"},"name":{"description":"Name of the Learning settings.","maxLength":256,"type":"string"}},"required":["name","arguments"],"type":"object"},"PolicyResult":{"properties":{"arguments":{"readOnly":true,"type":"string"},"name":{"readOnly":true,"type":"string"},"summary":{"items":{"$ref":"#/components/schemas/PolicyResultSummary"},"readOnly":true,"type":"array"},"totalSummary":{"allOf":[{"$ref":"#/components/schemas/PolicyResultSummary"}],"readOnly":true}},"type":"object"},"PolicyResultSummary":{"properties":{"aggregateTimeWindow":{"format":"duration","readOnly":true,"type":"string"},"confidenceInterval":{"format":"float","readOnly":true,"type":"number"},"ipsEstimatorDenominator":{"format":"float","readOnly":true,"type":"number"},"ipsEstimatorNumerator":{"format":"float","readOnly":true,"type":"number"},"nonZeroProbability":{"format":"float","type":"number"},"snipsEstimatorDenominator":{"format":"float","readOnly":true,"type":"number"},"sumOfSquares":{"format":"float","readOnly":true,"type":"number"},"timeStamp":{"format":"date-time","readOnly":true,"type":"string"}},"type":"object"},"RankRequest":{"description":"Request a set of actions to be ranked by the Personalizer service.","properties":{"actions":{"description":"The set of actions the Personalizer service can pick from.\r\nThe set should not contain more than 50 actions.\r\nThe order of the actions does not affect the rank result but the order\r\nshould match the sequence your application would have used to display them.\r\nThe first item in the array will be used as Baseline item in Offline evaluations.","items":{"$ref":"#/components/schemas/RankableAction"},"type":"array"},"contextFeatures":{"description":"Features of the context used for Personalizer as a\r\ndictionary of dictionaries. This depends on the application, and\r\ntypically includes features about the current user, their\r\ndevice, profile information, aggregated data about time and date, etc.\r\nFeatures should not include personally identifiable information (PII),\r\nunique UserIDs, or precise timestamps.","items":{"type":"object"},"type":"array"},"deferActivation":{"default":false,"description":"Send false if it is certain the rewardActionId in rank results will be shown to the user, therefore\r\nPersonalizer will expect a Reward call, otherwise it will assign the default\r\nReward to the event. Send true if it is possible the user will not see the\r\naction specified in the rank results, because the page is rendering later, or the Rank results may be\r\noverridden by code further downstream.","type":"boolean"},"eventId":{"description":"Optionally pass an eventId that uniquely identifies this Rank event.\r\nIf null, the service generates a unique eventId. The eventId will be used for\r\nassociating this request with its reward, as well as seeding the pseudo-random\r\ngenerator when making a Personalizer call.","maxLength":256,"type":"string"},"excludedActions":{"description":"The set of action ids to exclude from ranking.","items":{"type":"string"},"type":"array"}},"required":["actions"],"type":"object"},"RankResponse":{"description":"Returns which action to use as rewardActionId, and additional information about each action as a result of a Rank request.","properties":{"eventId":{"description":"The eventId for the round trip from request to response.","maxLength":256,"readOnly":true,"type":"string"},"ranking":{"description":"The calculated ranking for the current request.","items":{"$ref":"#/components/schemas/RankedAction"},"readOnly":true,"type":"array"},"rewardActionId":{"description":"The action chosen by the Personalizer service. This is the action your application should display, and for which to report the reward. This might not be the\r\nfirst found in 'ranking' if an action in the request in first position was part of the excluded ids.","maxLength":256,"readOnly":true,"type":"string"}},"type":"object"},"RankableAction":{"description":"An action with it's associated features used for ranking.","properties":{"features":{"description":"List of dictionaries containing features.","items":{"type":"object"},"type":"array"},"id":{"description":"Id of the action.","maxLength":256,"type":"string"}},"required":["id","features"],"type":"object"},"RankedAction":{"description":"A ranked action with its resulting probability.","properties":{"id":{"description":"Id of the action","maxLength":256,"readOnly":true,"type":"string"},"probability":{"description":"Probability of the action","format":"float","maximum":1,"minimum":0,"readOnly":true,"type":"number"}},"type":"object"},"RewardRequest":{"description":"Reward given to a rank response.","properties":{"value":{"description":"Reward to be assigned to an action. Value should be between -1 and 1 inclusive.","format":"float","type":"number"}},"required":["value"],"type":"object"},"ServiceConfiguration":{"description":"The configuration of the service.","properties":{"defaultReward":{"description":"The reward given if a reward is not received within the specified wait time.","format":"float","maximum":1,"minimum":-1,"type":"number"},"explorationPercentage":{"description":"The percentage of rank responses that will use exploration.","format":"float","maximum":1,"minimum":0,"type":"number"},"logMirrorEnabled":{"description":"Flag indicates whether log mirroring is enabled.","type":"boolean"},"logMirrorSasUri":{"description":"Azure storage account container SAS URI for log mirroring.","type":"string"},"logRetentionDays":{"description":"Number of days historical logs are to be maintained. -1 implies the logs will never be deleted.","format":"int32","maximum":2147483647,"minimum":-1,"type":"integer"},"modelExportFrequency":{"description":"Personalizer will start using the most updated trained model for online ranks automatically every specified time period.\r\nFor example, PT5M (5 mins). For information about the time format,\r\nsee http://en.wikipedia.org/wiki/ISO_8601#Durations","format":"duration","type":"string"},"rewardAggregation":{"description":"The function used to process rewards, if multiple reward scores are received before rewardWaitTime is over.","maxLength":256,"type":"string"},"rewardWaitTime":{"description":"The time span waited until a request is marked with the default reward.\r\nFor example, PT5M (5 mins). For information about the time format,\r\nsee http://en.wikipedia.org/wiki/ISO_8601#Durations","format":"duration","type":"string"}},"required":["rewardWaitTime","defaultReward","rewardAggregation","explorationPercentage","modelExportFrequency","logRetentionDays"],"type":"object"}}}}