Skip to main content
POST
/
api
/
v1
/
apps
Create
package main

import(
	"context"
	"github.com/conductorone/conductorone-sdk-go/pkg/models/shared"
	conductoronesdkgo "github.com/conductorone/conductorone-sdk-go"
	"log"
)

func main() {
    ctx := context.Background()

    s := conductoronesdkgo.New(
        conductoronesdkgo.WithSecurity(shared.Security{
            BearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
            Oauth: "<YOUR_OAUTH_HERE>",
        }),
    )

    res, err := s.Apps.Create(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }
    if res.CreateAppResponse != nil {
        // handle response
    }
}
{
  "app": {
    "appAccountId": "<string>",
    "appAccountName": "<string>",
    "appOwners": [
      {
        "createdAt": "2023-11-07T05:31:56Z",
        "delegatedUserId": "<string>",
        "deletedAt": "2023-11-07T05:31:56Z",
        "department": "<string>",
        "departmentSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "directoryIds": [
          "<string>"
        ],
        "directoryStatus": "UNKNOWN",
        "directoryStatusSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "displayName": "<string>",
        "email": "<string>",
        "emailSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "emails": [
          "<string>"
        ],
        "employeeIdSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "employeeIds": [
          "<string>"
        ],
        "employmentStatus": "<string>",
        "employmentStatusSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "employmentType": "<string>",
        "employmentTypeSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "id": "<string>",
        "jobTitle": "<string>",
        "jobTitleSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "managerIds": [
          "<string>"
        ],
        "managerSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "profile": {},
        "roleIds": [
          "<string>"
        ],
        "status": "UNKNOWN",
        "type": "USER_TYPE_UNSPECIFIED",
        "updatedAt": "2023-11-07T05:31:56Z",
        "username": "<string>",
        "usernameSources": [
          {
            "appId": "<string>",
            "appUserId": "<string>",
            "appUserProfileAttributeKey": "<string>",
            "userAttributeMappingId": "<string>",
            "value": "<string>"
          }
        ],
        "usernames": [
          "<string>"
        ]
      }
    ],
    "certifyPolicyId": "<string>",
    "connectorVersion": 123,
    "createdAt": "2023-11-07T05:31:56Z",
    "defaultRequestCatalogId": "<string>",
    "deletedAt": "2023-11-07T05:31:56Z",
    "description": "<string>",
    "displayName": "<string>",
    "fieldMask": "<string>",
    "grantPolicyId": "<string>",
    "iconUrl": "<string>",
    "id": "<string>",
    "identityMatching": "APP_USER_IDENTITY_MATCHING_UNSPECIFIED",
    "instructions": "<string>",
    "isDirectory": true,
    "isManuallyManaged": true,
    "logoUri": "<string>",
    "monthlyCostUsd": 123,
    "parentAppId": "<string>",
    "revokePolicyId": "<string>",
    "strictAccessEntitlementProvisioning": true,
    "updatedAt": "2023-11-07T05:31:56Z",
    "userCount": "<string>"
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Authorization
string
header
required

This API uses OAuth2 with the Client Credential flow. Client Credentials must be sent in the BODY, not the headers. For an example of how to implement this, refer to the c1TokenSource.Token() function.

Body

application/json

The CreateAppRequest message is used to create a new app.

displayName
string
required

Creates the app with this display name.

certifyPolicyId
string

Creates the app with this certify policy.

description
string

Creates the app with this description.

grantPolicyId
string

Creates the app with this grant policy.

identityMatching
enum<string>

Define the app user identity matching strategy for this app.

Available options:
APP_USER_IDENTITY_MATCHING_UNSPECIFIED,
APP_USER_IDENTITY_MATCHING_STRICT,
APP_USER_IDENTITY_MATCHING_DISPLAY_NAME
instructions
string

Instructions shown to users in the access request form when requesting access for this app.

monthlyCostUsd
integer<int32>

Creates the app with this monthly cost per seat.

owners
string[] | null

Creates the app with this array of owners.

revokePolicyId
string

Creates the app with this revoke policy.

strictAccessEntitlementProvisioning
boolean

This flag enforces a provisioning mode where the access entitlement is always included in the provisioning flow, if the app user doesn't exist

Response

200 - application/json

Returns the new app's values.

Returns the new app's values.

app
App · object

The App object provides all of the details for an app, as well as some configuration.