> For the complete documentation index, see [llms.txt](https://transformacao-digital.gitbook.io/tutorial-transformacao-digital/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://transformacao-digital.gitbook.io/tutorial-transformacao-digital/passo-4/suap/registro-do-servico.md).

# Registro do Serviço

Registrar o serviço na "fábrica" de provedor de serviço

O trecho de código abaixo ilustra uma implementação da “**fábrica**” de **provedor de serviços** do IFRN, implementada no SUAP:

```python
class IfrnServiceProviderFactory(AbstractBaseServiceProviderFactory):
   def get_service_provider(self, id_servico_portal_govbr):
       if id_servico_portal_govbr == ID_GOVBR_6176_MATRICULA_EAD:
           return MatriculaEadServiceProvider()
       elif id_servico_portal_govbr == ID_GOVBR_10056_PROTOCOLAR_DOCUMENTOS_IFRN:
           return ProtocolarDocumentoServiceProvider()
       elif id_servico_portal_govbr == ID_GOVBR_6024_EMISSAO_SEGUNDA_VIA_DIPLOMA_IFRN:
           return EmissaoSegundaViaDiplomaServiceProvider()
       elif id_servico_portal_govbr == ID_GOVBR_6424_MATRICULA_CURSO_NIVEL_SUPERIOR_IFRN:
           return MatriculaSuperiorServiceProvider()
```

As instituições que utilizam SUAP devem registrar os serviços na sua **respectiva classe** que define a “**fábrica**” de serviços da instituição.

{% hint style="info" %}
Atente para a **linha 6**, a qual define a instanciação do provedor de serviço específico para o serviço de **Protocolar Documento junto ao IFRN** do Gov.BR.
{% endhint %}
