{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","params":[],"results":{"codes":[]},"settings":""},"next":{"description":"","pages":[]},"title":"Provisioning API","type":"basic","slug":"provisioning-api","excerpt":"","body":"You are (optionally) responsible for implementing a provisioning API to enable full identity sync.  Once enabled, Replicated will make calls into this API when changes are detected in the directory service.\n\nWhen implemented and defined in the `Identity` configuration, this API will receive the list of LDAP users (initially) and updates when users are added, edited, and removed.\n[block:api-header]\n{\n  \"type\": \"get\",\n  \"title\": \"/v1/ping\"\n}\n[/block]\nThis call is used to advertise the API's readiness.\n\n### Response\n\nHTTP status on success: `204`\nAll other status codes will be interpreted as errors and sync will not be initiated.\n[block:api-header]\n{\n  \"type\": \"post\",\n  \"title\": \"/v1/user/create\"\n}\n[/block]\nThis endpoint is called when a new user record is being added.\n\n### Request Payload\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"uuid\",\n    \"1-0\": \"user_id\",\n    \"h-0\": \"Name\",\n    \"h-1\": \"Type\",\n    \"h-2\": \"Description\",\n    \"0-2\": \"(Required) This is the permanent unique user identifier.  Note that `username` can change but still identify the same user.\",\n    \"0-1\": \"String\",\n    \"1-1\": \"String\",\n    \"1-2\": \"(Optional) User ID if one is defined by the LDAP server.\",\n    \"2-2\": \"(Optional) Username as defined by the `ldap_username_field` setting.\",\n    \"2-0\": \"username\",\n    \"2-1\": \"String\",\n    \"3-0\": \"first_name\",\n    \"3-1\": \"String\",\n    \"3-2\": \"(Optional) First name\",\n    \"4-0\": \"last_name\",\n    \"4-1\": \"String\",\n    \"4-2\": \"(Optional) Last name\",\n    \"6-0\": \"password_format\",\n    \"6-1\": \"String\",\n    \"6-2\": \"(Optional) Password (encryption/hashing) format\",\n    \"7-0\": \"password\",\n    \"7-1\": \"String\",\n    \"7-2\": \"(Optional) Password.  Note that this maybe clear text password.  This will be indicated by the value in `password_format`\",\n    \"8-0\": \"email\",\n    \"8-1\": \"String\",\n    \"8-2\": \"(Optional) Email\",\n    \"5-0\": \"full_name\",\n    \"5-2\": \"(Optional) Full name\",\n    \"5-1\": \"String\"\n  },\n  \"cols\": 3,\n  \"rows\": 9\n}\n[/block]\n### Response\n\nHTTP status on success: `201`\nAll other status codes will be interpreted as errors and sync will not continue.\n[block:api-header]\n{\n  \"type\": \"post\",\n  \"title\": \"/v1/user/modify\"\n}\n[/block]\nThis endpoint is called when an existing user record is being update.\n\n### Request Payload\n\nAt this time the request payload is the same as for `/v1/user/create`\n\n### Response\n\nHTTP status on success: `204`\nAll other status codes will be interpreted as errors and sync will not continue.\n[block:api-header]\n{\n  \"type\": \"delete\",\n  \"title\": \"/v1/user/:uuid\"\n}\n[/block]\nThis endpoint is called when an existing user record is being deleted.\n\n### Request Payload\n\nNone\n\n### Response\n\nHTTP status on success: `204`\nAll other status codes will be interpreted as errors and sync will not continue.","updates":["5671abcb5e49250d006648d2"],"order":7,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"5702deb796fc8d2b001a6640","parentDoc":null,"version":{"version":"2.0","version_clean":"2.0.0","codename":"","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["5702deb696fc8d2b001a6616","5702deb696fc8d2b001a6617","5702deb696fc8d2b001a6618","5702deb696fc8d2b001a6619","5702deb696fc8d2b001a661a","5702deb696fc8d2b001a661b","5702deb696fc8d2b001a661c","5702deb696fc8d2b001a661d","5702deb696fc8d2b001a661e"],"_id":"5702deb696fc8d2b001a6615","createdAt":"2016-04-04T21:37:58.778Z","hasReference":true,"releaseDate":"2016-04-04T21:37:58.778Z","__v":1,"project":"550f1e4021de720d005b8cbb","hasDoc":true},"createdAt":"2015-11-04T20:10:06.845Z","__v":1,"githubsync":"","project":"550f1e4021de720d005b8cbb","user":"550f1e3161d9d30d00af9dc8","category":{"sync":{"isSync":false,"url":""},"pages":[],"title":"Integration API","slug":"integration-api","order":7,"from_sync":false,"reference":false,"_id":"5702deb696fc8d2b001a661d","project":"550f1e4021de720d005b8cbb","version":"5702deb696fc8d2b001a6615","createdAt":"2015-03-22T20:15:45.359Z","__v":0}}
You are (optionally) responsible for implementing a provisioning API to enable full identity sync. Once enabled, Replicated will make calls into this API when changes are detected in the directory service. When implemented and defined in the `Identity` configuration, this API will receive the list of LDAP users (initially) and updates when users are added, edited, and removed. [block:api-header] { "type": "get", "title": "/v1/ping" } [/block] This call is used to advertise the API's readiness. ### Response HTTP status on success: `204` All other status codes will be interpreted as errors and sync will not be initiated. [block:api-header] { "type": "post", "title": "/v1/user/create" } [/block] This endpoint is called when a new user record is being added. ### Request Payload [block:parameters] { "data": { "0-0": "uuid", "1-0": "user_id", "h-0": "Name", "h-1": "Type", "h-2": "Description", "0-2": "(Required) This is the permanent unique user identifier. Note that `username` can change but still identify the same user.", "0-1": "String", "1-1": "String", "1-2": "(Optional) User ID if one is defined by the LDAP server.", "2-2": "(Optional) Username as defined by the `ldap_username_field` setting.", "2-0": "username", "2-1": "String", "3-0": "first_name", "3-1": "String", "3-2": "(Optional) First name", "4-0": "last_name", "4-1": "String", "4-2": "(Optional) Last name", "6-0": "password_format", "6-1": "String", "6-2": "(Optional) Password (encryption/hashing) format", "7-0": "password", "7-1": "String", "7-2": "(Optional) Password. Note that this maybe clear text password. This will be indicated by the value in `password_format`", "8-0": "email", "8-1": "String", "8-2": "(Optional) Email", "5-0": "full_name", "5-2": "(Optional) Full name", "5-1": "String" }, "cols": 3, "rows": 9 } [/block] ### Response HTTP status on success: `201` All other status codes will be interpreted as errors and sync will not continue. [block:api-header] { "type": "post", "title": "/v1/user/modify" } [/block] This endpoint is called when an existing user record is being update. ### Request Payload At this time the request payload is the same as for `/v1/user/create` ### Response HTTP status on success: `204` All other status codes will be interpreted as errors and sync will not continue. [block:api-header] { "type": "delete", "title": "/v1/user/:uuid" } [/block] This endpoint is called when an existing user record is being deleted. ### Request Payload None ### Response HTTP status on success: `204` All other status codes will be interpreted as errors and sync will not continue.