REST Resource: customers.v2.Schemas

Recurso: Schema

Da Seção 7 da RFC 7643. Especifica os metadados sobre um esquema.

Representação JSON
{
  "attributes": [
    {
      object (Attribute)
    }
  ],
  "id": string,
  "name": string,
  "description": string
}
Campos
attributes[]

object (Attribute)

Obrigatório. A lista de atributos do esquema.

id

string

Obrigatório. O URI exclusivo do esquema. Quando aplicável, os provedores de serviços precisam especificar o URI, por exemplo, urn:ietf:params:scim:schemas:core:2.0:User. Ao contrário da maioria dos outros esquemas, que usam algum tipo de identificador exclusivo global (GUID) para o id, o esquema id é um URI para que possa ser registrado e seja portátil entre diferentes provedores de serviços e clientes.

name

string

Opcional. O nome legível do esquema. Quando aplicável, os provedores de serviços precisam especificar o nome, por exemplo, User ou Group.

description

string

Opcional. A descrição legível do esquema. Quando aplicável, os provedores de serviços precisam especificar a descrição.

Atributo

Da Seção 7 da RFC 7643. Define as características de um atributo.

Representação JSON
{
  "subAttributes": [
    {
      object (Attribute)
    }
  ],
  "canonicalValues": [
    string
  ],
  "referenceTypes": [
    string
  ],
  "name": string,
  "type": string,
  "multiValued": boolean,
  "description": string,
  "required": boolean,
  "caseExact": boolean,
  "mutability": string,
  "returned": string,
  "uniqueness": string
}
Campos
subAttributes[]

object (Attribute)

Quando um atributo é do tipo complex, subAttributes define um conjunto de subatributos. subAttributes tem os mesmos subatributos de esquema que attributes.

canonicalValues[]

string

Opcional. Uma coleção de valores canônicos sugeridos que podem ser usados (por exemplo, work e home). Em alguns casos, os provedores de serviços podem ignorar valores não compatíveis.

referenceTypes[]

string

Uma matriz de vários valores de strings JSON que indicam os tipos de recursos SCIM que podem ser referenciados. Estes são os valores válidos:

  • Um tipo de recurso SCIM (por exemplo, User ou Group).
  • external, indicando que o recurso é externo (por exemplo, uma foto), ou
  • uri, indicando que a referência é a um endpoint de serviço ou a um identificador (por exemplo, um URN de esquema).

Esse atributo só é aplicável a atributos do tipo reference (Seção 2.3.7).

name

string

O nome do atributo.

type

string

O tipo de dados do atributo. Os valores válidos são string, boolean, decimal, integer, dateTime, reference e complex. Quando um atributo é do tipo complex, um atributo de esquema subAttributes correspondente precisa ser definido, listando os subatributos do atributo.

multiValued

boolean

Indica a pluralidade do atributo.

description

string

A descrição legível do atributo. Quando aplicável, os provedores de serviços precisam especificar a descrição.

required

boolean

Especifica se o atributo é obrigatório ou não.

caseExact

boolean

Especifica se um atributo de string diferencia maiúsculas de minúsculas. O servidor usa a diferenciação entre maiúsculas e minúsculas ao avaliar filtros. Para atributos que diferenciam maiúsculas de minúsculas, o servidor preserva o caso de qualquer valor enviado. Se o atributo não fizer distinção entre maiúsculas e minúsculas, o servidor poderá alterar o caso de um valor enviado. A sensibilidade a maiúsculas e minúsculas também afeta como os valores de atributo podem ser comparados com os valores de filtro (consulte RFC 7644, seção 3.4.2.2).

De acordo com a RFC 7643, seção 2.3.6 e a RFC 7643, seção 2.3.7, os tipos binary e reference são caseExact.

mutability

string

Uma única palavra-chave que indica as circunstâncias em que o valor do atributo pode ser (re)definido:

  • readOnly: o atributo não pode ser modificado.
  • readWrite: Padrão. O atributo pode ser atualizado e lido a qualquer momento.
  • immutable: o atributo pode ser definido na criação do recurso (por exemplo, POST) ou na substituição do registro por uma solicitação (por exemplo, PUT). O atributo não pode ser modificado após a definição inicial.
  • writeOnly: o atributo pode ser atualizado a qualquer momento. Os valores de atributo não são retornados (por exemplo, porque o valor é um hash armazenado). Observação: um atributo com mutabilidade writeOnly geralmente também tem uma configuração retornada de never.
returned

string

Uma única palavra-chave que indica quando um atributo e os valores associados são retornados em resposta a uma solicitação GET ou PUT, POST ou PATCH. Estas são as palavras-chave válidas:

  • always: o atributo é sempre retornado, independente do conteúdo do parâmetro attributes. Por exemplo, id é sempre retornado para identificar um recurso SCIM.
  • never: o atributo nunca é retornado. Isso pode acontecer porque o provedor de serviços não retém o valor original do atributo (por exemplo, um valor hash). Um provedor de serviços pode permitir que atributos sejam usados em um filtro de pesquisa.
  • default: Padrão. O atributo é retornado por padrão em todas as respostas de operações do SCIM em que os valores de atributo são retornados. Se o parâmetro attributes da solicitação GET for especificado, os valores de atributo só serão retornados se o atributo for nomeado no parâmetro attributes.
  • request: o atributo é retornado em resposta a qualquer operação PUT, POST ou PATCH se ele foi especificado pelo cliente (por exemplo, se foi modificado). O atributo só é retornado em uma operação de consulta SCIM se especificado no parâmetro attributes.
uniqueness

string

Um único valor de palavra-chave que especifica como o provedor de serviços impõe a exclusividade dos valores de atributo. Um servidor pode rejeitar um valor inválido com base na exclusividade retornando o código de resposta HTTP 400 Bad Request. Um cliente pode aplicar a exclusividade no lado do cliente em um grau maior do que o provedor de serviços. Por exemplo, um cliente pode tornar um valor exclusivo, enquanto o servidor tem exclusividade de none. Estas são as palavras-chave válidas:

  • none: Padrão. Os valores não precisam ser únicos de forma alguma.
  • server: o valor precisa ser exclusivo no contexto do endpoint SCIM atual (ou locatário) e pode ser globalmente exclusivo (por exemplo, um nome de usuário, um endereço de e-mail ou outra chave ou contador gerado pelo servidor). Dois recursos no mesmo servidor não podem ter o mesmo valor.
  • global: o valor precisa ser globalmente exclusivo (por exemplo, um endereço de e-mail, um GUID ou outro valor). Nenhum recurso em qualquer servidor pode ter o mesmo valor.

Conforme especificado na Seção 2.3 da RFC 7643, os tipos de dados Boolean, DateTime, Binary e Complex não têm exclusividade.

Métodos

get

Recupera um esquema.

list

Recupera todos os esquemas.