Les organisations
La ressource d'organisation aide à relier toutes les autres ressources d'API liées à un client de l'API (ici, un client est un client d'API, pas une implémentation de client d'API).
Une organisation doit être configurée avant de pouvoir utiliser ses clés API pour effectuer des opérations de récupération de données sur l'API. Sans au moins une configuration de stockage valide, l'API ne saura pas comment publier les résultats.
Une organisation garde la trace d'un ensemble d'autorisations de base. Celles-ci décrivent les clés d'opérations de l'organisation autorisées à exécuter sur l'API.
Les attributs
prénom | type | la description |
---|---|---|
id | ID d'organisation | Identifiant de ressource. |
resource | chaîne, toujours organisation | Spécificateur de type de ressource. |
type | super, ficelle | L'un des: standard , super . |
name | chaîne | Le nom choisi pour l'organisation. |
slug | chaîne | La version slugifiée du name . |
api_version | Version API | La version d'API que l'organisation est configurée pour utiliser. |
config | objet imbriqué | Paramètres de configuration à l'échelle de l'organisation. |
permissions | ressources autorisations | Ressources d' autorisations imbriquées. |
storage_configs | liste d'objets contenant des ressources de configuration de stockage | Liste imbriquée d'objets de configuration de stockage associés à l'organisation. |
storage_config_default | facultatif, ID de configuration de stockage | L'ID de la configuration de stockage par défaut de l'organisation. |
webhook_configs | liste d'objets contenant des ressources de configuration de webhook | Liste imbriquée des objets de configuration de webhook associés à l'organisation. |
webhook_config_default | optionnel, identifiant de configuration webhook | L'ID de la configuration Webhook par défaut de l'organisation. |
state | chaîne | L'un des éléments suivants: unconfigured , active , deactivated , blocked . |
date_created | date / heure | Quand la ressource a été créée. |
Les types
-
standard
- Pour les clients de l'API.
-
super
- Pour les gestionnaires internes de l'API.
Configuration
La configuration au niveau de l'organisation peut être définie sur l'attribut config
de l'organisation. Pour le moment, cela n'accepte que publish_source_files
, lié au mécanisme de publication des fichiers source .
Autorisations
La valeur des permissions
spécifie l'ensemble des autorisations de base pour l'organisation. Ce sont les autorisations les moins strictes accordées à une sous-ressource de cette organisation. En d'autres termes, une clé ou un utilisateur ne peut pas accéder à plus de données que l'organisation à laquelle elle appartient.
États
-
unconfigured
- Chaque organisation est créée dans cet état. Être dans cet état bloque l'accès à la plupart des fonctionnalités de récupération de données.
-
active
- L'organisation a été configurée et peut utiliser toutes les parties de l'API.
-
deactivated
- L'organisation a été fermée à la demande du propriétaire.
-
blocked
- L'organisation a été fermée par un administrateur d'API.
Changelog
2020-02-20
- Majeur Les attributs
storage_configs
etwebhook_configs
de l'objet d'organisation sont désormais un objet de liste imbriqué, plutôt qu'un simple attribut de liste.
Récupérer GET /organisation
Utiliser cURL
curl https://ricloud-api.reincubate.com/organisation \ -H 'Authorization: Token <your key_token>'
Utiliser ricloud-py
import ricloud ricloud.Organisation.retrieve()
Exemple de réponse
{ "id": 1, "resource": "organisation", "name": "My org", "slug": "my-org", "api_version": "2020-02-20", "permissions": { "id": 1, "resource": "organisation_permissions", "identifier": "default", "scopes": { "source_type:icloud.*": [], "task_type:*": [], "data_type:icloud.account.info": [], }, "date_created": "2018-11-08T13:05:29.954188Z" }, "storage_configs": { "data": [ { "id": 1, "resource": "storage_config", "type": "gs", "url": "gs://my-storage-bucket", "credentials": {}, "state": "valid", "date_created": "2018-11-08T16:47:56.849618Z" } ], "has_more": false, "total_count": 1, "url": "/configs/storage" }, "storage_config_default": 1, "webhook_configs": { "data": [ { "id": 1, "resource": "webhook_config", "url": "https://www.mywebhookendpoint.com/webhooks", "secret": "Wg69dQaffJuXckXsdoHuPYkf3VSWEGMa", "state": "valid", "date_created": "2018-11-08T13:07:59.563975Z" } ], "has_more": false, "total_count": 1, "url": "/configs/webhook" }, "webhook_config_default": 1, "state": "active", "date_created": "2018-11-08T13:05:29.784270Z" }
Mettre à jour le poste POST /organisation
Paramètres
prénom | type | la description |
---|---|---|
name | chaîne | Changez le nom d'affichage de votre organisation. |
storage_config_default | ID de configuration de stockage | Modifiez la configuration de stockage par défaut utilisée par votre organisation. |
webhook_config_default | identifiant de configuration webhook | Modifiez la configuration Webhook par défaut utilisée par votre organisation. |
Utiliser cURL
curl 'https://ricloud-api.reincubate.com/organisation' \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "name": "My new organisation name" }'
Utiliser ricloud-py
import ricloud ricloud.Organisation.update(name='My new org')
Exemple de réponse. Notez que l'attribut slug
ne change pas, car il est uniquement généré lors de la création initiale de l'organisation.
{ "id": 1, "resource": "organisation", "name": "My new org", "slug": "my-org", "permissions": {}, "storage_configs": { "data": [ { "id": 1, "resource": "storage_config", "type": "gs", "url": "gs://my-storage-bucket", "credentials": {}, "state": "valid", "date_created": "2018-11-08T16:47:56.849618Z" } ], "has_more": false, "total_count": 1, "url": "/configs/storage" }, "storage_config_default": 1, "webhook_configs": { "data": [ { "id": 1, "resource": "webhook_config", "url": "https://www.mywebhookendpoint.com/webhooks", "secret": "Wg69dQaffJuXckXsdoHuPYkf3VSWEGMa", "state": "valid", "date_created": "2018-11-08T13:07:59.563975Z" } ], "has_more": false, "total_count": 1, "url": "/configs/webhook" }, "webhook_config_default": 1, "state": "active", "date_created": "2018-11-08T13:05:29.784270Z" }