JFrog · Arazzo Workflow

JFrog Access Provision Project

Version 1.0.0

Create a project, add a user to it, and confirm the project.

1 workflow 1 source API 1 provider
View Spec View on GitHub ArtifactoryCI/CDContainer RegistryDevOpsMLOpsPackage ManagementSecuritySoftware Supply ChainArazzoWorkflows

Provider

jfrog

Workflows

provision-project
Create a project, assign a user, and verify the project.
Creates a project keyed by projectKey, adds a user with the supplied roles, then fetches the project to confirm it exists.
3 steps inputs: displayName, maxStorage, projectKey, role, username outputs: addedUser, projectKey
1
createProject
Create a new project with the supplied key, display name and storage quota.
2
addUser
Add the supplied user to the project with the requested role.
3
confirmProject
Read the project back to confirm it was created with the expected key.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: JFrog Access Provision Project
  summary: Create a project, add a user to it, and confirm the project.
  description: >-
    Project-based isolation in the JFrog Platform via the Access service. The
    workflow creates a project with a storage quota, adds an existing user to it
    with a role, then reads the project back to confirm it was created. Every
    step spells out its request inline so the flow can be read and executed
    without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: projectsApi
  url: ../openapi/jfrog-projects-api-openapi.yml
  type: openapi
workflows:
- workflowId: provision-project
  summary: Create a project, assign a user, and verify the project.
  description: >-
    Creates a project keyed by projectKey, adds a user with the supplied roles,
    then fetches the project to confirm it exists.
  inputs:
    type: object
    required:
    - projectKey
    - displayName
    - username
    - role
    properties:
      projectKey:
        type: string
        description: The unique project key (max 32 chars).
      displayName:
        type: string
        description: The human-readable project name.
      username:
        type: string
        description: An existing username to add to the project.
      role:
        type: string
        description: The role to assign the user (e.g. Developer, Project Admin).
      maxStorage:
        type: integer
        description: The maximum storage in gibibytes for the project.
  steps:
  - stepId: createProject
    description: >-
      Create a new project with the supplied key, display name and storage
      quota.
    operationId: createProject
    requestBody:
      contentType: application/json
      payload:
        project_key: $inputs.projectKey
        display_name: $inputs.displayName
        description: Provisioned by the provision-project workflow
        max_storage_in_gibibytes: $inputs.maxStorage
        admin_privileges:
          manage_members: true
          manage_resources: true
          index_resources: true
    successCriteria:
    - condition: $statusCode == 201
    outputs:
      projectKey: $response.body#/project_key
  - stepId: addUser
    description: >-
      Add the supplied user to the project with the requested role.
    operationId: addUserToProject
    parameters:
    - name: projectKey
      in: path
      value: $steps.createProject.outputs.projectKey
    - name: username
      in: path
      value: $inputs.username
    requestBody:
      contentType: application/json
      payload:
        roles:
        - $inputs.role
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      addedUser: $inputs.username
  - stepId: confirmProject
    description: >-
      Read the project back to confirm it was created with the expected key.
    operationId: getProject
    parameters:
    - name: projectKey
      in: path
      value: $steps.createProject.outputs.projectKey
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      projectKey: $response.body#/project_key
      displayName: $response.body#/display_name
  outputs:
    projectKey: $steps.confirmProject.outputs.projectKey
    addedUser: $steps.addUser.outputs.addedUser

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/jfrog-access-provision-project-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.