{"files":{"SKILL.md":"---\nname: content-moderator-client\ndescription: \"Content Moderator Client API skill. Use when working with Content Moderator Client for contentmoderator. Covers 35 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Content Moderator Client\nAPI version: 1.0\n\n## Auth\nApiKey Ocp-Apim-Subscription-Key in header\n\n## Base URL\nNot specified.\n\n## Setup\n1. Set your API key in the appropriate header\n2. GET /contentmoderator/lists/v1.0/imagelists -- gets all the image lists.\n3. POST /contentmoderator/moderate/v1.0/ProcessImage/FindFaces -- create first FindFace\n\n## Endpoints\n35 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Contentmoderator\n| Method | Path | Description |\n|--------|------|-------------|\n| POST | /contentmoderator/moderate/v1.0/ProcessImage/FindFaces | Returns the list of faces found. |\n| POST | /contentmoderator/moderate/v1.0/ProcessImage/OCR | Returns any text found in the image for the specified language. If no language is specified in the input, the detection defaults to English. |\n| POST | /contentmoderator/moderate/v1.0/ProcessImage/Evaluate | Returns probabilities of the image containing racy or adult content. |\n| POST | /contentmoderator/moderate/v1.0/ProcessImage/Match | Fuzzily match an image against one of your custom image lists. You can create and manage your custom image lists by using this API. |\n| POST | /contentmoderator/moderate/v1.0/ProcessText/Screen/ | Detect profanity and match against custom and shared blocklists |\n| POST | /contentmoderator/moderate/v1.0/ProcessText/DetectLanguage | This operation detects the language of input content. It returns the ISO 639-3 code for the predominant language in the submitted text. More than 110 languages are supported. |\n| GET | /contentmoderator/lists/v1.0/imagelists/{listId} | Returns the details of the image list with listId equal to the passed list ID. |\n| DELETE | /contentmoderator/lists/v1.0/imagelists/{listId} | Deletes the image list with listId equal to the passed list ID. |\n| PUT | /contentmoderator/lists/v1.0/imagelists/{listId} | Updates an image list with listId equal to the passed list ID. |\n| POST | /contentmoderator/lists/v1.0/imagelists | Creates an image list. |\n| GET | /contentmoderator/lists/v1.0/imagelists | Gets all the image lists. |\n| POST | /contentmoderator/lists/v1.0/imagelists/{listId}/RefreshIndex | Refreshes the index of the list with listId equal to the passed list ID. |\n| GET | /contentmoderator/lists/v1.0/termlists/{listId} | Returns list ID details of the term list with listId equal to the passed list ID. |\n| DELETE | /contentmoderator/lists/v1.0/termlists/{listId} | Deletes the term list with listId equal to the passed list ID. |\n| PUT | /contentmoderator/lists/v1.0/termlists/{listId} | Updates a term list. |\n| POST | /contentmoderator/lists/v1.0/termlists | Creates a term list. |\n| GET | /contentmoderator/lists/v1.0/termlists | Gets all the term lists. |\n| POST | /contentmoderator/lists/v1.0/termlists/{listId}/RefreshIndex | Refreshes the index of the list with listId equal to the passed list ID. |\n| POST | /contentmoderator/lists/v1.0/imagelists/{listId}/images | Add an image to the list with listId equal to the passed list ID. |\n| DELETE | /contentmoderator/lists/v1.0/imagelists/{listId}/images | Deletes all images from the list with listId equal to the passed list ID. |\n| GET | /contentmoderator/lists/v1.0/imagelists/{listId}/images | Gets all image IDs from the list with listId equal to the passed list ID. |\n| DELETE | /contentmoderator/lists/v1.0/imagelists/{listId}/images/{ImageId} | Deletes an image from the list with the passed list ID and image ID. |\n| POST | /contentmoderator/lists/v1.0/termlists/{listId}/terms/{term} | Adds a term to the term list with listId equal to the passed list ID. |\n| DELETE | /contentmoderator/lists/v1.0/termlists/{listId}/terms/{term} | Deletes a term from the list with listId equal to the passed list ID. |\n| GET | /contentmoderator/lists/v1.0/termlists/{listId}/terms | Gets all terms from the list with listId equal to the passed list ID. |\n| DELETE | /contentmoderator/lists/v1.0/termlists/{listId}/terms | Deletes all terms from the list with listId equal to the passed list ID. |\n| GET | /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId} | Returns review details for the passed review ID. |\n| GET | /contentmoderator/review/v1.0/teams/{teamName}/jobs/{JobId} | Get the job details for a job ID. |\n| POST | /contentmoderator/review/v1.0/teams/{teamName}/reviews | The created reviews appear for reviewers on your team. As reviewers finish reviewing, results of the reviews are posted (that is, HTTP POST) on the specified CallBackEndpoint value. |\n| POST | /contentmoderator/review/v1.0/teams/{teamName}/jobs | A job ID will be returned for the content posted on this endpoint. |\n| POST | /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/frames | The created reviews appear for reviewers on your team. As reviewers finish reviewing, results of the reviews are posted (that is, HTTP POST) on the specified CallBackEndpoint value. |\n| GET | /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/frames | The created reviews appear for reviewers on your team. As reviewers finish reviewing, results of the reviews are posted (that is, HTTP POST) on the specified CallBackEndpoint value. |\n| POST | /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/publish | Publish a video review. |\n| PUT | /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/transcriptmoderationresult | This API adds a transcript screen text result file for a video review. The transcript screen text result file is a result of the Screen Text API. To generate a transcript screen text result file, you must screen a transcript file for profanity by using the Screen Text API. |\n| PUT | /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/transcript | This API adds a transcript file (text version of all the words spoken in a video) to a video review. The file should be in a valid WebVTT format. |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Create a FindFace?\" -> POST /contentmoderator/moderate/v1.0/ProcessImage/FindFaces\n- \"Create a OCR?\" -> POST /contentmoderator/moderate/v1.0/ProcessImage/OCR\n- \"Create a Evaluate?\" -> POST /contentmoderator/moderate/v1.0/ProcessImage/Evaluate\n- \"Create a Match?\" -> POST /contentmoderator/moderate/v1.0/ProcessImage/Match\n- \"Create a Screen?\" -> POST /contentmoderator/moderate/v1.0/ProcessText/Screen/\n- \"Create a DetectLanguage?\" -> POST /contentmoderator/moderate/v1.0/ProcessText/DetectLanguage\n- \"Get imagelist details?\" -> GET /contentmoderator/lists/v1.0/imagelists/{listId}\n- \"Delete a imagelist?\" -> DELETE /contentmoderator/lists/v1.0/imagelists/{listId}\n- \"Update a imagelist?\" -> PUT /contentmoderator/lists/v1.0/imagelists/{listId}\n- \"Create a imagelist?\" -> POST /contentmoderator/lists/v1.0/imagelists\n- \"List all imagelists?\" -> GET /contentmoderator/lists/v1.0/imagelists\n- \"Create a RefreshIndex?\" -> POST /contentmoderator/lists/v1.0/imagelists/{listId}/RefreshIndex\n- \"Get termlist details?\" -> GET /contentmoderator/lists/v1.0/termlists/{listId}\n- \"Delete a termlist?\" -> DELETE /contentmoderator/lists/v1.0/termlists/{listId}\n- \"Update a termlist?\" -> PUT /contentmoderator/lists/v1.0/termlists/{listId}\n- \"Create a termlist?\" -> POST /contentmoderator/lists/v1.0/termlists\n- \"List all termlists?\" -> GET /contentmoderator/lists/v1.0/termlists\n- \"Create a image?\" -> POST /contentmoderator/lists/v1.0/imagelists/{listId}/images\n- \"List all images?\" -> GET /contentmoderator/lists/v1.0/imagelists/{listId}/images\n- \"Delete a image?\" -> DELETE /contentmoderator/lists/v1.0/imagelists/{listId}/images/{ImageId}\n- \"Delete a term?\" -> DELETE /contentmoderator/lists/v1.0/termlists/{listId}/terms/{term}\n- \"List all terms?\" -> GET /contentmoderator/lists/v1.0/termlists/{listId}/terms\n- \"Get review details?\" -> GET /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}\n- \"Get job details?\" -> GET /contentmoderator/review/v1.0/teams/{teamName}/jobs/{JobId}\n- \"Create a review?\" -> POST /contentmoderator/review/v1.0/teams/{teamName}/reviews\n- \"Create a job?\" -> POST /contentmoderator/review/v1.0/teams/{teamName}/jobs\n- \"Create a frame?\" -> POST /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/frames\n- \"List all frames?\" -> GET /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/frames\n- \"Create a publish?\" -> POST /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/publish\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Paginated endpoints accept limit/offset or cursor parameters\n- Create/update endpoints return the modified resource on success\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Content Moderator Client\n@version 1.0\n@auth ApiKey Ocp-Apim-Subscription-Key in header\n@endpoints 35\n@hint download_for_search\n@toc contentmoderator(35)\n\n@endpoint POST /contentmoderator/moderate/v1.0/ProcessImage/FindFaces\n@desc Returns the list of faces found.\n@optional {CacheImage: any # Whether to retain the submitted image for future use. If it's omitted, the default is false.}\n@returns(200) List of faces found.\n\n@endpoint POST /contentmoderator/moderate/v1.0/ProcessImage/OCR\n@desc Returns any text found in the image for the specified language. If no language is specified in the input, the detection defaults to English.\n@required {language: any # Language of the terms.}\n@optional {CacheImage: any # Whether to retain the submitted image for future use. If it's omitted, the default is false., enhanced: any # When it's set to true, the image goes through additional processing to come with additional candidates.  The image or TIFF file is not supported when enhanced is set to true.  Note: This affects the response time.}\n@returns(200) Text found and list of candidate text details.\n\n@endpoint POST /contentmoderator/moderate/v1.0/ProcessImage/Evaluate\n@desc Returns probabilities of the image containing racy or adult content.\n@optional {CacheImage: any # Whether to retain the submitted image for future use. If it's omitted, the default is false.}\n@returns(200)\n\n@endpoint POST /contentmoderator/moderate/v1.0/ProcessImage/Match\n@desc Fuzzily match an image against one of your custom image lists. You can create and manage your custom image lists by using this API.\n@optional {listId: any # List ID., CacheImage: any # Whether to retain the submitted image for future use. If it's omitted, the default is false.}\n@returns(200) Supported values for tags are:\r \r 101: Nudity\r 102: Sexual Content\r 201: Alcohol\r 202: Tobacco\r 203: Drugs\r 301: Child Exploitation\r 401: Violence\r 402: Weapons\r 403: Gore\r 501: Profanity\r 502: Vulgarity\r .\n\n@endpoint POST /contentmoderator/moderate/v1.0/ProcessText/Screen/\n@desc Detect profanity and match against custom and shared blocklists\n@required {Content-Type: any # Content type., Text Content: map # Content to screen.}\n@optional {language: any # Language of the text., autocorrect: any # Autocorrect text., PII: any # Detect personal identifiable information., listId: any # List ID., classify: any # Classify input.}\n@returns(200) Status 200.\n\n@endpoint POST /contentmoderator/moderate/v1.0/ProcessText/DetectLanguage\n@desc This operation detects the language of input content. It returns the ISO 639-3 code for the predominant language in the submitted text. More than 110 languages are supported.\n@required {Content-Type: any # Content type., Text Content: map # Content to screen.}\n@returns(200) Detected language result.\n\n@endpoint GET /contentmoderator/lists/v1.0/imagelists/{listId}\n@desc Returns the details of the image list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@returns(200) OK.\n\n@endpoint DELETE /contentmoderator/lists/v1.0/imagelists/{listId}\n@desc Deletes the image list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@returns(200) OK.\n\n@endpoint PUT /contentmoderator/lists/v1.0/imagelists/{listId}\n@desc Updates an image list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list., Content-Type: any # Content type., body: map # Schema of the body.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/lists/v1.0/imagelists\n@desc Creates an image list.\n@required {Content-Type: any # Content type., body: map # Schema of the body.}\n@returns(200) OK.\n\n@endpoint GET /contentmoderator/lists/v1.0/imagelists\n@desc Gets all the image lists.\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/lists/v1.0/imagelists/{listId}/RefreshIndex\n@desc Refreshes the index of the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@returns(200) OK.\n\n@endpoint GET /contentmoderator/lists/v1.0/termlists/{listId}\n@desc Returns list ID details of the term list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@returns(200) OK.\n\n@endpoint DELETE /contentmoderator/lists/v1.0/termlists/{listId}\n@desc Deletes the term list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@returns(200) OK.\n\n@endpoint PUT /contentmoderator/lists/v1.0/termlists/{listId}\n@desc Updates a term list.\n@required {listId: any # List ID of the image list., Content-Type: any # Content type., body: map # Schema of the body.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/lists/v1.0/termlists\n@desc Creates a term list.\n@required {Content-Type: any # Content type., body: map # Schema of the body.}\n@returns(200) OK.\n\n@endpoint GET /contentmoderator/lists/v1.0/termlists\n@desc Gets all the term lists.\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/lists/v1.0/termlists/{listId}/RefreshIndex\n@desc Refreshes the index of the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list., language: any # Language of the terms.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/lists/v1.0/imagelists/{listId}/images\n@desc Add an image to the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@optional {tag: any # Tag for the image., label: any # Image label.}\n@returns(200) OK.\n\n@endpoint DELETE /contentmoderator/lists/v1.0/imagelists/{listId}/images\n@desc Deletes all images from the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@returns(200) OK.\n\n@endpoint GET /contentmoderator/lists/v1.0/imagelists/{listId}/images\n@desc Gets all image IDs from the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list.}\n@returns(200) OK.\n\n@endpoint DELETE /contentmoderator/lists/v1.0/imagelists/{listId}/images/{ImageId}\n@desc Deletes an image from the list with the passed list ID and image ID.\n@required {listId: any # List ID of the image list., ImageId: any # Image ID.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/lists/v1.0/termlists/{listId}/terms/{term}\n@desc Adds a term to the term list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list., term: any # Term to be deleted, language: any # Language of the terms.}\n@returns(201) Created.\n\n@endpoint DELETE /contentmoderator/lists/v1.0/termlists/{listId}/terms/{term}\n@desc Deletes a term from the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list., term: any # Term to be deleted, language: any # Language of the terms.}\n@returns(204) No content.\n\n@endpoint GET /contentmoderator/lists/v1.0/termlists/{listId}/terms\n@desc Gets all terms from the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list., language: any # Language of the terms.}\n@optional {offset: any # Pagination start index., limit: any # Maximum number.}\n@returns(200) OK.\n\n@endpoint DELETE /contentmoderator/lists/v1.0/termlists/{listId}/terms\n@desc Deletes all terms from the list with listId equal to the passed list ID.\n@required {listId: any # List ID of the image list., language: any # Language of the terms.}\n@returns(204) No content.\n\n@endpoint GET /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}\n@desc Returns review details for the passed review ID.\n@required {teamName: any # Your team name., reviewId: any # ID of the review.}\n@returns(200) OK.\n\n@endpoint GET /contentmoderator/review/v1.0/teams/{teamName}/jobs/{JobId}\n@desc Get the job details for a job ID.\n@required {teamName: any # Your team name., JobId: any # ID of the job.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/review/v1.0/teams/{teamName}/reviews\n@desc The created reviews appear for reviewers on your team. As reviewers finish reviewing, results of the reviews are posted (that is, HTTP POST) on the specified CallBackEndpoint value.\n@required {UrlContentType: any # Content type., teamName: any # Your team name., createReviewBody: [map] # Body of the API for creating reviews.}\n@optional {subTeam: any # Subteam that you want to assign the created review to.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/review/v1.0/teams/{teamName}/jobs\n@desc A job ID will be returned for the content posted on this endpoint.\n@required {teamName: any # Your team name., ContentType: any # Image, text or video., ContentId: any # ID or name to identify the submitted content., WorkflowName: any # Workflow name that you want to invoke., Content-Type: any # Content type., Content: map # Content to evaluate.}\n@optional {CallBackEndpoint: any # Callback endpoint for posting the result of creating a job.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/frames\n@desc The created reviews appear for reviewers on your team. As reviewers finish reviewing, results of the reviews are posted (that is, HTTP POST) on the specified CallBackEndpoint value.\n@required {teamName: any # Your team name., reviewId: any # ID of the review.}\n@optional {timescale: any # Timescale of the video that you're adding frames to.}\n@returns(200) OK.\n\n@endpoint GET /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/frames\n@desc The created reviews appear for reviewers on your team. As reviewers finish reviewing, results of the reviews are posted (that is, HTTP POST) on the specified CallBackEndpoint value.\n@required {teamName: any # Your team name., reviewId: any # ID of the review.}\n@optional {startSeed: any # Time stamp of the frame from where you want to start fetching the frames., noOfRecords: any # Number of frames to fetch., filter: any # Get frames filtered by tags.}\n@returns(200) OK.\n\n@endpoint POST /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/publish\n@desc Publish a video review.\n@required {teamName: any # Your team name., reviewId: any # ID of the review.}\n@returns(204) No content.\n\n@endpoint PUT /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/transcriptmoderationresult\n@desc This API adds a transcript screen text result file for a video review. The transcript screen text result file is a result of the Screen Text API. To generate a transcript screen text result file, you must screen a transcript file for profanity by using the Screen Text API.\n@required {Content-Type: any # Content type., teamName: any # Your team name., reviewId: any # ID of the review., transcriptModerationBody: [map] # Body of the API for adding video transcript moderation results.}\n@returns(204) No content.\n\n@endpoint PUT /contentmoderator/review/v1.0/teams/{teamName}/reviews/{reviewId}/transcript\n@desc This API adds a transcript file (text version of all the words spoken in a video) to a video review. The file should be in a valid WebVTT format.\n@required {teamName: any # Your team name., reviewId: any # ID of the review., Content-Type: any # Content type., VTT file: map # Transcript file of the video.}\n@returns(204) No content.\n\n@end\n"}}