Apps Common Key Flexfields
Purpose
Manage KFF setup-data tasks routed from pillar setup-task skills without owning CSV transport. Read KFF setup-task guidance before acting.
Use shared.setup-export.task-level-export only for export and
core.data-loader only for approved FSM CSV import. For KFF metadata
deployment or deployment status, use only core.fusion-api.rest-api-client
as specified in the KFF reference.
KFF Deployment Workflow
Read the REST Deployment and Status section of KFF setup-task guidance. Deployment compiles the configured KFF; it is not a CSV import. After the Import KFF Setup Data workflow has completed successfully, enter this workflow for the imported KFF. Do not deploy after an incomplete or failed import.
- Preflight the confirmed target environment,
application_id, KFFflexfield_code, optionalforce_deploymentvalue ("true"or"false"), and the caller's required Fusion privilege. When the calling skill omits it, setforceDeploymentto the documented default,"false". URL-encode reserved code characters (for example,GL#asGL%23) and do not infer identifiers. - For a live deployment, present the exact target environment, POST endpoint,
and immutable JSON payload, then obtain explicit approval immediately before
invoking the REST client. Submit with
fusion_rest_client.py, using the default Fusionscopefor/fscmUI/applcoreApi. - Capture
jobId,jobStatus,deploymentStatus,validationStatus,validationReport,deploymentErrorMessage, and the response links. Do not retry a POST without explicit approval. - For status, call the documented
getDeploymentStateGET endpoint through the REST client using the same resolved identifiers. Poll only when asked, using the bounded interval and timeout in the reference; stop at a terminal response or timeout.
Preflight and Error Handling
Resolve task identity from the calling pillar skill, verify
ExportImportSupportedFlag, and preflight the selected workflow's target,
artifact, and approval requirements. Classify an unsupported task as
catalog_or_metadata_mismatch and an unapproved import as
approval_blocker. Redact credentials, tokens, and sensitive setup data from
diagnostics.
For deployment, classify malformed identifiers or force values as
input_validation; a 401/403 after the REST client's one refresh attempt as
authorization_or_privilege; HTTP failures as fusion_api_error; and a
nonterminal result at the polling limit as process_timeout. Return the last
safe status and job ID to the calling project workflow; never persist OAuth
tokens, secrets, Authorization headers, or sensitive setup data.


