Microsoft Entra ID (formerly Azure AD) · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Applications.synchronization API
57 actions
57 updates
phrasing
extends
openapi/azure-ad-applications-synchronization-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Microsoft Entra ID (formerly Azure AD)'s API. It is a proposal applied on top of the contract, not a document Microsoft Entra ID (formerly Azure AD) publishes.
What the actions change
x-apievangelist-phrasing
Targets 57 · first 16 shown; the file carries all of them
$.info
$.paths['/applications/{application-id}/synchronization'].get
$.paths['/applications/{application-id}/synchronization'].put
$.paths['/applications/{application-id}/synchronization'].delete
$.paths['/applications/{application-id}/synchronization/jobs'].get
$.paths['/applications/{application-id}/synchronization/jobs'].post
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}'].get
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}'].delete
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}'].patch
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload'].get
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload'].delete
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload'].patch
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload/$value'].get
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload/$value'].put
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload/$value'].delete
$.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/microsoft.graph.pause'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Applications.synchronization API
version: 1.0.0
extends: openapi/azure-ad-applications-synchronization-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 56
- target: $.paths['/applications/{application-id}/synchronization'].get
update:
x-apievangelist-phrasing:
intent: Get an application's provisioning sync setup
effect: read
questions:
- What does the overall provisioning synchronization configuration look like for one of my Entra app registrations?
- Can I see the jobs, templates and secrets an application's sync setup holds in one call?
instructions:
- text: Show me the synchronization configuration for application {app}.
slots:
app: path.application-id
- text: Fetch the whole provisioning sync object attached to app {app}.
slots:
app: path.application-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization'].put
update:
x-apievangelist-phrasing:
intent: Replace an application's sync configuration
effect: write
questions:
- How do I overwrite the entire synchronization object on an application in one request?
- Can I replace an app's sync jobs, templates and secrets together with a single PUT?
instructions:
- text: 'Replace the synchronization configuration on application {app} with these jobs: {jobs}.'
slots:
app: path.application-id
jobs: requestBody.jobs
- text: Overwrite the sync setup for app {app}, setting its templates to {templates}.
slots:
app: path.application-id
templates: requestBody.templates
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization'].delete
update:
x-apievangelist-phrasing:
intent: Remove an application's sync configuration
effect: destructive
questions:
- Can I tear down the whole provisioning synchronization setup on an application at once?
- What happens to an app's sync jobs and templates if I delete its synchronization object?
instructions:
- text: Delete the entire synchronization configuration from application {app}.
slots:
app: path.application-id
- text: Remove all provisioning sync setup on app {app}.
slots:
app: path.application-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs'].get
update:
x-apievangelist-phrasing:
intent: List an application's provisioning sync jobs
effect: read
questions:
- Which provisioning jobs are set up to sync users into one of my applications?
- How do I see every synchronization job configured on an Entra app?
instructions:
- text: List the synchronization jobs on application {app}.
slots:
app: path.application-id
- text: Show all provisioning jobs configured for app {app}.
slots:
app: path.application-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs'].post
update:
x-apievangelist-phrasing:
intent: Create a provisioning sync job for an application
effect: write
questions:
- How do I set up a new provisioning job for an application from one of its sync templates?
- Can I give a new sync job its own schedule when I create it?
instructions:
- text: Create a synchronization job on application {app} from template {template}.
slots:
app: path.application-id
template: requestBody.templateId
- text: Add a new provisioning job to app {app} using template {template} with schedule {schedule}.
slots:
app: path.application-id
template: requestBody.templateId
schedule: requestBody.schedule
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}'].get
update:
x-apievangelist-phrasing:
intent: Get one provisioning sync job
effect: read
questions:
- What is the current status and schedule of a specific provisioning job on my app?
- Can I look up a single synchronization job by its ID?
instructions:
- text: Get synchronization job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Show the status of provisioning job {job} for app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a provisioning sync job
effect: destructive
questions:
- How do I permanently remove one provisioning job from an application?
- Can I delete a single sync job without touching the app's other jobs?
instructions:
- text: Delete synchronization job {job} from application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Remove provisioning job {job} on app {app} for good.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}'].patch
update:
x-apievangelist-phrasing:
intent: Update a provisioning sync job
effect: write
questions:
- Can I change the schedule of an existing provisioning job on my app?
- What settings on a sync job can I edit after it's been created?
instructions:
- text: Change the schedule of sync job {job} on application {app} to {schedule}.
slots:
app: path.application-id
job: path.synchronizationJob-id
schedule: requestBody.schedule
- text: Update the job settings of provisioning job {job} for app {app} to {settings}.
slots:
app: path.application-id
job: path.synchronizationJob-id
settings: requestBody.synchronizationJobSettings
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload'].get
update:
x-apievangelist-phrasing:
intent: Get a sync job's bulk upload operation
effect: read
questions:
- Is there a bulk upload operation attached to my provisioning job, and what is it?
- Can I inspect the bulk upload entity on a synchronization job?
instructions:
- text: Get the bulk upload operation for sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Show the bulkUpload object of provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload'].delete
update:
x-apievangelist-phrasing:
intent: Delete a sync job's bulk upload operation
effect: destructive
questions:
- How do I remove the bulk upload operation from a provisioning job?
- Can I drop a job's bulkUpload entity entirely rather than just clearing its file?
instructions:
- text: Delete the bulk upload operation from sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Remove the bulkUpload entity of provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload'].patch
update:
x-apievangelist-phrasing:
intent: Update a sync job's bulk upload entity
effect: write
questions:
- Can I patch the bulk upload entity on a provisioning job?
- What can I change on a job's bulkUpload object without replacing its file content?
instructions:
- text: Update the bulk upload entity on sync job {job} for application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Patch the bulkUpload object of provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload/$value'].get
update:
x-apievangelist-phrasing:
intent: Download a sync job's bulk upload content
effect: read
questions:
- How do I download the raw file content of a provisioning job's bulk upload?
- Can I read back the payload that was bulk uploaded to a sync job?
instructions:
- text: Download the bulk upload content for sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Get the raw bulkUpload media of provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload/$value'].put
update:
x-apievangelist-phrasing:
intent: Upload bulk content to a sync job
effect: write
questions:
- How do I push a bulk upload payload of user records into a provisioning job?
- Can I replace the media content of a sync job's bulk upload?
instructions:
- text: Upload new bulk content to sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Replace the bulkUpload media of provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/bulkUpload/$value'].delete
update:
x-apievangelist-phrasing:
intent: Clear a sync job's bulk upload content
effect: destructive
questions:
- Can I wipe just the uploaded file content from a provisioning job's bulk upload?
- What's the way to clear bulk upload media while keeping the bulkUpload entity?
instructions:
- text: Clear the bulk upload content from sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Delete the uploaded bulk media of provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/microsoft.graph.pause'].post
update:
x-apievangelist-phrasing:
intent: Pause a running provisioning job
effect: write
questions:
- Can I temporarily stop a provisioning job and have it resume where it left off?
- Does pausing a sync job keep its progress and state?
instructions:
- text: Pause sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Temporarily halt provisioning job {job} for app {app} without losing progress.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/microsoft.graph.provisionOnDemand'].post
update:
x-apievangelist-phrasing:
intent: Provision a user on demand through a sync job
effect: write
questions:
- How do I provision one specific user right now instead of waiting for the next sync cycle?
- What's the rate limit on on-demand provisioning for a sync job?
instructions:
- text: Provision on demand through sync job {job} on application {app} using {parameters}.
slots:
app: path.application-id
job: path.synchronizationJob-id
parameters: requestBody.parameters
- text: 'Push this user into app {app} immediately via provisioning job {job}: {parameters}.'
slots:
app: path.application-id
job: path.synchronizationJob-id
parameters: requestBody.parameters
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/microsoft.graph.restart'].post
update:
x-apievangelist-phrasing:
intent: Restart a provisioning job and reprocess everything
effect: write
questions:
- How do I force a stopped provisioning job to reprocess every object in the directory?
- Can I clear the existing sync state when I restart a job?
instructions:
- text: Restart sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Restart provisioning job {job} for app {app} with reset criteria {criteria}.
slots:
app: path.application-id
job: path.synchronizationJob-id
criteria: requestBody.criteria
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/microsoft.graph.start'].post
update:
x-apievangelist-phrasing:
intent: Start or resume a provisioning job
effect: write
questions:
- How do I kick off an existing provisioning job for the first time?
- If a sync job is paused, will starting it continue from where it stopped?
instructions:
- text: Start sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Resume the paused provisioning job {job} for app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/microsoft.graph.validateCredentials'].post
update:
x-apievangelist-phrasing:
intent: Validate credentials for an existing sync job
effect: read
questions:
- How do I confirm the credentials on an existing provisioning job are still valid in my tenant?
- Can I re-test a running sync job's saved credentials after the target system's password changed?
instructions:
- text: Validate the credentials of sync job {job} on application {app}.
slots:
job: path.synchronizationJob-id
app: path.application-id
- text: Check whether existing job {job} on app {app} still works with its saved credentials ({use_saved}).
slots:
job: path.synchronizationJob-id
app: path.application-id
use_saved: requestBody.useSavedCredentials
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema'].get
update:
x-apievangelist-phrasing:
intent: Get a provisioning job's sync schema
effect: read
questions:
- Which attribute mappings and rules is my provisioning job actually using?
- Can I read the synchronization schema configured on a specific job?
instructions:
- text: Get the sync schema for job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Show the attribute mapping schema of provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema'].delete
update:
x-apievangelist-phrasing:
intent: Delete a provisioning job's custom schema
effect: destructive
questions:
- How do I remove the customized schema from a provisioning job?
- Can I delete a sync job's schema to drop its custom attribute mappings?
instructions:
- text: Delete the sync schema of job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Remove the attribute mapping schema from provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema'].patch
update:
x-apievangelist-phrasing:
intent: Update a provisioning job's sync schema
effect: write
questions:
- How do I change attribute mappings on a live provisioning job?
- Can I edit the synchronization rules of one job without changing its template?
instructions:
- text: Update the sync rules of job {job} on application {app} to {rules}.
slots:
app: path.application-id
job: path.synchronizationJob-id
rules: requestBody.synchronizationRules
- text: Set the directories in provisioning job {job}'s schema for app {app} to {directories}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directories: requestBody.directories
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/directories'].get
update:
x-apievangelist-phrasing:
intent: List directories in a sync job's schema
effect: read
questions:
- Which source and target directories does my provisioning job's schema define?
- What directory definitions and objects are in a sync job's schema?
instructions:
- text: List the directory definitions in the schema of sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Show all directories in provisioning job {job}'s schema for app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/directories'].post
update:
x-apievangelist-phrasing:
intent: Add a directory definition to a job's schema
effect: write
questions:
- How do I add a new directory definition to a provisioning job's schema?
- Can I mark a new directory in a sync job's schema as read-only?
instructions:
- text: Add a directory named {name} to the schema of sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
name: requestBody.name
- text: Create directory {name} with objects {objects} in provisioning job {job}'s schema for app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
name: requestBody.name
objects: requestBody.objects
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/directories/{directoryDefinition-id}'].get
update:
x-apievangelist-phrasing:
intent: Get one directory definition in a job's schema
effect: read
questions:
- What objects and attributes does one directory in my provisioning job's schema contain?
- When was a particular directory in a sync job's schema last discovered?
instructions:
- text: Get directory {directory} in the schema of sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
- text: Show the objects of directory {directory} in provisioning job {job} for app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/directories/{directoryDefinition-id}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a directory definition from a job's schema
effect: destructive
questions:
- How do I delete one directory definition from a provisioning job's schema?
- Can I drop a directory from a sync job's schema without deleting the whole schema?
instructions:
- text: Delete directory {directory} from the schema of sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
- text: Remove directory definition {directory} in provisioning job {job} for app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/directories/{directoryDefinition-id}'].patch
update:
x-apievangelist-phrasing:
intent: Update a directory definition in a job's schema
effect: write
questions:
- Can I rename or change the objects of a directory in a provisioning job's schema?
- What fields of a sync job's directory definition can I update?
instructions:
- text: Rename directory {directory} in sync job {job}'s schema on application {app} to {name}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
name: requestBody.name
- text: Set the objects of directory {directory} in provisioning job {job} for app {app} to {objects}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
objects: requestBody.objects
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/directories/{directoryDefinition-id}/microsoft.graph.discover'].post
update:
x-apievangelist-phrasing:
intent: Rediscover a directory's schema for a sync job
effect: write
questions:
- How do I pull the latest attribute schema from the target app into my provisioning job?
- Can I refresh a directory definition on a sync job after the app added new attributes?
instructions:
- text: Discover the latest schema for directory {directory} in sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
- text: Refresh directory {directory} of provisioning job {job} for app {app} from the live app.
slots:
app: path.application-id
job: path.synchronizationJob-id
directory: path.directoryDefinition-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/directories/$count'].get
update:
x-apievangelist-phrasing:
intent: Count directories in a sync job's schema
effect: read
questions:
- How many directory definitions are in my provisioning job's schema?
- Can I get just the number of directories a sync job's schema defines?
instructions:
- text: Count the directories in the schema of sync job {job} on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Tell me how many directory definitions provisioning job {job} in app {app} has.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/microsoft.graph.filterOperators()'].get
update:
x-apievangelist-phrasing:
intent: List scoping filter operators for a job's schema
effect: read
questions:
- Which operators can I use in scoping filters on my provisioning job?
- What comparison operators does a sync job's schema support for scoping?
instructions:
- text: List the scoping filter operators supported by sync job {job}'s schema on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Show filter operators available to provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/microsoft.graph.functions()'].get
update:
x-apievangelist-phrasing:
intent: List mapping functions for a job's schema
effect: read
questions:
- Which expression functions can I use in attribute mappings on my provisioning job?
- What transformation functions does a sync job's schema support?
instructions:
- text: List the attribute mapping functions supported by sync job {job}'s schema on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
- text: Show expression functions available to provisioning job {job} in app {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/{synchronizationJob-id}/schema/microsoft.graph.parseExpression'].post
update:
x-apievangelist-phrasing:
intent: Test-parse a mapping expression in a job's schema
effect: read
questions:
- How can I check that an attribute mapping expression parses before saving it to a provisioning job?
- Can I evaluate a mapping expression against a sample input object on a sync job?
instructions:
- text: Parse expression {expression} against sync job {job}'s schema on application {app}.
slots:
app: path.application-id
job: path.synchronizationJob-id
expression: requestBody.expression
- text: Test mapping expression {expression} on provisioning job {job} in app {app} with input {input}.
slots:
app: path.application-id
job: path.synchronizationJob-id
expression: requestBody.expression
input: requestBody.testInputObject
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/$count'].get
update:
x-apievangelist-phrasing:
intent: Count an application's provisioning jobs
effect: read
questions:
- How many provisioning jobs are configured on one of my applications?
- Can I get just a count of sync jobs for an app?
instructions:
- text: Count the synchronization jobs on application {app}.
slots:
app: path.application-id
- text: Tell me how many provisioning jobs app {app} has.
slots:
app: path.application-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/jobs/microsoft.graph.validateCredentials'].post
update:
x-apievangelist-phrasing:
intent: Test provisioning credentials before creating a job
effect: read
questions:
- Can I check that a target system accepts my admin credentials before any sync job exists for the application?
- Is there a way to test provisioning credentials against a sync template without creating a job first?
instructions:
- text: Test credentials {credentials} for application {app} before creating its first sync job.
slots:
credentials: requestBody.credentials
app: path.application-id
- text: Validate provisioning credentials for app {app} against template {template} with no job yet.
slots:
app: path.application-id
template: requestBody.templateId
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/microsoft.graph.acquireAccessToken'].post
update:
x-apievangelist-phrasing:
intent: Acquire an OAuth token for app provisioning
effect: write
questions:
- How do I get an OAuth access token so the Entra provisioning service can provision users into an app?
- Can I authorize provisioning into an application by exchanging credentials for a token?
instructions:
- text: Acquire a provisioning access token for application {app} using credentials {credentials}.
slots:
app: path.application-id
credentials: requestBody.credentials
- text: Get an OAuth token from the sync resource of app {app}.
slots:
app: path.application-id
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/secrets'].put
update:
x-apievangelist-phrasing:
intent: Save provisioning secrets on an application
effect: write
questions:
- Where do I store the admin credentials or secret token an app's provisioning uses?
- Can I replace the saved synchronization secrets on an application?
instructions:
- text: Set the synchronization secrets on application {app} to {secrets}.
slots:
app: path.application-id
secrets: requestBody.value
- text: Replace the stored provisioning credentials for app {app} with {secrets}.
slots:
app: path.application-id
secrets: requestBody.value
method: generated
generated: '2026-10-01'
- target: $.paths['/applications/{application-id}/synchronization/secrets/$count'].get
update:
x-apievangelist-phrasing:
intent: Count an application's saved sync secrets
effect: read
questions:
- How many provisioning secrets are saved on an application?
- Can I check whether an app has any synchronization secrets stored?
instructions:
- text: Count the synchronization secrets saved on application {app}.
slots:
app: path.application-id
- text: Tell me how many provisioning secrets app {app} holds.
slots:
app: path.application-id
method: generated
generated: '2026-10-01'
# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/azure-ad/refs/heads/main/overlays/azure-ad-applications-synchronization-api-phrasing-overlay.yaml